List drivers
List the drivers this DataSource is configured with, by brand list
GET/v1
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 · requireddatasource_idstring · required
Example request#
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 · nullableThe data environment the answer was read in,
prodortest: the one Odyssey set on the Signal, or the one an Odyssey person picked for this call.datasource_idstring · requiredcountinteger · requireddriver_listsarray of objects · requiredShow 7 fieldsHide fields
brand_list_idstring · requiredThe brand list these drivers serve — the driver list's identity.
labelstring · nullableWhat the brand list is called.
dataset_idsarray of string · requiredDataSets on this DataSource scoped to this brand list.
sourcestring · requiredquestion | manual — how the data project says the drivers are read.
countinteger · requiredDrivers listed, across every set.
demand_spacesarray of objects · requiredShared across the sets: a demand space groups drivers from several questions. Empty where none are defined.
Show 2 fieldsHide fields
idinteger · requiredlabelstring · required
setsarray of objects · requiredShow 4 fieldsHide fields
idstring · requiredThe question the drivers were asked in — spelled as the perception metric over it is keyed — or, for a manual list, the type.
typestring · nullablerelevance (functional) | relation (emotional) | identity | …, where it is authored. Null for a survey set: the survey does not define one.
countinteger · requireddriversarray of objects · requiredShow 4 fieldsHide fields
idinteger · requiredThe attribute id a driver filter takes. Unique only within its set.
labelstring · requireddescriptionstring · nullableThe full wording, or the authored definition of what counts as this driver.
demand_space_idinteger · nullableThe 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>.
| Status | Code | When |
|---|---|---|
| 400 | invalid-request | The request is not valid for this DataSet; detail says why. |
| 401 | unauthorized | No credential, or one that is not accepted. |
| 403 | forbidden | The credential is valid but does not cover what was asked. |
| 404 | not-found | Nothing there, or nothing this credential may read. |
| 422 | validation-failed | The request does not match the contract; errors lists each field. |
| 429 | rate_limited | Too many requests, or the monthly quota is used up. |
| 503 | unavailable | A service behind the API did not answer; try again. |