List all connections

GET/unified/connection

Parameters

limitnumber default=100
offsetnumber default=0
updated_gtedate-time
Return only results whose updated date is equal or greater to this value (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
sort enum
order enum
external_xrefstring
Filter the results to only those integrations for your user referenced by this value
categoriesstring array
Filter the results on these categories
envstring default=Production

Returns

A connection represents a specific authentication of an integration.

idstring read-only
Unique identifier for this integration object
created_atdate-time read-only
The date that this integration object was created (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
updated_atdate-time read-only
The last date that this integration object was updated (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
workspace_idstring read-only
(reference to KmsSpace)
integration_typestring required
The integration type
integration_namestring
external_xrefstring
customer's user ID
permissions enum array required
Valid values:
"accounting_account_read"
"accounting_account_write"
"accounting_transaction_read"
"accounting_transaction_write"
"accounting_journal_read"
categories enum array required
Valid values:
"passthrough"
"hris"
"ats"
"auth"
"saml"
The Integration categories that this connection supports
authobject
An authentication object that represents a specific authorized user's connection to an integration.
is_pausedboolean read-only
Whether this integration has exceed the monthly limit of the plan
environmentstring
last_healthy_atdate-time read-only
(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
last_unhealthy_atdate-time read-only
(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
last_unhealthy_codestring
The HTTP status code that caused the last unhealthy status
secretsmanager_idstring
the ID of the SecretsManager object
secretsmanager_keystring
the key/path/name of the secret within the vault

Errors

Errors return the HTTP status code and a JSON body with statusCode, error (the short label) and message (a human-readable detail).

{
  "statusCode": 429,
  "error": "Too Many Requests",
  "message": "Too many requests to unified.to API; max requests per minute: N"
}
StatusErrorMeaning
400Bad RequestThe request was malformed or failed validation.
401UnauthorizedThe connection is likely broken; re-authorize it.
403ForbiddenThe connection is missing permissions or scopes.
404Not FoundThe requested resource does not exist.
429Too Many RequestsRate limit exceeded (see the two sources below).
500Internal Server ErrorAn unexpected error occurred.
501Not ImplementedNot supported by this integration.

Errors from the underlying integration pass through: the integration's status comes back as ours (429, 401, 403, 404 or 5xx), usually with its message. When the integration's error body is unclear, Unified extracts what it can and returns a clearer message.

429 Too Many Requests

A 429 has two possible sources:

  • The integration's own rate limit, passed through.
  • Unified's workspace limit: a rolling 60 seconds, set by plan, with the message Too many requests to unified.to API; max requests per minute: N.
const options = {
  method: 'GET',
  url: 'https://api.unified.to/unified/connection',
  headers: {
    authorization: 'bearer .....'
  },
  params: {
    limit: 50,
    offset: 0,
    updated_gte: '2026-10-14T19:54:00.335Z',
    sort: 'updated_at',
    order: 'asc',
    external_xref: '',
    categories: ['crm'],
    env: 'Production',
  }
};

const results = await axios.request(options);
Are we missing anything? Let us know
Was this page helpful?