Skip to main content
Main client class for the X API This is the primary entry point for interacting with the X API. It provides access to all API endpoints through specialized client modules and handles authentication, request configuration, and error handling. Example
import { Client } from '@xdevplatform/xdk';

const client = new Client({
  bearerToken: 'your-bearer-token'
});

// Get user information
const user = await client.users.getUser('783214');

// Get followers with pagination
const followers = await client.users.getFollowers('783214', {
  maxResults: 10,
  userFields: ['id', 'name', 'username']
});

// Iterate through followers
for await (const follower of followers) {
  console.log(follower.username);
}

Constructors

constructor

new Client(config): Client Creates a new X API client instance

Parameters

NameTypeDescription
configanyConfiguration options for the client

Returns

Client Example
// Bearer token authentication
const client = new Client({
  bearerToken: 'your-bearer-token'
});

// OAuth2 authentication
const client = new Client({
  accessToken: 'your-access-token'
});

// OAuth1 authentication
const client = new Client({
  oauth1: oauth1Instance
});
client.ts:306

Properties

baseUrl
string
required
Base URL for API requests
bearerToken
string
Bearer token for authentication
accessToken
string
OAuth2 access token
oauth1
any
OAuth1 instance for authentication
headers
Headers
required
Headers for requests
timeout
number
required
Request timeout in milliseconds
retry
boolean
required
Whether to automatically retry failed requests
maxRetries
number
required
Maximum number of retry attempts
userAgent
string
required
User agent string
httpClient
HttpClient = httpClient
required
HTTP client for making requests
users
UsersClient
required
users client
communityNotes
CommunityNotesClient
required
community notes client
lists
ListsClient
required
lists client
connections
ConnectionsClient
required
connections client
posts
PostsClient
required
posts client
spaces
SpacesClient
required
spaces client
media
MediaClient
required
media client
directMessages
DirectMessagesClient
required
direct messages client
communities
CommunitiesClient
required
communities client
accountActivity
AccountActivityClient
required
account activity client
webhooks
WebhooksClient
required
webhooks client
trends client
activity
ActivityClient
required
activity client
stream
StreamClient
required
stream client
usage
UsageClient
required
usage client
compliance
ComplianceClient
required
compliance client
general
GeneralClient
required
general client
request
Promise<T>
required
Make an authenticated request to the X APIThis method handles authentication, request formatting, and error handling for all API requests. It automatically adds the appropriate authentication headers based on the client configuration.
isTokenExpired
boolean
required
Check if the OAuth2 token is expired
refreshToken
Promise<void>
required
Refresh the OAuth2 token
isAuthenticated
boolean
required
Get the current authentication status
mapSecuritySchemeToAuthTypes
string[]
required
Map OpenAPI security scheme names to internal authentication types
validateAuthentication
void
required
Validate that the required authentication method is available
getAvailableAuthTypes
string[]
required
Get available authentication types