List connections
Page through your connections with partners — active and paused by default, or those that ended.
GET
{BASE_URL}/connectionsReturns your connections, one page at a time. Requires a provider key; the partner header is ignored. Use it to reconcile your own records — for example after your webhook endpoint has been down.
Without status, the list holds your ACTIVE and PAUSED connections. A code a partner generated but
you have not claimed is never listed.
Query parameters
statusstringoptionalactive,pausedorrevoked— or several, comma-separated, such aspaused,revoked. Omit for active and paused.limitintegeroptional- Connections per page, at least 1. Default
50; a value above 100 is treated as 100, and the response'slimitis the page size used. offsetintegeroptional- Connections to skip, at least 0. Default
0.
Response
data.itemsobject[]required- The page of connections.
data.totalintegerrequired- How many connections match, across all pages.
data.limitintegerrequired- The page size used.
data.offsetintegerrequired- The offset used.
To read everything, repeat with offset increased by limit until offset reaches total.
Status codes#
| Status | Code | Meaning |
|---|---|---|
200 | — | Success. With no connections, items is empty. |
400 | — | status, limit or offset is invalid. |
403 | provider_key_required | A partner key made the call. |
curl "$LOCALOY_BASE_URL/connections?status=paused&limit=50" \
-H "Authorization: Bearer $LOCALOY_PROVIDER_KEY"Response · 200
{
"success": true,
"data": {
"items": [
{
"id": "cm7c0nn3ct10n00000000001",
"partnerId": "cm1partnerid000000000000001",
"partner": { "name": "Sultan's Dine" },
"status": "PAUSED",
"scopes": ["REGISTRATION", "UPDATE", "INVENTORY"],
"grantedScopes": ["REGISTRATION", "UPDATE", "INVENTORY"],
"modules": ["EVENT", "DINING"],
"connectedAt": "2026-09-27T09:14:02.518Z",
"scopesGrantedAt": "2026-09-27T09:12:40.107Z",
"pausedAt": "2026-09-27T12:40:03.009Z",
"revokedAt": null,
"lastCallAt": "2026-09-27T12:31:55.460Z"
}
],
"total": 1,
"limit": 50,
"offset": 0
}
}