Skip to main content
GET
Connected X accounts API, health & write readiness
Free. This endpoint does not consume credits.
List every X account connected to the authenticated Xquik account. Read each local connection ID, X username, X user ID, and login health before writes. This endpoint lists your Xquik connections. It does not search public Twitter accounts. Use Search Users for public profile search.
Check accounts[].health before scheduling writes. healthy can write now. recovering can reconnect on the next account use. temporaryIssue is still paused by a transient cooldown. needsReauth requires credentials, TOTP, or a completed security challenge. locked and suspended stay blocked until the account is fixed on X.

When to list connected X accounts

Scope, ordering & pagination

The response contains only connections owned by the authenticated Xquik account. It returns every matching connection in one array. The endpoint accepts no query parameters. It does not paginate, search, or filter. Accounts are ordered by createdAt from earliest to latest. An Xquik account without connected X profiles receives {"accounts": []}. Connect one account before calling write endpoints.

Headers

Send an Xquik API key or OAuth 2.1 bearer token.
string
Xquik API key. Generate one from the dashboard.
string
OAuth bearer token using Bearer YOUR_TOKEN.

Response

200 OK

object[]
required
Account-scoped connected X profiles. Empty when no connection exists.
string
required
Xquik connection ID. Use it as accountId for write endpoints.
string
required
Connected X username without a leading @.
string
required
Stable X user ID as a string. This is not the Xquik connection ID.
string
required
Stored connection status. The documented response example uses active.
string
required
Derived login/cookie health. One of healthy, locked, needsReauth, recovering, suspended, or temporaryIssue. See Account Health below.
string
ISO 8601 time when the stored X session was obtained. Omitted before login.
string
required
ISO 8601 time when this Xquik connection was created.
string
required
ISO 8601 time when this connection row last changed.

Choose the correct account identifier

Do not send xUserId where a write endpoint requires accountId. Reconnecting after disconnection creates a new Xquik connection ID.

Preflight a write

  1. List connected X accounts.
  2. Match the intended xUsername or xUserId.
  3. Read health before selecting the local id.
  4. Continue immediately only when the account is ready.
  5. Reauthenticate, wait, or retry according to the health table.
The status field alone is insufficient. An active connection can still need reauthentication or an X-side recovery.

401 Unauthenticated

Send a valid Xquik API key or OAuth bearer token.

429 Rate limited

Wait for the Retry-After value before listing accounts again.
Related. Connect X Account to add a new account, or Get X Account to fetch details for a specific account.

Account health

The health field is derived from recent connection state. Read it before writes. Your workflow can proceed, wait, or request an operator action.

healthy

Cookies are valid. Writes can proceed.

needsReauth

Credentials, TOTP, email verification, passkey, or another security challenge blocked login. Use reauth with current credentials and a valid TOTP secret before retrying writes.

locked

X locked the account or requires account-side verification. Complete the X check, then reauth or reconnect after the account works again.

suspended

X suspended the account. Appeal on X. Writes stay paused until the account is restored.

recovering

The transient cooldown ended. The account can reconnect on its next use.

temporaryIssue

Transient or automated cooldown is still active. Wait for recovery, or use bulk retry for temporary failures.

Account health decisions

Health is derived from recent connection state. It can change after a failed login, cooldown expiry, reauthentication, or X-side recovery.

Connected X account questions

Does this endpoint search Twitter accounts?

No. It lists only X accounts connected to your Xquik account. Use Search Users to find public profiles. Use Profile Lookup for one username.

Can I list multiple Twitter accounts?

Yes. The accounts array contains every connection owned by the authenticated Xquik account. The endpoint returns them in connection order. It has no page cursor, search term, status filter, or health filter. Filter the returned array locally when your workflow manages several accounts. Always keep the selected id paired with its xUsername.

Why is an active account not ready to write?

status stores the connection state. health interprets recent login results. An active row can still be locked, suspended, cooling down, or awaiting new credentials. Gate writes on health, not status alone.

What is the difference between ID and X user ID?

id identifies the Xquik connection. xUserId identifies the account on X. Write endpoints use the Xquik connection ID as accountId. Public read responses can use an X user ID for profile or Tweet relationships.

Why is cookiesObtainedAt missing?

The field is optional. It is omitted when the connection has not obtained a stored X session. Check health and complete the requested login action.

Which bearer token does this endpoint accept?

Send an OAuth bearer token accepted by Xquik. Do not send an app-only token from the X developer platform. See Authentication for the Xquik authorization flow.

When should I reauthenticate instead of bulk retry?

Use reauthentication for needsReauth. Supply current credentials and the saved Authenticator App TOTP secret. Use Bulk Retry only for eligible temporary failures. It cannot fix passwords, TOTP, passkeys, locks, or suspensions.

How do I confirm recovery?

Call this endpoint after the operator finishes the required action. Confirm the expected username and health. Resume writes only when the returned state fits your retry policy.