Trello · OpenAPI Overlay 1.0.0
API Evangelist enhancements to the Trello REST API
30 actions
30 updates
documentation
extends
openapi/trello-rest-api-openapi.json
Derived by API Evangelist
Built from the contracts Trello publishes. Trello did not publish this file.
What the actions change
tagsoperationIddescriptioncontacttermsOfServicelicenseexternalDocs
Targets 29 · first 16 shown; the file carries all of them
$.info
$
$.paths[?(@property.match('^/actions(/.*)?$'))].*
$.paths[?(@property.match('^/applications(/.*)?$'))].*
$.paths[?(@property.match('^/batch(/.*)?$'))].*
$.paths[?(@property.match('^/boards(/.*)?$'))].*
$.paths[?(@property.match('^/cards(/.*)?$'))].*
$.paths[?(@property.match('^/checklists(/.*)?$'))].*
$.paths[?(@property.match('^/customFields(/.*)?$'))].*
$.paths[?(@property.match('^/emoji(/.*)?$'))].*
$.paths[?(@property.match('^/enterprises(/.*)?$'))].*
$.paths[?(@property.match('^/labels(/.*)?$'))].*
$.paths[?(@property.match('^/lists(/.*)?$'))].*
$.paths[?(@property.match('^/members(/.*)?$'))].*
$.paths[?(@property.match('^/notifications(/.*)?$'))].*
$.paths[?(@property.match('^/organizations(/.*)?$'))].*
OpenAPI Overlay
overlay: 1.0.0
info:
title: API Evangelist enhancements to the Trello REST API
version: 1.0.0
x-generated: '2026-09-17'
x-method: generated
x-source: openapi/trello-rest-api-openapi.json, fetched verbatim from https://developer.atlassian.com/cloud/trello/swagger.v3.json
on 2026-09-17
x-note: Non-destructive. This overlay records what API Evangelist would add to Trello's published contract; the
original spec in openapi/ is never mutated. Every change below addresses a defect measured in the published
spec, not a stylistic preference.
extends: openapi/trello-rest-api-openapi.json
actions:
- target: $.info
description: Add the contact, terms and external documentation that the published spec omits (info carries only
title and version).
update:
description: The Trello REST API v1 provides programmatic access to Trello boards, lists, cards, checklists,
labels, custom fields, members, workspaces, enterprises, actions, notifications, search, webhooks and Power-Up
plugins. Authorization is either a legacy API key + user token pair passed as query parameters, or OAuth 2.0
3LO (GA 15 September 2026) with ten granular scopes. There is no idempotency mechanism and no rate-limit response
header - see the API Evangelist conventions artifact for the runtime semantics the contract does not state.
contact:
name: Atlassian Developer Support
url: https://developer.atlassian.com/support
termsOfService: https://developer.atlassian.com/cloud/trello/developer-terms/
license:
name: Atlassian Cloud Terms of Service
url: https://www.atlassian.com/legal/cloud-terms-of-service
- target: $
description: Add externalDocs pointing at the Trello REST reference.
update:
externalDocs:
description: Trello REST API documentation
url: https://developer.atlassian.com/cloud/trello/rest/
- target: $
description: Declare a tag set. The published spec declares NO tags and tags NO operations - all 261 are untagged,
so every generated client lands in one flat namespace.
update:
tags:
- name: Boards
description: Operations on Trello boards.
- name: Lists
description: Operations on Trello lists.
- name: Cards
description: Operations on Trello cards.
- name: Checklists
description: Operations on Trello checklists.
- name: Labels
description: Operations on Trello labels.
- name: Custom Fields
description: Operations on Trello custom fields.
- name: Members
description: Operations on Trello members.
- name: Organizations
description: Operations on Trello organizations.
- name: Enterprises
description: Operations on Trello enterprises.
- name: Actions
description: Operations on Trello actions.
- name: Notifications
description: Operations on Trello notifications.
- name: Search
description: Operations on Trello search.
- name: Webhooks
description: Operations on Trello webhooks.
- name: Tokens
description: Operations on Trello tokens.
- name: Plugins
description: Operations on Trello plugins.
- name: Applications
description: Operations on Trello applications.
- name: Emoji
description: Operations on Trello emoji.
- name: Batch
description: Operations on Trello batch.
- target: $.paths[?(@property.match('^/actions(/.*)?$'))].*
description: Tag the 12 actions path(s) as "Actions".
update:
tags:
- Actions
- target: $.paths[?(@property.match('^/applications(/.*)?$'))].*
description: Tag the 1 applications path(s) as "Applications".
update:
tags:
- Applications
- target: $.paths[?(@property.match('^/batch(/.*)?$'))].*
description: Tag the 1 batch path(s) as "Batch".
update:
tags:
- Batch
- target: $.paths[?(@property.match('^/boards(/.*)?$'))].*
description: Tag the 33 boards path(s) as "Boards".
update:
tags:
- Boards
- target: $.paths[?(@property.match('^/cards(/.*)?$'))].*
description: Tag the 30 cards path(s) as "Cards".
update:
tags:
- Cards
- target: $.paths[?(@property.match('^/checklists(/.*)?$'))].*
description: Tag the 7 checklists path(s) as "Checklists".
update:
tags:
- Checklists
- target: $.paths[?(@property.match('^/customFields(/.*)?$'))].*
description: Tag the 4 customFields path(s) as "Custom Fields".
update:
tags:
- Custom Fields
- target: $.paths[?(@property.match('^/emoji(/.*)?$'))].*
description: Tag the 1 emoji path(s) as "Emoji".
update:
tags:
- Emoji
- target: $.paths[?(@property.match('^/enterprises(/.*)?$'))].*
description: Tag the 19 enterprises path(s) as "Enterprises".
update:
tags:
- Enterprises
- target: $.paths[?(@property.match('^/labels(/.*)?$'))].*
description: Tag the 3 labels path(s) as "Labels".
update:
tags:
- Labels
- target: $.paths[?(@property.match('^/lists(/.*)?$'))].*
description: Tag the 10 lists path(s) as "Lists".
update:
tags:
- Lists
- target: $.paths[?(@property.match('^/members(/.*)?$'))].*
description: Tag the 27 members path(s) as "Members".
update:
tags:
- Members
- target: $.paths[?(@property.match('^/notifications(/.*)?$'))].*
description: Tag the 10 notifications path(s) as "Notifications".
update:
tags:
- Notifications
- target: $.paths[?(@property.match('^/organizations(/.*)?$'))].*
description: Tag the 19 organizations path(s) as "Organizations".
update:
tags:
- Organizations
- target: $.paths[?(@property.match('^/plugins(/.*)?$'))].*
description: Tag the 4 plugins path(s) as "Plugins".
update:
tags:
- Plugins
- target: $.paths[?(@property.match('^/search(/.*)?$'))].*
description: Tag the 2 search path(s) as "Search".
update:
tags:
- Search
- target: $.paths[?(@property.match('^/tokens(/.*)?$'))].*
description: Tag the 5 tokens path(s) as "Tokens".
update:
tags:
- Tokens
- target: $.paths[?(@property.match('^/webhooks(/.*)?$'))].*
description: Tag the 3 webhooks path(s) as "Webhooks".
update:
tags:
- Webhooks
- target: $.paths['/members/{id}'].get
description: Normalise operationId "get-members=id" to "get-members-id" - the published value contains an "="
character, which is not a valid identifier in most generators.
update:
operationId: get-members-id
- target: $.paths['/boards/{id}/members/{idMember}'].delete
description: Normalise operationId "boardsidmembersidmember" to "delete-boards-id-members-idmember" - the published
value drops the HTTP method prefix used by every other operationId in the spec.
update:
operationId: delete-boards-id-members-idmember
- target: $.paths['/checklists/{id}'].put
description: Normalise operationId "put-checlists-id" to "put-checklists-id" - the published value misspells "checklists".
update:
operationId: put-checklists-id
- target: $.paths['/lists/{id}/idBoard'].put
description: Normalise operationId "put-id-idboard" to "put-lists-id-idboard" - the published value omits the
resource name.
update:
operationId: put-lists-id-idboard
- target: $.paths['/enterprises/{id}/members/{idMember}/deactivated'].put
description: Normalise operationId "enterprises-id-members-idMember-deactivated" to "put-enterprises-id-members-idmember-deactivated"
- the published value drops the method prefix and mixes case.
update:
operationId: put-enterprises-id-members-idmember-deactivated
- target: $.paths['/members/{id}/avatar'].post
description: Normalise operationId "membersidavatar" to "post-members-id-avatar" - the published value drops the
method prefix and all separators.
update:
operationId: post-members-id-avatar
- target: $.paths['/organizations/{id}/members/{idMember}/all'].delete
description: Normalise operationId "organizations-id-members-idmember-all" to "delete-organizations-id-members-idmember-all"
- the published value drops the method prefix.
update:
operationId: delete-organizations-id-members-idmember-all
- target: $.paths['/customFields/{id}/options'].post
description: 'The published spec swaps these two operationIds: the POST is labelled get-customfields-id-options
and the GET is labelled post-customfields-id-options. Correct the POST.'
update:
operationId: post-customfields-id-options
- target: $.paths['/customFields/{id}/options'].get
description: Correct the GET half of the swapped customFields options operationIds.
update:
operationId: get-customfields-id-options
Work with this as data
Every overlay here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/trello-rest-api-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.