List the operations this workspace always approves
Returns the operation names someone has marked "always allow" from an approval card, which is what stops the agent asking before it runs them. Requires a workspace member with the `ai:read` permission.
Authorization
apiKey Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.
In: header
Path Parameters
Response Body
application/json
application/json
application/json
curl -X GET "https://example.com/v1/workspaces/string/ai/approval-policies"{ "data": [ "string" ]}{ "_tag": "ApiNotFound", "error": "not_found", "message": "That item does not exist, or this key cannot see it.", "status": 404}{ "_tag": "ApiNotFound", "error": "not_found", "message": "That item does not exist, or this key cannot see it.", "status": 404}Run an AI generator and return its structured result
Runs the named generator as a single non-streaming model call with a schema-constrained output, allowing one repair attempt when the model misses the schema, and returns the decoded result with token usage. Requires a workspace member with the `ai:write` permission, and the call consumes the workspace AI allowance: a workspace that has reached its limit is refused before the model is called. Send an `Idempotency-Key` header to make retries safe; a replay within the window returns the original response.
Revoke a standing approval for an operation
Deletes the standing "always allow" policy for one operation so the agent asks about it again, and returns the policies that remain. Requires a workspace member with the `ai:write` permission, because starting to ask again is a workspace setting rather than a chat action. Naturally idempotent: revoking an operation that has no standing policy leaves the list unchanged.