> ## Documentation Index
> Fetch the complete documentation index at: https://docs.x.com/llms.txt
> Use this file to discover all available pages before exploring further.

# oEmbed API

> Puedes usar la oEmbed API para devolver contenido incrustado de forma programática, como Tweets y timelines. La respuesta de la oEmbed API devolverá un HTML.

Puedes usar la oEmbed API para devolver contenido incrustado de forma programática, como [Tweets](https://developer.x.com/en/docs/twitter-for-websites/embedded-tweets/overview) y [timelines](https://developer.x.com/en/docs/twitter-for-websites/timelines/overview).

La respuesta de la oEmbed API devolverá un fragmento HTML que se reconocerá automáticamente cuando [se incluya el JavaScript de widgets de X en la página](https://developer.x.com/web/javascript/loading).

Ten en cuenta que la API se recomienda para realizar tareas en volumen, y aconsejamos usar nuestra robusta herramienta [publish.x.com](https://publish.x.com/#) para incrustar contenido.

<Tabs>
  <Tab title="Timelines incrustados">
    El fragmento HTML devuelto se reconocerá automáticamente como un [timeline incrustado](https://developer.x.com/en/docs/twitter-for-websites/timelines/overview) cuando [se incluya el JavaScript de widgets de X en la página](https://developer.x.com/web/javascript/loading).

    El endpoint oEmbed permite personalizar la apariencia final de un timeline incrustado configurando las propiedades correspondientes en el marcado HTML, que se interpreta por el JavaScript de X incluido por defecto con la respuesta HTML. El formato del marcado devuelto puede cambiar con el tiempo a medida que X añada nuevas funciones o ajuste su representación del timeline.

    Para un timeline de X especificado por la URL del timeline, en formato JSON compatible con [oEmbed](https://oembed.com/). Se admiten timelines de usuario y de lista. El marcado del timeline está pensado para que se almacene en caché en tus servidores durante el tiempo de caché sugerido especificado por la propiedad cache\_age.

    ## URL del recurso

    *[https://publish.x.com/oembed](https://publish.x.com/oembed)*

    ## Información del recurso

    |                          |      |
    | :----------------------- | :--- |
    | Formatos de respuesta    | JSON |
    | ¿Requiere autenticación? | No   |
    | Con límite de uso        | No   |

    ## Parámetros

    | Nombre       | Descripción                                                                                                                                                                                                                                                                                                                                                                                                                                   | Ejemplo                                                                                                                                                          |
    | :----------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------- |
    | **url**      | La URL del timeline de X que se va a incrustar                                                                                                                                                                                                                                                                                                                                                                                                | \*   [https://x.com/TwitterDev](https://x.com/TwitterDev)<br /> \*[https://x.com/TwitterDev/lists/national-parks](https://x.com/TwitterDev/lists/national-parks) |
    | limit        | Muestra hasta N elementos, donde N es un valor entre 1 y 20 inclusive                                                                                                                                                                                                                                                                                                                                                                         | 6                                                                                                                                                                |
    | maxwidth     | Establece el ancho máximo del widget. Debe estar entre 180 y 1200 inclusive                                                                                                                                                                                                                                                                                                                                                                   | 300                                                                                                                                                              |
    | maxheight    | Establece la altura máxima del widget. Debe ser mayor que 200                                                                                                                                                                                                                                                                                                                                                                                 | 400                                                                                                                                                              |
    | omit\_script | No incluye un elemento script en la respuesta                                                                                                                                                                                                                                                                                                                                                                                                 | 1                                                                                                                                                                |
    | lang         | Un [código de idioma](/x-for-websites/supported-languages "Código de idioma de X") admitido por X                                                                                                                                                                                                                                                                                                                                             | es                                                                                                                                                               |
    | theme        | Cuando se establece en dark, el timeline se muestra con texto claro sobre un fondo oscuro                                                                                                                                                                                                                                                                                                                                                     | dark                                                                                                                                                             |
    | chrome       | Elimina un componente de visualización del timeline con tokens separados por espacios<br /><br />\*   noheader - oculta la cabecera<br />\*   nofooter - oculta el pie, si es visible<br />\*   noborders - elimina todos los bordes: alrededor del widget, entre Tweets y dentro de un Tweet<br />\*   noscrollbar- recorta y oculta la barra de desplazamiento del timeline, si es visible<br />\*   transparent- elimina el color de fondo | noheader%20nofooter                                                                                                                                              |
    | aria\_polite | Establece un valor assertive de [ARIA live region politeness](https://www.w3.org/TR/wai-aria/states_and_properties#aria-live) para los Tweets añadidos a un timeline                                                                                                                                                                                                                                                                          | assertive                                                                                                                                                        |
    | dnt          | Cuando se establece en true, el timeline y su página incrustada en tu sitio no se utilizan con fines que incluyan [sugerencias personalizadas](https://support.x.com/articles/20169421) ni [anuncios personalizados](https://support.x.com/articles/20170405)                                                                                                                                                                                 | true                                                                                                                                                             |

    ## Solicitudes de ejemplo

    ```bash theme={null}
    curl --request GET --url 'https://publish.x.com/oembed?url=https%3A%2F%2Ftwitter.com%2FInterior%2Fstatus%2F507185938620219395'
    twurl -H publish.x.com "/oembed?url=https://x.com/Interior/status/463440424141459456"
    ```

    ## Respuesta de ejemplo

    ```json title="Respuesta de ejemplo" lines wrap icon="https://mintcdn.com/x-preview/Vn2KEkZaPF9LiPi3/icons/xds/icon-brackets.svg?fit=max&auto=format&n=Vn2KEkZaPF9LiPi3&q=85&s=ed2428e77bab43e57800e1a590e982fa" theme={null}

    {
      "url": "https://x.com/TwitterDev",
      "title": "",
      "html": "<a class=\"twitter-timeline\" href=\"https://x.com/TwitterDev\">Tweets by TwitterDev</a>\n<script async src=\"//platform.x.com/widgets.js\" charset=\"utf-8\"></script>",
      "width": null,
      "height": null,
      "type": "rich",
      "cache_age": "3153600000",
      "provider_name": "Twitter",
      "provider_url": "https://x.com",
      "version": "1.0"
    }
    ```
  </Tab>

  <Tab title="Tweets incrustados">
    El fragmento HTML devuelto se reconocerá automáticamente como un [Tweet incrustado](https://developer.x.com/web/embedded-tweets) cuando [se incluya el JavaScript de widgets de X en la página](https://developer.x.com/web/javascript/loading).

    El endpoint oEmbed permite personalizar la apariencia final de un Tweet incrustado configurando las propiedades correspondientes en el marcado HTML, que se interpreta por el JavaScript de X incluido por defecto con la respuesta HTML. El formato del marcado devuelto puede cambiar con el tiempo a medida que X añada nuevas funciones o ajuste su representación del Tweet.

    El marcado de reserva del Tweet está pensado para que se almacene en caché en tus servidores durante el tiempo de caché sugerido especificado por la propiedad `cache_age`.

    ## URL del recurso

    *[https://publish.x.com/oembed](https://publish.x.com/oembed)*

    ## Información del recurso

    |                          |      |
    | :----------------------- | :--- |
    | Formatos de respuesta    | JSON |
    | ¿Requiere autenticación? | No   |
    | Con límite de uso        | No   |

    ## Parámetros

    | Nombre                                                                                                                               | Predeterminado | Descripción                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
    | :----------------------------------------------------------------------------------------------------------------------------------- | :------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
    | `url`obligatorio  <br />String                                                                                                       |                | La URL del Tweet que se va a incrustar                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
    | `maxwidth`  <br />Int `[220..550]`                                                                                                   | `325`          | El ancho máximo de un Tweet renderizado en píxeles enteros. Un valor proporcionado por debajo o por encima del rango permitido se devolverá como el ancho mínimo o máximo admitido respectivamente; el valor de ancho reajustado se reflejará en la propiedad `width` devuelta. Ten en cuenta que X no admite el parámetro oEmbed `maxheight`. Los Tweets son fundamentalmente texto y, por tanto, tienen una altura impredecible que no puede escalarse como una imagen o un vídeo. En relación con esto, la respuesta oEmbed no proporcionará un valor para `height`. Las implementaciones que necesiten alturas consistentes para los Tweets deben consultar los parámetros `hide_thread` y `hide_media` a continuación. |
    | `hide_media`  <br />Boolean, String o Int                                                                                            | `false`        | Cuando se establece en `true`, `"t"` o `1`, los enlaces en un Tweet no se expanden a vistas previas de foto, vídeo o enlace.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
    | `hide_thread`  <br />Boolean, String o Int                                                                                           | `false`        | Cuando se establece en `true`, `"t"` o `1`, no se mostrará una versión contraída del Tweet anterior en un hilo de conversación cuando el Tweet solicitado sea una respuesta a otro Tweet.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
    | `omit_script`  <br />Boolean, String o Int                                                                                           | `false`        | Cuando se establece en `true`, `"t"` o `1`, no se devolverá el `<script>` responsable de cargar `widgets.js`. Tus páginas web deben incluir su propia referencia a `widgets.js` para su uso en todos los widgets de X, incluidos los [Tweets incrustados](https://developer.x.com/web/embedded-tweets).                                                                                                                                                                                                                                                                                                                                                                                                                     |
    | `align`  <br />Enum `{left,right,center,none}`                                                                                       | `none`         | Especifica si el Tweet incrustado debe flotar a la izquierda, derecha o centro en la página respecto al elemento padre.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
    | `lang`  <br />Enum([Idioma](https://developer.x.com/en/docs/twitter-for-websites/twitter-for-websites-supported-languages/overview)) | `en`           | Solicita el HTML devuelto y un Tweet renderizado en el [idioma de X admitido por los Tweets incrustados](https://developer.x.com/web/overview/languages) especificado.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
    | `theme`  <br />Enum `{light, dark}`                                                                                                  | `light`        | Cuando se establece en `dark`, el Tweet se muestra con texto claro sobre un fondo oscuro.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
    | `dnt`  <br />Boolean                                                                                                                 | `false`        | Cuando se establece en `true`, el Tweet y su página incrustada en tu sitio no se utilizan con fines que incluyan [sugerencias personalizadas](https://support.x.com/articles/20169421) ni [anuncios personalizados](https://support.x.com/articles/20170405).                                                                                                                                                                                                                                                                                                                                                                                                                                                               |

    ## Solicitudes de ejemplo

    ```bash theme={null}
    curl --request GET --url 'https://publish.x.com/oembed?url=https%3A%2F%2Ftwitter.com%2Ftwiterdev'
    twurl -H publish.x.com "/oembed?url=https://x.com/TwitterDev"
    ```

    ## Respuesta de ejemplo

    ```json title="Respuesta de ejemplo" lines wrap icon="https://mintcdn.com/x-preview/Vn2KEkZaPF9LiPi3/icons/xds/icon-brackets.svg?fit=max&auto=format&n=Vn2KEkZaPF9LiPi3&q=85&s=ed2428e77bab43e57800e1a590e982fa" theme={null}
    {
      "url": "https:\/\/twitter.com\/Interior\/status\/463440424141459456",
      "author_name": "US Department of the Interior",
      "author_url": "https:\/\/twitter.com\/Interior",
      "html": "<blockquote class=\"twitter-tweet\"><p lang=\"en\" dir=\"ltr\">Sunsets don&#39;t get much better than this one over <a href=\"https:\/\/twitter.com\/GrandTetonNPS?ref_src=twsrc%5Etfw\">@GrandTetonNPS<\/a>. <a href=\"https:\/\/twitter.com\/hashtag\/nature?src=hash&amp;ref_src=twsrc%5Etfw\">#nature<\/a> <a href=\"https:\/\/twitter.com\/hashtag\/sunset?src=hash&amp;ref_src=twsrc%5Etfw\">#sunset<\/a> <a href=\"http:\/\/t.co\/YuKy2rcjyU\">pic.x.com\/YuKy2rcjyU<\/a><\/p>&mdash; US Department of the Interior (@Interior) <a href=\"https:\/\/twitter.com\/Interior\/status\/463440424141459456?ref_src=twsrc%5Etfw\">May 5, 2014<\/a><\/blockquote>\n<script async src=\"https:\/\/platform.x.com\/widgets.js\" charset=\"utf-8\"><\/script>\n",
      "width": 550,
      "height": null,
      "type": "rich",
      "cache_age": "3153600000",
      "provider_name": "Twitter",
      "provider_url": "https:\/\/twitter.com",
      "version": "1.0"
    }
    ```
  </Tab>
</Tabs>
