Skip to content

Get account and connections

When to use this guide: Use this endpoint as the first API call in a script or integration. It verifies the API key and returns the CRM connections that key can access.

GET /api/v1/me is an identity and access probe. It does not modify data and does not return secrets such as CRM refresh tokens.

The v1 API is read-only.

GET /api/v1/me HTTP/1.1
Host: app.outboundsync.com
Authorization: Bearer osapi_<your-secret>
FieldValue
MethodGET
URLhttps://app.outboundsync.com/api/v1/me
AuthenticationAuthorization: Bearer osapi_<your-secret>
Request bodyNone
Terminal window
curl https://app.outboundsync.com/api/v1/me \
-H "Authorization: Bearer osapi_<your-secret>"
const response = await fetch('https://app.outboundsync.com/api/v1/me', {
headers: {
Authorization: `Bearer ${process.env.OUTBOUNDSYNC_API_KEY}`,
},
});
if (!response.ok) {
throw new Error(`OutboundSync API request failed: ${response.status}`);
}
const data = await response.json();
console.log(data.connections);
{
"account": {
"id": 42,
"email": "you@company.com"
},
"apiKey": {
"name": "Production",
"scopes": ["read"],
"connectionScope": "account"
},
"connections": [
{
"id": 7,
"crm": "HUBSPOT",
"organizationId": "123",
"organizationDomain": "acme.com"
}
]
}
FieldTypeDescription
account.idnumberOutboundSync account owner ID for the API key.
account.emailstring | nullAccount owner email, when available.
apiKey.namestringThe key name shown in the OutboundSync admin app.
apiKey.scopesstring[]Current key scopes. New v1 keys use ["read"].
apiKey.connectionScope"account" | "connection"Whether the key is account-wide or scoped to one CRM connection.
connections[].idnumberOutboundSync connection ID.
connections[].crmstringCRM profile for the connection, such as HUBSPOT or SALESFORCE.
connections[].organizationIdstring | nullCRM organization ID, when OutboundSync has one.
connections[].organizationDomainstring | nullCRM organization domain, when OutboundSync has one.

An account-wide key returns every CRM connection where API access is enabled. A connection-scoped key returns only the selected connection.

If the key is valid but no accessible connection has API access enabled, OutboundSync returns 403.

Write a small Node.js function called getOutboundSyncConnections.
It should read OUTBOUNDSYNC_API_KEY from the environment, call GET https://app.outboundsync.com/api/v1/me, and return the connections array.
Handle 401, 403, and 429 with clear error messages based on https://outboundsync.com/docs/api/errors-and-rate-limits/.