Channel Developers

thumbnail

인증 및 권한

개발자가 생성한 App 에서 채널톡 API 를 사용하기 위해서는 토큰을 발급받아야 합니다.

먼저 개발자 페이지의 [앱 설정] - [인증 및 권한 탭] 에서부터 아래 과정을 따라해주세요.


토큰 발급을 위해서는 App Secret 을 먼저 발급받아야 합니다. 앱 설정 페이지 상단의 발급하기 버튼을 눌러 시크릿을 발급할 수 있습니다. 해당 시크릿은 외부에 노출되지 않도록 주의해 주세요. 토큰을 재발급하는 경우 이전에 발급된 토큰은 비활성화됩니다.


Channel, User, Manager 섹션에서 개발자가 사용할 함수를 체크하여 고른 뒤 저장해야 합니다. 각각의 함수에 대한 설명은 여기를 참조해 주세요.

User, Manager 섹션에 등록한 권한은 WAM 에 전달되는 토큰에 포함되게 됩니다.

Channel 섹션에 등록한 권한은 아래 (3) 과정을 통해 토큰으로 발급받을 수 있습니다.


App Secret 을 발급받았다면 아래와 같은 요청을 통해 토큰을 교환할 수 있습니다. issueToken / refreshToken 을 포함한 토큰 API 에는 10 tokens / 30 minute , Fixed window 로 rate-limit 이 적용되어 있습니다. rate-limit 을 초과하는 경우 토큰 발급이 거절될 수 있다는 점에 유의해 주세요.

method

PUT

endpoint

app-store-api.channel.io/general/v1/native/functions

notes

App Secret 을 이용해 token 을 교환합니다

Request

JSON

fields

notes

required

type

secret

(1)에서 발급한 App secret

true

string

channelId

특정 채널에 대한 토큰 발급 시 기입

false

string

channelId 를 명시하지 않을 경우: 앱의 기본 권한이 발급됩니다. 아래 권한이 포함됩니다

  • registerCommands - 앱에 커맨드를 등록하기 위한 기능입니다. Command 문서를 참고해주세요.

channelId 를 명시할 경우 : 채널에 대한 native function 이 필요한 경우 channelId 를 기입해야 합니다.

  • 해당 채널에 앱이 설치되어 있어야 합니다.

  • [인증 및 권한] 의 Channel 탭에서 기입한 native function 들에 대한 권한이 발급됩니다.

Response

JSON

fields

notes

required

type

refreshToken

refreshToken.아래 api 참조

true

string

accessToken

accessToken,아래 사용 방법 참조

false

string

expiresIn

expire 되는 시간.second 단위

true

int64

accessToken 에 발급된 토큰이 위치하며, refreshToken 의 사용은 아래를 참조해 주세요.

method

PUT

endpoint

app-store-api.channel.io/general/v1/native/functions

notes

refreshToken 을 이용해 토큰을 재발급합니다

Request

JSON

params

notes

refreshToken

issueToken 의 response 로 발급받은 refreshToken

Response

JSON

발급된 jwt 토큰은 **x-access-token\*\* HTTP 헤더에 기입하여 Native Function 또는 Function 을 호출하는 데에 사용될 수 있습니다.

Function 호출에 x-access-token 을 사용하는 예)

JSON