Skip to main content

Before you start

Onboarding gives you four values. Write to hello@tryverso.ai to get them. You also need Node.js 20 or newer for the SDK, and a public HTTPS endpoint for webhooks.

1. Install the SDK

2. Send the user to the connect page

Sign a link on your backend and redirect the user to it. Collect the user’s consent in your own UI before this step: the hosted page goes straight to the provider’s login.
The link expires after 15 minutes and works once. If the user abandons the page, sign a new one.

3. Receive webhooks

Verso posts signed JSON to your webhook URL. Verify the signature on the raw body, then act on the typed event.
Respond with any 2xx within 10 seconds. Deliveries are retried on failure, so use deliveryId to ignore duplicates.

4. Check a user’s status

connected means at least one connection is syncing. needsReauth means the user has to connect again. recentConversationCount is the number of conversations the user started in the last 30 days.

5. Read conversations

6. What happens next

  • The first sync runs within a minute of the connection and imports the most recent conversations. Older history is backfilled over the following hours, at the pace the provider allows.
  • Later syncs run every 4 hours after activity, and less often for idle accounts, up to every 48 hours. Each sync that changes something sends data.imported.
  • When the provider rejects the stored session, the connection becomes needs_reauth and you receive reauth.needed. Sign a new connect link for the user.
  • To let the user see and delete their data, sign a link with purpose: "manage".

Next steps

Authentication

Signed links, API keys, rate limits.

Connect flow

What the user sees and what Verso does.

Webhooks

Every event, with payloads.

Data management

Status, activity, reading and sync cadence.