Target Data

Updated by Leigh Hutchens

The following endpoints allow you to push, fetch, and delete target data. All endpoints work at unit level or section level (if externalSectionId is provided).

Api-docs for RC: https://api-rc.quinyx.com/v2/docs (select “forecast” definition and check target-data-integration-controller section)

Api-docs: https://api.quinyx.com/v2/docs (select “opening-hours” definition and check target-data-integration-controller section).

POST data

POST /v2/forecasts/target-data

This API call pushes target data.

Field description

Mandatory fields are marked with a * icon.

Request body
  • requests*: An array of requests, each containing the following:
    • externalId*: External reference ID for the request.
    • externalUnitId*: The external unit identifier.
    • externalSectionId: The external section identifier (optional).
    • targetPayload*: An array containing the target data entries:
      • rangeType*: The type of range. Possible values:
        • EXACT → requires value.
        • NOT_MORE_THAN → requires value.
        • LESS_THAN → requires value.
        • BETWEEN → requires fromValue and toValue.
      • value: The numeric value of the target (used with EXACT, NOT_MORE_THAN, LESS_THAN).
      • fromValue / toValue: The numeric range values (used with BETWEEN).
      • date*: The date for which the target applies (format: YYYY-MM-DD).
Example
Endpoint
For the production environment:
https://api.quinyx.com/v2/forecasts/target-data

For the RC environment:
https://api-rc.quinyx.com/v2/forecasts/target-data

Request body
{
"requests": [
{
"externalId": "EXT_DEMO1",
"externalUnitId": "U2",
"externalSectionId": "S2",
"targetPayload": [
{
"rangeType": "NOT_MORE_THAN",
"value": 10,
"date": "2025-09-01"
},
{
"rangeType": "EXACT",
"value": 15,
"date": "2025-09-08"
},
{
"rangeType": "LESS_THAN",
"value": 20,
"date": "2025-09-10"
},
{
"rangeType": "BETWEEN",
"fromValue": 10,
"toValue": 20,
"date": "2025-09-12"
}
]
}
]
}

Response
// No response body
// Returns HTTP 200 OK on success

GET data

GET /v2/forecasts/target-data/{externalId}

This API call retrieves target data for a given external ID within a specific date range.

Field description

Mandatory fields are marked with a * icon.

Endpoint
  • externalId*: The external reference ID of the dataset you want to fetch target data for.
Request (query parameters)
  • startDate*: Start date for filtering target data.
  • endDate*: End date for filtering target data.
  • externalUnitId*: The external unit identifier.
  • externalSectionId (optional): The external section identifier. Only needed if you want to fetch section-specific data
Response
  • externalId*: The external reference ID for the data.
  • externalUnitId*: The external unit identifier.
  • externalSectionId (if requested): The external section identifier.
  • targetPayload*: Array of target data objects containing:
    • rangeType*: The type of range. Possible values:
      • EXACT → requires value.
      • NOT_MORE_THAN → requires value.
      • LESS_THAN → requires value.
      • BETWEEN → requires fromValue and toValue.
    • value: Numeric target value (used with EXACT, NOT_MORE_THAN, LESS_THAN).
    • fromValue / toValue: Range values (used with BETWEEN).
    • date*: The date for which the target applies (format: YYYY-MM-DD).
Example
Endpoint
For the production environment:
https://api.quinyx.com/v2/forecasts/target-data/{externalId}?startDate=YYYY-MM-DD&endDate=YYYY-MM-DD&externalUnitId={externalUnitId}

For the RC environment:
https://api-rc.quinyx.com/v2/forecasts/target-data/{externalId}?startDate=YYYY-MM-DD&endDate=YYYY-MM-DD&externalUnitId={externalUnitId}

Test endpoint (example)
https://api-test.quinyx.com/v2/forecasts/target-data/mock_60?startDate=2025-09-01&endDate=2025-09-23&externalUnitId=U2&externalSectionId=S2
Request query parameters
startDate* — start of the date range (format YYYY-MM-DD)

endDate* — end of the date range (format YYYY-MM-DD)

externalUnitId* — external unit identifier (matches the unit in target data)

externalSectionId (optional): The external section identifier. Only needed if you want to fetch section-specific data.

{externalId} — path parameter (e.g. mock_60 in test URL) identifying the dataset or external reference
Response
Returns HTTP 200 OK with a JSON body containing the requested target data entries for the given date range.
Example response
{
"externalId": "mock_60",
"externalUnitId": "U2",
"externalSectionId": "S2",
"targetPayload": [
{
"rangeType": "NOT_MORE_THAN",
"value": 10,
"date": "2025-09-01"
},
{
"rangeType": "EXACT",
"value": 15,
"date": "2025-09-08"
},
{
"rangeType": "LESS_THAN",
"value": 20,
"date": "2025-09-10"
},
{
"rangeType": "BETWEEN",
"fromValue": 10,
"toValue": 20,
"date": "2025-09-12"
}
]
}

Delete data

DELETE /v2/forecasts/target-data/{externalId}

This API call deletes target data for a given external ID within a specific date range.

Field description

Mandatory fields are marked with a * icon.

Endpoint / Query parameters
  • externalId*: The external reference ID of the dataset you want to delete.
  • startDate*: The start of the date range to delete (format: YYYY-MM-DD).
  • endDate*: The end of the date range to delete (format: YYYY-MM-DD).
  • externalUnitId*: The external unit identifier linked to the target data.
  • externalSectionId (optional): The external section identifier. Only needed if you want to delete section-specific data.
Response fields
  • No response body.
  • Returns HTTP 200 OK on success.
Example
Endpoint
Production:
https://api.quinyx.com/v2/forecasts/target-data/{externalId}?startDate=YYYY-MM-DD&endDate=YYYY-MM-DD&externalUnitId={externalUnitId}&externalSectionId={externalSectionId}

RC:
https://api-rc.quinyx.com/v2/forecasts/target-data/{externalId}?startDate=YYYY-MM-DD&endDate=YYYY-MM-DD&externalUnitId={externalUnitId}&externalSectionId={externalSectionId}
Test endpoint example
https://api-test.quinyx.com/v2/forecasts/target-data/mock_60?startDate=2025-09-01&endDate=2025-09-23&externalUnitId=U2&externalSectionId=S2
Response
// No response body
// Returns HTTP 200 OK on success


How Did We Do?