사이드 메뉴
커뮤니케이션
API 제공
어드민 API
카카오 오픈 API 상태
이 문서는 카카오 오픈 API 상태 및 관련 API에 대해 안내합니다.
[카카오 오픈 API 상태]는 카카오디벨로퍼스에서 제공하는 오픈 API의 상태 정보를 제공합니다. 카카오 API 플랫폼에서 직접 개발 및 운영하는 오픈 API 뿐만 아니라, 카카오 및 공동체의 API 제공자가 제공하는 오픈 API의 상태 정보도 확인할 수 있습니다.
점검 일정 공유
[카카오 오픈 API 상태]에 등록된 API의 제공자는 API 점검 시 반드시 [서비스] API플랫폼 아지트로 점검 일정을 공유해야 합니다.
[카카오 오픈 API 상태]에 API 제공자가 상태 확인 API를 사용한 오픈 API 상태 정보를 제공하기 위해 연동 방안 협의 시 전달해야 하는 정보입니다.
| 항목 | 설명 |
|---|---|
| 제품 이름 | [카카오 오픈 API 상태 확인]에 표시할 제품 이름 제품 및 문서의 표기와 일치해야 함 참고: 확인 가능 제품 |
| 제품 ID | 제품을 가리키는 고유한 문자열, 영문만 사용 가능 (예: kapi, kauth, navi) |
| API 이름 | [카카오 오픈 API 상태 확인]에 출력할 API 이름 참고: 확인 가능 API |
| API ID | API를 가리키는 고유한 문자열, 영문과 하이픈(-) 사용 가능 (예: /v2/user/me의 ID는 user_me) |
| 상태 확인 API 요청 URL | 제품의 상태 확인 API 요청 URLhealth_check 문구 포함 권장 |
| 제한 시간(threshold) | API 상태 확인 시, 지연 또는 실패로 판단하는 제한 시간 API마다 아래 네 가지 값 중 하나로 지정
|
[카카오 오픈 API 상태]에 등록된 API의 제공자는 상태 확인 API도 함께 제공해 카카오 API 플랫폼의 확인 요청에 지정된 규격으로 응답해야 합니다. 카카오 API 플랫폼은 분당 10회씩 배치(Batch) 방식으로 상태 확인을 요청합니다.
- 카카오 API 플랫폼 서버에서 API 제공자 서버로 보내는 요청 규격입니다.
- URL: 상태 확인 API 정보 전달 중 상태 확인 API 요청 URL
- 메서드:
GET - 파라미터: 없음
- 별도 인증 및 인가 없이 요청 가능해야 함
- API 제공자 서버에서 카카오 API 플랫폼 서버로 반환해야 하는 응답 규격입니다.
- HTTP 상태 코드:
200 OK로 응답해야 함, 이 외에는 각 API에 대한result를FAILURE로 처리 - 타임아웃(Timeout) 기준: 10초 (10000ms), 타임아웃 시 각 API에 대한
result를FAILURE로 처리 - 본문: 아래 본문의 구조와 동일해야 함
- HTTP 상태 코드:
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| datetime | String | API 상태 확인 시각yyyy-MM-dd HH:mm:ssZ 형식 | O |
| service | String | 제품(서비스) ID (예: kapi, kauth, navi) | O |
| elements | Element[] | API 상태 정보 목록 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| uri | String | API별 URI | O |
| result | String | API 상태, 아래 중 하나
중요: API 상태 확인 서버는 응답의 result 값으로만 각 API의 상태를 판단하며 response_status, error_code, error_message, response_time 값은 판단에 영향을 미치지 않음 | O |
| response_status | Integer | API 상태 확인 결과 응답 코드, 참고용 | X |
| error_code | String | API 상태 확인 결과 에러 코드, 참고용 | X |
| error_message | String | API 상태 확인 결과 에러 메시지, 참고용 | X |
| response_time | Integer | API 상태 확인 결과 응답 시간(단위: ms), 참고용 | X |
요청: 카카오 API 플랫폼 서버에서 API 제공자 서버로 보내는 요청
curl -X GET '${API_PROVIDER_URL}'
응답: API 제공자 서버에서 카카오 API 플랫폼 서버로 반환해야 하는 응답
{"datetime": "2023-12-01 19:21:34Z","service": "${PRODUCT_NAME}","elements": [{"uri": "${API_URI}","response_status": 200, // ${HTTP_STATUS_CODE}"response_time": 120, // ${RESPONSE_TIME} (ms)"result": "SUCCESS"},{"uri": "${API_URI}","response_status": 500, // ${HTTP_STATUS_CODE}"error_code": "DB_ISSUE","error_message": "${ERROR_MESSAGE}","result": "FAILURE"},{"uri": "${API_URI}","response_status": 504, // ${HTTP_STATUS_CODE}"error_code": "SLOW_EXECUTION","error_message": "time out ${API_TIMEOUT_LIMIT}ms","result": "DELAYED"},{"uri": "${API_URI}","response_status": 206, // ${HTTP_STATUS_CODE}"error_code": "RESPONSE_INCOMPLETE","error_message": "${ERROR_MESSAGE}","result": "ISSUE"},{"uri": "${API_URI}","error_code": "UNCHECKED","error_message": "unchecked","result": "UNKNOWN"}// ...]}