Perscient

Signature Card Catalog API Explorer

How to call this API

Every request must include your key in an Authorization header:

Authorization: Bearer etck_…

GET /v1/data/applications

Lists the applications your key can read, with each application's available filter dimensions.

curl -H 'Authorization: Bearer etck_…' \
  /v1/data/applications

GET /v1/data/signatures

Returns a flat list of {applicationName, label, description?} rows across every application your key can read. Each row is a queryable unit for /v1/data/series; description is the common description from the card catalog and is omitted when none exists.

curl -H 'Authorization: Bearer etck_…' \
  /v1/data/signatures

POST /v1/data/series

Returns time-series rows for one or more (app, label) combinations. The index value is 0Index100, recomputed from movingDensity across the requested [start, end] window — the same series pulled over a different window returns different index values. Pass "format": "csv" for a CSV response instead of JSON.

curl -X POST -H 'Authorization: Bearer etck_…' \
  -H 'Content-Type: application/json' \
  -d '{
    "start": "2024-01-01",
    "end":   "2024-12-31",
    "resolution": "daily",
    "format": "json",
    "series": [
      { "appName": "AI Effects", "label": "Banking",
        "filterDimensions": [{"key":"industry","value":"Banking"}] }
    ]
  }' \
  /v1/data/series

GET /v1/data/applications

Lists every application your key is authorized to read. Each row includes the applicationName and a filterDimensions map describing which dimension keys (e.g. industry, country) and values can be passed as filters when calling /v1/data/series.

GET /v1/data/signatures

Returns a flat list of {applicationName, label, description?} rows across every application your key can read. Each row is a queryable unit for /v1/data/series; description is the common description from the card catalog and is omitted when a signature has none.

POST /v1/data/series

Returns time-series rows for one or more (app, label) combinations. The index value is 0Index100, recomputed from movingDensity across the requested [start, end] window — the same series pulled over a different window returns different index values. Switch the format to csv for a CSV body instead of JSON.

Series (load metadata first to populate dropdowns)
{
  "start": "2025-04-27",
  "end": "2026-04-27",
  "resolution": "daily",
  "format": "json",
  "series": []
}

Response

No request sent yet.