Skip to Content
Passage ConnectQuickstart

Connect Quickstart

Get up and running with Passage Connect in 5 minutes.

Prerequisites

  • A Passage Connect API key
  • A backend server (Node.js, Python, or any HTTP client)

Step 1: Create an API key

** Coming soon: Set up your app and generate an API key in the Passage dashboard. **

Today, reach out to the Passage team and get an API key.

From your backend, generate a link.

curl -X POST https://connect.getpassage.ai/v1/links \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "integrationId": "tmobile", "operations": [ { "resource": "mobileBillingStatement", "action": "read" } ], "webhookUrl": "https://your-server.com/webhook" }'

Step 3: Present to user

Direct the user to the appClipUrl. They will log into their account. When finished, they will be redirected back to your application.

Step 4: Receive the result

There are two ways to get the result data.

If you provided a webhookUrl when creating the link, your endpoint receives a signed POST request when the automation completes:

Single operationresult contains the operation’s data directly:

{ "event": "link.complete", "linkId": "link_abc123", "status": "complete", "result": { "billing": [ { "periodStart": "01/15/2025", "periodEnd": "02/14/2025", "amountDue": 85.0, "currency": "USD" } ] }, "error": null, "timestamp": 1704067200000 }

Multiple operationsresult wraps each operation’s output in an operations array:

{ "event": "link.complete", "linkId": "link_abc123", "status": "complete", "result": { "operations": [ { "resource": "mobileBillingStatement", "action": "read", "data": { "billing": [...] } }, { "resource": "paymentMethod", "action": "read", "data": { "paymentMethods": [...] } } ] }, "error": null, "timestamp": 1704067200000 }

The shape of each operation’s data is defined by its JSON Schema — use GET /v1/providers to inspect the schema for every operation.

Verify the signature using the X-Passage-Signature header before trusting the payload. See the Webhook Verification guide.

Fetch the link status until it reaches complete or failed:

curl https://connect.getpassage.ai/v1/links/link_abc123 \ -H "Authorization: Bearer YOUR_API_KEY"

The result field contains the same data that would be sent via webhook (same single-op vs multi-op format described above).

Next steps

Last updated on