> ## 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.

# Guía de integración

> Esta página cubre herramientas y conceptos clave para integrar los endpoints de List members. Referencia del nivel estándar de X API v2 sobre list members.

export const Button = ({href, children}) => {
  return <div className="not-prose">
    <a href={href}>
      <button className="x-btn">
        <span>{children}</span>
        <svg width="3" height="24" viewBox="0 -9 3 24" class="h-6 rotate-0 overflow-visible"><path d="M0 0L3 3L0 6" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"></path></svg>
      </button>
    </a>
  </div>;
};

Esta página cubre herramientas y conceptos clave para integrar los endpoints de List members.

## Herramientas útiles

Antes de sumergirnos en algunos conceptos clave que te ayudarán a integrar este endpoint, te recomendamos familiarizarte con:

### Postman

Postman es una excelente herramienta que puedes usar para probar un endpoint. Cada solicitud de Postman incluye todos los parámetros de ruta y de cuerpo para ayudarte a entender rápidamente lo que está disponible. Para saber más sobre nuestras colecciones de Postman, visita nuestra página ["Usando Postman"](/tutorials/postman-getting-started).

### Ejemplos de código

¿Te interesa comenzar con este endpoint usando código en tu lenguaje de programación preferido? Tenemos varios ejemplos de código diferentes que puedes usar como punto de partida en nuestra [página de Github](https://github.com/xdevplatform/Twitter-API-v2-sample-code).

### Bibliotecas de terceros

Aprovecha alguna de las [bibliotecas de terceros](/tools-and-libraries) de nuestra comunidad para ayudarte a comenzar. Puedes encontrar una biblioteca que funcione con los endpoints v2 buscando la etiqueta de versión adecuada.

***

## Conceptos clave

### Autenticación

Todos los endpoints de X API v2 requieren que autentiques tus solicitudes con un conjunto de credenciales, también conocidas como claves y tokens. Puedes usar OAuth 1.0a User Context, OAuth 2.0 Authorization Code with PKCE o App only para autenticar tus solicitudes a los endpoints de **lookup** de Lists. Sin embargo, debes autenticar con OAuth 1.0a User Context o OAuth 2.0 para los endpoints de **manage** Lists.

[OAuth 1.0a User Context](/resources/fundamentals/authentication) significa que debes usar un conjunto de API Keys y Access Tokens de usuario para realizar una solicitud exitosa. Los access tokens deben estar asociados al usuario en cuyo nombre estás realizando la solicitud. Si deseas generar un conjunto de Access Tokens para otro usuario, este debe autorizar tu App mediante el [flujo OAuth de 3 pasos](/resources/fundamentals/authentication#obtaining-access-tokens-using-3-legged-oauth-flow).

Ten en cuenta que OAuth 1.0a puede ser difícil de usar. Si no estás familiarizado con este método de autenticación, te recomendamos usar una [biblioteca](/tools-and-libraries), una herramienta como Postman, o usar OAuth 2.0 o App only para autenticar tus solicitudes.

[OAuth 2.0 Authorization Code with PKCE](/resources/fundamentals/authentication#oauth-2-0-authorization-code-flow-with-pkce-2) permite un mayor control sobre el scope de una aplicación y los flujos de autorización entre múltiples dispositivos. OAuth 2.0 te permite elegir scopes específicos y detallados que te otorgan permisos específicos en nombre de un usuario.

Para habilitar OAuth 2.0 en tu App, debes activarlo en la configuración de autenticación de tu App, que se encuentra en la sección de configuración de la App en la Developer Console.

[App only](/resources/fundamentals/authentication#oauth-2-0) solo requiere que pases un [Access Token App only](/resources/fundamentals/authentication#bearer-token-also-known-as-app-only) con tu solicitud. Puedes generar un Access Token App only directamente dentro de una App de desarrollador, o generar uno usando el endpoint [POST oauth2/token](/resources/fundamentals/authentication#post-oauth2-token).

### Developer Console, Projects y Apps de desarrollador

Para obtener un conjunto de credenciales de autenticación que funcionen con los endpoints de X API v2, debes [registrarte para una cuenta de desarrollador](https://developer.x.com/en/portal/petition/essential/basic-info), configurar un [Project](/resources/fundamentals/developer-apps) dentro de esa cuenta y crear una [App de desarrollador](/resources/fundamentals/developer-apps) dentro de ese Project. Luego podrás encontrar tus claves y tokens dentro de tu App de desarrollador.

### Rate limits

Cada día, miles de desarrolladores realizan solicitudes a la X API. Para ayudar a gestionar el enorme volumen de estas solicitudes, se aplican [rate limits](/x-api/fundamentals/rate-limits) en cada endpoint que limitan el número de solicitudes que puedes realizar en nombre de tu app o de un usuario autenticado.

Los endpoints de lookup (GET) están limitados tanto a nivel de App como a nivel de usuario; mientras que los endpoints de manage (POST/DELETE) están limitados a nivel de usuario. El rate limit de la app significa que tú, el desarrollador, solo puedes realizar un número determinado de solicitudes a este endpoint durante un período determinado desde cualquier App dada (se asume mediante el uso de la API Key y la API Secret Key, o del Access Token App only). El rate limit de usuario significa que el usuario autenticado en cuyo nombre realizas la solicitud solo puede realizar una List lookup un número determinado de veces en cualquier App de desarrollador.

La siguiente tabla muestra los rate limits de cada endpoint.

| Endpoint                       | Método HTTP | Rate limit                     |
| :----------------------------- | :---------- | :----------------------------- |
| /2/lists/:id/members           | GET         | 900 solicitudes por 15 minutos |
| /2/users/:id/list\_memberships | GET         | 75 solicitudes por 15 minutos  |
| /2/lists/:id/members           | POST        | 300 solicitudes por 15 minutos |
| /2/lists/:id/members/:user\_id | DELETE      | 300 solicitudes por 15 minutos |

### Fields y expansions

El endpoint GET de X API v2 permite a los usuarios seleccionar exactamente qué datos desean recibir de la API mediante un conjunto de herramientas llamadas `fields` y `expansions`. El parámetro `expansions` te permite expandir objetos referenciados en el payload. Por ejemplo, la búsqueda de List members te permite obtener los siguientes [expansions](/x-api/fundamentals/expansions):

* `pinned_tweet_id`

El parámetro `fields` te permite seleccionar exactamente qué [fields](/x-api/fundamentals/fields) dentro de los diferentes objetos de datos deseas recibir. La búsqueda de List members entrega principalmente objetos de usuario. Por defecto, el objeto de usuario devuelve los fields id, name y username. Para recibir fields adicionales como `user.created_at` o `user.description`, deberás solicitarlos específicamente mediante un parámetro user.fields.

Hemos añadido una guía sobre el uso conjunto de [fields y expansions](/x-api/fundamentals/data-dictionary/reference#how-to-use-fields-and-expansions).

La siguiente tabla muestra los fields y expansions disponibles para cada endpoint de lookup:

| Endpoint                       | Fields                        | Expansions        |
| :----------------------------- | :---------------------------- | :---------------- |
| /2/lists/:id/members           | `user.fields`, `tweet.fields` | `pinned_tweet_id` |
| /2/users/:id/list\_memberships | `list.fields`, `user.fields`  | `owner_id`        |

### Paginación

La búsqueda de membership/members puede devolver muchos datos. Para asegurarnos de devolver resultados consistentes y de alto rendimiento en cualquier momento, usamos paginación. La paginación es una característica en los endpoints de X API v2 que devuelven más resultados de los que se pueden devolver en una sola respuesta. Cuando eso sucede, los datos se devuelven en una serie de 'páginas'. Aprende más sobre cómo [paginar los resultados.](/x-api/fundamentals/pagination)
