1.kakao biz 센터 API

Edit

1.1공통

1.1.1Host

[서버] sip 서버

1.1.2시퀀스 다이어그램 (Sequence Diagram)

그림 1-1kakako_biz_center_flow

1.1.3RESPONSE SAMPLE

[성공]

{
"code": "200",                
... // 요청한 데이터
}

[잘못된 요청 또는 에러]

{
"code": "500",
"message": "상세 내용"                
}

1.1.4코드 정의

code

설명

200

요청 성공

400

요청 실패(카카오톡 서버 접속 실패)









1.2발신프로필 관리

1.2.1카카오톡 채널 인증 토큰 요청

[Request]
GET /sender/token
[Parameter]

타입

필수

설명

yellowId

text

Y

카카오톡 채널 (예: @에릭커피)

phoneNumber

text

Y

카카오톡 채널 알림받는 관리자 핸드폰 번호

[Response]

타입

설명

code

text

결과코드

1.2.2발신프로필 카테고리 전체 조회

[Request]
GET /category/all
[Response]

타입

설명

code

text

결과코드

name

text

카테고리이름

1.2.3발신프로필 카테고리 조회

[Request]
GET /category
[Parameter]

타입

필수

설명

categoryCode

text

Y

카테고리 코드

[Response]

타입

설명

code

text

카테고리 코드

name

text

카테고리 이름

1.2.4발신프로필 등록

[Request]
POST /sender/create
[Parameter]

타입

필수

설명

token

text

Y

2.1에서 카카오톡으로 받은 토큰값

phoneNumber

text

Y

2.1에서 토큰 요청시 입력한 핸드폰 번호

yellowId

text

Y

등록할 카카오톡 채널 (예: @에릭커피)

categoryCode

text

Y

카테고리 코드 (11자리 숫자)

bizchat

boolean

Y

상담톡 사용 여부

committalCompanyName

text

Y

상담 내용 위탁사명

[Response]
표 1-1응답 바디는 JSON객체로 아래 값을 참고 해주세요

-

타입

설명

code


text

결과코드

data

senderKey

text

발신프로필키


uuid

text

카카오톡 채널


name

text

카카오톡 채널 프로필명


status

text

상태(A:정상, S:차단, D:삭제)


profileStatus

text

카카오톡 채널 상태 (A:activated, C:deactivated, B:block, E:

deleting, D:deleted)


createdAt

text

등록일


modifiedAt

text

최종수정일


categoryCode

text

카테고리 코드


bizchat

boolean

상담톡 사용 여부


committalCompan

yName

text

위탁사 이름 (상담톡 관련)

[Example]
{ "code": "200", 
"data": { 
"senderKey": "da2b0c0d28805157d5355b60beb9493a9b3e5b15", 
"uuid": "@mjcw64slnjexnye", 
"name": "넥서스커뮤니티개발자", 
"status": "A", 
"profileStatus": "A", 
"createdAt": "2021-02-18 14:51:46", 
"modifiedAt": "2021-02-18 14:51:46", 
"categoryCode": "01300010001", 
"bizchat": true, 
"brandtalk": false, 
"committalCompanyName": "넥서스커뮤니티", 
"businessProfile": true, 
"businessType": "BUSINESS" } 
}


{
    "code": "200",
    "data": {
        "senderKey": "2662e99eb7a1f21abb3955278e9955f5a9a99b62", 
        "uuid": "@dkfflaxhrxptmxm",
        "name": "bzmtest",
        "status": "A",
        "profileStatus": "A",
        "createdAt": "2015-08-21 17:58:24", 
        "modifiedAt": "",
        "categoryCode": "99999999999", 
        "committalCompanyName": "bzmtest"
    }
}

1.2.5발신프로필 조회

[Request]
GET /sender
[Parameter]

타입

필수

설명

senderKey

text

Y

등록된 발신프로필의 키

[Response]
표 1-2응답 바디는 JSON객체로 아래 값을 참고 해주세요

-

타입

설명

code


text

결과코드

data

senderKey

text

발신프로필키


uuid

text

카카오톡 채널


name

text

카카오톡 채널 프로필명


status

text

상태(A:정상, S:차단, D:삭제)


profileStatus

text

카카오톡 채널 상태 (A:activated, C:deactivated, B:block, E:


deleting, D:deleted)


createdAt

text

등록일


modifiedAt

text

최종수정일


categoryCode

text

카테고리 코드


alimtalk

boolean

알림톡 사용 여부


bizchat

boolean

상담톡 사용 여부


committalCompan


yName

text

위탁사 이름 (상담톡 관련)


channelKey

text

메시지 전송 결과 수신 채널키

