---
updatedAt: 2026-04-27T16:09:54.000Z
agentTools:
  projectIndex: https://developer.deputy.com/llms.txt
---

# Validate leave request for approval

Validate leave request for approval.

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "info": {
    "title": "Deputy V2 API",
    "version": "1.0",
    "description": "\n\nFiltered to publicly-authenticated routes only (APIAuthenticator). Scoped-OAuth routes and internal JWT routes are excluded — see the separate \"Deputy V2 Scoped API\" spec for scoped endpoints."
  },
  "servers": [
    {
      "url": "https://{subdomain}.{region}.deputy.com/api",
      "description": "Deputy tenant",
      "variables": {
        "subdomain": {
          "default": "your-subdomain",
          "description": "Your Deputy tenant subdomain"
        },
        "region": {
          "default": "deputy",
          "enum": [
            "au",
            "eu",
            "na",
            "deputy"
          ],
          "description": "Deputy region: au, eu, na, or deputy (AU default)"
        }
      }
    }
  ],
  "components": {
    "schemas": {
      "modelAffectedDate": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "title": "yyyy-mm-dd"
          },
          "employeesOnLeaveCount": {
            "type": "integer",
            "format": "int32",
            "title": "people already on leave that day"
          }
        }
      },
      "modelBalanceLimitWarning": {
        "type": "object",
        "properties": {
          "leaveRuleId": {
            "type": "string"
          },
          "leaveRuleName": {
            "type": "string"
          },
          "leaveRuleUnit": {
            "$ref": "#/components/schemas/v2modelUnit"
          },
          "threshold": {
            "type": "number",
            "format": "double"
          },
          "exceededAmount": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "modelConcurrentLeaveCapWarning": {
        "type": "object",
        "properties": {
          "locationId": {
            "type": "integer",
            "format": "int32"
          },
          "locationName": {
            "type": "string"
          },
          "maxConcurrentLeave": {
            "type": "integer",
            "format": "int32"
          },
          "affectedDates": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/modelAffectedDate"
            }
          }
        }
      },
      "v2modelUnit": {
        "type": "string",
        "enum": [
          "UNIT_UNKNOWN",
          "UNIT_HOUR",
          "UNIT_DAY"
        ],
        "default": "UNIT_UNKNOWN"
      },
      "LeaveRequestApprovalValidationLeaveRequestWarnings": {
        "type": "object",
        "properties": {
          "balanceLimits": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/modelBalanceLimitWarning"
            }
          },
          "concurrentLeaveCaps": {
            "$ref": "#/components/schemas/modelConcurrentLeaveCapWarning"
          }
        }
      },
      "LeaveRequestValidateLeaveRequestForApprovalResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "warnings": {
            "$ref": "#/components/schemas/LeaveRequestApprovalValidationLeaveRequestWarnings"
          }
        },
        "title": "Validate Leave Request For Approval Response"
      }
    },
    "securitySchemes": {
      "ApiToken": {
        "type": "apiKey",
        "in": "header",
        "name": "OAuth"
      }
    }
  },
  "paths": {
    "/management/v2/leave-requests/approval:validate": {
      "post": {
        "summary": "Validate leave request for approval",
        "operationId": "LeaveRequestV2Controller_validateLeaveRequestForApproval",
        "responses": {
          "200": {
            "description": "A successful response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeaveRequestValidateLeaveRequestForApprovalResponse"
                }
              }
            }
          }
        },
        "tags": [
          "Leave Request"
        ],
        "description": "Validate leave request for approval."
      }
    }
  },
  "security": [
    {
      "ApiToken": []
    }
  ]
}
```