Skip to main content

Third-Party Integrations APIs

Version: aju17f20mq

Use the reference below for request and response fields and operation-specific requirements.

Overview

Connect end-user accounts through the optional hosted Pipedream integration. This API requires Pipedream Connect to be enabled for your account.

Everything Is Scoped To The Calling User​

Authentication​

User-facing calls act for the authenticated beneficiary. A backend sk_… key uses an authorized X-On-Behalf-Of selection with users:impersonate; a client pk_… key accompanies that user’s JWT from the configured issuer. Never expose a secret key in a client. Raw identity headers and recipient IDs are not authentication. See Authentication.

Tenant context comes from the authenticated request. Client-supplied X-Tenant-Id, X-User-Id or X-Project-Id are not an authorization mechanism. The current public integration uses the default project. Do not rely on project headers for separate project, test/live or customer isolation on this API.

A completed redirect is not proof of a connected, authorized account. Reconcile the current connection attempt and returned account state. Multiple accounts can exist for one app. A healthy connection does not replace the user’s consent for an action.

Related guide: Connected accounts

Pagination​

JSON conventions​

Requests accept snake_case or camelCase field names; responses use camelCase. Ordinary default-valued scalars and empty repeated fields can be omitted. Explicitly present optional scalars, map values and well-known JSON types follow their own presence rules: an explicit false, 0 or empty value is not universally equivalent to absence. Decode each field according to its schema. 64-bit integers use JSON strings; preserve their precision. Unknown request fields are generally discarded before validation, so a typo can silently change behavior. This is not a guarantee that arbitrary fields or future client contracts are supported. See API conventions.

Pipedream​

Connect a user's own third-party accounts through Pipedream Connect, and manage what they have connected. The arc is: browse the catalog (public data, readable before anyone has connected anything), mint a short-lived hosted link the user opens to authorize one app, then read and remove the accounts that came out of it — including whole-user offboarding.

Server 1​

Travila API

https://api.travila.ai

X-API-Key​

Project/service API key. Use pk_… only with a verified end-user JWT; backend sk_… calls that require a user use authorized on-behalf-of context. Management operations can have different requirements; consult the operation and authentication guide.

X-On-Behalf-Of​

The end user this call acts for. Required with an sk_… key, because a secret key identifies your tenant and not a user; omitting it returns 401 authenticated user_id is required. The key needs the users:impersonate scope or the call fails with 403 insufficient_scope.

Authorization: Bearer​

The end user's own JWT, issued by the OIDC provider configured on the publishable key. Required alongside a pk_… key, and supplies the user identity in place of X-On-Behalf-Of.

Authentication credentials

SettingValue
Security scheme typeapiKey
header parameter nameX-API-Key

Operations​

Document ID: DOC-API-connected-apps-overview. Section identities and revisions.

SectionStable reference
OverviewDOC-API-connected-apps-overview#overview
Everything Is Scoped To The Calling UserDOC-API-connected-apps-overview#everything-is-scoped-to-the-calling-user
AuthenticationDOC-API-connected-apps-overview#authentication
PaginationDOC-API-connected-apps-overview#pagination
JSON conventionsDOC-API-connected-apps-overview#json-conventions
PipedreamDOC-API-connected-apps-overview#reference-group-1
Server 1DOC-API-connected-apps-overview#reference-server-1
X-API-KeyDOC-API-connected-apps-overview#authentication-apiKeyAuth
X-On-Behalf-OfDOC-API-connected-apps-overview#authentication-onBehalfOf
Authorization: BearerDOC-API-connected-apps-overview#authentication-bearerAuth