ALG Residual API

Effective dates.

List the editions available to you and the model years each one publishes, to assemble the values Vehicle tree expects.

Input

Pass parameters in the request query string. One call returns every edition and its model years, so a caller can populate both selections without a second request.

URL ParameterDefaultRequiredDescription
dataSetId 1 Data set ID is optional Selects the US data set. May be omitted to use data set 1.

Examples

curl -X POST 'https://api.alg.com/product/effectiveDates' \
  -H 'Authorization: Bearer YOUR_API_KEY'

Output

Editions are keyed by date, newest first, and only released editions appear. The list is scoped to your subscription: an edition or model year you are not entitled to is not returned.

PropertyTypeDescription
dataSetIdIntegerThe data set the editions came from.
latestDateThe newest edition available to you, and the first key in effectiveDates. Returns null when you are entitled to no editions.
effectiveDatesObjectKeyed by date, newest first. Pass a key as effectiveDate to Vehicle tree.
effectiveDates[date].modelYearsArrayModel years the edition publishes, newest first. Pass an entry as modelYear to Vehicle tree.

Examples

curl -X POST 'https://api.alg.com/product/effectiveDates' \
  -H 'Authorization: Bearer YOUR_API_KEY'
{
  "dataSetId": 1,
  "latest": "2026-11-01",
  "effectiveDates": {
    "2026-11-01": {
      "modelYears": [2027, 2026, 2025, 2024, 2023]
    },
    "2026-05-01": {
      "modelYears": [2026, 2025, 2024, 2023, 2022]
    }
    // ... one entry per released edition you subscribe to
  }
}

Authentication

Every request must be authenticated with an API key issued to you by ALG, sent as a bearer token.

Header Value Description
AuthorizationBearer YOUR_API_KEYAn API key issued to you by ALG. Tied to your company. Keep it server-side.

Examples

curl -X POST 'https://api.alg.com/product/effectiveDates' \
  -H 'Authorization: Bearer YOUR_API_KEY'

curl -X POST 'https://api.alg.com/product/effectiveDates'
{
  "errors": [
    {
      "status": 401,
      "code": null,
      "message": "Please provide a Bearer token in the Authorization header"
    }
  ]
}