Pub/Sub API
안내
토픽, 서브스크립션의 생성/삭제는 카카오클라우드 콘솔에서만 가능합니다.
공통 에러 코드
Response Error Syntax
{
"error": {
"code": int,
"message": string
}
}
// Example
{
"error": {
"code": 3,
"message": "you have passed an invalid ack ID to the service (ack_id=MTZBRklHTVZTREZTJEpTLkFQSQ==)"
}
}
에러 메시지 및 트러블슈팅
Error Code | HTTP Code | 응답 내용 및 해결 방법 |
---|---|---|
3 (INVALID_ARGUMENT) | 400 | 유효하지 않은 요청 The request is invalid; a required argument may be missing, exceeds limits, or has an invalid value. 해결 방법: 에러메시지 확인 후 요청 내용 재시도 권장 |
9 (FAILED_PRECONDITION) | 400 | 사전 조건 실패 Something must be done in the system to allow this operation. 해결 방법: 요청 재확인 권장 |
7 (PERMISSION_DENIED) | 403 | 권한 없음 The certification is invalid. 해결 방법: 권한 획득 후 재시도 권장 |
5 (NOT_FOUND) | 404 | 토픽, 서브스크립션을 찾을 수 없음 The topic or subscription referenced has not been found. In the case of JSON requests, it may also happen if the URL path is not a correct REST path. For publish and pull operations, the propagation of an object creation may take a few seconds. 해결 방법: 리소스 생성 직후라면 재 요청 권장 또는 해당 토픽, 서브스크립션 생성 후 재시도 권장 |
13 (INTERNAL) | 500 | 내부 서버 에러 This error indicates an internal server error; it should not occur. If this error occurs, please report to cloud support. The error should be transient. 해결 방법: 재시도 권장 |
Topic
토픽과 관련한 API는 다음과 같습니다.
토픽 목록 조회
프로젝트에 생성된 토픽의 목록을 가져옵니다.
API 호출 방식
메서드 | URI |
---|---|
GET | {endpoint-url}/v1/domains/{domain-id}/projects/{project-id}/topics |
Path | 유형 | 필수 여부 | 설명 |
---|---|---|---|
domain-id | String | 필수 | 프로젝트가 속한 조직의 ID |
project-id | String | 필수 | 카카오클라우드의 프로젝트 ID |
Request Header
Request | 유형 | 필수 여부 | 설명 |
---|---|---|---|
Credential-ID | String | 필수 | 액세스 키 ID |
Credential-Secret | String | 필수 | 보안 액세스 키 |
Query Params
Request | 유형 | 설명 |
---|---|---|
pageSize | Integer | 한 번에 조회할 목록 개수 |
pageToken | String | 다음 목록을 불러오기 위한 변수 |
Response Syntax
토픽 목록 조회 Response Syntax
{
"topics": [
{
object (Topic)
}
],
"nextPageToken": string
}
//object (Topic) Example
{
"id": string,
"name": string,
"description": string,
"domain": string,
"project": string,
"messageRetentionDuration": string,
"subscriptionCount": integer,
"creator": string,
"createdAt": string
}
Response Elements
Response | 유형 | 설명 |
---|---|---|
topics | Object Array (Topic) | 토픽 목록 및 정보 |
nextPageToken | String | 다음 토픽을 가져오기 위한 토큰 |
Object Array (Topic)
Response | 유형 | 설명 | Output Only |
---|---|---|---|
id | String | 토픽 ID | o |
name | String | 토픽 이름 | |
설명 | String | 토픽 설명 | |
domain | String | 토픽이 포함된 조직 ID | |
project | String | 토픽이 포함된 프로젝트 ID | |
messageRetentionDuration | String | 토픽의 메시지 보존 기간 | |
subscriptionCount | Integer | 토픽에 연결된 서브스크립션의 개수 | o |
creator | String | 생성자 | o |
createdAt | timestamp | 생성시간 | o |
토픽 상세 조회
특정 토픽의 상세 정보를 조회합니다.