앱푸시 일괄발송

특정 앱이 설치된 모든 기기에 알림을 보내는 API입니다.

개요

App Push는 앱의 On/Off/Background 상태에 관계없이 사용자의 모바일 디바이스에 원하는 알림을 전달하는 기능입니다.

API Plex는 기기 및 앱 식별 정보와 제목, 내용 데이터를 JSON형태로 Server로 전달하면 API PLEX Gateway 에서 전송하는 API를 제공합니다.

앱 사용자 모두에게 전송하는 일괄 발송, 특정 사용자에게 전송하는 단건 발송을 지원하고 있습니다.

사용 전 서버에 앱 정보 등록 방법

발송을 위한 앱 정보를 서버와 연동하기 위해 서비스 등록 완료 후 담당자에게 앱 정보를 전달하여 등록하는 과정이 필요합니다.

앱 이름과 함께 Android 앱일 경우 FCM Server key를, iOS 앱일 경우 APNS Auth key를 발급하여 전달해 주시기 바랍니다.

(담당자 메일 : [email protected])

전달해 주신 정보로 생성한 app key, app secret, customer key를 담당자가 알려드립니다.

(해당 정보를 parameter에 포함해야 API를 사용할 수 있습니다.)

FCM Server Key 발급

(2023.03.06 기준으로 작성된 가이드입니다. 가이드의 내용은 Firebase 정책에 따라 변경될 수 있습니다.)

FCM Server Key 발급

(2023.03.06 기준으로 작성된 가이드입니다. 가이드의 내용은 Firebase 정책에 따라 변경될 수 있습니다.)

  1. Firebase Console 메인 페이지에서 프로젝트를 추가합니다.

  1. [프로젝트 설정]-[클라우드 메시징] 탭으로 들어간 후 Cloud Messaging API 에서 [Google Cloud Console에서 API 관리]를 클릭합니다.

  1. 페이지에서 [사용]을 누릅니다.

  1. 다시 Firebase Console로 돌아와서 Cloud Messaging API 메뉴 아래 서버 키가 발급된 것을 확인할 수 있습니다.

APNS Auth Key 발급

(2023.03.06 기준으로 가이드를 작성 중입니다. 가이드의 내용은 Apple 사의 정책에 따라 변경될 수 있습니다.)

  1. Apple Developer 사이트에서 로그인( https://developer.apple.com/ )합니다.

  2. 프로그램 리소스 > Certificates, Identifiers & Profiles > 키’ 메뉴를 선택합니다.

  3. Keys 메뉴로 이동 후 인증 키를 발급합니다. 인증 키는 최대 2개까지 생성할 수 있습니다.

  1. Key Name을 입력하고, Apple Push notifications service (APNs)를 활성화합니다.

  1. Register를 누르면 인증 키가 발급 됩니다.

  1. Key ID를 확인합니다.

  1. 멤버십 세부 사항 메뉴에서 팀 ID를 확인합니다.

App Push 발송을 위한 SDK 설정

App Push를 수신하기 위해서 앱을 사용하는 사용자들의 Device 정보가 등록되어야 합니다.

SDK를 활용해서 코드를 작성한 앱 사용 시 사용자 Device 정보가 서버에 저장됩니다.

아래 링크의 가이드를 따라 SDK 설정을 완료해주세요.

Android SDK 매뉴얼

iOS SDK 매뉴얼

앱푸시 스탠다드 일괄발송 API

캐릭터 인코딩은 UTF-8 을 기본으로 하므로, UTF-8 유니코드 특수 문자에 들어가는 이모티콘을 사용할 수 있습니다.

앱푸시 스탠다드 일괄발송 API

POST https://9cg6ws1y9p.apigw.ntruss.com/app-push/v1_0/api/notify/all

Headers

Name
Type
Description

Authorization*

string

사용자ID;secret_key

Request Body

Name
Type
Description

appkey*

string

fnm

string

첨부 이미지 링크

(도메인을 포함한 전체 경로 입력)

256 Byte 제한

link

string

Push를 눌렀을 때 연결되는 링크

256 Byte 제한

isi

string

Y: IOS 기기 대상 발송(default)

N: IOS 기기를 전송 대상에서 제외

(해당 값이 빈 상태로 서버로 전달될 경우, 기본 값인 Y로 처리)

isa

string

Y: 안드로이드 기기 대상 발송(default)

N: 안드로이드 기기를 전송 대상에서 제외

(해당 값이 빈 상태로 서버로 전달될 경우, 기본 값인 Y로 처리)

msg*

string

보낼 Push 메시지(1000 Byte 제한)

customerkey*

string

appsecret*

string

Application Secret (담당자에게 발급 요청)

etiquette_stime

number

에티켓 적용 시작시간 EX) 24(오전 0시)

(default: 21(오후 9시))

isetiquette

string

에티켓 시간 적용 여부

Y: 적용(default)

N: 적용 안함

fcolor

string

폰트 색상 EX) #000000

bgcolor

string

배경색 EX) #FFFFFF

title

string

Push 메세지 제목

100 Byte 제한

and_priority

string

안드로이드용 메시지 우선순위

H: 높음

M: 중간(default)

etiquette_etime

number

에티켓 적용 종료시간 EX) 16(오후 4시)

(default: 8(오전 8시))

optagree

string

0000: 광고 수신 동의 여부에 관계없이 푸시 수신자 모두에게 발송(default)

1000: 광고 수신 동의한 디바이스에만 메시지 발송

Response Body

{
    "result": "200",
    "tokenCnt": "255",
    "msgidx": "7wz6Ph56nwmAQS1rZ011",
    "message": "푸시 메시지가 정상적으로 등록 되었습니다. "
}
타입
설명

result

string

message

string

결과 메시지

msg_idx

string

등록된 메시지 번호. 결과 조회 시 사용

EX) DEF_40213134

tokenCnt

string

발송 대상 디바이스(모바일기기) 수

Result Code 유형

result
설명

200

정상처리 됨

4031

유효하지 않은 appkey 혹은 appsecret

4032

서비스 이용권한이 없음

500

처리 중 오류 발생

503

필수값이 누락됨

Was this helpful?