Concepts

Identifiers and credentials

The two credentials and four ids you'll handle, and which one history follows.

Two credentials

CredentialYou get it fromYou use it for
Developer sessionSigning in to the consoleThe console: applications, connections, your profile
Connection access tokenPOST /v1/oauth/tokenExecutions for one connection

The session is yours as a developer and isn't part of the API you integrate. The token belongs to one connection and goes on every execution request.

Tokens are long-lived and don't refresh, so a stored token works until it's revoked. Treat it like a password. Issuing a new token for the same connection revokes the previous one, and POST /v1/oauth/revoke revokes one on demand.

Four ids

IdWhere it appearsWhat it identifies
Application idclient_id on the auth link; the path of the execution routesYour OAuth client
user_idThe token response; userId on a connectionThe person, within your application
connection_idThe token responseOne website account belonging to that person
Execution idThe execution routesOne run

A person can hold several connections, one per website. Store connections keyed by connection_id and group them by user_id.

History follows the connection

GET /v1/applications/{id}/executions lists the runs of the connection the token belongs to. The history belongs to the connection, not the token, so a user who reconnects keeps their history.

Ownership is checked everywhere

Every route checks that the application in the path, the token, and any nested id belong together. A mismatch returns not found rather than forbidden, so an id you don't own reveals nothing.

Next steps

Connections and authorization shows how a connection is created and what happens to it over its life.