[Example]
{
    "code": "200",
    "data": {
        "senderKey": "2662e99eb7a1f21abb3955278e9955f5a9a99b62", 
        "uuid": "@dkfflaxhrxptmxm",
        "name": "bzmtest",
        "status": "A",
        "profileStatus": "A",
        "createdAt": "2015-08-21 17:58:24", 
        "modifiedAt": "",
        "alimtalk":false,
        "bizchat":true,
        "categoryCode": "99999999999", 
        "committalCompanyName": "bzmtest",
        "channelKey": "base"
    }
}

1.2.6삭제

[Request]
POST /sender/delete
[Parameter]

타입

필수

설명

senderKey

text

Y

등록된 발신프로필의 키

[Response]
표 1-3응답 바디는 JSON객체로 아래 값을 참고 해주세요

타입

설명

code

text

결과코드

[Example]
{
    "code": "200",
    "data": {
        "senderKey": "2662e99eb7a1f21abb3955278e9955f5a9a99b62", 
        "uuid": "@dkfflaxhrxptmxm",
        "name": "bzmtest",
        "status": "A",
        "profileStatus": "A",
        "createdAt": "2015-08-21 17:58:24", 
        "modifiedAt": "",
        "alimtalk":false,
        "bizchat":true,
        "categoryCode": "99999999999", 
        "committalCompanyName": "bzmtest",
        "channelKey": "base"
    }
}

1.2.7미사용 프로필 차단 해제

[Request]
POST /sender/recover
[Parameter]

타입

필수

설명

senderKey

text

Y

등록된 발신프로필의 키

[Response]

타입

설명

code

text

결과코드

1.3채팅 기능 관리

1.3.1채팅 기능 활성화

[Request]
POST /sender/activate
[Parameter]

타입

필수

설명

senderKey

text

Y

등록된 발신프로필의 키

[Response]

타입

설명

code

integer

처리 결과 코드(0은 정상 / 나머지는 오류)

message

text

오류 메시지(오류시 존재하는 값)

1.3.2채팅 기능 비활성화

[Request]
POST /sender/deactivate
[Parameter]

타입

필수

설명

senderKey

text

Y

등록된 발신프로필의 키

[Response]

타입

설명

code

integer

처리 결과 코드(0은 정상 / 나머지는 오류)

message

text

오류 메시지(오류시 존재하는 값)

1.4상담시간 관리

1.4.1상담시간 수정

[Request]
PUT /consult/{sender_key}/time

1sender_key : 발신 프로필 키

[Parameter]

타입

필수

설명

weekFlags

text(7)

Y

월화수목금토일 중 상담 가능한 요일

상당가능 요일은 1, 상담불가 요일은 0

(ex. 월~금 상담 "1111100")

startAt

text(4)

Y

상담 시작 시간

(ex. 08:30 시작 시 "0830", 24시간 상담시 "0000")

endAt

text(4)

Y

상담 종료 시간

(ex. 18:00 종료 시 "1800", 24시간 상담시 "0000")

[Response]

타입

설명

code

text(4)

처리 결과 코드(0000은 정상 / 나머지는 오류)

time

number

처리 시간

1.4.2상담시간 조회

[Request]
GET /consult/{sender_key}/time

1sender_key : 발신 프로필 키

[Response]

타입

필수

설명

weekFlags

text(7)

Y

월화수목금토일 중 상담 가능한 요일

상당가능 요일은 1, 상담불가 요일은 0

(ex. 월~금 상담 "1111100")

startAt

text(4)

Y

상담 시작 시간

(ex. 08:30 시작 시 "0830", 24시간 상담시 "0000")

endAt

text(4)

Y

상담 종료 시간

(ex. 18:00 종료 시 "1800", 24시간 상담시 "0000")

1.5시스템 메시지 관리

1.5.1시스템 메시지 조회

[Request]
GET /sm
[Parameter]

타입

필수

설명

senderKey

text

Y

발신 프로필 키

id

number

N

시스템 메시지 아이디

[Response]
표 1-4응답 바디는 JSON객체로 아래 값을 참고 해주세요.

타입

설명

code

text

결과 코드

data

list

결과 목록 (* 아래 data 상세 참고)

표 1-5data 상세

타입

설명

id

number

시스템 메시지 아이디

name

text

시스템 메시지 이름

status

text

메시지 상태


(A: 정상, T: 중지, S:차단)

createdAt

text

등록일

modifiedAt

text

수정일

inspectStatus

text

검수 상태


(REG: 등록, REQ: 검수요청, APR: 승인, REJ: 반려)

inspectRequestAt

text

검수 요청일

inspectedAt

text

검수일

messages

list

시스템 메시지 내용 목록 (* 아래 messages 상세 참고)

comments

list

검수결과 및 요청사항 목록 (* 아래 comments 상세 참고)

표 1-6messages 상세

타입

설명

messageType

text

시스템 메시지 타입


(ST:상담시작, S1:상담불가, S2:상담부재, S3:무응답종료, S4:상담대기, ED:상담종

료, ER:응답실패, BL:사용자차단, SB:봇전환)

content

text

내용

buttons

list

