XClient.Users (XClient v1.0.0)

Copy Markdown View Source

User operations for X API v1.1.

Rate Limits

  • GET users/show: 900 per 15 minutes
  • GET users/lookup: 900 per 15 minutes (user), 300 per 15 minutes (app)
  • GET users/search: 900 per 15 minutes (user only)
  • GET users/suggestions: 15 per 15 minutes
  • GET users/suggestions/:slug: 15 per 15 minutes
  • GET users/suggestions/:slug/members: 15 per 15 minutes

Summary

Functions

Returns information about multiple users (up to 100).

Searches for users matching a query.

Returns information about a single user.

Returns suggested user categories.

Returns members of a suggested user category.

Returns suggested users for a specific category.

Functions

lookup(opts \\ [], client \\ nil)

Returns information about multiple users (up to 100).

Parameters

  • opts - Required parameters (one of):
    • :user_id - List of user IDs or comma-separated string
    • :screen_name - List of screen names or comma-separated string
  • Additional optional parameters:
    • :include_entities - Include entities node
    • :tweet_mode - Use "extended" for full text

Examples

{:ok, users} = XClient.Users.lookup(screen_name: ["user1", "user2"])
{:ok, users} = XClient.Users.lookup(user_id: ["123", "456"])

Rate Limit

900 requests per 15 minutes (user), 300 per 15 minutes (app)

search(query, opts \\ [], client \\ nil)

Searches for users matching a query.

Parameters

  • query - The search query
  • opts - Optional parameters
    • :page - Page number (1-based)
    • :count - Number of users to return per page (max 20)
    • :include_entities - Include entities node

Examples

{:ok, users} = XClient.Users.search("elixir", count: 20)

Rate Limit

900 requests per 15 minutes (user only)

show(opts \\ [], client \\ nil)

Returns information about a single user.

Parameters

  • opts - Required parameters (one of):
    • :user_id - The ID of the user
    • :screen_name - The screen name of the user
  • Additional optional parameters:
    • :include_entities - Include entities node

Examples

{:ok, user} = XClient.Users.show(screen_name: "elixirlang")
{:ok, user} = XClient.Users.show(user_id: "123456")

Rate Limit

900 requests per 15 minutes

suggestions(opts \\ [], client \\ nil)

Returns suggested user categories.

Parameters

  • opts - Optional parameters
    • :lang - Language code

Examples

{:ok, suggestions} = XClient.Users.suggestions()

Rate Limit

15 requests per 15 minutes

suggestions_members(slug, client \\ nil)

Returns members of a suggested user category.

Parameters

  • slug - The category slug

Examples

{:ok, members} = XClient.Users.suggestions_members("technology")

Rate Limit

15 requests per 15 minutes

suggestions_slug(slug, opts \\ [], client \\ nil)

Returns suggested users for a specific category.

Parameters

  • slug - The category slug
  • opts - Optional parameters
    • :lang - Language code

Examples

{:ok, suggestion} = XClient.Users.suggestions_slug("technology")

Rate Limit

15 requests per 15 minutes