Skip to main content
PUT
Update a business policy
Each field you send replaces the stored one whole — actions and conditions included, which are not merged key by key. To turn a policy off without losing it, send status: "DISABLED"; ACTIVE turns it back on. The policy that results is checked as a whole, exactly like a new one: the rules on autoAction and approvals, the condition catalog of its context, and every approver, user, wallet and custom field it names. So even a change to another field fails while the policy still names something that is no longer valid — an approver who left the organization, an archived group, a deactivated custom field: replace or drop it in the same request. The body is the writable fields only: id, createdAt and updatedAt are refused, and so is each approver’s name. Approval requests already open keep the approvers and settings they were opened with. An archived policy cannot be changed. Only organization admins can update policies.

Path Parameters

realmId
string<uuid>
required

ID of your realm.

Format: UUID

organizationId
string<uuid>
required

ID of the organization the policy belongs to.

Format: UUID

businessPolicyId
string<uuid>
required

ID of the business policy.

Format: UUID

Body

application/json
context
enum<string>

What the policy governs: PAYMENT, SPEND_REVIEW or TRAVEL. Changing it re-checks the conditions against the new context's catalog (TRAVEL has none).

Available options:
PAYMENT,
SPEND_REVIEW,
TRAVEL
Example:

"PAYMENT"

name
string

Name of the policy, shown to approvers.

Required string length: 1 - 120
Example:

"Payments over R$ 5,000"

description
string

What the policy does, in plain words. Send an empty string to clear it.

Maximum string length: 500
Example:

"Pagamentos acima de R$ 5.000,00 precisam da aprovação do time financeiro."

order
integer

Evaluation order. Active policies of the same context are tried from the lowest order up — the oldest first on a tie — and the first one whose conditions match decides.

Required range: x >= 0
Example:

10

status
enum<string>

ACTIVE policies are evaluated; DISABLED ones are kept but never evaluated. A policy is archived only through the archive endpoint.

Available options:
ACTIVE,
DISABLED
Example:

"ACTIVE"

actions
object

What the policy does when it matches. Replaces the stored actions whole.

conditions
object

When the policy matches. Replaces the stored conditions whole.

Response

Successful response

A business policy of the organization.

id
string<uuid>
required

ID of the business policy.

Example:

"3f1c9a52-7d4e-4b8a-9c21-5e6f0a8b2d47"

realmId
string<uuid>
required

ID of the realm the policy belongs to.

Example:

"f495ff0c-ab54-4f99-8e92-ca8682e4de9b"

organizationId
string<uuid>
required

ID of the organization the policy belongs to.

Example:

"c4bd3f21-dfbd-44e8-8055-68ba15bed410"

context
enum<string>
required

What the policy governs. PAYMENT: a Pix payment, a boleto payment or a wallet transfer request, before it is paid. SPEND_REVIEW: the review of a transaction that already happened. TRAVEL: no travel flow evaluates policies yet.

Available options:
PAYMENT,
SPEND_REVIEW,
TRAVEL
Example:

"PAYMENT"

name
string
required

Name of the policy, shown to approvers.

Example:

"Payments over R$ 5,000"

order
number
required

Evaluation order: active policies of the same context are tried from the lowest order up — the oldest first on a tie — and the first match decides.

Example:

10

status
enum<string>
required

ACTIVE: evaluated. DISABLED: kept, never evaluated. ARCHIVED: archived for good — never evaluated, can no longer be changed.

Available options:
ACTIVE,
DISABLED,
ARCHIVED
Example:

"ACTIVE"

conditions
object
required

When the policy matches.

actions
object
required

What the policy does when it matches.

createdAt
string<date-time>
required

When the policy was created.

Example:

"2026-10-14T13:45:12.000Z"

updatedAt
string<date-time>
required

When the policy was last changed.

Example:

"2026-11-03T18:02:40.000Z"

description
string

What the policy does, in plain words. Absent when none was written.

Example:

"Pagamentos acima de R$ 5.000,00 precisam da aprovação do time financeiro."