{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://trello.com/schemas/trello/webhook-payload.json", "title": "Trello Webhook Payload", "description": "The JSON payload delivered to a webhook callback URL when an action occurs on the watched Trello model. Contains the triggering action and the current state of the model.", "type": "object", "required": ["action", "model"], "properties": { "action": { "$ref": "#/$defs/Action" }, "model": { "type": "object", "description": "The current state of the watched model (board, card, list, member, or organization) after the action occurred." } }, "$defs": { "Action": { "type": "object", "description": "Represents the event that triggered the webhook callback.", "required": ["id", "type", "date", "data"], "properties": { "id": { "type": "string", "description": "The unique identifier for the action.", "pattern": "^[0-9a-fA-F]{24}$" }, "idMemberCreator": { "type": "string", "description": "The ID of the member who performed the action.", "pattern": "^[0-9a-fA-F]{24}$" }, "type": { "type": "string", "description": "The type of action that was performed.", "enum": [ "addAttachmentToCard", "addChecklistToCard", "addLabelToCard", "addMemberToBoard", "addMemberToCard", "commentCard", "convertToCardFromCheckItem", "copyBoard", "copyCard", "copyChecklist", "createBoard", "createCard", "createChecklist", "createLabel", "createList", "createOrganization", "deleteAttachmentFromCard", "deleteBoardInvitation", "deleteCard", "deleteCheckItem", "deleteComment", "deleteLabel", "deleteOrganizationInvitation", "disablePlugin", "disablePowerUp", "emailCard", "enablePlugin", "enablePowerUp", "makeAdminOfBoard", "makeAdminOfOrganization", "makeNormalMemberOfBoard", "makeNormalMemberOfOrganization", "makeObserverOfBoard", "memberJoinedTrello", "moveCardFromBoard", "moveCardToBoard", "moveListFromBoard", "moveListToBoard", "removeChecklistFromCard", "removeLabelFromCard", "removeMemberFromBoard", "removeMemberFromCard", "removeMemberFromOrganization", "unconfirmedBoardInvitation", "unconfirmedOrganizationInvitation", "updateBoard", "updateCard", "updateCheckItem", "updateCheckItemStateOnCard", "updateChecklist", "updateComment", "updateCustomFieldItem", "updateLabel", "updateList", "updateMember", "updateOrganization", "voteOnCard" ] }, "date": { "type": "string", "format": "date-time", "description": "The ISO 8601 date and time the action was performed." }, "data": { "$ref": "#/$defs/ActionData" }, "display": { "type": "object", "description": "Display information for rendering the action in a UI.", "properties": { "translationKey": { "type": "string", "description": "The translation key for the action display text." }, "entities": { "type": "object", "description": "Entity references used in the display template." } } }, "memberCreator": { "$ref": "#/$defs/MemberRef" } } }, "ActionData": { "type": "object", "description": "Context data about the action, including references to the objects involved and previous values for update actions.", "properties": { "text": { "type": "string", "description": "Text content of the action, such as comment text." }, "board": { "$ref": "#/$defs/BoardRef" }, "card": { "$ref": "#/$defs/CardRef" }, "list": { "$ref": "#/$defs/ListRef" }, "listBefore": { "$ref": "#/$defs/ListRef" }, "listAfter": { "$ref": "#/$defs/ListRef" }, "member": { "$ref": "#/$defs/MemberRef" }, "checklist": { "type": "object", "description": "Reference to the checklist involved in the action.", "properties": { "id": { "type": "string", "description": "The checklist ID." }, "name": { "type": "string", "description": "The checklist name." } } }, "checkItem": { "type": "object", "description": "Reference to the check item involved in the action.", "properties": { "id": { "type": "string", "description": "The check item ID." }, "name": { "type": "string", "description": "The check item name." }, "state": { "type": "string", "description": "The completion state.", "enum": ["complete", "incomplete"] } } }, "label": { "type": "object", "description": "Reference to the label involved in the action.", "properties": { "id": { "type": "string", "description": "The label ID." }, "name": { "type": "string", "description": "The label name." }, "color": { "type": "string", "description": "The label color." } } }, "attachment": { "type": "object", "description": "Reference to the attachment involved in the action.", "properties": { "id": { "type": "string", "description": "The attachment ID." }, "name": { "type": "string", "description": "The attachment name." }, "url": { "type": "string", "format": "uri", "description": "The attachment URL." } } }, "organization": { "type": "object", "description": "Reference to the organization involved in the action.", "properties": { "id": { "type": "string", "description": "The organization ID." }, "name": { "type": "string", "description": "The organization name." } } }, "old": { "type": "object", "description": "Previous values of fields that were changed in an update action." } } }, "BoardRef": { "type": "object", "description": "A reference to a board within action data.", "properties": { "id": { "type": "string", "description": "The board ID.", "pattern": "^[0-9a-fA-F]{24}$" }, "name": { "type": "string", "description": "The board name." }, "shortLink": { "type": "string", "description": "The board short link." } } }, "CardRef": { "type": "object", "description": "A reference to a card within action data.", "properties": { "id": { "type": "string", "description": "The card ID.", "pattern": "^[0-9a-fA-F]{24}$" }, "name": { "type": "string", "description": "The card name." }, "idShort": { "type": "integer", "description": "The card's short numeric identifier." }, "shortLink": { "type": "string", "description": "The card short link." }, "idList": { "type": "string", "description": "The ID of the list the card is in." }, "closed": { "type": "boolean", "description": "Whether the card is archived." }, "desc": { "type": "string", "description": "The card description." }, "due": { "type": ["string", "null"], "format": "date-time", "description": "The card due date." }, "pos": { "type": "number", "description": "The card position." } } }, "ListRef": { "type": "object", "description": "A reference to a list within action data.", "properties": { "id": { "type": "string", "description": "The list ID.", "pattern": "^[0-9a-fA-F]{24}$" }, "name": { "type": "string", "description": "The list name." } } }, "MemberRef": { "type": "object", "description": "A reference to a member within action data.", "properties": { "id": { "type": "string", "description": "The member ID.", "pattern": "^[0-9a-fA-F]{24}$" }, "username": { "type": "string", "description": "The member username." }, "fullName": { "type": "string", "description": "The member full name." }, "initials": { "type": "string", "description": "The member initials." }, "avatarHash": { "type": ["string", "null"], "description": "The hash of the member's avatar." }, "avatarUrl": { "type": ["string", "null"], "format": "uri", "description": "The URL of the member's avatar." } } } } }