메시지 하단 버튼 목록 (* 아래 buttons 상세 참고)

표 1-7comments 상세

타입

설명

id

number

아이디

content

text

내용

userName

text

작성자

createdAt

text

등록일

status

text

상태 (APR: 승인, REJ: 반려, INQ:문의)

표 1-8 buttons 상세

타입

설명

ordering

number

버튼 노출 순서

linkType

text

버튼의 링크타입


(DS: 배송조회, WL: 웹링크, AL: 앱링크, BK: 봇키워드, MD: 메시지전달)

linkName

text

버튼 이름

linkMobile

text

모바일 웹링크주소

linkPc

text

PC 웹링크주소

linkIos

text

IOS 앱링크주소

linkAndroid

text

Android 앱링크주소

1.5.2시스템 메시지 작성

[Request]
POST /sm/write
[Parameter]

타입

필수

설명

senderKey

text

Y

발신 프로필 키

name

text

Y

시스템 메시지 이름

messages

list

Y

시스템 메시지 타입별로 1개씩 입력

표 1-9messages 상세

타입

필수

설명

messageType

text

Y

시스템 메시지 타입

(ST:상담시작, S1:상담불가, S2:상담부재, S3:무응답종료, S4:상담대기, ED:상담종

료, ER:응답실패, BL:사용자차단, SB:봇전환)

작성시 입력하지 않은 messageType은 기본 메시지가 적용 됩니다.

content

text

Y

내용

buttons

list

N

메시지 하단 버튼 목록 (* 아래 buttons 상세 참고)

표 1-10 buttons 상세

타입

필수

설명

ordering

number

Y

버튼 노출 순서

linkType

text

Y

버튼 타입 아래 button 타입별 속성에서 확인 가능

linkName

text

Y

버튼 이름

linkMobile

text

-

모바일 웹링크주소

linkPc

text

-

PC 웹링크주소

linkIos

text

-

IOS 앱링크주소

linkAndroid

text

-

Android 앱링크주소

표 1-11button 타입별 속성

버튼타입

속성

타입

필수

설명

WL

linkMobile

text

Y

버튼 클릭 시 이동할 pc/mobile환경별 web url


linkPc

text

N


AL

linkAndroid


-

linkIos, linkAndroid, linkMobile 중 2가지 필수 입력


mobile android 환경에서 버튼 클릭 시 실행할 application custom sche

me


linkIos

text

-

mobile ios 환경에서 버튼 클릭 시 실행할 application custom scheme


linkMobile

text

-

mobile 환경에서 버튼 클릭 시 이동할 url


linkPc

text

N

pc 환경에서 버튼 클릭 시 이동할 url

BK

-

-

-

해당 버튼 텍스트 전송

MD

-

-

-

해당 버튼 텍스트 + 메시지 본문 전송

[Response]
표 1-12응답 바디는 JSON객체로 아래 값을 참고 해주세요.

-

타입

설명

code


text

결과 코드

data

id

number

시스템 메시지 아이디

[Example]
{
    "code": "200",
    "data": {
        "id": 1 
    }
}

1.5.3시스템 메시지 검수 요청

[Request]
POST /sm/request
[Parameter]

타입

필수

설명

senderKey

text

Y

등록된 발신프로필의 키

[Response]

타입

설명

code

text

결과 코드

1.5.4시스템 메시지 검수 요청 취소

[Request]
POST /sm/request/cancel
[Parameter]

타입

필수

설명

senderKey

text

Y

등록된 발신프로필의 키

[Response]

타입

설명

code

text

결과 코드

1.5.5시스템 메시지 삭제

[Request]
POST /sm/delete
[Parameter]

타입

필수

설명

senderKey

text

Y

발신 프로필 키

id

number

Y

시스템 메시지 아이디

[Response]

타입

설명

code

text

결과 코드

1.5.6시스템 메시지 문의 작성

[Request]
POST /sm/inquire
[Parameter]

타입

필수

설명

senderKey

text

Y

발신 프로필 키

content

text

Y

문의 내용

[Response]

타입

설명

code

text

결과 코드

1.6발신프로필 수신도메인 관리

1.6.1수신도메인 조회

[Request]
GET /consult/{sender_key}/receiveDomain
sender_key: 발신 프로필
[Response]

-

타입

설명

code


text

결과 코드

data

modifiedAt

text

최종수정일


domain

text

발신프로필 수신도메인


createdAt

text

등록일

isDirect


text

전용선 도메인 여부

1.6.2수신도메인 등록/수정

[Request]
POST /consult/{sender_key}/receiveDomain
[Parameter]

타입

필수

설명

예제

domain

text

Y

수신도메인

"domain":"http://192.168.1.1"

[Response]

타입

설명

예제

code

integer

처리 결과 코드(200은 정상 / 나머지는 오류)

"code": 200

message

text

오류 메시지(오류시 존재하는 값)

"message": "유효하지 않은 수신도메인입니다."