Absence Policies

Configure a policy’s year-end carryover

Configure how much unused balance carries over at year-end for an absence policy; returns the policy.

  • carryover_type (none/capped/unlimited) is required; carryover_max_days is required only when capped.
  • Optional carryover_expiry_month (1..12) and carryover_expiry_day.
  • Another company’s policy returns 404 absence_policy_not_found.
post/companies/{company}/absence-policies/{absence_policy}/carryover

Request

  • Base URL: https://api.factuarea.com/v1
  • URL: https://api.factuarea.com/v1/companies/{company}/absence-policies/{absence_policy}/carryover
  • Auth: one of:
    • HTTP bearer
    • API key in header X-API-Key

Path parameters

companystring uuid required

Public identifier (UUID v7) of the company. Get it from GET /v1/me (data.scope[].id).

absence_policystring uuid required

Public identifier (UUID v7) of the absence policy.

Headers

Idempotency-Keystring
Example:01928f10-7c0e-7c4a-9b7d-2f8a6e3c1d4b

Client-generated opaque key (up to 255 characters; UUID v7 recommended) that makes retries safe: the first response is cached and replayed for repeats without re-executing the mutation. Reusing a key with a different body returns 422 idempotency_key_reused; the values of secret fields (password, secret…) count as part of the body, so retrying with a corrected secret under the same key is a different request, never the replay of the earlier answer. See the Idempotency guide.

Factuarea-Versionstring date
Example:2026-06-01

Pin the API version (YYYY-MM-DD, Stripe-style date versioning) for this request; omit to use the key's pinned version, or the latest if none. Unsupported version → 400 unsupported_api_version; malformed → 400 parameter_invalid_format. The effective version is echoed in the Factuarea-Version response header. See the Versioning guide.

Request body

carryover_type'none' | 'capped' | 'unlimited' required

Carryover mode: none (no carryover), capped (with a cap) or unlimited (no cap).

carryover_max_daysinteger nullable

Cap of carryover days; required and positive when the mode is capped.

carryover_expiry_monthinteger nullable

Carryover expiry month (1-12); when provided, the day is also required.

carryover_expiry_dayinteger nullable

Carryover expiry day (1-31); when provided, the month is also required.

Response

Example response

{
  "data": {
    "id": "01933a31-d176-7082-8e9f-6f7a8b9c0d01",
    "object": "absence_policy",
    "name": "Vacaciones estándar",
    "allowance_type": "limited",
    "allowance_days": 23,
    "accrual_method": "annual",
    "absence_type_ids": [
      "01933a30-c065-7f71-9d8e-5e6f7a8b9c01"
    ],
    "assigned_employee_count": 12,
    "status": "active",
    "carryover": {
      "type": "capped",
      "max_days": 5,
      "expiry_month": 3,
      "expiry_day": 31
    },
    "created_at": "2024-09-01T10:00:00Z",
    "updated_at": "2024-09-01T10:00:00Z"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.