EasyDown API Docs
API de descarga por plataforma

API de descarga de videos de Twitter / X

Usa la API de Twitter / X con URL públicas compatibles y recibe videos, imágenes, audio y datos completos sin campos sensibles.

Envía una URL de estado de x.com o twitter.com. La API conserva los identificadores largos como texto y devuelve todas las variantes multimedia de la publicación.

Úsala para descargar videos de X o Twitter y aceptar tanto enlaces de x.com como de twitter.com.

Usa este endpoint cuando necesites campos propios de la plataforma además de medios descargables estables.

Endpoints

POST https://api.easydown.org/api/v1/platforms/twitter/parse

Formatos de URL compatibles

  • x.com/{user}/status/{id}
  • twitter.com/{user}/status/{id}
  • x.com/i/status/{id}
  • x.com/u/{user}/{id}
  • Enlaces de estados de X copiados con un espacio después de /status

Ejemplos aceptados

  • https://x.com/i/status/2064933214720803143
  • https://x.com/Taozhishuishui/status/2041638397358260556/video/1
  • https://x.com/u/Dodger316/2070421188644347912
  • https://x.com/lindsavva69132/status /2091460944987816084/video/1

Contenido de la respuesta de la plataforma

Muestra las variantes de video accesibles desde la publicación pública, con la calidad indicada cuando está disponible.

Campos publicados de la plataforma

La API conserva otros campos públicos del objeto final después de eliminar de forma recursiva los datos sensibles. Los campos documentados se mantienen estables durante esta versión de platformData.

CampoTipoDescripción
data.mediaobjectImágenes, videos, audios, título, miniatura y duración normalizados.
data.platformDataVersionstringVersión pública del contrato de datos de Twitter / X; actualmente 1.
data.platformData.id_strstringIdentificador público del contenido. Guárdalo como texto para evitar pérdidas de precisión con números grandes.
data.platformData.textstringTítulo, texto o descripción que se muestra públicamente en la publicación solicitada.
data.platformData.full_textstringTítulo, texto o descripción que se muestra públicamente en la publicación solicitada.
data.platformData.userobjectDatos públicos del autor de la publicación, sin contactos ni credenciales.
data.platformData.mediaobjectEstado de reproducción, formato u otros metadatos públicos del contenido.
data.platformData.metricsobjectMétricas públicas de reproducciones, Me gusta, comentarios, guardados o compartidos.

Ejemplo real de respuesta

URL de ejemplo
https://x.com/Taozhishuishui/status/2041638397358260556/video/1
Endpoint
/api/v1/platforms/twitter/parse
Créditos cobrados
1 credits
Cache
HIT
Capturado
2026-09-17T05:08:19.613Z

Formato común normalizado

El endpoint común devuelve este mismo objeto multimedia directamente en `data`.

/api/v1/parse response
{
  "status": 200,
  "data": {
    "platform": "twitter",
    "title": "【NSFW原创】【阳具调教】【性沦陷教学】 【@XPeach_Lord教学】【桃门】\n想必大家也都挺好奇如何达到是17次/8min的高潮的效果的,本期就是前戏过程。\n可以见到从开始的勉强纳入,到第5分钟失控,就这样渐进调教,视频结束时A点失守后逐渐沦陷。\n(上篇) https://t.co/SsH6GObNbz",
    "thumbnail": "https://pbs.twimg.com/amplify_video_thumb/2041600872153804803/img/DGcrmhdZesdS8hse.jpg",
    "duration": 0,
    "images": [],
    "videos": [
      {
        "url": "https://video.twimg.com/amplify_video/2041600872153804803/vid/avc1/320x568/iITUUBeBrCGVEG0l.mp4?tag=21",
        "quality": "632kbps",
        "mimeType": "video/mp4",
        "width": 0,
        "height": 0,
        "hasAudio": true,
        "source": "direct",
        "headers": {}
      },
      {
        "url": "https://video.twimg.com/amplify_video/2041600872153804803/vid/avc1/480x852/VIhohHzSf7ArG6lz.mp4?tag=21",
        "quality": "950kbps",
        "mimeType": "video/mp4",
        "width": 0,
        "height": 0,
        "hasAudio": true,
        "source": "direct",
        "headers": {}
      },
      {
        "url": "https://video.twimg.com/amplify_video/2041600872153804803/vid/avc1/720x1280/gBsBLXqQxHI3BGZP.mp4?tag=21",
        "quality": "2176kbps",
        "mimeType": "video/mp4",
        "width": 0,
        "height": 0,
        "hasAudio": true,
        "source": "direct",
        "headers": {}
      }
    ],
    "audios": []
  },
  "msg": "success"
}

