Skip to main content

Access

GET https://searchlight.digital/api

Returns what your credentials can reach: the organizations you can request, the accounts under each one, the endpoints available to you, and the dictionary of every field.

Start here if you don't know what to put in the <organization> path segment. This is the one endpoint with no organization in its path, because finding that value is what it's for.

Query Parameters

None. Extra parameters are ignored.

Response

A JSON object (gzip-compressed, see responses):

{
"user": "you@example.com",
"organizations": [
{
"organization": "example-group",
"accounts": ["example-home-services", "example-plumbing", "example-air"]
},
{
"organization": "example-group-northeast",
"accounts": ["example-air"]
}
],
"endpoints": [
{
"endpoint": "events",
"path": "/api/{organization}/events",
"parameters": ["fields", "start", "end", "interval", "account", "accounts"],
"metrics": ["spend", "leads", "bookRate", "..."],
"dimensions": ["account", "campaign", "attributionCategory", "..."]
},
{
"endpoint": "benchmarks",
"path": "/api/{organization}/benchmarks",
"parameters": ["fields", "month", "account", "accounts"],
"metrics": ["bookRate", "matchRate", "roasClosed", "..."],
"dimensions": ["attributionCategory", "attributionChannel", "customerStatus", "normalizedBusinessUnit"],
"notes": "Anonymized industry benchmark statistics for one calendar month; ..."
},
{
"endpoint": "insights",
"path": "/api/{organization}/insights",
"parameters": ["fields", "start", "end", "account", "accounts"],
"notes": "Latest insight per account when start and end are omitted."
}
],
"dictionary": {
"bookRate": {
"displayName": "Book Rate",
"definition": "The efficiency of booking new leads, calculated as the number of Booked Customers divided by Customers.",
"type": "metric",
"format": "percent",
"benchmarkable": true
},
"...": {}
}
}
FieldDescription
userThe login your credentials resolve to
organizationsEvery organization you can request, each with the account keys under it
endpointsThe available endpoints, with their parameters and the metrics and dimensions each accepts
dictionaryEvery field, keyed by name: its display name, definition, type (dimension or metric), format, and its possible values where they are enumerable. Metrics that benchmarks supports are flagged benchmarkable, and its dimensions benchmarkDimension

Organizations and accounts

Any organization value in the response works in the <organization> path segment of the other endpoints, and any account key works in their account and accounts parameters.

Organizations nest, so the same account appears under every organization it belongs to: a group and its sub-groups. Requesting the parent covers all of its accounts; requesting a sub-group narrows to that part. Both are valid, so pick whichever matches the scope you want.

An account key can also be used directly in the path segment as a shorthand for that single account:

GET /api/example-home-services/events?fields=spend&start=2026-06-01&end=2026-06-30

Umbrella organizations that span the whole platform are not listed, and are rejected by the other endpoints.

Authentication

This endpoint requires a user API key or a signed-in session.

{ "error": "Unauthorized. Sign in or use an API key." }

See authentication for how to generate a user key.

Errors

StatusCause
401Missing or incorrect key