
# Ottenere un'API

`GET /v1/apis/{api_id}` · permesso `apis:read`

Restituisce un'API. L'header di risposta `ETag` contiene la versione attuale da utilizzare in `If-Match`. Un'API di un altro ambiente, un'API eliminata e un id malformato restituiscono tutti `404`.

## Richiesta

| Parametro | In | Descrizione |
|---|---|---|
| `api_id` | path | L'ID dell'API, `api_…`. |

## Risposta

`200 OK` con un header `ETag`:

```json
{
  "id": "api_01h455vb4pex5vsknk084sn02q",
  "key": "orders",
  "identifier": "https://api.example.com/orders",
  "name": "Orders API",
  "is_system": false,
  "access_token_lifetime_s": 3600,
  "token_format": "jwt",
  "rbac_mode": "off",
  "allow_offline_access": true,
  "require_resource_indicator": false,
  "dpop_required": false,
  "mcp_profile": false,
  "first_party_access": "all",
  "introspection_applications": ["app_01h455vb4pex5vsknk084sn02r"],
  "created_at": "2026-10-05T12:00:00Z",
  "updated_at": "2026-10-05T12:00:00Z"
}
```

`introspection_applications` elenca le applicazioni (`app_…`, in ordine ID) che possono introspezionare i token di questa API; quando vuoto, solo l'applicazione a cui è stato emesso il token può introspezionarlo.

## Errori

| HTTP | code | Quando |
|---|---|---|
| 404 | `not_found` | Nessuna API in questo ambiente. |
| 403 | `insufficient_permissions` | La credenziale non ha `apis:read`. |

## Esempio

```bash
curl https://api.eu.keenauth.com/v1/apis/api_01h455vb4pex5vsknk084sn02q \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
```
