For the complete documentation index, see llms.txt. This page is also available as Markdown.

Account

Endpoints for discovering what the current account has access to.

Resolve a bearer token to a user, list the external applications connected to the account, and manage shared accounts and stacks.

Shared account and stack share schemas

Identify the current token's owner

get
/v1/tokenInfo

Resolves a bearer token to the user it authenticates as.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
200

Token identity.

application/json
_userIdstring · objectIdOptional

User this token authenticates as.

Example: 5e58483b68b52e5827d56a86
get/v1/tokenInfo
GET /v1/tokenInfo HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "_userId": "5e58483b68b52e5827d56a86"
}

List applications in use

get
/v1/applications

Returns every external application that has at least one connection in the account, grouped with summaries of those connections.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
200

Applications in use, each with its connection references.

application/json

List of external applications that have at least one connection in the account.

get/v1/applications
GET /v1/applications HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "applications": [
    {
      "_id": "netsuite",
      "refs": {
        "connections": [
          {
            "_id": "61f92026dd053843b5d72350",
            "createdAt": "2022-01-31T17:05:42.000Z"
          }
        ]
      }
    },
    {
      "_id": "shopify",
      "refs": {
        "connections": [
          {
            "_id": "62a80ef9ea2474232730eede",
            "createdAt": "2022-06-13T21:44:41.000Z"
          }
        ]
      }
    },
    {
      "_id": "3mftp_tp",
      "refs": {
        "connections": [
          {
            "_id": "68efa98330271865e67477de",
            "createdAt": "2025-10-15T14:02:43.371Z"
          }
        ]
      }
    }
  ]
}

List accounts shared with you

get
/v1/shared/ashares

Returns every account that other users have shared with the current user. This is the inverse of GET /v1/ashares, which lists users who have access to your account. Respond to a pending invitation with PUT /v1/ashares/{_id}/accept or PUT /v1/ashares/{_id}/dismiss; leave an account with DELETE /v1/shared/ashares/{_id}.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
200

Array of shared-account entries.

application/json

A share record granting the current user access to another user's account. This is the inverse of GET /v1/ashares: here the current user is the recipient, and ownerUser is who shared.

_idstring · objectIdOptional

Unique identifier for this share record, not a user or account ID.

Example: 612345abcdef6789012345ab
acceptedbooleanOptional

When true, the current user has accepted the invitation. Unaccepted shares appear in the list but cannot be acted on — accept one with PUT /v1/ashares/{_id}/accept.

dismissedbooleanOptional

When true, the current user declined the invitation. Present only while dismissed; the owner can reinvite, which clears it.

disabledbooleanOptional

When true, the owner has suspended the current user's access to the account. Present only while suspended.

accountSSORequiredbooleanOptional

When true, the owner requires the current user to sign in through SSO for this account. Present only when the owner has an active SSO client; reads true while the owner enforces SSO for every user, even if the share itself does not carry the flag.

ssoSetupPendingbooleanOptional

When true, the current user has not yet completed SSO setup with this owner, so the SSO-required access is not fully active. Present only while pending.

isProductionAdminbooleanOptional

When true, the share grants administrator access to the owner's production environment. Present only when it applies.

accessLevelstring · enumOptional

Account-wide permission level. Mutually exclusive with integrationAccessLevel when set to administrator or manage. When set to monitor, per-integration overrides may elevate specific integrations to manage. Absent when the user has only per-integration access.

Possible values:
lastModifiedstring · date-timeRead-onlyOptional

Timestamp when this share record was last updated.

Example: 2025-11-15T12:00:00.000Z
createdAtstring · date-timeRead-onlyOptional

Timestamp when this share record was created.

Example: 2025-11-15T12:00:00.000Z
get/v1/shared/ashares
GET /v1/shared/ashares HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
[
  {
    "_id": "612345abcdef6789012345ab",
    "accepted": true,
    "accessLevel": "administrator",
    "integrationAccessLevel": [],
    "ownerUser": {
      "_id": "5ab979f5038e555b2a95c385",
      "name": "Account Owner",
      "email": "owner@example.com"
    },
    "lastModified": "2025-11-15T12:00:00.000Z",
    "createdAt": "2025-11-15T12:00:00.000Z"
  },
  {
    "_id": "71a234bcdef5678901234567",
    "accepted": true,
    "accessLevel": "monitor",
    "integrationAccessLevel": [
      {
        "_integrationId": "60f1a2b3c4d5e6f7a8b9c0d1",
        "accessLevel": "manage"
      }
    ],
    "ownerUser": {
      "_id": "62b456e7890abcdef1234567",
      "name": "Partner Admin",
      "email": "partner@example.com"
    },
    "lastModified": "2026-02-10T08:30:00.000Z",
    "createdAt": "2026-01-05T14:00:00.000Z"
  }
]

