API Reference
Update kanban board status (drag-and-drop)
PATCH
header
AuthorizationBearer <token>Session JWT signed with HS256. Verification pins the algorithm and rejects expired tokens, per RFC8725.
domainId*stringDomain ID
briefId*stringBrief ID
application/json- body
kanbanStatus*stringTarget kanban column
Value in
"review""published"Kanban status updated
application/json- response
id*stringBrief ID
keyword*stringPrimary keyword
market*stringTarget market code
language*stringContent language
targetArticleTitle?stringTarget article title (selected or generated)
status*stringCurrent status
Value in
"queued""running""pending_title_selection""completed""brief_editing""brief_ready""content_queued""content_generating""content_generated""failed""cancelled"kanbanStatus?|Kanban board column override (null = derived from pipeline status)
Value in
"processing""briefs""contents""review""published"currentStep*numberCurrent step number
totalSteps*numberTotal steps
currentStepName?stringCurrent step name
detectedArticleType?stringDetected article type (once article type detection step completes)
Value in
"guide""how_to""comparatif""definition"createdAt*stringCreation date
completedAt?stringCompletion date
errorMessage?stringError message if failed
autopilotMode*booleanWhether this brief was created in Autopilot mode
fromContentGap?booleanWhether this brief was created from a content gap analysis
curl -X PATCH 'https://api.getmint.ai/api/domains/string/content-briefs/string/kanban-status' \ -H 'Content-Type: application/json' \ -d '{ "kanbanStatus": "review"}'{ "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "keyword": "best running shoes", "market": "US", "language": "en", "targetArticleTitle": "How to choose running shoes", "status": "completed", "kanbanStatus": "briefs", "currentStep": 14, "totalSteps": 14, "currentStepName": "title_suggestions", "detectedArticleType": "guide", "createdAt": "2026-05-25T10:30:00.000Z", "completedAt": "2026-05-25T10:35:00.000Z", "errorMessage": "SERP provider returned no results", "autopilotMode": false, "fromContentGap": true}