Permissions
Grantbr-spi-operations:update on Lerian SPI only to the Cabine API application. An application that holds this permission can resolve a manual review directly, without a proposal and a separate decision.
The Cabine API accepts a proposal or a decision only from a person’s sign-in, never from an application credential. The person who decides must be different from the person who proposed.
Members of admin-group (the Access Manager administrator group), br-desk-admin-group and br-desk-operator-group can propose and decide. Members of br-desk-viewer-group can list and read approvals. See Access and roles.
Propose a resolution
Propose an operation approval resolution creates the approval. The request carries these fields.approvalId and the decisionDeadline. The state is requested. While an earlier proposal for the same operation waits for a decision inside its window, a new proposal returns 409 with the code DESK-0005.
Decide
Approve or reject an operation approval workflow records the decision. Senddecision as approved or rejected, with an optional note of up to 500 characters.
409 with the code DESK-0005. A rejection is not sent to Lerian SPI. The operation stays in manual review.
To find approvals, use List operation approval workflows. Filter with status set to requested, approved, rejected or expired. To read one approval, use Get one operation approval workflow.
Decision window
The person who decides has 24 hours from the proposal. An administrator can change this period withDESK_OPERATION_APPROVAL_DECISION_WINDOW. See Cabine API environment variables.
A decision after the window returns 410 with the code DESK-0006. Propose the operation again. After the window, the Cabine API sets the state to expired at its next check.
Delivery to Lerian SPI
An approval is sent to Resolve regulatory operation on Lerian SPI. The Cabine API makes the first attempt when the decision is recorded. The decision response does not carry the delivery. Read the approval to see thedelivery field. It appears after the first attempt. It has outcome, attemptCount, lastStatusCode and lastAttemptAt.
By default, a retry waits at least 30 seconds after the first failed attempt. The wait doubles after each failure, up to 30 minutes. The Cabine API makes at most 20 attempts. Administrators set these values with the
DESK_APPROVAL_DELIVERY_* variables.

