Account
LinkedIn account connection management.
Connect a LinkedIn account to a seat, finish any verification LinkedIn asks for, and reconnect it in place when its session lapses. You need an API key first; the Quickstart covers that and the dashboard route.
Connect an account
curviate account seats
printf '%s\n' "$LINKEDIN_PASSWORD" | curviate account link --auth-method credentials --email jane@example.com --password-stdin --country US--country is where LinkedIn sees the account connecting from: the two-letter code of the country its owner normally signs in from. A new connect names exactly one location, --country, --ip or your own --proxy-host; without one the command exits 2 and sends nothing. It is strict: with no connection free in that country the connect fails rather than use another, unless you pass --allow-country-fallback. Move a connected account later with account update --country.
With one free seat, account link uses it; with several, pass --seat-id from account seats. On success it prints the connected account and its acc_... id.
When LinkedIn asks for verification
In a terminal, account link prompts for the code. In a script or agent (no TTY, or --no-interactive) it exits 12 instead, with the account's account_id and the checkpoint's challenge_type. Exit 12 is not an error: it names the next call.
# A code (email, SMS, authenticator)
curviate account checkpoint solve acc_YOUR_ACCOUNT_ID --code 123456
# A mobile-app approval: approve on the phone, then
curviate account checkpoint poll acc_YOUR_ACCOUNT_ID --wait
# No code arrived: re-send it, where the challenge type allows
curviate account checkpoint request acc_YOUR_ACCOUNT_ID
# Check on a connect without acting on it: status is pending, resolved, expired or failed
curviate account connect-session poll --session acc_YOUR_ACCOUNT_IDReconnect in place
When account get shows reconnect_needed or disconnected, re-authenticate the same account. It keeps its connection location unless you pass a new one:
curviate account link --auth-method credentials --email jane@example.com --password-stdin --account-id acc_YOUR_ACCOUNT_ID --seat-id SEAT_IDDo not disconnect and link again. account disconnect destroys the account record and releases its seat, so anything keyed on the old acc_... id stops resolving.
Commands
| Command | Description |
|---|---|
curviate account list | List connected LinkedIn accounts. |
curviate account get | Get a connected LinkedIn account: its status (active, reconnect_needed, restricted, connecting or disconnected) and its per-action quotas. --verbose adds cached profile fields, which may be null. |
curviate account seats | List the workspace's live seats and whether each is free or bound to an account. A seat with occupied:false (free) is a seat_id curviate account link --seat-id accepts right now. Not paginated (bounded by purchased seats), --all is not supported. An empty result can mean the workspace has no seats, or that billing needs attention. |
curviate account link | Connect a LinkedIn account to an empty seat. If LinkedIn requires verification you'll be prompted for the code interactively. Given --auth-method and its credentials, a non-interactive shell exits 12 at that step and you finish with curviate account checkpoint solve <account_id> --code. |
curviate account connect-session poll | Poll the status of an in-progress connect (auth intent) for completion. Without --wait: a single poll. The JSON status field (pending |account link until a terminal state. |
curviate account update | Update an account's metadata, connection location or own proxy. Prints the updated account, with connection_location re-read after a location change. |
curviate account disconnect | Hard-disconnect a LinkedIn account and release its seat. |
curviate account checkpoint solve | Solve a checkpoint challenge with an OTP / 2FA code. |
curviate account checkpoint poll | Poll for mobile-app approval of a pending checkpoint challenge. With --wait, blocks on an adaptive cadence until a terminal state (or --timeout elapses) instead of a single poll. |
curviate account checkpoint request | Re-request the challenge notification for a pending checkpoint (e.g. re-send an OTP email, SMS code, or mobile-app approval push). Not every challenge type supports it; an authenticator- app code has nothing to re-send. The response's resent boolean tells you honestly whether a new notification actually went out; the command still exits 0 either way. With --challenge it instead answers a challenge_selection checkpoint by picking the verification method. |
Exit codes: the exit code table.