
# İzinleri listele

`GET /v1/permissions` · izin `apis:read`

Bir API'nin izinlerini (OAuth scope'ları) onay ekranında gösterilen metinleriyle birlikte, en yeniden eskiye imleçli sayfalarla döner. Ortam yalnız kimlik bilgisinden gelir.

## İstek

| Parametre | Tür | Zorunlu | Açıklama |
|---|---|---|---|
| `api_id` | string | evet | API (`api_…`). Yoksa, tekrarlanırsa ya da biçimsizse `/api_id` işaretçili `422`. |
| `limit` | integer | hayır | 1-100, varsayılan 20. |
| `after` | string | hayır | `list_metadata.after`'daki imleç. `before` ile birlikte verilemez. |
| `before` | string | hayır | `list_metadata.before`'daki imleç. |
| `order` | string | hayır | `asc` ya da `desc` (varsayılan). İmleç yalnız aynı `api_id` ve `order` ile geçerlidir. |

## Yanıt

`200 OK`

```json
{
  "data": [ {
  "id": "perm_01h455vb4pex5vsknk084sn02s",
  "api_id": "api_01h455vb4pex5vsknk084sn02q",
  "value": "read:orders",
  "display_name": "Read orders",
  "description": "See your past orders and their status",
  "consent_text_i18n": {
    "en": "Read your orders",
    "tr": "Siparişlerinizi okuyun"
  },
  "sensitivity": "normal"
} ],
  "list_metadata": { "before": null, "after": "eyJ2IjoxLi4ufQ" }
}
```

Onay metni olmayan izinde `display_name` ve `description` `null`, `consent_text_i18n` `{}`'dir. `null` imleç o yönde başka kayıt olmadığını söyler. Toplam sayı döndürülmez.

## Hatalar

| HTTP | code | Ne zaman |
|---|---|---|
| 400 | `invalid_cursor` | İmleç bozuk, kurcalanmış ya da başka bir ortam, `api_id` veya `order` için üretilmiş. |
| 403 | `insufficient_permissions` | Kimlik bilgisinde `apis:read` yok. |
| 404 | `not_found` | Bu ortamda böyle bir API yok. |
| 422 | `validation_failed` | `api_id` yok, tekrarlı ya da biçimsiz, ya da başka bir sorgu parametresi geçersiz. |

## Örnek

```bash
curl "https://api.eu.keenauth.com/v1/permissions?api_id=api_01h455vb4pex5vsknk084sn02q&limit=20" \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
```
