API reference
Connections
List the social accounts a workspace connected, with token health and the last delivery outcome.
Base URL https://api.overads.io/public/v1. Every route needs a key with the scope shown, sent as Authorization: Bearer sk_live_YOUR_KEY. The machine-readable contract is at https://api.overads.io/public/v1/openapi.json, no key needed. Scope for this family: connections:read.
Connecting an account happens in the app, with the platform's own sign-in. The API reads what is connected; it cannot connect or disconnect.
GET/connections
Scope connections:read. Every social account connected to the workspace, with token health.
tokenStatus is valid, expiring_soon (inside seven days of expiry), expired (past expiry, or the connection is not active) or unknown (the platform reported no expiry). A post to an expired connection is refused with CONNECTION_EXPIRED.
lastError and lastSuccessfulPost come from the delivery log. Both null means nothing has been delivered through it yet.
Response: { data: Connection[] }.
{
"data": [
{
"id": "3f1c1a2e-6b2a-4a0e-9a5f-0d5a7d0f2b11",
"platform": "linkedin",
"accountName": "overads",
"displayName": "overads",
"avatarUrl": null,
"status": "active",
"tokenStatus": "valid",
"tokenExpiresAt": "2026-11-02T09:12:00.000Z",
"lastError": null,
"lastSuccessfulPost": "2026-09-08T16:00:04.000Z",
"createdAt": "2026-08-01T10:00:00.000Z"
}
]
}curl https://api.overads.io/public/v1/connections -H "Authorization: Bearer sk_live_YOUR_KEY"