auth
[cloud-only] Submit OAuth consent decision
[cloud-only] JSON-only consent submission. The handler verifies the per-row CSRF token, atomically marks the authorization request consumed (single-use covers both allow and deny paths), then returns the redirect URL the browser must navigate to. The URL contains either code + original state for allow, or the RFC 6749 §5.2 error and state for deny.
Workspace membership is re-checked at submission time. Consent is persisted keyed by (user_id, client_id, resource_id, workspace_id); broadening the previously approved scope set requires a fresh consent flow.
post/oauth/authorize
Request body
Response
Redirect URL for the frontend to navigate to (allow → with code+state; deny → with error+state)