Docs de Autonomy
API HTTP v1

Autenticación

Autentica las solicitudes de la API HTTP con una clave de API de organización o un token de acceso OAuth.

Envía una credencial Bearer en cada solicitud POST /api/v1/*:

Cabecera Authorizationhttp
Authorization: Bearer <credential>

Una credencial que empieza por aut_ es una clave de API de organización. Cualquier otra se comprueba como token de acceso OAuth.

Claves de API de organización

Usa una clave de API para trabajos de CI, scripts y otros sistemas que no actúan como una persona.

  1. Abre Organization → API keys. Solo los propietarios y administradores pueden gestionar claves.
  2. En Create a key, escribe un Key name, como «GitHub Actions», y haz clic en Generate key.
  3. Copia la clave en ese momento. El panel la muestra una sola vez: "Copy this key now. You won't see it again."
Codehttp
Authorization: Bearer aut_…

Qué puede hacer una clave:

  • Pertenece a una organización y llega a todos sus proyectos.
  • Tiene todos los permisos que se indican abajo. No hay selector de permisos ni fecha de caducidad.
  • Puede enviar 1000 solicitudes por hora.
  • Solo funciona en la API HTTP. Los asistentes de IA se conectan a MCP con OAuth.

La tabla API keys muestra cada clave con su nombre, el inicio de la clave y su fecha de creación. Para desactivar una clave, haz clic en Revoke key: todo lo que la use deja de funcionar al instante. Guarda las claves en el almacén de secretos de tu CI, nunca en el cuerpo de una solicitud ni en un repositorio.

Tokens de acceso OAuth

Un token de acceso OAuth actúa como la persona que lo autorizó, en una organización. Es lo que usan los clientes MCP, y la API HTTP también lo acepta. La persona debe seguir siendo miembro de esa organización, y un miembro solo llega a los proyectos que puede abrir. Los propietarios y administradores llegan a todos los proyectos.

Los tokens de acceso duran una hora. Un cliente que pidió offline_access puede renovar su token sin volver a preguntarte.

Permisos

Cada operación necesita un permiso. Las claves de API los tienen todos. Un token OAuth tiene los permisos aprobados en la pantalla de consentimiento.

PermisoTexto en la pantalla de consentimientoOperaciones
autonomy:readRead projects, test cases, runs and issuesTodas las operaciones list y get, run.step_actions y run.evidence
autonomy:test_cases:writeCreate and edit test casestest_case.create, test_case.update_steps, test_case.archive
autonomy:test_plans:writeCreate and edit test planstest_plan.create, test_plan.set_members
autonomy:runs:writeStart runsrun.trigger
autonomy:environments:writeCreate and edit environmentsenvironment.upsert
autonomy:issues:writeFile and update issuesissue.create, issue.comment, issue.set_status

Un token sin el permiso que necesita una operación recibe 403 FORBIDDEN con el mensaje "This operation requires the <scope> scope." y el permiso en details.scope. El catálogo de operaciones indica el permiso de cada operación.

Fallos de autenticación

Una credencial ausente, mal formada, caducada o no válida devuelve 401 con el error UNAUTHENTICATED:

Codejson
1{2  "error": {3    "code": "UNAUTHENTICATED",4    "message": "Missing or invalid programmatic credentials."5  }6}

La respuesta también incluye un desafío Bearer que los clientes OAuth usan para encontrar el servidor de autorización:

Desafío 401http
WWW-Authenticate: Bearer resource_metadata="https://app.autonomyqa.com/.well-known/oauth-protected-resource/api/mcp"

¿No lo encontraste?

On this page