
# 권한 목록

`GET /v1/permissions` · 권한 `apis:read`

하나의 API에 속한 권한(OAuth 스코프)을 최신순으로, 커서 페이지 단위로 동의 화면 텍스트와 함께 반환합니다. 환경은 자격 증명에서만 결정됩니다.

## 요청

| 매개변수 | 유형 | 필수 | 설명 |
|---|---|---|---|
| `api_id` | 문자열 | 예 | API(`api_…`). 없거나, 반복되거나, 형식이 잘못되면 포인터 `/api_id`와 함께 `422`가 반환됩니다. |
| `limit` | 정수 | 아니요 | 1–100, 기본값 20. |
| `after` | 문자열 | 아니요 | `list_metadata.after`의 커서. `before`와 함께 쓸 수 없습니다. |
| `before` | 문자열 | 아니요 | `list_metadata.before`의 커서. |
| `order` | 문자열 | 아니요 | `asc` 또는 `desc`(기본값). 커서는 같은 `api_id`와 `order`에서만 유효합니다. |

## 응답

`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" }
}
```

동의 텍스트가 없는 권한은 `display_name`과 `description`이 `null`이고 `consent_text_i18n`이 `{}`입니다. `null` 커서는 해당 방향에 더 이상 레코드가 없다는 뜻입니다. 전체 개수는 반환되지 않습니다.

## 오류

| HTTP | code | 언제 |
|---|---|---|
| 400 | `invalid_cursor` | 커서가 잘못되었거나 변조되었거나, 다른 환경, `api_id`, `order`용으로 발급되었습니다. |
| 403 | `insufficient_permissions` | 자격 증명에 `apis:read`가 없습니다. |
| 404 | `not_found` | 이 환경에 그러한 API가 없습니다. |
| 422 | `validation_failed` | `api_id`가 없거나, 반복되거나, 형식이 잘못되었거나, 다른 쿼리 매개변수가 잘못되었습니다. |

## 예제

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