|
| 1 | +--- |
| 2 | +title: xurl — cliente de línea de comandos estilo curl para la X API |
| 3 | +sidebarTitle: CLI (xurl) |
| 4 | +description: Instala y usa xurl, una CLI estilo curl para la X API con OAuth integrado que te permite probar endpoints, firmar solicitudes y hacer prototipos desde la terminal. |
| 5 | +keywords: ["xurl", "CLI", "command line", "curl", "X API CLI", "API testing", "OAuth", "developer tools"] |
| 6 | +--- |
| 7 | + |
| 8 | +[xurl](https://github.com/xdevplatform/xurl) es una herramienta de línea de comandos estilo curl para la X API. Se encarga automáticamente de la autenticación OAuth para que puedas hacer solicitudes a la API sin gestionar tokens ni firmar solicitudes manualmente. |
| 9 | + |
| 10 | +<Card title="Repositorio de GitHub" icon="github" href="https://github.com/xdevplatform/xurl"> |
| 11 | + Código fuente, releases y documentación. |
| 12 | +</Card> |
| 13 | + |
| 14 | +--- |
| 15 | + |
| 16 | +## Instalación |
| 17 | + |
| 18 | +Instala con Go, o descarga un binario precompilado desde [releases](https://github.com/xdevplatform/xurl/releases). |
| 19 | + |
| 20 | +```bash |
| 21 | +go install github.com/xdevplatform/xurl@latest |
| 22 | +``` |
| 23 | + |
| 24 | +--- |
| 25 | + |
| 26 | +## Configuración |
| 27 | + |
| 28 | +### 1. Crea una app de X |
| 29 | + |
| 30 | +xurl se autentica usando tu propia app de desarrollador. En el [X Developer Portal](https://developer.x.com): |
| 31 | + |
| 32 | +1. Crea (o abre) una app con **OAuth 2.0** habilitado. |
| 33 | +2. Registra la URI de redirección `http://localhost:8080/callback` en la app. |
| 34 | +3. Copia el **Client ID** y el **Client Secret** de la app desde la página "Keys and tokens". |
| 35 | + |
| 36 | +### 2. Configura tus credenciales |
| 37 | + |
| 38 | +Exporta las credenciales en la misma shell desde la que ejecutarás xurl: |
| 39 | + |
| 40 | +```bash |
| 41 | +export CLIENT_ID="your-x-app-client-id" |
| 42 | +export CLIENT_SECRET="your-x-app-client-secret" |
| 43 | +``` |
| 44 | + |
| 45 | +### 3. Autoriza |
| 46 | + |
| 47 | +```bash |
| 48 | +xurl auth oauth2 |
| 49 | +``` |
| 50 | + |
| 51 | +Esto abre un flujo de OAuth en el navegador. Una vez autorizado, xurl almacena tus tokens localmente en `~/.xurl` para que no necesites autenticarte de nuevo. |
| 52 | + |
| 53 | +<Warning> |
| 54 | +Si el navegador muestra **"Something went wrong — You weren't able to give access to the App"**, xurl inició el login sin credenciales válidas. Asegúrate de que `CLIENT_ID` y `CLIENT_SECRET` estén exportados en la shell donde ejecutaste `xurl auth oauth2`, y de que `http://localhost:8080/callback` esté registrado como URI de redirección en tu app. |
| 55 | +</Warning> |
| 56 | + |
| 57 | +--- |
| 58 | + |
| 59 | +## Uso |
| 60 | + |
| 61 | +### Solicitudes crudas a la API |
| 62 | + |
| 63 | +Usa xurl como curl — se encarga de los headers de autenticación automáticamente: |
| 64 | + |
| 65 | +```bash |
| 66 | +# Consultar un usuario |
| 67 | +xurl /2/users/by/username/xdevelopers |
| 68 | + |
| 69 | +# Buscar posts recientes |
| 70 | +xurl "/2/tweets/search/recent?query=from:xdevelopers&max_results=10" |
| 71 | + |
| 72 | +# Crear un post |
| 73 | +xurl -X POST /2/tweets -d '{"text": "Hello from xurl!"}' |
| 74 | +``` |
| 75 | + |
| 76 | +### Comandos de acceso rápido |
| 77 | + |
| 78 | +xurl incluye atajos integrados para operaciones comunes: |
| 79 | + |
| 80 | +```bash |
| 81 | +# Consultar un usuario por nombre de usuario |
| 82 | +xurl user xdevelopers |
| 83 | + |
| 84 | +# Buscar posts recientes |
| 85 | +xurl search "X API" |
| 86 | + |
| 87 | +# Publicar un tweet |
| 88 | +xurl post "Hello from xurl!" |
| 89 | +``` |
| 90 | + |
| 91 | +--- |
| 92 | + |
| 93 | +## ¿Por qué usar xurl? |
| 94 | + |
| 95 | +| Característica | curl | xurl | |
| 96 | +|:--------|:-----|:-----| |
| 97 | +| **Autenticación** | Configuración manual del header OAuth | Automática — solo ejecuta `xurl auth` una vez | |
| 98 | +| **Gestión de tokens** | Tú manejas el refresh/rotación | Almacenamiento y refresh de tokens integrados | |
| 99 | +| **Atajos de API** | URL completa requerida | Comandos abreviados para tareas comunes | |
| 100 | +| **Firma de solicitudes** | Firma OAuth 1.0a manual | Automática para todas las solicitudes | |
| 101 | + |
| 102 | +--- |
| 103 | + |
| 104 | +## Uso de xurl con agentes de IA |
| 105 | + |
| 106 | +xurl incluye un archivo [`SKILL.md`](https://github.com/xdevplatform/xurl/blob/main/SKILL.md) que describe sus capacidades en un formato legible por máquina. Los agentes de IA pueden usarlo para entender cómo invocar los comandos de xurl en tu nombre. |
| 107 | + |
| 108 | +```bash |
| 109 | +npx skills add https://github.com/xdevplatform/xurl |
| 110 | +``` |
| 111 | + |
| 112 | +--- |
| 113 | + |
| 114 | +## Relacionado |
| 115 | + |
| 116 | +<CardGroup cols={2}> |
| 117 | + <Card title="Haz tu primera solicitud" icon="rocket" href="/make-your-first-request"> |
| 118 | + Comienza a usar la X API con cURL o SDKs. |
| 119 | + </Card> |
| 120 | + <Card title="API Playground" icon="flask" href="https://github.com/xdevplatform/playground"> |
| 121 | + Prueba endpoints localmente con datos simulados — sin gastar créditos de la API. |
| 122 | + </Card> |
| 123 | +</CardGroup> |
0 commit comments