Manager decision on a consultant's contract
Approves or rejects a contract posted by a consultant linked to the fund. After the QI Tech review, that contract waits for the manager's decision in pending_manager_approval. Contracts posted by the manager itself do not go through this step.
To find the contracts awaiting the manager, filter the contract list by status=pending_manager_approval.
Approve or reject
Available on
| Profile | Host | Required permission |
|---|---|---|
| Manager | manager-api | Write |
Base URL for each host: Environments (Hosts).
ENDPOINT
/expense_contract/fund_class/{fund_class_key}/contract/{contract_key}/statusMETHOD
PUTPath parameters
| Parameter | Type | Description |
|---|---|---|
fund_class_key | string | Fund class key (UUID). |
contract_key | string | Contract key (UUID). |
Request body — rejection
{
"status": "reproved",
"reproval_details": "Valor acima do orçado para o exercício."
}
Body attributes
| Field | Type | Required | Description |
|---|---|---|---|
status | string | Yes | approved or reproved. |
reproval_details | string | No | Rejection reason, from 1 to 1000 characters. Cannot be sent with approved. |
Response
STATUS
200The contract, in the structure described in contract attributes.
- Rejected:
status: reproved, withreproval_reason: manager_reproval. - Approved: the contract moves to
pending_vendor_approval, if the vendor's registration has not been approved yet;active, ifsignature_methodisexternal;pending_signature, in all other cases.
Errors
| Status | code | When it happens |
|---|---|---|
| 400 | QIT000001 | status other than approved and reproved, or reproval_details sent with approved. |
| 404 | ECT000005 | The fund class does not exist or you do not have access to it. |
| 404 | ECT000009 | The contract does not exist in this fund class. |
| 409 | ECT000023 | The contract is not in pending_manager_approval. |
| 409 | ECT000030 | Approval: the manager does not have a signer group registered in the portal, or the vendor does not have a valid signer group. |
Example
{
"title": "Invalid status change",
"description": "A contract in status in_manual_analysis cannot change to approved through this route.",
"translation": "Um contrato com status in_manual_analysis nao pode mudar para approved por esta rota.",
"code": "ECT000023"
}
Authentication, permission and host errors: see API Errors.