Leave a shared account

delete
/v1/shared/ashares/{_id}

Revokes the current user's own access to an account that was shared with them by deleting the share record. Leaving an administrator share also removes the matching shares in the owner's other environments. The only share a user holds cannot be deleted unless that account requires SSO for the user — dismiss it through PUT /v1/ashares/{_id}/dismiss instead. To remove a user from your account, use DELETE /v1/ashares/{_id}.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
_idstring · objectIdRequired

Share record id from GET /v1/shared/ashares, not a user or account id.

Example: 612345abcdef6789012345ab
Responses
204

Share record removed; the caller no longer has access to the account.

No content

delete/v1/shared/ashares/{_id}
DELETE /v1/shared/ashares/{_id} HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*

No content

List stack share invitations

get
/v1/shared/sshares

Returns stack-share records for the current user, including share status, the user who shared, and a stack summary. To list usable stacks directly, use GET /v1/shared/stacks. Respond to a pending invitation with PUT /v1/sshares/{_id}/accept or PUT /v1/sshares/{_id}/dismiss.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
200

Array of stack share entries.

application/json

A share record granting the current user access to another user's stack. The _id here is the share record — the stack's own ID is in stack._id.

_idstring · objectIdOptional

Unique identifier for the share record, not the stack itself.

Example: 69f53622861a268851c836d0
acceptedbooleanOptional

When true, the current user has accepted the invitation. The stack cannot be used until accepted.

get/v1/shared/sshares
GET /v1/shared/sshares HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
[
  {
    "_id": "69f53622861a268851c836d0",
    "accepted": true,
    "ownerUser": {
      "_id": "69790a36cf9d563e23345f49",
      "email": "partner@example.com",
      "name": "Partner User"
    },
    "stack": {
      "_id": "69f536192e7966f4032f2299",
      "name": "sample",
      "type": "server"
    }
  }
]

Accept a stack share invitation

put
/v1/sshares/{_id}/accept

Accepts an invitation to use another user's stack on behalf of the caller. The _id is a share record addressed to the caller — take it from GET /v1/shared/sshares. Once accepted, the stack appears in GET /v1/shared/stacks and can be referenced by the caller's hooks and wrappers. Accepting a share that is already accepted changes nothing.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
_idstring · objectIdRequired

Share record id from GET /v1/shared/sshares, not the stack id.

Example: 69f53622861a268851c836d0
Responses
204

Invitation accepted (or already accepted).

No content

put/v1/sshares/{_id}/accept
PUT /v1/sshares/{_id}/accept HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*

No content

Dismiss a stack share invitation

put
/v1/sshares/{_id}/dismiss

Declines an invitation to use another user's stack on behalf of the caller. The _id is a share record addressed to the caller — take it from GET /v1/shared/sshares. The owner can send the invitation again with PUT /v1/sshares/{_id}/reinvite. Dismissing a share that is already dismissed changes nothing.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
_idstring · objectIdRequired

Share record id from GET /v1/shared/sshares, not the stack id.

Example: 69f53622861a268851c836d0
Responses
204

Invitation dismissed (or already dismissed).

No content

put/v1/sshares/{_id}/dismiss
PUT /v1/sshares/{_id}/dismiss HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*

No content

List available stacks

get
/v1/shared/stacks

Returns every stack the current account can use — both owned and accepted shared stacks. For share metadata (who shared, acceptance status), use GET /v1/shared/sshares.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
200

Array of stacks (may be empty).

application/json

Summary of a stack available to the account, returned by GET /v1/shared/stacks. For the full stack resource (CRUD, dependencies), use GET /v1/stacks/{_id}.

_idstring · objectIdOptional

Unique identifier for this stack.

Example: 69f536192e7966f4032f2299
namestringOptional

Display name shown in the UI when selecting a stack.

Example: Production On-Prem Agent
typestring · enumOptional

Execution environment type that determines which configuration block is present.

Possible values:
get/v1/shared/stacks
GET /v1/shared/stacks HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
[
  {
    "_id": "69f536192e7966f4032f2299",
    "name": "Production On-Prem Agent",
    "type": "server",
    "server": {
      "hostURI": "https://agent.example.com:7020",
      "systemToken": "********",
      "ipRanges": [
        "10.0.0.0/8"
      ]
    }
  }
]

Last updated

Was this helpful?