Skip to content

List drivers

List the drivers this DataSource is configured with, by brand list

GET/v1/signals/{signal_id}/datasources/{datasource_id}/drivers

A driver list belongs to the brand list it serves, and the data project says how it is read — the attributes of survey questions, or a manually authored list. Only brand lists this Signal can reach are listed.

Authenticate with an API key in X-Api-Key, or a bearer token in Authorization: Bearer <token>.

Parameters#

Path parameters#

  • signal_idstring · required

  • datasource_idstring · required

Example request#

Shell
curl "https://api.odysseysignal.app/v1/signals/{signal_id}/datasources/{datasource_id}/drivers" \
  -H "X-Api-Key: $ODYSSEY_API_KEY"

Response 200#

application/json.

The drivers a DataSource is configured with, by brand list.

Grouped by brand list and then by set, never flattened. A driver id is unique only within its set — two questions both number their attributes from 1 — so a union keyed on id would merge two drivers into one row. A brand list with no driver list configured is absent rather than listed empty.

  • environmentstring · nullable

    The data environment the answer was read in, prod or test: the one Odyssey set on the Signal, or the one an Odyssey person picked for this call.

  • datasource_idstring · required

  • countinteger · required

  • driver_listsarray of objects · required

    Show 7 fields
    • brand_list_idstring · required

      The brand list these drivers serve — the driver list's identity.

    • labelstring · nullable

      What the brand list is called.

    • dataset_idsarray of string · required

      DataSets on this DataSource scoped to this brand list.

    • sourcestring · required

      question | manual — how the data project says the drivers are read.

    • countinteger · required

      Drivers listed, across every set.

    • demand_spacesarray of objects · required

      Shared across the sets: a demand space groups drivers from several questions. Empty where none are defined.

      Show 2 fields
      • idinteger · required

      • labelstring · required

    • setsarray of objects · required

      Show 4 fields
      • idstring · required

        The question the drivers were asked in — spelled as the perception metric over it is keyed — or, for a manual list, the type.

      • typestring · nullable

        relevance (functional) | relation (emotional) | identity | …, where it is authored. Null for a survey set: the survey does not define one.

      • countinteger · required

      • driversarray of objects · required

        Show 4 fields
        • idinteger · required

          The attribute id a driver filter takes. Unique only within its set.

        • labelstring · required

        • descriptionstring · nullable

          The full wording, or the authored definition of what counts as this driver.

        • demand_space_idinteger · nullable

          The demand space it rolls up into; null when ungrouped.

Errors#

Errors are application/problem+json (RFC 9457): type, title, status, detail and, for some, more fields that say how to fix the call. The type is https://api.odysseysignal.app/problems/<code>.

StatusCodeWhen
400invalid-requestThe request is not valid for this DataSet; detail says why.
401unauthorizedNo credential, or one that is not accepted.
403forbiddenThe credential is valid but does not cover what was asked.
404not-foundNothing there, or nothing this credential may read.
422validation-failedThe request does not match the contract; errors lists each field.
429rate_limitedToo many requests, or the monthly quota is used up.
503unavailableA service behind the API did not answer; try again.