Replace the account cashout locks

Takes the whole desired document. Applied field by field: tightening (blocking, narrowing the window, removing an IP) takes effect immediately; loosening waits 6 hours and comes back as pending with pendingEffectiveAt.

Requires scope security_locks.manage.

Authentication

AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Path parameters

accountIdstringRequired
Account identifier.

Headers

X-Tenant-IdstringRequired
Tenant context used for authorization and routing.
X-Acting-DocumentstringOptional
CPF of the human performing the operation. Required on cashout routes when the credential enforces a transaction PIN.
X-Acting-IpstringOptional

Real IP of the end user, for integrator credentials calling on their behalf. This is the IP evaluated against cashoutSourceIps — without it the check would see your server’s IP. Ignored for delegated credentials, where the connection IP is already the right one.

Idempotency-KeystringOptional

Optional client-generated idempotency token (recommended for safe retries).

Request

This endpoint expects an object.
cashoutBlockedbooleanOptional

true rejects every outgoing payment (423 cashout_locked).

cashoutHoursobjectOptional

Allowed window for outgoing payments. A window crossing midnight is accepted (start greater than end).

cashoutSourceIpslist of stringsOptional

IPs/CIDRs allowed to move money out. Integrators must pass the end user’s IP in X-Acting-Ip for this to mean anything.

Response

Locks stored; the response states what applies now and what waits.

accountIdstring
currentobject
pendingobjectOptional
pendingEffectiveAtdatetimeOptional

When the loosening takes over (6h after the request).

pendingReasonenumOptional
updatedAtdatetimeOptional

Errors

404
Not Found Error
422
Unprocessable Entity Error