Skip to main content
POST
Generate a single-use link and hand it to your user. They connect their account on app.linkupapi.com (LinkedIn sign-in and 2FA, WhatsApp QR or pairing code, Google / Microsoft consent or SMTP settings), and you only receive the resulting account_id. Your app never sees or handles the credentials.
The link itself is free. A LinkedIn login through it costs 1 credit, like Connect Account; WhatsApp and email are free. Ignore this if you’re on per-seat pricing.
Flow
  1. Your backend calls this endpoint and gets a url.
  2. Your app sends the user to that url (full redirect or new tab, never an iframe).
  3. The user picks a channel (if you offered several) and connects it on our page, verification included.
  4. We POST the outcome to your notify_url and send the user to your success_url. You can also poll Get Connection Link or List Accounts.
Links are single-use: generate a new one each time a user starts a connection.

Header Parameters

string
required
Your API key

Body Parameters

string | string[]
default:"*"
Channels the page offers: linkedin, whatsapp, email, or * for all. With a single value the page skips the chooser. platform works as a shorthand for one value.
string
Your own reference for this user (max 200 characters), echoed in the notify_url payload so you can match the new account to your user.
integer
default:"3600"
Link lifetime in seconds, from 60 to 604800 (7 days).
string
LinkedIn and WhatsApp: lock the proxy country (same codes as Connect Account). Omit to let the user pick it on the page.
string
Reconnect an existing account instead of creating one. The page only offers that account’s channel and pre-fills its email; the account keeps its id, its country and its webhooks.
string
Display name of the account once connected. Defaults to the email.
string
Where to send the user once the account is connected. Omit to show our confirmation screen.
string
Where to send the user if they open the link after it expired or was used.
string
HTTPS endpoint we POST to once the account is connected. See Callback.

Response

Id of the link, for Get Connection Link.
string
The page to send your user to.
string
ISO 8601 UTC expiry of the link.

Callback

When the account is connected we POST this JSON to notify_url, with a X-Linkup-Link-Id header. We retry twice (after 5 s and 30 s) if your endpoint doesn’t answer 2xx.
status is RECONNECTED when the link was created with an account_id. The callback is not signed: confirm it with Get Account before trusting it. GET /v2/accounts/connect-link/{link_id} returns the link’s status (pending, checkpoint while the user is completing a verification, used, expired), the platform chosen, its account_id once connected, and notified when a notify_url was set.