Docs·Dashboards

GET/api/v1/spreelytics/dashboards

List dashboards

Returns every dashboard in the audience, newest first. Dashboards belong to the audience rather than to a person, so every member of the workspace sees the same list. Every role can call it, Viewer included.

A dashboard here is only its name and dates. Its cards are saved reports: list them with GET /reports?dashboardId=<id>.

Keys: an account key or an audience key. Getting started explains both kinds.

Parameters

PropInTypeNotes
contactListIdquerystringThe audience id, a UUID. With an audience key it must be that key's own audience.

Response

An array of SpreelyticsDashboardDto.

PropTypeNotes
idstringThe dashboard id.
namestringThe dashboard name.
createdAtstringWhen it was created. Only the create call answers in ISO 8601 (2026-09-30T09:00:00.000Z). Every other call returns the database form (2026-09-30 09:00:00+00), so parse both.
updatedAtstringWhen it last changed. Create and update calls answer in ISO 8601, lists and reads in the database form, as with createdAt.

Request

curl 'https://app.spreelytics.com/api/v1/spreelytics/dashboards?contactListId=…' \
  -H 'Authorization: Bearer YOUR_API_KEY'
const url = new URL('https://app.spreelytics.com/api/v1/spreelytics/dashboards');
url.searchParams.set('contactListId', '…');

const res = await fetch(url, {
  headers: { Authorization: 'Bearer YOUR_API_KEY' },
});
const data = await res.json();
import requests

res = requests.get(
    "https://app.spreelytics.com/api/v1/spreelytics/dashboards",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
    params={"contactListId": "…"},
)
data = res.json()

Response

[
  {
    "id": "string",
    "name": "string",
    "createdAt": "string",
    "updatedAt": "string"
  }
]

See your own numbers today.

Free up to 100k events a month · no credit card

Contact

Tell us what you need.

A real person reads these. We usually reply within one working day.

Or email us directly at contact@spreelytics.com.