All guides
Setup guide

X API setup

Create the app and configure the authentication and access needed by your feature.

Create the developer app

1. Create the developer app

Open X Developer Console → https://console.x.com

App owner

  1. Sign in with the X account intended to administer the integration. Complete the developer profile/use-case information and agreement requested by the console.
  2. Select New App and enter the real app name, description and use case.
  3. Confirm that the app appears under the intended account. Store its issued credentials privately when the console displays them.
  4. Continue with the OAuth 2.0 settings below. The API Key/Secret, app-only Bearer Token and OAuth Client ID/Secret serve different purposes.

Expected result The intended app exists and you can open its authentication settings.

If this does not happen If onboarding/access is incomplete, resolve it in the owning account before configuring a different credential type in the application.

Configure the connection

2. Enable the implemented authentication

Open X Developer Console → selected app → authentication settings

App owner / administrator

  1. Enable/configure OAuth 2.0 user authentication for this implemented web connection. Select a client type suitable for the server-side confidential client.
  2. Register the full Callback URL copied from this application’s X provider. Enter the actual website information requested by X.
  3. Obtain Client ID and Client Secret from the app’s credential section. Do not substitute the app-only Bearer Token or an OAuth 1.0a access-token secret.
  4. In the application’s API Integration → X, enter the matching Client ID and Client Secret.
  5. Review Permissions against the actual feature and current endpoint access. Include offline.access only where continued refresh access is part of the connection.
  6. Check current API billing/endpoint allowance, set Status to Enable for this test setup and select Save configuration.
  7. Connect a permitted test X account through OAuth and run one intentional test action. Check the provider-side result.

Expected result The user-context connection operates on the intended account with the required granted access.

If this does not happen For a token or write error, check OAuth mode, the exact credential pair, granted scopes and current endpoint entitlement. Do not rotate credentials at random.

Access checks and any review request

Use the application/access/compliance process currently shown by X for your account and intended endpoints. It is not the Meta App Review process.

  1. Record the current authentication mode, allowed endpoints and access limits.
  2. If the provider requires a use-case or access request, explain the actual feature, data use and intended users. Attach a demonstration when requested.
  3. After access is granted, reconnect when permissions change and repeat the real feature test. Check both the result and the provider’s usage/error records.

Common problems

ProblemWhat to check
Read works but write failsCheck user-context authorization, write scope and current endpoint access.
OAuth errorCheck client type, exact callback and supported scopes.
Rate or billing errorInspect current account usage and billing/access state before retrying.
Post queued but not visibleCheck the publisher’s final provider response and the selected account.

Source settings

These are fields and default paths found in the reviewed source version. An installed module or a source default does not prove platform approval. Copy the complete URL shown by your running installation; do not paste a path by itself into a developer console.

StackPosts — X / AppChannelXProfiles
Setting labelSource information
StatusUse the value shown by your installation or issued for your app.
Client IDUse the value shown by your installation or issued for your app.
Client SecretUse the value shown by your installation or issued for your app.
Callback URL/integrations/x/profile
Permissionstweet.read tweet.write tweet.moderate.write users.read follows.read follows.write offline.access space.read mute.read mute.write like.read like.write list.read list.write block.read block.write bookmark.read bookmark.write media.write users.email (source default; review necessity and actual granted access before requesting)

Version: 1d0944d30f606782c9abf5b878224cdd3cd09b99

Open the source definition
MarkHub — X / ChannelXProfiles
Setting labelSource information
StatusUse the value shown by your installation or issued for your app.
Client IDUse the value shown by your installation or issued for your app.
Client SecretUse the value shown by your installation or issued for your app.
Callback URL/integrations/x/profile
Permissionstweet.read tweet.write tweet.moderate.write users.read follows.read follows.write offline.access space.read mute.read mute.write like.read like.write list.read list.write block.read block.write bookmark.read bookmark.write media.write users.email (source default; review necessity and actual granted access before requesting)

Version: 68a5655db1bbe17c74fb211f0fe0ee4e63c8be88

Open the source definition