CLI용 환경 목록 조회
GET https://api.keenauth.com/v1/environments · keenauth env list가 호출합니다
keenauth login으로 로그인한 계정에서 대시보드 역할을 가진 환경 중 CLI로 작업할 수 있는 환경을 나열합니다. 계정, 프로젝트 또는 환경 할당을 통해 역할이 부여된 환경이 포함됩니다. 삭제된 환경과 삭제된 프로젝트의 환경은 나열되지 않습니다. 이 엔드포인트를 직접 호출할 필요는 없습니다. keenauth env list가 목록을 표시하고, keenauth env use <environment_id>로 환경을 선택합니다.
여러 계정의 구성원이라면 목록에는 현재 로그인한 계정의 환경만 포함됩니다. 다른 계정의 환경을 보려면 해당 계정으로 로그인하십시오. 어떤 환경에도 역할이 없으면 목록은 비어 있습니다.
요청
헤더:
| 헤더 | 필수 | 설명 |
|---|---|---|
Authorization |
예 | DPoP <access token>: 로그인할 때 CLI가 받은 액세스 토큰입니다. |
DPoP |
예 | 이 요청에 대한 DPoP 증명(htm GET, 쿼리를 제외한 htu https://api.keenauth.com/v1/environments)으로, 액세스 토큰이 바인딩된 키로 서명합니다. 액세스 토큰의 해시와 서버 nonce를 포함합니다. |
쿼리 매개변수:
| 매개변수 | 설명 |
|---|---|
limit |
페이지 크기, 1~100; 기본값 20. |
after |
이전 페이지의 list_metadata.after 값입니다. |
목록은 앞으로만 페이지를 나눕니다. before와 order는 validation_failed로 거부됩니다.
응답
200 OK와 Cache-Control: no-store, 가장 최근 환경이 먼저 나옵니다:
| 필드 | 설명 |
|---|---|
data[].id |
환경(env_…)입니다. keenauth env use 및 관리 토큰 요청에 사용합니다. |
data[].slug |
환경의 DNS 레이블(<slug>.<region>.keenauth.app)입니다. |
data[].display_name |
환경의 이름입니다. |
data[].environment_type |
production, staging 또는 development입니다. |
data[].region |
환경 데이터의 리전입니다(예: eu). |
data[].project_id |
프로젝트(proj_…)입니다. |
data[].project_name |
프로젝트의 이름입니다. |
data[].account_id |
계정(acct_…)입니다. |
data[].dashboard_role |
환경에서의 대시보드 역할입니다(owner, admin, developer, support, billing, viewer, 또는 사용자 지정 역할만 해당하는 경우 custom). |
data[].created_at |
환경이 생성된 시각입니다(RFC 3339, UTC). |
list_metadata.after |
다음 페이지의 커서입니다. 마지막 페이지에서는 null입니다. |
list_metadata.before |
항상 null입니다. |
커서는 사용자와 계정에 바인딩되며, 다른 사용자나 다른 로그인에서는 작동하지 않습니다.
오류
| 상태 | 코드 | 발생 시점 |
|---|---|---|
| 400 | invalid_cursor |
after 커서가 잘못되었거나 변경되었거나, 다른 사용자 또는 계정용으로 발급되었습니다. |
| 401 | unauthenticated |
액세스 토큰이 전송되지 않았습니다. |
| 401 | invalid_token |
액세스 토큰이 유효하지 않거나 만료되었거나 CLI의 토큰이 아닙니다. keenauth login으로 다시 로그인하십시오. |
| 401 | invalid_dpop_proof |
DPoP 증명이 없거나 중복되었거나, 요청 또는 토큰의 키와 일치하지 않습니다. |
| 401 | use_dpop_nonce |
응답 헤더 DPoP-Nonce의 nonce를 포함한 증명으로 다시 시도하십시오. |
| 401 | insufficient_user_authentication |
다중 인증이 필요합니다. 다시 로그인하십시오. |
| 422 | validation_failed |
limit이 1~100의 정수가 아니거나, 매개변수가 반복되었거나, before 또는 order가 전송되었습니다. |
예시
curl "https://api.keenauth.com/v1/environments?limit=50" \
-H "Authorization: DPoP $ACCESS_TOKEN" \
-H "DPoP: $DPOP_PROOF"