Formato completo de plataforma

El endpoint de plataforma devuelve medios normalizados y el objeto de datos de plataforma depurado.

/api/v1/platforms/twitter/parse
{
  "status": 200,
  "data": {
    "media": {
      "platform": "twitter",
      "title": "【NSFW原创】【阳具调教】【性沦陷教学】 【@XPeach_Lord教学】【桃门】\n想必大家也都挺好奇如何达到是17次/8min的高潮的效果的,本期就是前戏过程。\n可以见到从开始的勉强纳入,到第5分钟失控,就这样渐进调教,视频结束时A点失守后逐渐沦陷。\n(上篇) https://t.co/SsH6GObNbz",
      "thumbnail": "https://pbs.twimg.com/amplify_video_thumb/2041600872153804803/img/DGcrmhdZesdS8hse.jpg",
      "duration": 0,
      "images": [],
      "videos": [
        {
          "url": "https://video.twimg.com/amplify_video/2041600872153804803/vid/avc1/320x568/iITUUBeBrCGVEG0l.mp4?tag=21",
          "quality": "632kbps",
          "mimeType": "video/mp4",
          "width": 0,
          "height": 0,
          "hasAudio": true,
          "source": "direct",
          "headers": {}
        },
        {
          "url": "https://video.twimg.com/amplify_video/2041600872153804803/vid/avc1/480x852/VIhohHzSf7ArG6lz.mp4?tag=21",
          "quality": "950kbps",
          "mimeType": "video/mp4",
          "width": 0,
          "height": 0,
          "hasAudio": true,
          "source": "direct",
          "headers": {}
        },
        {
          "url": "https://video.twimg.com/amplify_video/2041600872153804803/vid/avc1/720x1280/gBsBLXqQxHI3BGZP.mp4?tag=21",
          "quality": "2176kbps",
          "mimeType": "video/mp4",
          "width": 0,
          "height": 0,
          "hasAudio": true,
          "source": "direct",
          "headers": {}
        }
      ],
      "audios": []
    },
    "platformData": {
      "likes": 54553,
      "created_at": "Tue Apr 07 22:05:00 +0000 2026",
      "status": "active",
      "text": "【NSFW原创】【阳具调教】【性沦陷教学】 【@XPeach_Lord教学】【桃门】\n想必大家也都挺好奇如何达到是17次/8min的高潮的效果的,本期就是前戏过程。\n可以见到从开始的勉强纳入,到第5分钟失控,就这样渐进调教,视频结束时A点失守后逐渐沦陷。\n(上篇) https://t.co/SsH6GObNbz",
      "display_text": "【NSFW原创】【阳具调教】【性沦陷教学】 【@XPeach_Lord教学】【桃门】\n想必大家也都挺好奇如何达到是17次/8min的高潮的效果的,本期就是前戏过程。\n可以见到从开始的勉强纳入,到第5分钟失控,就这样渐进调教,视频结束时A点失守后逐渐沦陷。\n(上篇)",
      "retweets": 3183,
      "bookmarks": 23572,
      "quotes": 30,
      "reply_to": null,
      "replies": 197,
      "lang": "zh",
      "in_reply_to_screen_name": null,
      "in_reply_to_status_id_str": null,
      "in_reply_to_user_id_str": null,
      "sensitive": true,
      "views": "2957748",
      "conversation_id": "2041638397358260556",
      "entities": {
        "media": [
          {
            "additional_media_info": {
              "monetizable": false
            },
            "display_url": "pic.x.com/SsH6GObNbz",
            "expanded_url": "https://x.com/Taozhishuishui/status/2041638397358260556/video/1",
            "ext_media_availability": {
              "status": "Available"
            },
            "id_str": "2041600872153804803",
            "indices": [
              133,
              156
            ],
            "media_key": "13_2041600872153804803",
            "media_results": {
              "result": {
                "media_key": "13_2041600872153804803"
              }
            },
            "media_url_https": "https://pbs.twimg.com/amplify_video_thumb/2041600872153804803/img/DGcrmhdZesdS8hse.jpg",
            "original_info": {
              "focus_rects": [],
              "height": 1280,
              "width": 720
            },
            "sizes": {
              "large": {
                "h": 1280,
                "resize": "fit",
                "w": 720
              },
              "medium": {
                "h": 1200,
                "resize": "fit",
                "w": 675
              },
              "small": {
                "h": 680,
                "resize": "fit",
                "w": 383
              },
              "thumb": {
                "h": 150,
                "resize": "crop",
                "w": 150
              }
            },
            "type": "video",
            "url": "https://t.co/SsH6GObNbz",
            "video_info": {
              "aspect_ratio": [
                9,
                16
              ],
              "duration_millis": 474918,
              "variants": [
                {
                  "content_type": "application/x-mpegURL",
                  "url": "https://video.twimg.com/amplify_video/2041600872153804803/pl/UJcuKrOyPlFXE_KS.m3u8?tag=21"
                },
                {
                  "bitrate": 632000,
                  "content_type": "video/mp4",
                  "url": "https://video.twimg.com/amplify_video/2041600872153804803/vid/avc1/320x568/iITUUBeBrCGVEG0l.mp4?tag=21"
                },
                {
                  "bitrate": 950000,
                  "content_type": "video/mp4",
                  "url": "https://video.twimg.com/amplify_video/2041600872153804803/vid/avc1/480x852/VIhohHzSf7ArG6lz.mp4?tag=21"
                },
                {
                  "bitrate": 2176000,
                  "content_type": "video/mp4",
                  "url": "https://video.twimg.com/amplify_video/2041600872153804803/vid/avc1/720x1280/gBsBLXqQxHI3BGZP.mp4?tag=21"
                }
              ]
            }
          }
        ],
        "user_mentions": [
          {
            "id_str": "1434021907909599238",
            "indices": [
              23,
              35
            ],
            "name": "桃桃大王(大号)",
            "screen_name": "XPeach_Lord"
          }
        ],
        "hashtags": [],
        "symbols": [],
        "timestamps": [],
        "urls": []
      },
      "conversation_control": {
        "policy": null
      },
      "initial_tweets": null,
      "author": {
        "rest_id": "3145035893",
        "name": "桃汁水水",
        "screen_name": "Taozhishuishui",
        "image": "https://pbs.twimg.com/profile_images/1986486933443469312/fKhObBUD_normal.jpg",
        "blue_verified": true,
        "verification": null,
        "sub_count": 348228
      },
      "media": {
        "video": [
          {
            "media_url_https": "https://pbs.twimg.com/amplify_video_thumb/2041600872153804803/img/DGcrmhdZesdS8hse.jpg",
            "variants": [
              {
                "content_type": "application/x-mpegURL",
                "url": "https://video.twimg.com/amplify_video/2041600872153804803/pl/UJcuKrOyPlFXE_KS.m3u8?tag=21"
              },
              {
                "bitrate": 632000,
                "content_type": "video/mp4",
                "url": "https://video.twimg.com/amplify_video/2041600872153804803/vid/avc1/320x568/iITUUBeBrCGVEG0l.mp4?tag=21"
              },
              {
                "bitrate": 950000,
                "content_type": "video/mp4",
                "url": "https://video.twimg.com/amplify_video/2041600872153804803/vid/avc1/480x852/VIhohHzSf7ArG6lz.mp4?tag=21"
              },
              {
                "bitrate": 2176000,
                "content_type": "video/mp4",
                "url": "https://video.twimg.com/amplify_video/2041600872153804803/vid/avc1/720x1280/gBsBLXqQxHI3BGZP.mp4?tag=21"
              }
            ],
            "aspect_ratio": [
              9,
              16
            ],
            "duration": 474918,
            "original_info": {
              "focus_rects": [],
              "height": 1280,
              "width": 720
            },
            "id": "2041600872153804803"
          }
        ]
      },
      "id": "2041638397358260556"
    },
    "platformDataVersion": "1"
  },
  "msg": "success"
}

