Kanban API documentation

Base URL: /api/v1. Authentication: Authorization: Bearer <api-key> header. API keys are created in the web UI (session login) or via CLI and are stored only as SHA-256 hashes. Scope read allows GET only; write allows everything below. The web UI uses the same endpoints with a session cookie. Dates are ISO-8601 strings. Cards are never permanently deleted through the API; use archived: true instead.

MethodEndpointDescription
GET/api/v1/boardsList boards you are a member of
POST/api/v1/boardsCreate a board. Body: {title}
GET/api/v1/boards/:idBoard with lists, cards, labels, members
PATCH/api/v1/boards/:idRename or archive a board. Body: {title?, archived?}
POST/api/v1/boards/:id/membersAdd a member. Body: {user_id}
POST/api/v1/boards/:id/labelsCreate a label. Body: {name, color}
POST/api/v1/listsCreate a list. Body: {board_id, title}
PATCH/api/v1/lists/:idRename, reorder, archive a list. Body: {title?, position?, archived?}
GET/api/v1/cards?due=overdue|soonCards due overdue or within 24h
POST/api/v1/cardsCreate a card. Body: {list_id, title, description?, due_date?, labels?[], members?[]}
GET/api/v1/cards/:idCard with labels, members, comments
PATCH/api/v1/cards/:idEdit a card. Body: {title?, description?, due_date?, labels?[], members?[], archived?}
POST/api/v1/cards/:id/moveMove a card. Body: {list_id, position?}
POST/api/v1/cards/:id/commentsAdd a comment. Body: {body}
GET/api/v1/activity?board_id=Activity log (all your boards, or one board)
GET/api/v1/remindersReminder records for your boards
GET/api/v1/usersTeam users (for member assignment)
GET/api/v1/api-keysYour API keys (session only)
POST/api/v1/api-keysCreate an API key (session only). Body: {name, scope: read|write}. Key shown once.
DELETE/api/v1/api-keys/:idRevoke one of your API keys (session only)

Agent notes

Back to app