Establecer una concesión de API de aplicación

PUT /v1/applications/{application_id}/api-grants/{api_id} · permiso applications:write

Reemplaza, en su totalidad, los ámbitos que una aplicación puede solicitar para una API. Una aplicación puede tener concesiones para como máximo 50 API.

Solicitud

Parámetro En Descripción
application_id path Identificador de la aplicación (app_…).
api_id path Identificador de la API (api_…).

Body

Campo Tipo Obligatorio Descripción
scopes string[] sí Ámbitos permitidos (resource:action); cada uno debe estar definido en la API. Como máximo 1000.
default_scopes string[] no Ámbitos otorgados de forma predeterminada; un subconjunto de scopes.

Respuesta

200 OK con la concesión.

{
  "application_id": "app_6f8d0cjgbmf0gtn2rg6pscp3cg",
  "api_id": "api_0000000000000000000000001z",
  "scopes": ["orders:read", "orders:write"],
  "default_scopes": ["orders:read"],
  "created_at": "2026-10-05T10:00:01Z",
  "updated_at": "2026-10-05T10:00:01Z"
}

Errores

HTTP code Cuándo
401 unauthenticated La clave falta, no es válida o ha sido revocada.
403 insufficient_permissions La clave carece del permiso requerido.
404 not_found La aplicación o la concesión no existe en este entorno.
422 validation_failed Un ámbito está mal formado o no está definido en la API, o default_scopes no es un subconjunto de scopes.
403 quota_exceeded La aplicación ya tiene concesiones para 50 API.
400 unknown_field El cuerpo tiene un campo que no forma parte del esquema.

Ejemplo

curl -X PUT https://api.eu.keenauth.com/v1/applications/app_6f8d0cjgbmf0gtn2rg6pscp3cg/api-grants/api_0000000000000000000000001z \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{"scopes":["orders:read","orders:write"],"default_scopes":["orders:read"]}'