# Payroll period ready

> **Webhook**, Dyflexis sends this `POST` request to a URL **you** host. See the [Webhooks guide](/guides/webhooks) for how to register your receiver and what it must return.

Sends a message when the payroll data is ready. You can use the
payload to call a desired endpoint.
The webhook can't be registered with this API. Please register
this webhook in Dyflexis.

Endpoint: POST payrollPeriodReady
Security: apiKey

## Request body:

  - `application/json` (unknown)
    Sends a message when the payroll data is ready. You can use the payload to call a desired endpoint.

## Request fields (application/json):

  - `queueId` (integer)
    Unique queue id.
    Example: 97

  - `systemName` (string)
    Name of the system.
    Example: organisation-a

  - `officeId` (integer)
    Unique identifier of the office.
    Example: 1

  - `officeName` (string)
    Name of the office.
    Example: department-b

  - `contractTypeGroupId` (integer)
    Unique identifier of the contract type group.
    Example: 3

  - `contractTypeGroupName` (string)
    Slug of the contract type group label (lowercase, spaces replaced by dashes). Use this as `contractTypeGroupName` in the v3 payroll endpoints.
    Example: fixed

  - `contractTypeGroupLabel` (string)
    Label of the contract type group, as configured in Dyflexis.
    Example: Fixed

  - `periodLabel` (string)
    The payroll period label. A combination of year followed by the period identifier as configured for your system.
    Example: 2026-M03

  - `targetPeriod` (string)
    The period (e.g. a month or a week).
    Example: 03

  - `targetYear` (string)
    The year.
    Example: 2026

## Response 200:

  - `200` (unknown)
    Response code 200 - OK

## Response 503:

  - `503` (unknown)
    System temporary unavailable due to maintenance

