v1Resources/Approvals/postApprove or reject in bulk
Approve or reject in bulk
Decide only items visible to the token creator under current client and private-project access. Each item is checked and saved on its own: an item the caller can’t see or decide fails by itself with its own error code and never undoes the others. Deciding grants no access and shares no private work. Approving records the decision; approved content requires a separate delivery action.
post
approvals:write/api/v1/work-management/approvals/bulk-decideRequest body
idempotencyKeystringrequired
A unique string you choose for the whole request, 8 to 163 characters. Each item's own key is this value followed by :<item id>, so sending the same request again replays every item instead of deciding it twice.
decisionstring (approve | reject)required
approve or reject, applied to every item. Task reviews can only be approved: in a reject request each task review fails by itself with invalid. To request changes, decide one item at a time.
reasonstringoptional
Why you decided, up to 2,000 characters. Required when decision is reject; not used when approving.
itemsarray of unknownrequired
1 to 100 items: an approval (approvalId and versionHash) or a task review (taskId, requestId and expectedRowVersion). Naming the same item twice refuses the whole request. Items run one after another and each is saved on its own, so a stale or refused item never undoes the others.
Response
okbooleanoptional
Always true on a successful response.
appliedintegeroptional
How many items succeeded, replays included.
failedintegeroptional
How many items failed. Each one is in results with its code and message.
resultsarray of objectoptional
One result per item, in the order you sent them.
idempotencyKeystringoptional
The idempotency key used for this item: your idempotencyKey followed by :<item id>.
itemKeystringoptional
The task's key, in the form task:<id>.
okbooleanoptional
Always true on a successful response.
replayedbooleanoptional
true when this response repeats an earlier request with the same idempotencyKey, so nothing new was saved.
codestringoptional
What went wrong: invalid (400), forbidden (403), not_found (404), stale, conflict or blocked (409), or internal (500).
messagestringoptional
A readable explanation of the error.
retryablebooleanoptional
True when the same request may succeed if you send it again later.
Errors
400Tasks & Approvals errors come back as ok: false with an error object holding code, message, retryable and details. Errors from the API key check itself (a missing or invalid key, a missing scope, the rate limit) use the standard error shape, where error is a string.
401Missing, invalid, expired, or revoked API key.
403Tasks & Approvals errors come back as ok: false with an error object holding code, message, retryable and details. Errors from the API key check itself (a missing or invalid key, a missing scope, the rate limit) use the standard error shape, where error is a string.
404Tasks & Approvals errors come back as ok: false with an error object holding code, message, retryable and details. Errors from the API key check itself (a missing or invalid key, a missing scope, the rate limit) use the standard error shape, where error is a string.
429Too many requests. Retry after the number of seconds in the Retry-After header.
500The request couldn't be completed because of a problem on our side.
post/api/v1/work-management/approvals/bulk-decide
Your API key
Request body*
{}