Skip to main content

Create Approval Policy API

Overview

Creates a corporate approval policy with configurable escalation rules and approval levels.

  • Endpoint: /api/approval-policies/create
  • Method: POST
  • Access: Corporate Admin

Request Body Schema

FieldTypeRequiredDescription
companyIdString (UUID)YesTarget company ID
nameStringYesPolicy name
travelTypeEnumNoFLIGHT, HOTEL, CAB, FOREX, INSURANCE
maxLevelsNumberNoMax approval levels (1-5, Default: 3)
autoApprovalLimitNumberNoDefault auto-approval threshold (Default: 7000.00)
levelsArrayNoLevel rules array

Request Body Example

{
"companyId": "c478a846-993d-4c8d-bf8d-d77cb3370e01",
"name": "Standard Travel Policy",
"autoApprovalLimit": 7000,
"levels": [
{
"level": 1,
"roleRequired": "COMPANY_MANAGER",
"minAmount": 7001,
"maxAmount": 20000
},
{
"level": 2,
"roleRequired": "CORPORATE_ADMIN",
"minAmount": 20001
}
]
}

Success Response (201 Created)

{
"success": true,
"message": "Approval Policy created successfully",
"data": {
"id": "p123-uuid",
"name": "Standard Travel Policy",
"autoApprovalLimit": "7000.00",
"levels": [
{
"id": "pl1-uuid",
"level": 1,
"roleRequired": "COMPANY_MANAGER",
"minAmount": "7001.00",
"maxAmount": "20000.00"
}
]
}
}

Database Impact

  • Tables: approval_policies, approval_policy_levels
  • Operations: Transactional INSERT into approval_policies and level rows.