agency-board

POST /v1/agency/boards/{boardId}/ai/run

Run one AI function on this board.

כל נקודות הקצה מסוג agency-board

אימות

שלח מפתח API כטוקן Bearer. נקודת קצה זו אינה מציינת הרשאת ספציפית במפרט, לכן הקצה למפתח שלך את המינימום הנדרש ובדוק את התגובה במקום להניח הנחות.

נקודת קצה זו אינה דורשת מזהה ארגון. המפתח שלך כבר מזהה את הארגון שאליו הוא שייך, והתגובה מוגבלת אליו בלבד.

נסה זאת

החלף כל דבר בסוגריים זוויתיים בערכים משלך, ואת מציין מיקום המפתח במפתח מלוח הבקרה שלך.

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>> }'

מחובר? קונסולת ה-API בלוח הבקרה שלך מזינה את מזהה הארגון האמיתי שלך ואת המפתח שלך, ומריצה את הבקשה מול ה-API הפיזי כך שתוכל לראות את התגובה בפועל. פתח נקודת קצה זו במסוף ה-API

פרטים

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.

פרמטרים

שםסוגנדרשמה זה
boardId (path)UuidכןProject board ID (UUIDv7).

גוף הבקשה

שםסוגנדרשמה זה
functionstring<draft_card, split_epic, summarise_card, summarise_board, triage_card, find_duplicates, release_notes, whats_blocked>כןWhich AI function to run.
card_idUuidלאUUIDv7 identifier — sortable by creation time (docs/02 §8).
applybooleanלא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.
forcebooleanלא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…
optionsobjectלאPer-function input. `draft_card` takes `brief` and optionally `source`; `release_notes` takes `column_id`.

תשובה

שםסוגנדרשמה זה
functionstringכן
textstringכןThe output, or the reason it was skipped.
payloadobjectלאStructured result — labels, sub-tasks, candidate duplicates.
modelstringלאThe model that served it. Null on a skip, because none was chosen.
providerstringלא
fundingstring<byo, credits, included>לא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_idUuidלאThe meter row, so board history and AI spend join up. Null on a skip.
skippedbooleanכן**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_reasonstringלאMachine-readable cause, e.g. `AI_BUDGET_EXHAUSTED`, `AI_NOT_IN_GOOD_STANDING`, `not_enough_discussion`, `nothing_blocked`.
skip_kindstring<nothing_to_do, not_in_good_standing, not_entitled, unavailable>לא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_paramsobjectלא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…
cachedbooleanלאServed from the previous identical run rather than the model.
created_card_idsUuid[]לא
run_idUuidלא

שגיאות שנקודה קצה זו עשויה להחזיר

401 · 403 · 404 · 422