Skip to main content
POST
/
v1
/
leave-requests
/
{id}
/
approve
Approve a leave request
curl --request POST \
  --url https://api.plane.com/v1/leave-requests/{id}/approve \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "reason": "<string>"
}
'
{
  "id": "lvr_6r3wLwX44s0Ak0bDkP5n2r7Q",
  "status": "approved",
  "leave": {
    "id": "lv_1HPCXADYAhh5k1NMU0r1WUqs",
    "type": "vacation",
    "worker": "wr_CgcLakmx4guire",
    "starts": "2026-04-14",
    "ends": "2026-04-16",
    "days": 2.5,
    "hours": 20,
    "schedule": {
      "2026-04-14": 8,
      "2026-04-15": 8,
      "2026-04-16": 4
    },
    "note": "Annual vacation"
  },
  "created": "2026-03-10T18:42:11Z",
  "updated": "2026-03-11T09:05:52Z"
}
Use this endpoint when a submitted leave request has been reviewed and should be approved. If time off is already approved and does not need a request workflow, use Create a leave.

Parameters

id
string
required
The ID of the leave request to approve.
reason
string
Optional approval note attached to the decision.

Returns

Returns the updated Leave Request object.
{
  "id": "lvr_6r3wLwX44s0Ak0bDkP5n2r7Q",
  "status": "approved",
  "leave": {
    "id": "lv_1HPCXADYAhh5k1NMU0r1WUqs",
    "type": "vacation",
    "worker": "wr_CgcLakmx4guire",
    "starts": "2026-04-14",
    "ends": "2026-04-16",
    "days": 2.5,
    "hours": 20,
    "schedule": {
      "2026-04-14": 8,
      "2026-04-15": 8,
      "2026-04-16": 4
    },
    "note": "Annual vacation"
  },
  "created": "2026-03-10T18:42:11Z",
  "updated": "2026-03-11T09:05:52Z"
}