Descarga y uso de proxy

Descarga desde el backend con Referer de X, User-Agent de navegador y Range. Selecciona la variante por calidad y vuelve a analizar si caduca.

Límites y comportamiento

No admite perfiles, búsquedas, Spaces, publicaciones privadas o eliminadas ni enlaces directos de la CDN multimedia.

Solo se admite contenido público. El contenido privado, eliminado, restringido por edad o región, en directo o no disponible puede fallar sin consumir créditos.

Un análisis correcto de Twitter / X cuesta 1 crédito. Los fallos, enlaces no compatibles, errores de autenticación, permisos, ausencia de medios y fallos externos consumen 0 créditos. X-Credits-Charged devuelve los créditos reales cobrados por la respuesta correcta.

Solución de problemas

  • Envía una URL de estado que contenga un único identificador de publicación.
  • Elige una variante de videos[] por calidad y dimensiones, no solo por su posición.
  • Vuelve a analizar el estado original cuando una variante multimedia deje de responder.

Preguntas frecuentes

¿Una solicitud fallida consume créditos?

No. Solo se cobran créditos cuando la API devuelve medios descargables.

¿Por qué puede fallar una URL pública válida?

La publicación puede estar eliminada, ser privada, tener restricciones regionales, ser un directo, no contener medios o sufrir una indisponibilidad externa.

