agency-board
POST /v1/agency/boards/{boardId}/ai/run
Run one AI function on this board.
Ìfàṣẹ́pọ̀
Fi bọ́kì kọ́kọ́ (bearer token) ránṣẹ́ gẹ́gẹ́ bí àmì ìdánimọ̀ API. Ibùdó yìí kò sọ àṣẹ pàtó kan nínú àlàyé rẹ̀, nítorí náà fún kọ́kọ́ rẹ̀ ní ohun tó kéré jù lọ tí ó nílò kí o sì ṣàyẹ̀wò ìdáhùn náà dípò kí o kàn rò ó.
Ojú abánisọ̀rọ̀ yìí kò gba id ajọ kankan. Kọ́kọ́rọ́ rẹ ti mọ ajọ ti o jẹ ti e, a o si fèsì nipa rẹ̀.
Gbiyanju rẹ
Rọ́pọ̀ èyíkéyìí nínú àwọn àmì ìtọ́ka < > pẹ̀lú iye tirẹ̀, àti àmì ìdánimọ̀ bọ́tìnnì náà pẹ̀lú bọ́tìnnì kan láti inú dásibọ̀ọ̀dù rẹ.
curl -X POST https://api.zinndigital.com/v1/agency/boards/{boardId}/ai/run \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "function": <string<draft_card, split_epic, summarise_card, summarise_board, triage_card, find_duplicates, release_notes, whats_blocked>> }'Ṣé o ti wọlé? Iwọ̀n api ní nú ìgbékalẹ̀ rẹ kún id àjọ gidi rẹ ati bọtini tirẹ, o si nṣiṣẹ ibeere na lòdì si api gidi ki o le rii esi gidi na. Ṣí ojú abáná yìí sílẹ̀ nínú kọnsólù API
Àwọn kúlẹ̀kúlẹ̀
Runs a board AI function and returns its output. **A refusal to spend is a `200`, not a `4xx`.** When the org has no AI credit, no provider key, or is not in good standing, the response carries `skipped: true` with a `skipReason` and a customer-readable `text` — because the customer asked and we told them why not, which is a complete answer rather than a fault in their request. ⛔ A client reading `200` as "it ran" will record a success for a call that did nothing. **Read `skipped`.** `apply` defaults to `false`: AI on a board proposes and a person commits.
Àwọn ìpìlẹ̀
| Orúkọ | Iru | Tí a nílò | Kini o jẹ |
|---|---|---|---|
boardId (path) | Uuid | Bẹẹni | Project board ID (UUIDv7). |
Akoonu ibeere naa
| Orúkọ | Iru | Tí a nílò | Kini o jẹ |
|---|---|---|---|
function | string<draft_card, split_epic, summarise_card, summarise_board, triage_card, find_duplicates, release_notes, whats_blocked> | Bẹẹni | Which AI function to run. |
card_id | Uuid | Bẹẹkọ | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
apply | boolean | Bẹẹkọ | Write the result to the board. Defaults to **false**: AI on a board proposes and a person commits, so the irreversible half must be asked for explicitly. |
force | boolean | Bẹẹkọ | Re-run rather than replay. An identical call within 15 minutes is served from the previous run with no model call and no charge, so a retried automation cannot bill twice; `forc… |
options | object | Bẹẹkọ | Per-function input. `draft_card` takes `brief` and optionally `source`; `release_notes` takes `column_id`. |
Idahun
| Orúkọ | Iru | Tí a nílò | Kini o jẹ |
|---|---|---|---|
function | string | Bẹẹni | — |
text | string | Bẹẹni | The output, or the reason it was skipped. |
payload | object | Bẹẹkọ | Structured result — labels, sub-tasks, candidate duplicates. |
model | string | Bẹẹkọ | The model that served it. Null on a skip, because none was chosen. |
provider | string | Bẹẹkọ | — |
funding | string<byo, credits, included> | Bẹẹkọ | Who paid. `byo` is the customer's own provider key; `credits` and `included` are Zinn®'s. All three are recorded on the same meter. |
usage_id | Uuid | Bẹẹkọ | The meter row, so board history and AI spend join up. Null on a skip. |
skipped | boolean | Bẹẹni | **Read this.** True means nothing ran and nothing was charged. A caller that treats `200` as "it worked" records a success for a call that did nothing. |
skip_reason | string | Bẹẹkọ | Machine-readable cause, e.g. `AI_BUDGET_EXHAUSTED`, `AI_NOT_IN_GOOD_STANDING`, `not_enough_discussion`, `nothing_blocked`. |
skip_kind | string<nothing_to_do, not_in_good_standing, not_entitled, unavailable> | Bẹẹkọ | The CLASS of the skip, beside its code. `nothing_to_do` is the product working (a healthy board has nothing blocked; a thread is too short to summarise) and is good news, not a… |
skip_params | object | Bẹẹkọ | The values the refusal sentence quotes (`count`, `column`), sent structurally so a client can render that sentence in the customer's own language rather than the engine's Englis… |
failure | VendorFailure | Bẹẹkọ | `CLAUDE.md` §57 — what to tell the customer about a refusal, as a stable message key plus a tone, so the dashboard renders the sentence in their own language. Present only on a… |
cached | boolean | Bẹẹkọ | Served from the previous identical run rather than the model. |
created_card_ids | Uuid[] | Bẹẹkọ | — |
run_id | Uuid | Bẹẹkọ | — |
Awọn aṣiṣe ti ibudo ipari yii le da pada
401 · 403 · 404 · 422