Referencia de API de Proyectos
Enumere sus proyectos del Axe Developer Hub y busque un ID de proyecto programáticamente usando la API REST
El punto final de Proyectos devuelve la lista de proyectos del Axe Developer Hub a los que su clave API puede acceder. Úselo para descubrir el ID de un proyecto a partir de su nombre, para que pueda pasar ese ID a la API de Sesiones y Resultados.
Si ya conoce su ID de proyecto, puede encontrarlo en Axe Developer Hub y llamar directamente a la API de Sesiones y Resultados; no necesita este punto final.
Autenticación
Todas las solicitudes requieren una clave API. Proporciónela usando el encabezado X-API-Key:
X-API-Key: <DEQUE_API_KEY>Encuentre su clave API en el Portal de Cuenta de Axe. Elija una clave API del Axe Developer Hub para proyectos web o CI/CD, o una clave API del Axe DevTools Mobile para proyectos móviles.
Control de Acceso
- Miembros del proyecto solo ven los proyectos a los que pertenecen.
- Admins de la organización con una suscripción activa a Axe Developer Hub o Axe DevTools Mobile ven todos los proyectos en su organización de ese tipo de producto, independientemente de la membresía del proyecto.
- En ambos casos, la respuesta está limitada al producto de la clave API: una clave API del Axe Developer Hub devuelve solo proyectos del Axe Developer Hub, y una clave API del Axe DevTools Mobile devuelve solo proyectos del Axe DevTools Mobile.
Una suscripción inactiva devuelve 401 Unauthorized.
Punto Final de Proyectos
Devuelve la lista de proyectos a los que la clave API autenticada puede acceder.
Solicitud
- Punto final:
GET https://axe.deque.com/api-pub/v1/results/projects - Encabezados (obligatorios):
X-API-Key: <DEQUE_API_KEY>Accept: application/json
Parámetros de Consulta
Todos los parámetros de consulta son opcionales.
| Parámetro | Descripción |
|---|---|
project_types |
Lista separada por comas de tipos de proyectos a devolver, por ejemplo, axe-devtools-watcher,axe-devtools-html. También acepta los alias web y mobile, que se expanden a los tipos concretos para ese producto. Cuando se omite, se devuelven todos los tipos de proyectos a los que su clave API puede acceder. |
page_size |
Número de proyectos a devolver por página. Predeterminado: 30. Máximo: 100. Los valores por encima del máximo se limitan a 100. Ver Paginación por Cursor. |
after |
Valor de cursor de la respuesta anterior, utilizado para obtener la página siguiente. Ver Paginación por Cursor. |
Cuerpo de la Respuesta
Una respuesta exitosa devuelve un arreglo JSON de objetos de proyecto. Cada objeto de proyecto incluye los siguientes campos:
| Campo | Tipo | Descripción |
|---|---|---|
project_id |
Cadena | Identificador único para el proyecto. Use este valor como {project_id} al llamar al punto final de Sesiones. |
name |
Cadena | El nombre para mostrar del proyecto. |
selected_project_type |
Cadena | El tipo de proyecto, por ejemplo axe-devtools-watcher o axe-devtools-html. |
role |
Cadena | Su rol en el proyecto, por ejemplo admin. |
created_at |
Cadena | Marca de tiempo UTC ISO 8601 de cuando se creó el proyecto. |
last_session_created_at |
Cadena | Marca de tiempo UTC ISO 8601 de la sesión más reciente del proyecto. null cuando el proyecto no tiene sesiones. |
has_git_information |
Booleano | Si el proyecto tiene metadatos Git asociados. |
git_url |
Cadena | URL del repositorio Git asociado con el proyecto. null cuando el proyecto no tiene información de Git. |
latest_session |
Objeto | Detalles de la sesión más reciente del proyecto, o null cuando el proyecto no tiene sesiones. Para enumerar las sesiones de un proyecto, use el punto final de Sesiones en lugar de este campo. |
Ejemplo de Cuerpo de Respuesta
[
{
"project_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"name": "webapp-ci",
"selected_project_type": "axe-devtools-watcher",
"role": "admin",
"created_at": "2026-06-01T14:23:00.000Z",
"last_session_created_at": "2026-06-14T09:12:00.000Z",
"has_git_information": true,
"git_url": "https://github.com/example/webapp",
"latest_session": {
"session_id": "0d4a85a2-9e6f-44ef-b814-fee8412abeb0",
"created_at": "2026-06-14T09:12:00.000Z",
"git_branch": "main"
}
},
{
"project_id": "f0e1d2c3-b4a5-6789-0123-456789abcdef",
"name": "design-system",
"selected_project_type": "axe-devtools-html",
"role": "admin",
"created_at": "2026-05-20T08:00:00.000Z",
"last_session_created_at": null,
"has_git_information": false,
"git_url": null,
"latest_session": null
}
]Paginación por Cursor
La paginación es opcional. Una solicitud que no envíe ni page_size ni after devuelve su lista completa de proyectos en una sola respuesta, sin encabezado de cursor, exactamente como si estos parámetros no existieran.
Para pasar por los resultados en su lugar, el punto de conexión Projects usa la misma paginación basada en cursor que punto final de Sesiones: cuando hay más resultados más allá de la página actual, se devuelve un valor de cursor opaco en el encabezado de respuesta x-pagination-cursor. Pase este valor como el parámetro de consulta after en su próxima solicitud para recuperar la siguiente página.
Cuando el encabezado x-pagination-cursor está ausente de la respuesta, ha llegado a la última página.
Buscar un ID de Proyecto por Nombre
Este ejemplo usa curl y jq para encontrar el ID de un proyecto a partir de su nombre:
curl -s \
-H "Accept: application/json" \
-H "X-API-Key: $API_KEY" \
"https://axe.deque.com/api-pub/v1/results/projects" \
| jq -r '.[] | select(.name == "webapp-ci") | .project_id'Pase el ID devuelto al punto final de Sesiones para listar las sesiones de ese proyecto.
Respuestas de Error del Punto de Conexión de Proyectos
| Estado | Causa |
|---|---|
400 Bad Request |
El valor project_types contiene un tipo de proyecto no válido, el cursor after está mal formado, o page_size/after se repitió en la cadena de consulta. |
401 Unauthorized |
La clave de API es inválida, falta, o la suscripción asociada está inactiva. |
