Skip to main content
xurl is a curl-like command-line tool for the X API. It handles OAuth authentication automatically so you can make API requests without manually managing tokens or signing requests.

GitHub repository

Source code, releases, and documentation.

Installation

Install with Go, or download a pre-built binary from releases.

Setup

1. Create an X app

xurl authenticates using your own developer app. In the X Developer Portal:
  1. Create (or open) an app with OAuth 2.0 enabled.
  2. Register the redirect URI http://localhost:8080/callback on the app.
  3. Copy the app’s Client ID and Client Secret from the “Keys and tokens” page.

2. Set your credentials

Export the credentials in the same shell you’ll run xurl from:

3. Authorize

This opens a browser-based OAuth flow. Once authorized, xurl stores your tokens locally in ~/.xurl so you don’t need to authenticate again.
If the browser shows “Something went wrong — You weren’t able to give access to the App”, xurl started the login without valid credentials. Make sure CLIENT_ID and CLIENT_SECRET are exported in the shell where you ran xurl auth oauth2, and that http://localhost:8080/callback is registered as a redirect URI on your app.

Usage

Raw API requests

Use xurl like curl — it handles auth headers automatically:

Shortcut commands

xurl includes built-in shortcuts for common operations:

Why use xurl?


Using xurl with AI agents

xurl includes a SKILL.md file that describes its capabilities in a machine-readable format. AI agents can use this to understand how to invoke xurl commands on your behalf.

Make your first request

Get started with the X API using cURL or SDKs.

API Playground

Test endpoints locally with mock data — no API credits needed.