ai

POST /v1/ai/proposals/{proposalId}/decision

Approve or reject one proposal.

Све ai крајње тачке

Сва документација за програмере →

Аутентификација

Пошаљите API кључ као bearer токен. Ова крајња тачка не наводи конкретну дозволу у спецификацији, па свом кључу доделите најмања неопходна овлашћења и проверите одговор уместо да претпостављате.

Ова крајња тачка не прихвата id организације. Ваш кључ већ идентификује организацију којој припада, а одговор је ограничен на њу.

Испробајте

Замените све што је у угластим заградама сопственим вредностима, а чувар места кључа кључем са своје контролне табле.

curl -X POST https://api.zinndigital.com/v1/ai/proposals/{proposalId}/decision \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "decision": <string<approve, reject>> }'

Пријављени сте? API конзола на вашој контролној табли попуњава ваш прави id организације и ваш сопствени кључ, и покреће захтев према живом API-ју како бисте могли да видите стварни одговор. Отворите ову крајњу тачку у API конзоли

Детаљи

Approving APPLIES the action, under the approver's own permissions. The caller must hold the permission the action itself requires, in the proposal's own organization — so approving can never reach further than the approver could reach by hand. A caller without it gets a 404, never a 403: answering "forbidden" would confirm the proposal exists. ⛔ Not idempotent and not retryable. A second approval of an already-decided proposal is a 422, which is the correct answer — a retry that applied the change twice would be a second cache purge or a second policy write nobody asked for.

Параметри

НазивТипОбавезноШта је ово
proposalId (path)UuidДа—

Тело захтева

НазивТипОбавезноШта је ово
decisionstring<approve, reject>Да—
reasonstringНе—

Одговор

НазивТипОбавезноШта је ово
idUuidДаUUIDv7 identifier — sortable by creation time (docs/02 §8).
actionstringДа—
conversation_idUuidНеThe AI conversation this came out of, or null for one raised by a scheduled review. ⭐ Lets a chat surface show its own suggestions without a second endpoint, and lets /ai say…
action_titlestringДа—
target_labelstringНе—
rationalestringНеWhy, citing the measurement. This is what a person reads before approving.
stateAgentProposalStateДа—
modeAgentProposalModeДаHow an approved proposal executes — decided by the authority ladder at the moment of approval, never frozen when the proposal was written. attended is a person clicking;…
reversibilitystring<automatic, self_healing, manual>НеWhether this change can be put back, carried on the proposal itself so a client rendering an undo control does not have to join this list against the capability catalogue — a…
approval_meansstringНе—
outcomestringНе—
proposed_bystringНе—
created_atstringДа—
decided_atobjectНе—
applied_atobjectНе—
revertedbooleanНе—

Грешке које ова крајња тачка може вратити

401 · 404 · 422 · 429