Comienza con las API de Axe Developer Hub

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

Configura la autenticación, encuentra tu ID de proyecto y realiza tu primera llamada a las API REST de Axe Developer Hub

Not for use with personal data

Cada API de Axe Developer Hub utiliza la misma configuración: una clave de API de Axe Account enviada en un encabezado de solicitud y, para la mayoría de las solicitudes, un ID de proyecto. Esta guía describe ese proceso de configuración una vez, realiza una primera llamada para confirmar que funciona, y luego te dirige a la API para la tarea que tienes en mente.

note

No hay credenciales de API separadas. La clave de API de Axe Account que ya usas para enviar resultados de pruebas a Axe Developer Hub también funciona para cada API de Axe Developer Hub.

Obtén tu clave API

  1. Inicia sesión en el Portal de Axe Account.
  2. Copia una clave API para el producto que utiliza tu proyecto:
    • Una clave de API de Axe Developer Hub para proyectos web y de CI/CD.
    • Una clave de API de Axe DevTools Mobile para proyectos móviles.

Una clave de API solo devuelve datos de su propio producto. Una clave de API de Axe Developer Hub no puede recuperar datos de Axe DevTools Mobile, y una clave de API de Axe DevTools Mobile no puede recuperar datos de Axe Developer Hub, ni siquiera para un administrador de organización. Los proyectos a los que una clave puede acceder dentro de su producto dependen de tu membresía y rol en el proyecto: consulta Control de Acceso en el Referencia de API de Sesiones y Resultados y la Referencia de API de Proyectos.

Envía la clave de API con cada solicitud

Envía tu clave de API en el encabezado X-API-Key de cada solicitud y solicita una respuesta JSON con el encabezado Accept:

X-API-Key: <DEQUE_API_KEY>
Accept: application/json

Trata tu clave de API como un secreto: guárdala en una variable de entorno o en el almacén de secretos de tu plataforma CI/CD en lugar de codificarla directamente en tus solicitudes. Los ejemplos de esta guía la leen desde una variable de entorno API_KEY.

Encuentra tu ID de proyecto

La mayoría de las solicitudes identifican un proyecto por su ID de proyecto. Puedes encontrarlo de dos maneras:

  • En Axe Developer Hub: Ve a tus proyectos, abre el menú Configuración para tu proyecto y selecciona Configurar proyecto. El ID del proyecto aparece en la parte superior de la página de instrucciones.
  • Con la API de Proyectos: Busca el ID a partir del nombre del proyecto. Consulta Buscar un ID de proyecto por nombre.

Realiza tu primera llamada

Enlista los proyectos a los que tu clave de API puede acceder. Esta solicitud no necesita un ID de proyecto, por lo que es una manera rápida de confirmar que tu clave funciona:

curl -s \
  -H "Accept: application/json" \
  -H "X-API-Key: $API_KEY" \
  "https://axe.deque.com/api-pub/v1/results/projects"

Una respuesta 200 OK con un arreglo JSON de proyectos significa que tu clave es válida y está activa. El project_id de cada proyecto es el ID que se utiliza en las otras API. Si obtienes 401 Unauthorized en su lugar, verifica que hayas copiado toda la clave y que pertenece al producto que usan tus proyectos.

Elige tu tarea

Controla un pipeline de CI/CD

Usa el API de Estado de Commit para fallar una solicitud de pull request o un commit cuando se encuentren errores de accesibilidad. Tu solicitud pasa un SHA de commit de Git y un ID de proyecto, y la respuesta informa la cantidad de errores de accesibilidad de la ejecución de pruebas de ese commit y cuántos están por encima de tu umbral de a11y. Tu proyecto debe usar datos de Git.

Si tu pipeline se ejecuta en GitHub, usa la Acción de GitHub en lugar de llamar directamente a la API.

Recupera resultados de accesibilidad

Usa el API de Sesiones y Resultados para descargar resultados. Llama al endpoint de Sesiones para listar las sesiones de un proyecto, luego pasa el session_id de una sesión al endpoint de Resultados.

Dos comportamientos del endpoint de Resultados afectan cómo escribes tu cliente:

  • Los resultados pueden tardar en prepararse. Una respuesta 204 No Content significa que los resultados aún no están listos. Espera brevemente y repite la solicitud hasta que recibas 200 OK. Consulta Estado de la Sesión y el Patrón de Sondeo.
  • La descarga de resultados es más rápida con la compresión Brotli. Envía Accept-Encoding: br (o usa curl --compressed con un curl habilitado para Brotli), especialmente para format=full. Consulta Compresión de Respuesta.

Gestiona proyectos y miembros

Usa el API de Proyectos para enumerar tus proyectos, revisarlos página por página o encontrar un ID de proyecto por nombre. También puedes crear, actualizar y eliminar proyectos, así como agregar, cambiar o remover miembros de proyectos. Para automatizar ese trabajo, comienza con Comienza con la automatización de gestión de proyectos.

Manejar Errores y Reintentos

Las API del Centro de Desarrolladores de Axe comparten un conjunto común de respuestas de error:

Estado Significado ¿Reintentar?
400 Bad Request Un parámetro de ruta o de consulta, o el cuerpo de la solicitud, es inválido, por ejemplo, un ID o marca de tiempo malformados o un campo requerido que falta. No. Corrija la solicitud primero.
401 Unauthorized La clave API es inválida o falta, o su suscripción está inactiva. No. Verifica la clave y tu suscripción.
403 Forbidden La clave API no tiene acceso al proyecto o la operación solicitada, por ejemplo, actualizar un proyecto del que no eres administrador. No. Verifica tu membresía en el proyecto o rol, y que tu suscripción cubra el tipo de proyecto.
404 Not Found El proyecto, sesión o commit solicitado no existe. No. Verifica el ID o SHA.
429 Too Many Requests El sistema está bajo una carga pesada. Sí, después del número de segundos en el encabezado Retry-After.

Cuando consultas el endpoint de Resultados, 204 No Content no es un error: significa que los resultados aún no están listos, y debes reintentar la misma solicitud después de una breve espera. Espera más tiempo entre reintentos cuantas más veces lo intentes, y renuncia después de un límite razonable para que una sesión atascada no bloquee tu pipeline indefinidamente.

Cada página de referencia lista las respuestas de error exactas para sus endpoints. Construye tu lógica de reintento para que pueda manejar 429 Too Many Requests desde cualquier endpoint, no solo el endpoint de Resultados.