openapi: 3.1.0 info: title: Trello REST API description: >- The Trello REST API provides programmatic access to Trello boards, lists, cards, members, labels, checklists, and other resources that make up the Trello project management platform. Developers can create, read, update, and delete Trello objects, manage team collaboration workflows, and automate task management processes. The API uses key and token based authentication and returns JSON responses for all endpoints. version: '1' contact: name: Atlassian Developer Support url: https://developer.atlassian.com/support termsOfService: https://www.atlassian.com/legal/cloud-terms-of-service externalDocs: description: Trello REST API Documentation url: https://developer.atlassian.com/cloud/trello/rest/ servers: - url: https://api.trello.com/1 description: Trello API v1 Production Server tags: - name: Actions description: >- Operations for retrieving and managing actions, which represent activity events that occur on Trello objects such as boards, lists, and cards. - name: Boards description: >- Operations for creating, retrieving, updating, and deleting boards, as well as managing board memberships, lists, cards, labels, and other board-level resources. - name: Cards description: >- Operations for creating, retrieving, updating, and deleting cards, including managing card attachments, checklists, comments, labels, members, and stickers. - name: Checklists description: >- Operations for creating, retrieving, updating, and deleting checklists and their check items on cards. - name: CustomFields description: >- Operations for creating, retrieving, updating, and deleting custom field definitions and their values on boards and cards. - name: Labels description: >- Operations for creating, retrieving, updating, and deleting labels on boards and cards. - name: Lists description: >- Operations for creating, retrieving, updating, and archiving lists on boards. - name: Members description: >- Operations for retrieving and updating member profiles, boards, organizations, and notification settings. - name: Notifications description: >- Operations for retrieving and managing member notifications about activity on boards, cards, and other Trello objects. - name: Organizations description: >- Operations for creating, retrieving, updating, and deleting Trello workspaces (organizations), including managing workspace members and settings. - name: Plugins description: >- Operations for managing Power-Up plugins, including listing, updating, and creating plugin marketplace listings. - name: Search description: >- Operations for searching across Trello boards, cards, members, and organizations using query strings. - name: Tokens description: >- Operations for retrieving and deleting API tokens and their associated webhooks. - name: Webhooks description: >- Operations for creating, retrieving, updating, and deleting webhooks that deliver real-time notifications when Trello models change. security: - apiKey: [] apiToken: [] paths: /actions/{id}: get: operationId: getAction summary: Get an Action description: >- Retrieves a single action by its identifier. Actions represent events that have occurred on Trello objects. tags: - Actions parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the action. content: application/json: schema: $ref: '#/components/schemas/Action' '401': description: Unauthorized. Invalid or missing API key and token. '404': description: Action not found. put: operationId: updateAction summary: Update an Action description: >- Updates the text of a comment action. Only comment actions can be updated. tags: - Actions parameters: - $ref: '#/components/parameters/idParam' - name: text in: query description: The new text for the comment action. required: true schema: type: string responses: '200': description: Successfully updated the action. content: application/json: schema: $ref: '#/components/schemas/Action' '401': description: Unauthorized. '404': description: Action not found. delete: operationId: deleteAction summary: Delete an Action description: >- Deletes a comment action. Only comment actions can be deleted. tags: - Actions parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully deleted the action. '401': description: Unauthorized. '404': description: Action not found. /actions/{id}/{field}: get: operationId: getActionField summary: Get a specific field of an Action description: >- Retrieves a single field value from an action. tags: - Actions parameters: - $ref: '#/components/parameters/idParam' - name: field in: path required: true description: The field to retrieve from the action. schema: type: string enum: - id - idMemberCreator - data - type - date - limits - display - memberCreator responses: '200': description: Successfully retrieved the field value. '401': description: Unauthorized. '404': description: Action not found. /actions/{id}/board: get: operationId: getActionBoard summary: Get the Board for an Action description: >- Retrieves the board associated with a given action. tags: - Actions parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the board. content: application/json: schema: $ref: '#/components/schemas/Board' '401': description: Unauthorized. '404': description: Action not found. /actions/{id}/card: get: operationId: getActionCard summary: Get the Card for an Action description: >- Retrieves the card associated with a given action. tags: - Actions parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the card. content: application/json: schema: $ref: '#/components/schemas/Card' '401': description: Unauthorized. '404': description: Action not found. /actions/{id}/list: get: operationId: getActionList summary: Get the List for an Action description: >- Retrieves the list associated with a given action. tags: - Actions parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the list. content: application/json: schema: $ref: '#/components/schemas/TrelloList' '401': description: Unauthorized. '404': description: Action not found. /actions/{id}/member: get: operationId: getActionMember summary: Get the Member of an Action description: >- Retrieves the member who was the subject of a given action. tags: - Actions parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the member. content: application/json: schema: $ref: '#/components/schemas/Member' '401': description: Unauthorized. '404': description: Action not found. /actions/{id}/memberCreator: get: operationId: getActionMemberCreator summary: Get the Member Creator of an Action description: >- Retrieves the member who created a given action. tags: - Actions parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the member creator. content: application/json: schema: $ref: '#/components/schemas/Member' '401': description: Unauthorized. '404': description: Action not found. /actions/{id}/organization: get: operationId: getActionOrganization summary: Get the Organization for an Action description: >- Retrieves the organization (workspace) associated with a given action. tags: - Actions parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the organization. content: application/json: schema: $ref: '#/components/schemas/Organization' '401': description: Unauthorized. '404': description: Action not found. /actions/{id}/reactions: get: operationId: getActionReactions summary: List Reactions for an Action description: >- Retrieves all emoji reactions on a given action. tags: - Actions parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the reactions. content: application/json: schema: type: array items: $ref: '#/components/schemas/Reaction' '401': description: Unauthorized. '404': description: Action not found. post: operationId: createActionReaction summary: Create a Reaction for an Action description: >- Adds an emoji reaction to an action. tags: - Actions parameters: - $ref: '#/components/parameters/idParam' requestBody: required: true content: application/json: schema: type: object properties: shortName: type: string description: The short name of the emoji to react with. skinVariation: type: string description: The skin variation of the emoji. native: type: string description: The native emoji character. unified: type: string description: The unified code of the emoji. responses: '200': description: Successfully created the reaction. content: application/json: schema: $ref: '#/components/schemas/Reaction' '401': description: Unauthorized. '404': description: Action not found. /boards: post: operationId: createBoard summary: Create a Board description: >- Creates a new Trello board with the specified name and optional settings such as description, organization, permission level, and initial configuration. tags: - Boards parameters: - name: name in: query required: true description: The name for the new board. schema: type: string minLength: 1 maxLength: 16384 - name: defaultLabels in: query description: Whether to apply the default set of labels to the board. schema: type: boolean default: true - name: defaultLists in: query description: Whether to add the default set of lists to the board. schema: type: boolean default: true - name: desc in: query description: A description for the board. schema: type: string maxLength: 16384 - name: idOrganization in: query description: The ID or name of the organization (workspace) the board should belong to. schema: type: string - name: idBoardSource in: query description: The ID of a board to copy into the new board. schema: type: string - name: prefs_permissionLevel in: query description: The permissions level of the board. schema: type: string enum: - org - private - public default: private - name: prefs_voting in: query description: Who can vote on the board. schema: type: string enum: - disabled - members - observers - org - public default: disabled - name: prefs_comments in: query description: Who can comment on cards on the board. schema: type: string enum: - disabled - members - observers - org - public default: members - name: prefs_background in: query description: The background color or image for the board. schema: type: string default: blue - name: prefs_cardAging in: query description: The style of card aging to apply to the board. schema: type: string enum: - pirate - regular default: regular - name: prefs_selfJoin in: query description: Whether workspace members can join the board themselves. schema: type: boolean default: true responses: '200': description: Successfully created the board. content: application/json: schema: $ref: '#/components/schemas/Board' '400': description: Bad request. Missing required parameters. '401': description: Unauthorized. /boards/{id}: get: operationId: getBoard summary: Get a Board description: >- Retrieves a single board by its identifier, including its fields and optionally nested resources. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' - name: actions in: query description: A comma-separated list of action types to include. schema: type: string - name: boardStars in: query description: Whether to include board stars. schema: type: string enum: - mine - none - name: cards in: query description: Filter cards to include. schema: type: string enum: - all - closed - none - open - visible default: none - name: card_fields in: query description: A comma-separated list of card fields to include. schema: type: string - name: checklists in: query description: Whether to include checklists. schema: type: string enum: - all - none default: none - name: fields in: query description: A comma-separated list of board fields to include. schema: type: string default: name,desc,descData,closed,idOrganization,pinned,url,shortUrl,prefs,labelNames - name: labels in: query description: Whether to include labels. schema: type: string enum: - all - none - name: lists in: query description: Filter lists to include. schema: type: string enum: - all - closed - none - open default: none - name: members in: query description: Whether to include members. schema: type: string enum: - admins - all - none - normal - owners default: none - name: memberships in: query description: Whether to include memberships. schema: type: string - name: organization in: query description: Whether to include the organization. schema: type: boolean default: false responses: '200': description: Successfully retrieved the board. content: application/json: schema: $ref: '#/components/schemas/Board' '401': description: Unauthorized. '404': description: Board not found. put: operationId: updateBoard summary: Update a Board description: >- Updates a board's fields, including name, description, preferences, and organizational settings. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' - name: name in: query description: The new name for the board. schema: type: string minLength: 1 maxLength: 16384 - name: desc in: query description: The new description for the board. schema: type: string maxLength: 16384 - name: closed in: query description: Whether the board is closed (archived). schema: type: boolean - name: subscribed in: query description: Whether the authenticated member is subscribed to the board. schema: type: boolean - name: idOrganization in: query description: The ID of the organization to move the board to. schema: type: string - name: prefs/permissionLevel in: query description: The permission level for the board. schema: type: string enum: - org - private - public - name: prefs/selfJoin in: query description: Whether workspace members can join the board themselves. schema: type: boolean - name: prefs/cardCovers in: query description: Whether card covers are enabled. schema: type: boolean - name: prefs/hideVotes in: query description: Whether votes are hidden until voting is complete. schema: type: boolean - name: prefs/background in: query description: The background for the board. schema: type: string - name: prefs/cardAging in: query description: The card aging style. schema: type: string enum: - pirate - regular - name: labelNames/green in: query description: Name for the green label. schema: type: string - name: labelNames/yellow in: query description: Name for the yellow label. schema: type: string - name: labelNames/orange in: query description: Name for the orange label. schema: type: string - name: labelNames/red in: query description: Name for the red label. schema: type: string - name: labelNames/purple in: query description: Name for the purple label. schema: type: string - name: labelNames/blue in: query description: Name for the blue label. schema: type: string responses: '200': description: Successfully updated the board. content: application/json: schema: $ref: '#/components/schemas/Board' '401': description: Unauthorized. '404': description: Board not found. delete: operationId: deleteBoard summary: Delete a Board description: >- Permanently deletes a board. This action cannot be undone. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully deleted the board. '401': description: Unauthorized. '404': description: Board not found. /boards/{id}/actions: get: operationId: getBoardActions summary: Get Actions for a Board description: >- Retrieves a list of actions (activity events) associated with a board. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' - name: filter in: query description: A comma-separated list of action types to filter by. schema: type: string - name: limit in: query description: The maximum number of actions to return. schema: type: integer minimum: 0 maximum: 1000 default: 50 responses: '200': description: Successfully retrieved board actions. content: application/json: schema: type: array items: $ref: '#/components/schemas/Action' '401': description: Unauthorized. '404': description: Board not found. /boards/{id}/cards: get: operationId: getBoardCards summary: Get Cards on a Board description: >- Retrieves all cards on a board, with optional filtering. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' - name: fields in: query description: A comma-separated list of card fields to return. schema: type: string responses: '200': description: Successfully retrieved board cards. content: application/json: schema: type: array items: $ref: '#/components/schemas/Card' '401': description: Unauthorized. '404': description: Board not found. /boards/{id}/cards/{filter}: get: operationId: getBoardCardsFilter summary: Get Filtered Cards on a Board description: >- Retrieves cards on a board filtered by status. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' - name: filter in: path required: true description: The filter to apply to the cards. schema: type: string enum: - all - closed - none - open - visible responses: '200': description: Successfully retrieved filtered board cards. content: application/json: schema: type: array items: $ref: '#/components/schemas/Card' '401': description: Unauthorized. '404': description: Board not found. /boards/{id}/checklists: get: operationId: getBoardChecklists summary: Get Checklists on a Board description: >- Retrieves all checklists on a board. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved board checklists. content: application/json: schema: type: array items: $ref: '#/components/schemas/Checklist' '401': description: Unauthorized. '404': description: Board not found. /boards/{id}/labels: get: operationId: getBoardLabels summary: Get Labels on a Board description: >- Retrieves all labels defined on a board. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' - name: fields in: query description: A comma-separated list of label fields to return. schema: type: string default: all - name: limit in: query description: Maximum number of labels to return. schema: type: integer minimum: 0 maximum: 1000 default: 50 responses: '200': description: Successfully retrieved board labels. content: application/json: schema: type: array items: $ref: '#/components/schemas/Label' '401': description: Unauthorized. '404': description: Board not found. post: operationId: createBoardLabel summary: Create a Label on a Board description: >- Creates a new label on a board. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' - name: name in: query required: true description: The name for the label. schema: type: string - name: color in: query required: true description: The color for the label. schema: type: string enum: - yellow - purple - blue - red - green - orange - black - sky - pink - lime - 'null' responses: '200': description: Successfully created the label. content: application/json: schema: $ref: '#/components/schemas/Label' '400': description: Bad request. Missing required parameters. '401': description: Unauthorized. '404': description: Board not found. /boards/{id}/lists: get: operationId: getBoardLists summary: Get Lists on a Board description: >- Retrieves all lists on a board, with optional filtering. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' - name: cards in: query description: Filter cards within lists. schema: type: string enum: - all - closed - none - open default: none - name: card_fields in: query description: A comma-separated list of card fields to return. schema: type: string default: all - name: filter in: query description: Filter lists by status. schema: type: string enum: - all - closed - none - open default: open - name: fields in: query description: A comma-separated list of list fields to return. schema: type: string default: all responses: '200': description: Successfully retrieved board lists. content: application/json: schema: type: array items: $ref: '#/components/schemas/TrelloList' '401': description: Unauthorized. '404': description: Board not found. post: operationId: createBoardList summary: Create a List on a Board description: >- Creates a new list on the specified board. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' - name: name in: query required: true description: The name for the new list. schema: type: string minLength: 1 maxLength: 16384 - name: pos in: query description: The position of the list on the board. schema: type: string default: top responses: '200': description: Successfully created the list. content: application/json: schema: $ref: '#/components/schemas/TrelloList' '400': description: Bad request. Missing required parameters. '401': description: Unauthorized. '404': description: Board not found. /boards/{id}/members: get: operationId: getBoardMembers summary: Get Members of a Board description: >- Retrieves the members associated with a board. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved board members. content: application/json: schema: type: array items: $ref: '#/components/schemas/Member' '401': description: Unauthorized. '404': description: Board not found. put: operationId: inviteBoardMember summary: Invite a Member to a Board description: >- Invites a member to a board via email. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' - name: email in: query required: true description: The email address of the member to invite. schema: type: string format: email - name: type in: query description: The type of membership. schema: type: string enum: - admin - normal - observer default: normal responses: '200': description: Successfully invited the member. '401': description: Unauthorized. '404': description: Board not found. /boards/{id}/members/{idMember}: put: operationId: updateBoardMember summary: Update a Board Member description: >- Updates the membership type for a member on a board. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' - name: idMember in: path required: true description: The ID of the member to update. schema: type: string - name: type in: query required: true description: The new membership type. schema: type: string enum: - admin - normal - observer responses: '200': description: Successfully updated the board member. '401': description: Unauthorized. '404': description: Board or member not found. delete: operationId: removeBoardMember summary: Remove a Member from a Board description: >- Removes a member from a board. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' - name: idMember in: path required: true description: The ID of the member to remove. schema: type: string responses: '200': description: Successfully removed the member. '401': description: Unauthorized. '404': description: Board or member not found. /boards/{id}/memberships: get: operationId: getBoardMemberships summary: Get Memberships of a Board description: >- Retrieves the membership records for a board, including membership type and member references. tags: - Boards parameters: - $ref: '#/components/parameters/idParam' - name: filter in: query description: Filter memberships by type. schema: type: string default: all responses: '200': description: Successfully retrieved board memberships. content: application/json: schema: type: array items: $ref: '#/components/schemas/Membership' '401': description: Unauthorized. '404': description: Board not found. /cards: post: operationId: createCard summary: Create a Card description: >- Creates a new card on the specified list. tags: - Cards parameters: - name: name in: query description: The name for the card. schema: type: string minLength: 0 maxLength: 16384 - name: desc in: query description: The description for the card. schema: type: string maxLength: 16384 - name: pos in: query description: The position of the card in the list. schema: type: string default: bottom - name: due in: query description: The due date for the card. schema: type: string format: date-time - name: start in: query description: The start date for the card. schema: type: string format: date-time - name: dueComplete in: query description: Whether the due date is complete. schema: type: boolean default: false - name: idList in: query required: true description: The ID of the list the card should be created in. schema: type: string - name: idMembers in: query description: Comma-separated list of member IDs to add to the card. schema: type: string - name: idLabels in: query description: Comma-separated list of label IDs to add to the card. schema: type: string - name: urlSource in: query description: A URL to attach to the card. schema: type: string format: uri - name: idCardSource in: query description: The ID of a card to copy into the new card. schema: type: string responses: '200': description: Successfully created the card. content: application/json: schema: $ref: '#/components/schemas/Card' '400': description: Bad request. Missing required parameters. '401': description: Unauthorized. /cards/{id}: get: operationId: getCard summary: Get a Card description: >- Retrieves a single card by its identifier. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' - name: fields in: query description: A comma-separated list of card fields to return. schema: type: string default: all - name: actions in: query description: A comma-separated list of action types to include. schema: type: string - name: attachments in: query description: Whether to include attachments. schema: type: string default: 'false' - name: members in: query description: Whether to include members. schema: type: boolean default: false - name: checkItemStates in: query description: Whether to include check item states. schema: type: boolean default: false - name: checklists in: query description: Whether to include checklists. schema: type: string enum: - all - none default: none responses: '200': description: Successfully retrieved the card. content: application/json: schema: $ref: '#/components/schemas/Card' '401': description: Unauthorized. '404': description: Card not found. put: operationId: updateCard summary: Update a Card description: >- Updates the fields of a card, including name, description, position, due date, list assignment, and more. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' - name: name in: query description: The new name for the card. schema: type: string maxLength: 16384 - name: desc in: query description: The new description for the card. schema: type: string maxLength: 16384 - name: closed in: query description: Whether the card is archived. schema: type: boolean - name: idMembers in: query description: Comma-separated list of member IDs. schema: type: string - name: idLabels in: query description: Comma-separated list of label IDs. schema: type: string - name: idList in: query description: The ID of the list to move the card to. schema: type: string - name: idBoard in: query description: The ID of the board to move the card to. schema: type: string - name: pos in: query description: The new position of the card. schema: type: string - name: due in: query description: The new due date for the card. schema: type: string format: date-time - name: start in: query description: The start date for the card. schema: type: string format: date-time - name: dueComplete in: query description: Whether the due date is complete. schema: type: boolean - name: subscribed in: query description: Whether the authenticated member is subscribed to the card. schema: type: boolean - name: cover in: query description: JSON string for the card cover. schema: type: string responses: '200': description: Successfully updated the card. content: application/json: schema: $ref: '#/components/schemas/Card' '401': description: Unauthorized. '404': description: Card not found. delete: operationId: deleteCard summary: Delete a Card description: >- Permanently deletes a card. This action cannot be undone. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully deleted the card. '401': description: Unauthorized. '404': description: Card not found. /cards/{id}/actions: get: operationId: getCardActions summary: Get Actions on a Card description: >- Retrieves a list of actions (activity events) on a card. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' - name: filter in: query description: A comma-separated list of action types to filter by. schema: type: string responses: '200': description: Successfully retrieved card actions. content: application/json: schema: type: array items: $ref: '#/components/schemas/Action' '401': description: Unauthorized. '404': description: Card not found. /cards/{id}/actions/comments: post: operationId: createCardComment summary: Add a Comment to a Card description: >- Adds a new comment to a card. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' - name: text in: query required: true description: The comment text. schema: type: string minLength: 1 maxLength: 16384 responses: '200': description: Successfully added the comment. content: application/json: schema: $ref: '#/components/schemas/Action' '401': description: Unauthorized. '404': description: Card not found. /cards/{id}/attachments: get: operationId: getCardAttachments summary: Get Attachments on a Card description: >- Retrieves all attachments on a card. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' - name: fields in: query description: A comma-separated list of attachment fields to return. schema: type: string default: all responses: '200': description: Successfully retrieved card attachments. content: application/json: schema: type: array items: $ref: '#/components/schemas/Attachment' '401': description: Unauthorized. '404': description: Card not found. post: operationId: createCardAttachment summary: Create an Attachment on a Card description: >- Adds a new attachment to a card, either from a URL or a file upload. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' - name: name in: query description: The name for the attachment. schema: type: string - name: mimeType in: query description: The MIME type of the attachment. schema: type: string - name: url in: query description: A URL to attach to the card. schema: type: string format: uri responses: '200': description: Successfully created the attachment. content: application/json: schema: $ref: '#/components/schemas/Attachment' '401': description: Unauthorized. '404': description: Card not found. /cards/{id}/checklists: get: operationId: getCardChecklists summary: Get Checklists on a Card description: >- Retrieves all checklists on a card. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved card checklists. content: application/json: schema: type: array items: $ref: '#/components/schemas/Checklist' '401': description: Unauthorized. '404': description: Card not found. post: operationId: createCardChecklist summary: Create a Checklist on a Card description: >- Creates a new checklist on the specified card. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' - name: name in: query description: The name for the checklist. schema: type: string - name: idChecklistSource in: query description: The ID of a checklist to copy into the new checklist. schema: type: string - name: pos in: query description: The position of the checklist on the card. schema: type: string default: bottom responses: '200': description: Successfully created the checklist. content: application/json: schema: $ref: '#/components/schemas/Checklist' '401': description: Unauthorized. '404': description: Card not found. /cards/{id}/labels: post: operationId: addCardLabel summary: Add a Label to a Card description: >- Adds an existing label to a card. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' - name: value in: query required: true description: The ID of the label to add. schema: type: string responses: '200': description: Successfully added the label. '401': description: Unauthorized. '404': description: Card or label not found. /cards/{id}/labels/{idLabel}: delete: operationId: removeCardLabel summary: Remove a Label from a Card description: >- Removes a label from a card. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' - name: idLabel in: path required: true description: The ID of the label to remove. schema: type: string responses: '200': description: Successfully removed the label. '401': description: Unauthorized. '404': description: Card or label not found. /cards/{id}/members: post: operationId: addCardMember summary: Add a Member to a Card description: >- Adds a member to a card. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' - name: value in: query required: true description: The ID of the member to add. schema: type: string responses: '200': description: Successfully added the member. '401': description: Unauthorized. '404': description: Card or member not found. /cards/{id}/members/{idMember}: delete: operationId: removeCardMember summary: Remove a Member from a Card description: >- Removes a member from a card. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' - name: idMember in: path required: true description: The ID of the member to remove. schema: type: string responses: '200': description: Successfully removed the member. '401': description: Unauthorized. '404': description: Card or member not found. /cards/{id}/stickers: get: operationId: getCardStickers summary: Get Stickers on a Card description: >- Retrieves all stickers on a card. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved card stickers. content: application/json: schema: type: array items: $ref: '#/components/schemas/Sticker' '401': description: Unauthorized. '404': description: Card not found. post: operationId: addCardSticker summary: Add a Sticker to a Card description: >- Adds a sticker to a card. tags: - Cards parameters: - $ref: '#/components/parameters/idParam' - name: image in: query required: true description: The sticker image identifier. schema: type: string - name: top in: query required: true description: The top position of the sticker as a percentage. schema: type: number - name: left in: query required: true description: The left position of the sticker as a percentage. schema: type: number - name: zIndex in: query required: true description: The z-index of the sticker. schema: type: integer - name: rotate in: query description: The rotation of the sticker in degrees. schema: type: number default: 0 responses: '200': description: Successfully added the sticker. content: application/json: schema: $ref: '#/components/schemas/Sticker' '401': description: Unauthorized. '404': description: Card not found. /checklists: post: operationId: createChecklist summary: Create a Checklist description: >- Creates a new checklist, optionally on a specific card. tags: - Checklists parameters: - name: idCard in: query required: true description: The ID of the card the checklist should be on. schema: type: string - name: name in: query description: The name of the checklist. schema: type: string - name: pos in: query description: The position of the checklist on the card. schema: type: string default: bottom - name: idChecklistSource in: query description: The ID of a source checklist to copy. schema: type: string responses: '200': description: Successfully created the checklist. content: application/json: schema: $ref: '#/components/schemas/Checklist' '400': description: Bad request. '401': description: Unauthorized. /checklists/{id}: get: operationId: getChecklist summary: Get a Checklist description: >- Retrieves a single checklist by its identifier. tags: - Checklists parameters: - $ref: '#/components/parameters/idParam' - name: cards in: query description: Filter cards to include. schema: type: string enum: - all - closed - none - open - visible default: none - name: checkItems in: query description: Whether to include check items. schema: type: string enum: - all - none default: all - name: checkItem_fields in: query description: A comma-separated list of check item fields to return. schema: type: string default: name,nameData,pos,state,due,dueReminder,idMember - name: fields in: query description: A comma-separated list of checklist fields to return. schema: type: string default: all responses: '200': description: Successfully retrieved the checklist. content: application/json: schema: $ref: '#/components/schemas/Checklist' '401': description: Unauthorized. '404': description: Checklist not found. put: operationId: updateChecklist summary: Update a Checklist description: >- Updates a checklist's name or position. tags: - Checklists parameters: - $ref: '#/components/parameters/idParam' - name: name in: query description: The new name for the checklist. schema: type: string - name: pos in: query description: The new position for the checklist. schema: type: string responses: '200': description: Successfully updated the checklist. content: application/json: schema: $ref: '#/components/schemas/Checklist' '401': description: Unauthorized. '404': description: Checklist not found. delete: operationId: deleteChecklist summary: Delete a Checklist description: >- Permanently deletes a checklist. tags: - Checklists parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully deleted the checklist. '401': description: Unauthorized. '404': description: Checklist not found. /checklists/{id}/checkItems: get: operationId: getChecklistCheckItems summary: Get Check Items on a Checklist description: >- Retrieves all check items on a checklist. tags: - Checklists parameters: - $ref: '#/components/parameters/idParam' - name: filter in: query description: Filter check items by state. schema: type: string enum: - all - none default: all - name: fields in: query description: A comma-separated list of check item fields to return. schema: type: string default: name,nameData,pos,state,due,dueReminder,idMember responses: '200': description: Successfully retrieved check items. content: application/json: schema: type: array items: $ref: '#/components/schemas/CheckItem' '401': description: Unauthorized. '404': description: Checklist not found. post: operationId: createCheckItem summary: Create a Check Item on a Checklist description: >- Creates a new check item on a checklist. tags: - Checklists parameters: - $ref: '#/components/parameters/idParam' - name: name in: query required: true description: The name of the check item. schema: type: string minLength: 1 maxLength: 16384 - name: pos in: query description: The position of the check item in the checklist. schema: type: string default: bottom - name: checked in: query description: Whether the check item is initially checked. schema: type: boolean default: false - name: due in: query description: A due date for the check item. schema: type: string format: date-time - name: idMember in: query description: The ID of a member to assign to the check item. schema: type: string responses: '200': description: Successfully created the check item. content: application/json: schema: $ref: '#/components/schemas/CheckItem' '400': description: Bad request. '401': description: Unauthorized. '404': description: Checklist not found. /checklists/{id}/checkItems/{idCheckItem}: get: operationId: getCheckItem summary: Get a Check Item on a Checklist description: >- Retrieves a specific check item on a checklist. tags: - Checklists parameters: - $ref: '#/components/parameters/idParam' - name: idCheckItem in: path required: true description: The ID of the check item. schema: type: string responses: '200': description: Successfully retrieved the check item. content: application/json: schema: $ref: '#/components/schemas/CheckItem' '401': description: Unauthorized. '404': description: Checklist or check item not found. delete: operationId: deleteCheckItem summary: Delete a Check Item from a Checklist description: >- Removes a check item from a checklist. tags: - Checklists parameters: - $ref: '#/components/parameters/idParam' - name: idCheckItem in: path required: true description: The ID of the check item to delete. schema: type: string responses: '200': description: Successfully deleted the check item. '401': description: Unauthorized. '404': description: Checklist or check item not found. /customFields: post: operationId: createCustomField summary: Create a Custom Field Definition description: >- Creates a new custom field definition on a board. tags: - CustomFields requestBody: required: true content: application/json: schema: type: object required: - idModel - modelType - name - type - pos properties: idModel: type: string description: The ID of the board to create the custom field on. modelType: type: string description: The type of model. Should be 'board'. enum: - board name: type: string description: The name of the custom field. type: type: string description: The type of the custom field. enum: - checkbox - date - list - number - text pos: type: string description: The position of the custom field. display_cardFront: type: boolean description: Whether to display the custom field on the front of cards. options: type: array description: Options for list-type custom fields. items: type: object properties: color: type: string value: type: object properties: text: type: string pos: type: integer responses: '200': description: Successfully created the custom field. content: application/json: schema: $ref: '#/components/schemas/CustomField' '400': description: Bad request. '401': description: Unauthorized. /customFields/{id}: get: operationId: getCustomField summary: Get a Custom Field Definition description: >- Retrieves a custom field definition by its identifier. tags: - CustomFields parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the custom field. content: application/json: schema: $ref: '#/components/schemas/CustomField' '401': description: Unauthorized. '404': description: Custom field not found. put: operationId: updateCustomField summary: Update a Custom Field Definition description: >- Updates a custom field definition. tags: - CustomFields parameters: - $ref: '#/components/parameters/idParam' requestBody: content: application/json: schema: type: object properties: name: type: string description: The new name for the custom field. pos: type: string description: The new position for the custom field. display/cardFront: type: boolean description: Whether to display on card fronts. responses: '200': description: Successfully updated the custom field. content: application/json: schema: $ref: '#/components/schemas/CustomField' '401': description: Unauthorized. '404': description: Custom field not found. delete: operationId: deleteCustomField summary: Delete a Custom Field Definition description: >- Permanently deletes a custom field definition and removes its values from all cards on the board. tags: - CustomFields parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully deleted the custom field. '401': description: Unauthorized. '404': description: Custom field not found. /cards/{id}/customFieldItems: get: operationId: getCardCustomFieldItems summary: Get Custom Field Items on a Card description: >- Retrieves the custom field values set on a specific card. tags: - CustomFields parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved custom field items. content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomFieldItem' '401': description: Unauthorized. '404': description: Card not found. /cards/{idCard}/customField/{idCustomField}/item: put: operationId: updateCardCustomFieldItem summary: Set a Custom Field Value on a Card description: >- Sets or updates the value of a custom field on a card. tags: - CustomFields parameters: - name: idCard in: path required: true description: The ID of the card. schema: type: string - name: idCustomField in: path required: true description: The ID of the custom field. schema: type: string requestBody: required: true content: application/json: schema: type: object properties: value: type: object description: >- The value for the custom field. Structure depends on the field type. idValue: type: string description: The ID of the option value for list-type fields. responses: '200': description: Successfully updated the custom field value. '401': description: Unauthorized. '404': description: Card or custom field not found. /labels: post: operationId: createLabel summary: Create a Label description: >- Creates a new label. tags: - Labels parameters: - name: name in: query required: true description: The name for the label. schema: type: string - name: color in: query required: true description: The color for the label. schema: type: string enum: - yellow - purple - blue - red - green - orange - black - sky - pink - lime - 'null' - name: idBoard in: query required: true description: The ID of the board the label belongs to. schema: type: string responses: '200': description: Successfully created the label. content: application/json: schema: $ref: '#/components/schemas/Label' '400': description: Bad request. '401': description: Unauthorized. /labels/{id}: get: operationId: getLabel summary: Get a Label description: >- Retrieves a single label by its identifier. tags: - Labels parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the label. content: application/json: schema: $ref: '#/components/schemas/Label' '401': description: Unauthorized. '404': description: Label not found. put: operationId: updateLabel summary: Update a Label description: >- Updates a label's name and/or color. tags: - Labels parameters: - $ref: '#/components/parameters/idParam' - name: name in: query description: The new name for the label. schema: type: string - name: color in: query description: The new color for the label. schema: type: string enum: - yellow - purple - blue - red - green - orange - black - sky - pink - lime - 'null' responses: '200': description: Successfully updated the label. content: application/json: schema: $ref: '#/components/schemas/Label' '401': description: Unauthorized. '404': description: Label not found. delete: operationId: deleteLabel summary: Delete a Label description: >- Permanently deletes a label. tags: - Labels parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully deleted the label. '401': description: Unauthorized. '404': description: Label not found. /lists: post: operationId: createList summary: Create a List description: >- Creates a new list on the specified board. tags: - Lists parameters: - name: name in: query required: true description: The name for the new list. schema: type: string minLength: 1 maxLength: 16384 - name: idBoard in: query required: true description: The ID of the board the list should be created on. schema: type: string - name: idListSource in: query description: The ID of a list to copy into the new list. schema: type: string - name: pos in: query description: The position of the list on the board. schema: type: string default: top responses: '200': description: Successfully created the list. content: application/json: schema: $ref: '#/components/schemas/TrelloList' '400': description: Bad request. '401': description: Unauthorized. /lists/{id}: get: operationId: getList summary: Get a List description: >- Retrieves a single list by its identifier. tags: - Lists parameters: - $ref: '#/components/parameters/idParam' - name: fields in: query description: A comma-separated list of list fields to return. schema: type: string default: name,closed,idBoard,pos responses: '200': description: Successfully retrieved the list. content: application/json: schema: $ref: '#/components/schemas/TrelloList' '401': description: Unauthorized. '404': description: List not found. put: operationId: updateList summary: Update a List description: >- Updates a list's name, position, closed status, or board assignment. tags: - Lists parameters: - $ref: '#/components/parameters/idParam' - name: name in: query description: The new name for the list. schema: type: string minLength: 1 maxLength: 16384 - name: closed in: query description: Whether the list is closed (archived). schema: type: boolean - name: idBoard in: query description: The ID of the board to move the list to. schema: type: string - name: pos in: query description: The new position of the list. schema: type: string - name: subscribed in: query description: Whether the authenticated member is subscribed to the list. schema: type: boolean responses: '200': description: Successfully updated the list. content: application/json: schema: $ref: '#/components/schemas/TrelloList' '401': description: Unauthorized. '404': description: List not found. /lists/{id}/actions: get: operationId: getListActions summary: Get Actions on a List description: >- Retrieves a list of actions associated with a list. tags: - Lists parameters: - $ref: '#/components/parameters/idParam' - name: filter in: query description: A comma-separated list of action types to filter by. schema: type: string responses: '200': description: Successfully retrieved list actions. content: application/json: schema: type: array items: $ref: '#/components/schemas/Action' '401': description: Unauthorized. '404': description: List not found. /lists/{id}/board: get: operationId: getListBoard summary: Get the Board for a List description: >- Retrieves the board that a list belongs to. tags: - Lists parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the board. content: application/json: schema: $ref: '#/components/schemas/Board' '401': description: Unauthorized. '404': description: List not found. /lists/{id}/cards: get: operationId: getListCards summary: Get Cards in a List description: >- Retrieves all cards in a list. tags: - Lists parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved list cards. content: application/json: schema: type: array items: $ref: '#/components/schemas/Card' '401': description: Unauthorized. '404': description: List not found. /lists/{id}/archiveAllCards: post: operationId: archiveAllListCards summary: Archive All Cards in a List description: >- Archives all cards in a list. tags: - Lists parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully archived all cards. '401': description: Unauthorized. '404': description: List not found. /lists/{id}/moveAllCards: post: operationId: moveAllListCards summary: Move All Cards in a List description: >- Moves all cards in a list to a different list on the same or a different board. tags: - Lists parameters: - $ref: '#/components/parameters/idParam' - name: idBoard in: query required: true description: The ID of the destination board. schema: type: string - name: idList in: query required: true description: The ID of the destination list. schema: type: string responses: '200': description: Successfully moved all cards. '401': description: Unauthorized. '404': description: List not found. /members/{id}: get: operationId: getMember summary: Get a Member description: >- Retrieves a member by their identifier or username. tags: - Members parameters: - $ref: '#/components/parameters/idParam' - name: actions in: query description: A comma-separated list of action types to include. schema: type: string - name: boards in: query description: Filter boards to include. schema: type: string enum: - all - closed - members - none - open - organization - public - starred default: none - name: organizations in: query description: Filter organizations to include. schema: type: string enum: - all - members - none - public default: none - name: fields in: query description: A comma-separated list of member fields to return. schema: type: string responses: '200': description: Successfully retrieved the member. content: application/json: schema: $ref: '#/components/schemas/Member' '401': description: Unauthorized. '404': description: Member not found. put: operationId: updateMember summary: Update a Member description: >- Updates a member's profile fields such as full name, initials, and bio. tags: - Members parameters: - $ref: '#/components/parameters/idParam' - name: fullName in: query description: The new full name for the member. schema: type: string minLength: 1 maxLength: 16384 - name: initials in: query description: The new initials for the member. schema: type: string minLength: 1 maxLength: 4 - name: bio in: query description: The new bio for the member. schema: type: string maxLength: 16384 responses: '200': description: Successfully updated the member. content: application/json: schema: $ref: '#/components/schemas/Member' '401': description: Unauthorized. '404': description: Member not found. /members/{id}/boards: get: operationId: getMemberBoards summary: Get Boards for a Member description: >- Retrieves all boards that a member has access to. tags: - Members parameters: - $ref: '#/components/parameters/idParam' - name: filter in: query description: Filter boards by status. schema: type: string default: all - name: fields in: query description: A comma-separated list of board fields to return. schema: type: string - name: lists in: query description: Whether to include lists. schema: type: string enum: - all - closed - none - open default: none - name: organization in: query description: Whether to include the organization. schema: type: boolean default: false responses: '200': description: Successfully retrieved member boards. content: application/json: schema: type: array items: $ref: '#/components/schemas/Board' '401': description: Unauthorized. '404': description: Member not found. /members/{id}/cards: get: operationId: getMemberCards summary: Get Cards for a Member description: >- Retrieves all cards assigned to a member. tags: - Members parameters: - $ref: '#/components/parameters/idParam' - name: filter in: query description: Filter cards by status. schema: type: string default: visible responses: '200': description: Successfully retrieved member cards. content: application/json: schema: type: array items: $ref: '#/components/schemas/Card' '401': description: Unauthorized. '404': description: Member not found. /members/{id}/organizations: get: operationId: getMemberOrganizations summary: Get Organizations for a Member description: >- Retrieves all organizations (workspaces) that a member belongs to. tags: - Members parameters: - $ref: '#/components/parameters/idParam' - name: filter in: query description: Filter organizations. schema: type: string default: all - name: fields in: query description: A comma-separated list of organization fields to return. schema: type: string responses: '200': description: Successfully retrieved member organizations. content: application/json: schema: type: array items: $ref: '#/components/schemas/Organization' '401': description: Unauthorized. '404': description: Member not found. /members/{id}/notifications: get: operationId: getMemberNotifications summary: Get Notifications for a Member description: >- Retrieves notifications for a member. tags: - Notifications parameters: - $ref: '#/components/parameters/idParam' - name: entities in: query description: Whether to include entities. schema: type: boolean default: false - name: display in: query description: Whether to include display information. schema: type: boolean default: false - name: filter in: query description: A comma-separated list of notification types to filter by. schema: type: string default: all - name: read_filter in: query description: Filter by read status. schema: type: string enum: - all - read - unread default: all - name: limit in: query description: Maximum number of notifications to return. schema: type: integer minimum: 1 maximum: 1000 default: 50 - name: before in: query description: Return notifications created before this notification ID. schema: type: string - name: since in: query description: Return notifications created after this notification ID. schema: type: string responses: '200': description: Successfully retrieved notifications. content: application/json: schema: type: array items: $ref: '#/components/schemas/Notification' '401': description: Unauthorized. '404': description: Member not found. /notifications/{id}: get: operationId: getNotification summary: Get a Notification description: >- Retrieves a single notification by its identifier. tags: - Notifications parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the notification. content: application/json: schema: $ref: '#/components/schemas/Notification' '401': description: Unauthorized. '404': description: Notification not found. put: operationId: updateNotification summary: Update a Notification description: >- Updates a notification's read status. tags: - Notifications parameters: - $ref: '#/components/parameters/idParam' - name: unread in: query description: Whether the notification is unread. schema: type: boolean responses: '200': description: Successfully updated the notification. '401': description: Unauthorized. '404': description: Notification not found. /notifications/all/read: post: operationId: markAllNotificationsRead summary: Mark All Notifications as Read description: >- Marks all of the authenticated member's notifications as read. tags: - Notifications responses: '200': description: Successfully marked all notifications as read. '401': description: Unauthorized. /organizations: post: operationId: createOrganization summary: Create an Organization description: >- Creates a new Trello organization (workspace). tags: - Organizations parameters: - name: displayName in: query required: true description: The display name for the organization. schema: type: string minLength: 1 maxLength: 16384 - name: desc in: query description: A description for the organization. schema: type: string maxLength: 16384 - name: name in: query description: A short name (URL-friendly) for the organization. schema: type: string - name: website in: query description: A URL for the organization's website. schema: type: string format: uri responses: '200': description: Successfully created the organization. content: application/json: schema: $ref: '#/components/schemas/Organization' '400': description: Bad request. '401': description: Unauthorized. /organizations/{id}: get: operationId: getOrganization summary: Get an Organization description: >- Retrieves a single organization (workspace) by its identifier. tags: - Organizations parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the organization. content: application/json: schema: $ref: '#/components/schemas/Organization' '401': description: Unauthorized. '404': description: Organization not found. put: operationId: updateOrganization summary: Update an Organization description: >- Updates an organization's fields such as name, description, and website. tags: - Organizations parameters: - $ref: '#/components/parameters/idParam' - name: name in: query description: The new short name for the organization. schema: type: string - name: displayName in: query description: The new display name for the organization. schema: type: string - name: desc in: query description: The new description for the organization. schema: type: string maxLength: 16384 - name: website in: query description: The new website URL for the organization. schema: type: string format: uri responses: '200': description: Successfully updated the organization. content: application/json: schema: $ref: '#/components/schemas/Organization' '401': description: Unauthorized. '404': description: Organization not found. delete: operationId: deleteOrganization summary: Delete an Organization description: >- Permanently deletes an organization (workspace) and all its boards. tags: - Organizations parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully deleted the organization. '401': description: Unauthorized. '404': description: Organization not found. /organizations/{id}/boards: get: operationId: getOrganizationBoards summary: Get Boards in an Organization description: >- Retrieves all boards in an organization. tags: - Organizations parameters: - $ref: '#/components/parameters/idParam' - name: filter in: query description: Filter boards by status. schema: type: string default: all - name: fields in: query description: A comma-separated list of board fields to return. schema: type: string responses: '200': description: Successfully retrieved organization boards. content: application/json: schema: type: array items: $ref: '#/components/schemas/Board' '401': description: Unauthorized. '404': description: Organization not found. /organizations/{id}/members: get: operationId: getOrganizationMembers summary: Get Members of an Organization description: >- Retrieves all members of an organization. tags: - Organizations parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved organization members. content: application/json: schema: type: array items: $ref: '#/components/schemas/Member' '401': description: Unauthorized. '404': description: Organization not found. /organizations/{id}/members/{idMember}: put: operationId: updateOrganizationMember summary: Update a Member of an Organization description: >- Updates the membership type for a member in an organization. tags: - Organizations parameters: - $ref: '#/components/parameters/idParam' - name: idMember in: path required: true description: The ID of the member to update. schema: type: string - name: type in: query required: true description: The new membership type. schema: type: string enum: - admin - normal responses: '200': description: Successfully updated the member. '401': description: Unauthorized. '404': description: Organization or member not found. delete: operationId: removeOrganizationMember summary: Remove a Member from an Organization description: >- Removes a member from an organization. tags: - Organizations parameters: - $ref: '#/components/parameters/idParam' - name: idMember in: path required: true description: The ID of the member to remove. schema: type: string responses: '200': description: Successfully removed the member. '401': description: Unauthorized. '404': description: Organization or member not found. /plugins/{id}: get: operationId: getPlugin summary: Get a Plugin description: >- Retrieves a Power-Up plugin by its identifier. tags: - Plugins parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the plugin. content: application/json: schema: $ref: '#/components/schemas/Plugin' '401': description: Unauthorized. '404': description: Plugin not found. put: operationId: updatePlugin summary: Update a Plugin description: >- Updates a Power-Up plugin's information. tags: - Plugins parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully updated the plugin. content: application/json: schema: $ref: '#/components/schemas/Plugin' '401': description: Unauthorized. '404': description: Plugin not found. /plugins/{id}/listings: post: operationId: createPluginListing summary: Create a Listing for a Plugin description: >- Creates a new marketplace listing for a Power-Up plugin. tags: - Plugins parameters: - $ref: '#/components/parameters/idParam' requestBody: required: true content: application/json: schema: type: object properties: description: type: string description: The description for the listing. locale: type: string description: The locale for the listing. overview: type: string description: The overview text for the listing. name: type: string description: The name for the listing. responses: '200': description: Successfully created the listing. '401': description: Unauthorized. '404': description: Plugin not found. /search: get: operationId: search summary: Search Trello description: >- Searches for Trello objects matching the provided query string across boards, cards, members, and organizations. tags: - Search parameters: - name: query in: query required: true description: The search query string. schema: type: string minLength: 1 maxLength: 16384 - name: idBoards in: query description: A comma-separated list of board IDs to limit the search to. schema: type: string - name: idOrganizations in: query description: A comma-separated list of organization IDs to limit the search to. schema: type: string - name: idCards in: query description: A comma-separated list of card IDs to limit the search to. schema: type: string - name: modelTypes in: query description: >- A comma-separated list of model types to return. Valid values are actions, boards, cards, members, and organizations. schema: type: string default: all - name: board_fields in: query description: Board fields to return. schema: type: string - name: boards_limit in: query description: Maximum number of boards to return. schema: type: integer minimum: 1 maximum: 1000 default: 10 - name: card_fields in: query description: Card fields to return. schema: type: string - name: cards_limit in: query description: Maximum number of cards to return. schema: type: integer minimum: 1 maximum: 1000 default: 10 - name: cards_page in: query description: Page number of card results. schema: type: integer minimum: 0 default: 0 - name: partial in: query description: Whether to return partial matches. schema: type: boolean default: false responses: '200': description: Successfully returned search results. content: application/json: schema: $ref: '#/components/schemas/SearchResult' '401': description: Unauthorized. /search/members: get: operationId: searchMembers summary: Search Members description: >- Searches for Trello members matching the provided query string. tags: - Search parameters: - name: query in: query required: true description: The search query string. schema: type: string minLength: 1 maxLength: 16384 - name: limit in: query description: Maximum number of members to return. schema: type: integer minimum: 1 maximum: 20 default: 8 - name: idBoard in: query description: The ID of a board to limit the search to. schema: type: string - name: idOrganization in: query description: The ID of an organization to limit the search to. schema: type: string - name: onlyOrgMembers in: query description: Whether to limit results to members of the given organization. schema: type: boolean default: false responses: '200': description: Successfully returned member search results. content: application/json: schema: type: array items: $ref: '#/components/schemas/Member' '401': description: Unauthorized. /tokens/{token}: get: operationId: getToken summary: Get a Token description: >- Retrieves information about an API token. tags: - Tokens parameters: - name: token in: path required: true description: The API token to retrieve information about. schema: type: string - name: fields in: query description: A comma-separated list of token fields to return. schema: type: string default: all - name: webhooks in: query description: Whether to include webhooks associated with the token. schema: type: boolean default: false responses: '200': description: Successfully retrieved the token. content: application/json: schema: $ref: '#/components/schemas/Token' '401': description: Unauthorized. '404': description: Token not found. delete: operationId: deleteToken summary: Delete a Token description: >- Revokes and deletes an API token. This will also remove any webhooks associated with the token. tags: - Tokens parameters: - name: token in: path required: true description: The API token to delete. schema: type: string responses: '200': description: Successfully deleted the token. '401': description: Unauthorized. '404': description: Token not found. /tokens/{token}/webhooks: get: operationId: getTokenWebhooks summary: Get Webhooks for a Token description: >- Retrieves all webhooks associated with a token. tags: - Tokens parameters: - name: token in: path required: true description: The API token. schema: type: string responses: '200': description: Successfully retrieved webhooks. content: application/json: schema: type: array items: $ref: '#/components/schemas/Webhook' '401': description: Unauthorized. '404': description: Token not found. post: operationId: createTokenWebhook summary: Create a Webhook for a Token description: >- Creates a new webhook for a token. Trello will make an HTTP HEAD request to the callback URL to verify it before creating the webhook. tags: - Tokens parameters: - name: token in: path required: true description: The API token. schema: type: string - name: callbackURL in: query required: true description: A valid URL that will receive webhook callbacks via HTTP POST. schema: type: string format: uri - name: idModel in: query required: true description: The ID of the model to watch for changes. schema: type: string - name: description in: query description: A description for the webhook. schema: type: string maxLength: 16384 responses: '200': description: Successfully created the webhook. content: application/json: schema: $ref: '#/components/schemas/Webhook' '400': description: Bad request. Invalid callback URL or model ID. '401': description: Unauthorized. /webhooks: post: operationId: createWebhook summary: Create a Webhook description: >- Creates a new webhook. Trello will make an HTTP HEAD request to the callback URL to verify it returns a 200 status code before creating the webhook. tags: - Webhooks parameters: - name: callbackURL in: query required: true description: A valid URL that will receive webhook callbacks via HTTP POST. schema: type: string format: uri - name: idModel in: query required: true description: The ID of the model to watch for changes. schema: type: string - name: description in: query description: A description for the webhook. schema: type: string maxLength: 16384 - name: active in: query description: Whether the webhook is active. schema: type: boolean default: true responses: '200': description: Successfully created the webhook. content: application/json: schema: $ref: '#/components/schemas/Webhook' '400': description: Bad request. Callback URL did not return 200 on HEAD request. '401': description: Unauthorized. /webhooks/{id}: get: operationId: getWebhook summary: Get a Webhook description: >- Retrieves a webhook by its identifier. tags: - Webhooks parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully retrieved the webhook. content: application/json: schema: $ref: '#/components/schemas/Webhook' '401': description: Unauthorized. '404': description: Webhook not found. put: operationId: updateWebhook summary: Update a Webhook description: >- Updates a webhook's callback URL, model, description, or active status. tags: - Webhooks parameters: - $ref: '#/components/parameters/idParam' - name: callbackURL in: query description: The new callback URL for the webhook. schema: type: string format: uri - name: idModel in: query description: The new model ID to watch. schema: type: string - name: description in: query description: The new description for the webhook. schema: type: string maxLength: 16384 - name: active in: query description: Whether the webhook is active. schema: type: boolean responses: '200': description: Successfully updated the webhook. content: application/json: schema: $ref: '#/components/schemas/Webhook' '401': description: Unauthorized. '404': description: Webhook not found. delete: operationId: deleteWebhook summary: Delete a Webhook description: >- Permanently deletes a webhook. tags: - Webhooks parameters: - $ref: '#/components/parameters/idParam' responses: '200': description: Successfully deleted the webhook. '401': description: Unauthorized. '404': description: Webhook not found. components: securitySchemes: apiKey: type: apiKey in: query name: key description: >- Your Trello API key, obtained from the Power-Ups admin page at https://trello.com/power-ups/admin. apiToken: type: apiKey in: query name: token description: >- A user token that grants access to Trello resources. Obtained by authorizing via the /1/authorize route or OAuth 1.0. parameters: idParam: name: id in: path required: true description: The ID of the resource. schema: type: string schemas: Action: type: object description: >- Represents an activity event that occurred on a Trello object, such as creating a card, adding a comment, or moving a card between lists. properties: id: type: string description: The unique identifier for the action. idMemberCreator: type: string description: The ID of the member who performed the action. type: type: string description: The type of action that was performed. date: type: string format: date-time description: The date and time the action was performed. data: type: object description: >- Context data about the action, including references to the objects involved. properties: text: type: string description: The text content of the action, if applicable. board: type: object description: Reference to the board involved in the action. properties: id: type: string name: type: string shortLink: type: string card: type: object description: Reference to the card involved in the action. properties: id: type: string name: type: string idShort: type: integer shortLink: type: string list: type: object description: Reference to the list involved in the action. properties: id: type: string name: type: string old: type: object description: The previous values of fields that were changed. display: type: object description: Display information for rendering the action. memberCreator: $ref: '#/components/schemas/Member' Board: type: object description: >- Represents a Trello board, which is the primary organizational unit containing lists and cards. properties: id: type: string description: The unique identifier for the board. name: type: string description: The name of the board. desc: type: string description: The description of the board. descData: type: object description: Additional description data. closed: type: boolean description: Whether the board is closed (archived). idMemberCreator: type: string description: The ID of the member who created the board. idOrganization: type: string description: The ID of the organization the board belongs to. pinned: type: boolean description: Whether the board is pinned. url: type: string format: uri description: The full URL of the board. shortUrl: type: string format: uri description: The short URL of the board. shortLink: type: string description: The short link identifier for the board. prefs: type: object description: Board preferences and settings. properties: permissionLevel: type: string enum: - org - private - public hideVotes: type: boolean voting: type: string comments: type: string selfJoin: type: boolean cardCovers: type: boolean cardAging: type: string enum: - pirate - regular background: type: string backgroundColor: type: string backgroundImage: type: string backgroundTile: type: boolean backgroundBrightness: type: string labelNames: type: object description: The names assigned to each label color on the board. properties: green: type: string yellow: type: string orange: type: string red: type: string purple: type: string blue: type: string sky: type: string lime: type: string pink: type: string black: type: string starred: type: boolean description: Whether the authenticated member has starred the board. memberships: type: array description: The board's membership records. items: $ref: '#/components/schemas/Membership' dateLastActivity: type: string format: date-time description: The date and time of the last activity on the board. dateLastView: type: string format: date-time description: The date and time the authenticated member last viewed the board. Card: type: object description: >- Represents a Trello card, which is the fundamental unit of work on a board. Cards live within lists and can have members, labels, checklists, attachments, due dates, and comments. properties: id: type: string description: The unique identifier for the card. name: type: string description: The name (title) of the card. desc: type: string description: The description of the card in Markdown. closed: type: boolean description: Whether the card is archived. idBoard: type: string description: The ID of the board the card is on. idList: type: string description: The ID of the list the card is in. idShort: type: integer description: The short numeric identifier for the card within its board. idMembers: type: array description: The IDs of members assigned to the card. items: type: string idLabels: type: array description: The IDs of labels on the card. items: type: string idChecklists: type: array description: The IDs of checklists on the card. items: type: string idAttachmentCover: type: string description: The ID of the attachment used as the card cover. pos: type: number description: The position of the card in its list. due: type: string format: date-time description: The due date for the card. dueComplete: type: boolean description: Whether the due date has been marked as complete. start: type: string format: date-time description: The start date for the card. url: type: string format: uri description: The full URL of the card. shortUrl: type: string format: uri description: The short URL of the card. shortLink: type: string description: The short link identifier for the card. subscribed: type: boolean description: Whether the authenticated member is subscribed to the card. dateLastActivity: type: string format: date-time description: The date and time of the last activity on the card. cover: type: object description: The card's cover image settings. properties: idAttachment: type: string color: type: string idUploadedBackground: type: string size: type: string enum: - normal - full brightness: type: string idPlugin: type: string labels: type: array description: The labels on the card. items: $ref: '#/components/schemas/Label' badges: type: object description: Badge counts and indicators for the card. properties: votes: type: integer attachments: type: integer comments: type: integer checkItems: type: integer checkItemsChecked: type: integer description: type: boolean due: type: string format: date-time dueComplete: type: boolean subscribed: type: boolean TrelloList: type: object description: >- Represents a list on a Trello board. Lists are vertical columns that contain cards and represent stages in a workflow. properties: id: type: string description: The unique identifier for the list. name: type: string description: The name of the list. closed: type: boolean description: Whether the list is closed (archived). idBoard: type: string description: The ID of the board the list belongs to. pos: type: number description: The position of the list on the board. subscribed: type: boolean description: Whether the authenticated member is subscribed to the list. softLimit: type: string description: A soft limit for the number of cards in the list. Label: type: object description: >- Represents a color-coded label that can be applied to cards for categorization and filtering. properties: id: type: string description: The unique identifier for the label. idBoard: type: string description: The ID of the board the label belongs to. name: type: string description: The name of the label. color: type: string description: The color of the label. enum: - yellow - purple - blue - red - green - orange - black - sky - pink - lime - Member: type: object description: >- Represents a Trello user who can be a member of boards, organizations, and cards. properties: id: type: string description: The unique identifier for the member. username: type: string description: The username of the member. fullName: type: string description: The full name of the member. initials: type: string description: The initials of the member. bio: type: string description: The biography of the member. avatarHash: type: string description: The hash of the member's avatar image. avatarUrl: type: string format: uri description: The URL of the member's avatar image. url: type: string format: uri description: The URL of the member's Trello profile. confirmed: type: boolean description: Whether the member's email has been confirmed. memberType: type: string description: The type of member account. status: type: string description: The activity status of the member. idOrganizations: type: array description: The IDs of organizations the member belongs to. items: type: string idBoards: type: array description: The IDs of boards the member has access to. items: type: string Membership: type: object description: >- Represents a membership record linking a member to a board or organization with a specific role. properties: id: type: string description: The unique identifier for the membership. idMember: type: string description: The ID of the member. memberType: type: string description: The type of membership. enum: - admin - normal - observer unconfirmed: type: boolean description: Whether the membership is unconfirmed. deactivated: type: boolean description: Whether the membership is deactivated. Checklist: type: object description: >- Represents a checklist on a card, containing a list of check items that can be marked as complete or incomplete. properties: id: type: string description: The unique identifier for the checklist. name: type: string description: The name of the checklist. idBoard: type: string description: The ID of the board the checklist belongs to. idCard: type: string description: The ID of the card the checklist is on. pos: type: number description: The position of the checklist on the card. checkItems: type: array description: The check items in the checklist. items: $ref: '#/components/schemas/CheckItem' CheckItem: type: object description: >- Represents a single item in a checklist that can be checked or unchecked. properties: id: type: string description: The unique identifier for the check item. name: type: string description: The name of the check item. state: type: string description: The completion state of the check item. enum: - complete - incomplete idChecklist: type: string description: The ID of the checklist the check item belongs to. pos: type: number description: The position of the check item in the checklist. due: type: string format: date-time description: The due date for the check item. idMember: type: string description: The ID of the member assigned to the check item. Attachment: type: object description: >- Represents a file or URL attachment on a card. properties: id: type: string description: The unique identifier for the attachment. name: type: string description: The name of the attachment. url: type: string format: uri description: The URL of the attachment. bytes: type: integer description: The size of the attachment in bytes. date: type: string format: date-time description: The date the attachment was added. edgeColor: type: string description: The edge color of the attachment preview. idMember: type: string description: The ID of the member who added the attachment. isUpload: type: boolean description: Whether the attachment was uploaded (vs. linked). mimeType: type: string description: The MIME type of the attachment. previews: type: array description: Preview image versions of the attachment. items: type: object properties: id: type: string url: type: string format: uri width: type: integer height: type: integer bytes: type: integer Notification: type: object description: >- Represents a notification sent to a member about activity on their boards, cards, or organizations. properties: id: type: string description: The unique identifier for the notification. type: type: string description: The type of notification. date: type: string format: date-time description: The date the notification was created. unread: type: boolean description: Whether the notification is unread. data: type: object description: Context data about the notification. properties: board: type: object properties: id: type: string name: type: string shortLink: type: string card: type: object properties: id: type: string name: type: string idShort: type: integer shortLink: type: string text: type: string idMemberCreator: type: string description: The ID of the member who triggered the notification. memberCreator: $ref: '#/components/schemas/Member' Organization: type: object description: >- Represents a Trello organization (workspace), which is a group of members who share boards. properties: id: type: string description: The unique identifier for the organization. name: type: string description: The short name (URL-friendly slug) of the organization. displayName: type: string description: The display name of the organization. desc: type: string description: The description of the organization. url: type: string format: uri description: The URL of the organization. website: type: string format: uri description: The website of the organization. logoHash: type: string description: The hash of the organization's logo. products: type: array description: The product IDs associated with the organization. items: type: integer idBoards: type: array description: The IDs of boards in the organization. items: type: string memberships: type: array description: The membership records for the organization. items: $ref: '#/components/schemas/Membership' Webhook: type: object description: >- Represents a webhook that delivers HTTP POST callbacks to a specified URL when changes occur on a watched Trello model. properties: id: type: string description: The unique identifier for the webhook. description: type: string description: A description of the webhook. idModel: type: string description: The ID of the model being watched. callbackURL: type: string format: uri description: The URL that will receive webhook callbacks. active: type: boolean description: Whether the webhook is active. consecutiveFailures: type: integer description: The number of consecutive delivery failures. firstConsecutiveFailDate: type: string format: date-time description: The date of the first consecutive failure. Token: type: object description: >- Represents an API token that grants access to Trello resources on behalf of a user. properties: id: type: string description: The unique identifier for the token. identifier: type: string description: A human-readable identifier for the token. idMember: type: string description: The ID of the member the token belongs to. dateCreated: type: string format: date-time description: The date the token was created. dateExpires: type: string format: date-time description: The date the token expires. permissions: type: array description: The permissions granted by the token. items: type: object properties: idModel: type: string description: The ID of the model the permission applies to. modelType: type: string description: The type of model. read: type: boolean description: Whether read access is granted. write: type: boolean description: Whether write access is granted. CustomField: type: object description: >- Represents a custom field definition on a board that allows structured data to be added to cards. properties: id: type: string description: The unique identifier for the custom field. idModel: type: string description: The ID of the model (board) the custom field belongs to. modelType: type: string description: The type of model (board). fieldGroup: type: string description: The field group identifier. name: type: string description: The name of the custom field. type: type: string description: The data type of the custom field. enum: - checkbox - date - list - number - text pos: type: number description: The position of the custom field. display: type: object description: Display settings for the custom field. properties: cardFront: type: boolean description: Whether to display on card fronts. options: type: array description: Options for list-type custom fields. items: type: object properties: id: type: string idCustomField: type: string value: type: object properties: text: type: string color: type: string pos: type: integer CustomFieldItem: type: object description: >- Represents a custom field value set on a specific card. properties: id: type: string description: The unique identifier for the custom field item. idCustomField: type: string description: The ID of the custom field definition. idModel: type: string description: The ID of the card. modelType: type: string description: The type of model (card). value: type: object description: >- The value of the custom field. Structure depends on the field type. properties: text: type: string number: type: string date: type: string format: date-time checked: type: string idValue: type: string description: The ID of the selected option for list-type fields. Plugin: type: object description: >- Represents a Power-Up plugin that extends Trello functionality. properties: id: type: string description: The unique identifier for the plugin. name: type: string description: The name of the plugin. public: type: boolean description: Whether the plugin is publicly available. url: type: string format: uri description: The URL for the plugin. capabilities: type: array description: The capabilities provided by the plugin. items: type: string idOrganizationOwner: type: string description: The ID of the organization that owns the plugin. Sticker: type: object description: >- Represents a decorative sticker placed on a card. properties: id: type: string description: The unique identifier for the sticker. image: type: string description: The image identifier for the sticker. imageUrl: type: string format: uri description: The URL of the sticker image. top: type: number description: The top position as a percentage. left: type: number description: The left position as a percentage. zIndex: type: integer description: The z-index of the sticker. rotate: type: number description: The rotation in degrees. Reaction: type: object description: >- Represents an emoji reaction on an action (comment). properties: id: type: string description: The unique identifier for the reaction. idMember: type: string description: The ID of the member who added the reaction. idModel: type: string description: The ID of the action the reaction is on. idEmoji: type: string description: The ID of the emoji. member: $ref: '#/components/schemas/Member' emoji: type: object description: The emoji details. properties: unified: type: string native: type: string name: type: string shortName: type: string skinVariation: type: string SearchResult: type: object description: >- Represents the results of a search query across Trello objects. properties: options: type: object description: The search options that were used. properties: terms: type: array items: type: object modifiers: type: array items: type: object modelTypes: type: array items: type: string partial: type: boolean boards: type: array description: Boards matching the search query. items: $ref: '#/components/schemas/Board' cards: type: array description: Cards matching the search query. items: $ref: '#/components/schemas/Card' members: type: array description: Members matching the search query. items: $ref: '#/components/schemas/Member' organizations: type: array description: Organizations matching the search query. items: $ref: '#/components/schemas/Organization'