Skip to main content

Get / Update / Delete Gate

Get, update, or delete an approval gate. Same path supports GET (detail with rules), PUT (update), and DELETE operations.

Retrieve, update, or remove an approval gate by its UUID. GET returns the gate with its active rules embedded. PUT updates gate properties (same body shape as create). DELETE soft-deletes the gate by setting is_active to false.

GET/v1/structuring/gates/{id}

Response

Response fields

idstringGate UUID.
namestringGate name.
user_schema_idstring | nullSchema scope for this gate, if any.
destination_idstring | nullLinked delivery destination, if any.
on_approvestringAction on approval.
on_flagstringAction on flag.
auto_approve_after_hoursnumber | nullHours before auto-approval, if configured.
is_activebooleanWhether the gate is active. DELETE soft-deletes by setting is_active to false and returns { deleted: true }.
rulesarrayActive rules attached to this gate (GET only; not returned on PUT).
created_atstringISO 8601 creation timestamp.
updated_atstringISO 8601 last update timestamp.
linksobjectRelated resource URLs (self, rules).

Response (GET / PUT)

{
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "name": "Finance approval gate",
  "user_schema_id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
  "destination_id": null,
  "on_approve": "export",
  "on_flag": "queue",
  "auto_approve_after_hours": null,
  "is_active": true,
  "rules": [
    {
      "id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
      "name": "Minimum confidence",
      "type": "min_confidence",
      "config": { "threshold": 0.85 },
      "sort_order": 0
    }
  ],
  "created_at": "2024-09-01T10:00:00.000Z",
  "updated_at": "2024-09-15T09:00:00.000Z",
  "links": {
    "self": "/v1/structuring/gates/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "rules": "/v1/structuring/gates/a1b2c3d4-e5f6-7890-abcd-ef1234567890/rules"
  }
}

Response (DELETE)

{
  "deleted": true
}

Errors

Error responses

401unauthorizedMissing or invalid API key.
404not_foundApproval gate not found or does not belong to your organization.
429rate_limitedToo many requests. Retry after the period indicated in the Retry-After header.

The rules array is only populated on GET responses. After a PUT update, re-fetch with GET to confirm the current rule set. DELETE soft-deletes the gate by setting is_active to false -- pending approval items already queued by this gate remain in the queue and can still be actioned manually.