Guías relacionadas

Referencia interactiva de la API

Los ejemplos en curl, JavaScript y Python, junto con los esquemas, se generan desde el contrato OpenAPI 3.1 de producción.

El panel «Try it» envía solicitudes directamente a api.easydown.org. El token solo permanece en la memoria de la página y se elimina al recargar.

POST

Probar

Las respuestas correctas con medios descargables se cobran según la plataforma. Las solicitudes fallidas no se cobran.

El token solo permanece en la memoria de esta página y se borra al cerrar o recargar.

Authorization

bearerAuth
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/api/v1/platforms/twitter/parse" \  -H "Content-Type: application/json" \  -d '{}'
{  "status": 200,  "data": {    "media": {      "platform": "tiktok",      "title": "string",      "thumbnail": "string",      "duration": 0,      "images": [        {          "url": "http://example.com",          "width": 0,          "height": 0        }      ],      "videos": [        {          "url": "http://example.com",          "quality": "string",          "mimeType": "string",          "width": 0,          "height": 0,          "hasAudio": true,          "source": "direct",          "headers": {            "property1": "string",            "property2": "string"          }        }      ],      "audios": [        {          "url": "http://example.com",          "quality": "string",          "mimeType": "string",          "bitrate": 0,          "source": "direct",          "headers": {            "property1": "string",            "property2": "string"          }        }      ]    },    "platformData": {      "id_str": "string",      "text": "string",      "full_text": "string",      "user": {},      "media": {},      "metrics": {}    },    "platformDataVersion": "1"  },  "msg": "success"}