Connect a source account (create an import)
Creates an import (a draft) after Featurebase checks the key with the source. Send source and its credential (see GET /v2/helpdesk_imports/sources):
- Intercom:
{ "apiKey": "<access token>" }(+subdomain:EUorAUfor workspaces hosted there). - Freshdesk:
{ "subdomain": "acme.freshdesk.com", "apiKey": "<API key of an administrator>" }. - Crisp:
{ "apiKey": "<token>", "accountId": "<address of the Crisp settings page, or the website ID>" }.
The key is stored encrypted, never returned, and deleted when the pull ends. Nothing is read or added yet. Next: map the teammates (GET /v2/helpdesk_imports/{id}/teammates). A draft is cancelled after 7 days without a change.
Body
Response
Created
While the import waits for you (draft, ready, paused, needs_reconnect): when it is cancelled if nothing happens.
2026-11-02T12:00:00.000ZThe field mapping. Null for a draft (the fields are known after the pull).
The saved teammate, team and brand choices (see GET /v2/helpdesk_imports/{id}/teammates for what each one maps to).
Object type identifier
helpdesk_importhelpdesk_importpull: reads the source into a private staging area; nothing is added to your workspace. write: adds the data.
pull, writepulldraft: connected, not started. running: reading the source (phase: pull) or adding the data (phase: write). ready: everything was read; map the fields, then start. paused. needs_reconnect: the source refused the key. completed, cancelled, failed.
draft, running, paused, needs_reconnect, ready, completed, cancelled, failedreadyInvite them (in the dashboard) and their imported messages become their own when they join.
Why a running import waits (for example the source's rate limit), and until when. It continues by itself.