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

# Referencia de la Management API

> Documentación de la Management API de Auth0

<Badge>Versión: 2.0 (Actual)</Badge>

**La Management API de Auth0** es un conjunto de endpoints para realizar tareas administrativas de forma programática y debe utilizarse desde servidores de back-end o por entidades de confianza. En términos generales, todo lo que puede hacerse a través del Auth0 Dashboard también puede hacerse mediante esta API.

Esta API es independiente de la [Auth0 Authentication API de acceso público](https://auth0.com/docs/api/authentication), que está pensada para su uso desde front-ends y por entidades no confiables.

Al usar los ejemplos de código incluidos en esta documentación de la API, las solicitudes deben enviarse con un Content-Type de `application/json`. Todos los endpoints admiten un tamaño máximo de payload de 1 megabyte.

La documentación de la Management API de Auth0 sigue el [esquema OpenAPI v3.1 de la Management API de Auth0](https://auth0.com/docs/api/management/openapi.json). Tenga en cuenta que la compatibilidad con el esquema OpenAPI v3.1 se encuentra actualmente en Beta.

<div id="authentication">
  ## Autenticación
</div>

El uso de Auth0 Management API requiere un token de acceso de Management API. Para obtener información sobre cómo solicitar este token, consulte [Tokens de acceso de Management API](https://auth0.com/docs/secure/tokens/access-tokens/management-api-access-tokens).

Auth0 Management API usa JSON Web Tokens (JWT) para autenticar solicitudes. La claim de alcances del token de acceso de Management API indica qué métodos de solicitud se pueden usar al llamar a esta API. El token de ejemplo deserializado de esta página concede acceso de solo lectura a usuarios y acceso de lectura y escritura a conexiones. Si intenta usar cualquier método de solicitud que no esté permitido por el conjunto de alcances, se devolverá una respuesta **403 Forbidden**.

```bash lines theme={null}
{
  "aud": "m8DAxghyfE0KdpzogfXgMSxrkCSdKVEF",
  "scopes": {
    "connections": {
      "actions": ["read", "update"]
    }
  },
  "iat": "1446056652",
  "jti": "7e9c6a991f5a227fb7ebaa522536ae4c"
}
```

Para hacer llamadas a la API, envíe el Token de la API en el encabezado HTTP Authorization mediante el [esquema de autenticación Bearer](https://tools.ietf.org/html/draft-ietf-oauth-v2-bearer-20#section-2.1).

```bash lines theme={null}
curl -H "Authorization: Bearer eyJhb..." https://@@TENANT@@/api/v2/users
```

<div id="request-correlation">
  ## Correlación de solicitudes
</div>

Un ID de correlación es un identificador único (de hasta 64 caracteres) de una operación individual de Management API y permite rastrear esas operaciones en los registros del inquilino. Para obtener más información, consulte [Logs](https://auth0.com/docs/deploy-monitor/logs).

La API acepta un ID de correlación proporcionado por el cliente si se envía mediante el encabezado HTTP `X-Correlation-ID` en los métodos `POST`, `PUT`, `PATCH` y `DELETE`.

```bash lines theme={null}
curl -H "Authorization: Bearer eyJhb..." -H "x-correlation-id: client1_xyz" https://@@TENANT@@/api/v2/users
```

Si se proporciona un valor para el encabezado `X-Correlation-ID` de más de 64 caracteres, solo se mostrarán en los registros los primeros 64 caracteres.

```bash lines theme={null}
"references": {
  "correlation_id": "client1_xyz"
}
```

<div id="pagination">
  ## Paginación
</div>

La paginación es una técnica que utilizan las API para dividir grandes conjuntos de datos en páginas manejables, lo que reduce la cantidad de datos que se devuelve en cada respuesta. En las API son comunes dos tipos principales de paginación: la paginación **basada en desplazamiento** y la paginación **basada en puntos de control**. Cada una tiene ventajas y casos de uso distintos según el tamaño del conjunto de datos y los requisitos de consulta.

La Management API de Auth0 admite ambos tipos de paginación en muchos endpoints, como `GET /api/v2/clients` y `GET /api/v2/logs`. Cuando ambas opciones están disponibles, se recomienda la **paginación basada en puntos de control** por su mayor eficiencia y estabilidad con conjuntos de datos grandes.

<div id="offset-based-pagination">
  ### Paginación basada en desplazamiento
</div>

La paginación basada en desplazamiento es un método sencillo y ampliamente utilizado para paginar conjuntos de datos de hasta aproximadamente 1.000 elementos. Este enfoque utiliza los parámetros `page` y `per_page` para definir el punto de inicio y el número de elementos de cada página.

* **Parámetros:**
  * `page`: El número de página, indexado desde cero, que se va a recuperar. Si no se especifica, el valor predeterminado es `0`.
  * `per_page`: El número de elementos que se devolverán por página. Para los inquilinos de Public Cloud, [el máximo es `50`](https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-paginated-queries); para Private Cloud, el máximo es `100`. Si no se especifica, el valor predeterminado es la mitad del máximo.

**Ejemplo de solicitud de paginación basada en desplazamiento:**

```bash lines theme={null}
curl -L "https://@@TENANT@@/api/v2/clients?per_page=10&page=2" \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Accept: application/json'
```

En la paginación por desplazamiento:

* Si `page * per_page` supera el número total de resultados, se devuelve un array vacío.
* En cada solicitud de página se vuelve a calcular el desplazamiento, lo que puede afectar al rendimiento con conjuntos de datos más grandes. La paginación por desplazamiento suele ser más adecuada para colecciones que probablemente no superen los 1.000 elementos.

<div id="checkpoint-based-pagination">
  ### Paginación basada en puntos de control
</div>

La paginación basada en puntos de control, también conocida como paginación basada en cursores o tokens, está optimizada para conjuntos de datos grandes. Este método utiliza un ID de punto de control `next` proporcionado por el servidor para recuperar las páginas siguientes en una secuencia solo hacia adelante. El ID de punto de control `next` se incluye en la respuesta cuando hay resultados adicionales disponibles.

Para continuar con la paginación, use el ID de punto de control `next` en el parámetro de consulta `from` de la siguiente solicitud. Este ID es opaco y debe pasarse sin modificar.

* **Parámetros:**
  * `from`: El siguiente ID de punto de control de la respuesta anterior, que se utiliza para recuperar la siguiente página de resultados.
  * `take`: La cantidad de elementos que se devolverán por página. Para los inquilinos de Public Cloud, [el máximo es `50`](https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-paginated-queries); para Private Cloud, el máximo es `100`. Si no se especifica, el valor predeterminado es la mitad del máximo.

**Ejemplo de solicitud de paginación basada en puntos de control:**

```bash lines theme={null}
curl -L "https://@@TENANT@@/api/v2/clients?take=10&from=Cg1HRUY3NEszUERFME40GgAiAQgCEj..." \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Accept: application/json'
```

<div id="checkpoint-id-expiry">
  #### Vencimiento del ID de punto de control
</div>

Al usar la paginación basada en puntos de control, es importante tener en cuenta la vigencia de cada ID de punto de control `next`. El ID de punto de control está diseñado para usarse de forma secuencial, y cada ID solo es válido durante un tiempo limitado para garantizar la coherencia de los datos.

<Note>
  <p class="uppercase font-bold">Nota</p>

  El ID de punto de control `next` es válido durante **24 horas** desde su emisión. Si vence, deberá realizar una nueva solicitud para reiniciar desde el principio del conjunto de datos. Considere almacenar los resultados en caché si puede transcurrir un período prolongado entre solicitudes.
</Note>

<div id="forward-only-constraints">
  #### Restricciones de avance únicamente
</div>

La paginación basada en puntos de control solo permite avanzar. Evite usar el ID de punto de control para navegar hacia atrás o para hacer solicitudes fuera de secuencia, ya que esto puede provocar errores. Use siempre el ID de punto de control `next` de la respuesta anterior.

<div id="choosing-between-offset-and-checkpoint-pagination">
  ### Cómo elegir entre la paginación por desplazamiento y la paginación por punto de control
</div>

Cuando se admiten ambos tipos de paginación:

* **Utilice la paginación basada en puntos de control** para gestionar grandes conjuntos de datos de forma eficiente.
* Utilice la paginación basada en desplazamiento para conjuntos de datos más pequeños (normalmente, menos de 1.000 elementos), ya que es más sencilla de implementar, pero menos eficiente para colecciones grandes.

<div id="best-practices-for-handling-pagination">
  ### Prácticas recomendadas para gestionar la paginación
</div>

* **Consistencia de los datos:** Cada solicitud paginada refleja el estado de los datos en el momento en que se realiza. Si los datos se actualizan o eliminan, puede haber elementos omitidos o duplicados. La paginación basada en puntos de control puede ayudar a mantener una paginación más fluida en conjuntos de datos dinámicos.
* **Almacenamiento de checkpoints:** Para recuperar grandes volúmenes de datos, considere almacenar checkpoints después de cada página para poder reanudar desde el último checkpoint en caso de interrupción.

Este enfoque permite recuperar datos de forma eficiente y estable en grandes conjuntos de datos, en consonancia con las opciones de paginación de la Management API de Auth0.

<div id="test-with-an-access-token">
  ### Pruebe con un Token de acceso
</div>

Puede obtener un Token de acceso para realizar pruebas. Para obtener más información, consulte [Obtener tokens de acceso de Management API para realizar pruebas](/es/docs/secure/tokens/access-tokens/management-api-access-tokens/get-management-api-access-tokens-for-testing).
