8. 부가 서비스-통계
개요
통계 부가 기능의 경우, 기본적인 메시지 발송 기능 외에 기존 핑거푸시 사이트에 접속하여야만 확인이 가능했던 푸시 관련 통계 데이터를 Server to Server 방식으로 지원합니다.
핑거푸시의 Server to server 부가서비스 기능은 별도의 서비스 신청 후 바로 사용이 가능합니다. 비용 처리는 익월 정산 시 추가 청구됩니다.
Server to Server는 Restful 방식으로 처리되며 해당 API는 핑거푸시 서비스에서 원격 접속으로 제공 가능한 범위의 데이터에 한해서만 제공합니다.
해당 원격 통계 데이터 서비스는 일 1000회 호출로 제한하며, 운영 중 서비스 부하 및 데이터 구조 변경 등에 의해 이용 중 변경될 수 있습니다.
필수 값: appid, appkey, customerkey
Server To Server Push 메시지 발송을 위해 필수적으로 핑거푸시 서버에 전달되어져야 하는 Parameter에는 appid(Application Key), appkey(Application Secret), customerkey(Customer Key)가 있습니다.
해당 값들은 핑거푸시 사이트에 로그인 하신 후 확인하실 수 있습니다.
1) Application Key 및 Application Secret, Customer key 조회 핑거푸시 사이트에서 로그인 후, 사용자 콘솔의 APP PUSH 메뉴를 클릭합니다. 선택하고자 하는 앱의 '앱 설정' 화면에 표시됩니다.

App key
appid
앱 구분용 키. 핑거푸시에서 발급한 12자리의 난수값
App Secret
appkey
앱 구분용 시크릿 키. 핑거푸시에서 발급한 32자리의 난수값
Customer key
customerkey
고객키. 핑거푸시에서 발급한 12자리의 회원 구분용 난수값
[표 1. 앱정보 기준 파라미터 필수 값]
2) Customer Key: 12자리 난수로 되어 있으며 서비스 이용 권한 등을 조회하는데 이용되므로, 취급에 주의하셔야 합니다.
만일 Customer Key를 분실 혹은 유출이 된 경우 새로고침 버튼을 통해 해당 페이지에서 재발급을 받으실 수 있습니다.
Server to Server 개발내용이나 Agent 등 모든 원격 서비스에 영향을 주므로, 꼭 필요한 경우가 아니면 적용하지 말아야 합니다.
Customer key를 재발급 받으신 경우에는 관련 API 소스가 적용된 부분의 Customer key를 재발급 받으신 키로 변경해 주셔야 합니다.
API 호출

발송 방법
HTTPS Parameters: SSL Protocol을 이용하여 파라미터들을 핑거푸시 Server to Server API Server(이하 API Server)에 전달합니다.
API Server로 전달해야 할 파라미터들은 '1. 일괄 발송 > [표 1.1] 일괄 발송 HTTPS, Parameters'를 참조해 주세요.
제공 API
대시보드 영역

❶ 월별 사용 현황(발송/오픈/삭제)
파라미터
appid
앱정보에서의 App key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
appkey
앱정보에서의 App Secret, [표 1. 앱정보 기준 파라미터 필수 값] 참조
customerkey
앱정보에서의 Customer key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
sdate
검색하고자 하는 해당 월. ex) 202106
결과 값
code
결과 코드
message
결과 메시지
fail
총 실패 수
day
해당 일
sent
총 발송수
open
총 오픈수
appdel
총 앱 삭제수
결과 예시
{
"code": "200",
"pushs": [
{
"fail": "0",
"day": "1",
"sent": "0",
"open": "0",
"appdel": "0"
},
...
],
"message": ""
}
결과 코드
200
정상처리 됨
4031
4032
4033
4034
4035
API 권한 없음
500
서버 처리 중 오류 발생
503
필수 파라미터 없음
❷ 월별 사용 현황(설치)
파라미터
appid
앱정보에서의 App key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
appkey
앱정보에서의 App Secret, [표 1. 앱정보 기준 파라미터 필수 값] 참조
customerkey
앱정보에서의 Customer key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
sdate
검색하고자 하는 해당 월. ex) 202106
결과 값
code
결과 코드
message
결과 메시지
d
해당 일
ios_installed
iOS 설치수
and_installed
안드로이드 설치수
결과 예시
{
"code": "200",
"message": "",
"apps": [
{
"d": "01",
"ios_installed": 0,
"and_installed": 0
},
...
]
}
결과 코드
200
정상처리 됨
4031
4032
4033
4034
4035
API 권한 없음
500
서버 처리 중 오류 발생
503
필수 파라미터 없음
❸ 액티브 디바이스 OS별 카운트
파라미터
appid
앱정보에서의 App key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
appkey
앱정보에서의 App Secret, [표 1. 앱정보 기준 파라미터 필수 값] 참조
customerkey
앱정보에서의 Customer key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
결과 값
code
결과 코드
message
결과 메시지
android
해당 시간
ios
iOS 설치수
결과 예시
{
"code": "200",
"message": "",
"device": {
"android": "2",
"ios": "0"
}
}
결과 코드
200
정상처리 됨
4031
4032
4033
4034
4035
API 권한 없음
500
서버 처리 중 오류 발생
503
필수 파라미터 없음
❹ 시간별 설치 수 조회(최근 6시간)
핑거푸시 Ver 5.0부터는 시간별 설치수를 제공하지 않습니다.
파라미터
appid
앱정보에서의 App key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
appkey
앱정보에서의 App Secret, [표 1. 앱정보 기준 파라미터 필수 값] 참조
customerkey
앱정보에서의 Customer key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
결과 값
code
결과 코드
message
결과 메시지
h
해당 시간
ios_installed
iOS 설치수
and_installed
안드로이드 설치수
결과 예시
{
"code": "200",
"list": [
{
"ios_installed": 0,
"h": "2021-06-13 06",
"and_installed": 0
},
...
],
"message": ""
}
결과 코드
200
정상처리 됨
4031
4032
4033
4034
4035
API 권한 없음
500
서버 처리 중 오류 발생
503
필수 파라미터 없음
발송결과 리포트 영역

① 메시지에 따른 상태구분, 푸시 발송 시작일시, 메시지 등록일, 발송 완료일시, 발송수, 오픈수, 삭제수, 실패수, 설치수(전일 기준)
파라미터
appid
앱정보에서의 App key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
appkey
앱정보에서의 App Secret, [표 1. 앱정보 기준 파라미터 필수 값] 참조
customerkey
앱정보에서의 Customer key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
mode
DEFT: 전체발송, STOS: 타겟팅(캠페인/자동) 발송
msg_idx
등록된 메시지 번호. 결과 조회 시 사용
-Agent를 이용한 발송 시 Result 테이블의 msgidx 컬럼값
-Server ot server AP를 이용한 발송 시 결과 json의 msgIdx 값
ex) 전체 푸시 DEF_123456, 타겟팅 푸시 앞의 난수 10자리 뒤의 숫자값 A334D3d12A220112332
결과 값
code
결과 코드
message
결과 메시지
step
발송상태
T: 발송 대상 셋팅 중
R: 발송 대기
C: 성공
F: 실패
SP/P: 일시중지
failedTotal
발송 실패 카운트
appDelTotal
앱 삭제 카운트
openTotal
오픈 카운트(호출 시점 기준)
sentTotal
전체 발송 카운트
senddate
발송(예약/요청) 시간
resultDate
발송 완료 시간
wdate
서버에 메시지가 등록된 시간
installed_count
발송일 기준 전일 앱 설치수
결과 예시
{
message: "",
pushInfo: {
sendDate: "2022.04.10 18:00",
failedTotal: 0,
appDelTotal: 61,
openTotal: 2679,
sentTotal: 27234,
wdate: "2022.04.08 17:25",
resultDate: "2022.04.10 18:03:34",
installed_count: "361",
step: "C"
},
code: "200"
}
결과 코드
200
정상처리 됨
4031
4032
4033
4034
4035
API 권한 없음
500
서버 처리 중 오류
503
필수 파라미터가 없거나, 파라미터 유형이 맞지 않음
디바이스 통계 영역

1) 활성디바이스(액티브디바이스) 현황: 지난7일/지난 한달/기간 선택
파라미터
appid
앱정보에서의 App key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
appkey
앱정보에서의 App Secret, [표 1. 앱정보 기준 파라미터 필수 값] 참조
customerkey
앱정보에서의 Customer key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
mode
W: 7일 데이터
M: 30일 데이터
B: 기간 검색
sdate
mode가 B일 때, 기간 검색 시작일
edate
mode가 B일 때, 기간 검색 종료일
결과 값
code
결과 코드
message
결과 메시지
avg_android_cnt_h
안드로이드 평균
avg_ios_cnt_h
iOS 평균
avg_cnt_h
전체 평균
logs
date
날짜
android_cnt
android 수
android_gap
android 전일과의 차이
ios_cnt
iOS
ios_gap
iOS 전일과의 차이
total_cnt
전체 수
total_gap
전체 전일과의 차이
결과 예시
{
code: "200",
message: "",
avg_android_cnt_h: "1033.00",
avg_ios_cnt_h: "2334.00",
avg_cnt_h: "3367.00",
logs: [
{
date: "2019.06.04",
android_gap: "0",
total_cnt: "3367",
total_gap: "0",
ios_gap: "0",
ios_cnt: "2334",
android_cnt: "1033"
},
... 중략 ...
]
}
결과 코드
200
정상처리 됨
4031
4032
4033
4034
4035
API 권한 없음
500
서버 처리 중 오류
503
필수 파라미터가 없음
5031
날자 형식이 맞지 않음
ex) yyyymmdd
5032
시작일이 종료일 보다 클 경우
5033
기간 검색 기간(최대 한달)을 넘어설 경우
5034
시작일과 종료일이 날자 형식이 아닐 경우
2) 수신거부 디바이스 현황: 지난7일/지난 한달/기간 선택
활성 디바이스API 와 동일한 파라미터/결과 값/결과 코드로 이루어져 있습니다. 호출 경로만 다르게 호출하면 됩니다.
3) 설치 디바이스 현황: 지난7일/지난 한달/기간 선택
활성 디바이스API 와 동일한 파라미터/결과 값/결과 코드로 이루어져 있습니다. 호출 경로만 다르게 호출하면 됩니다.
4) 접속 디바이스 현황: 지난7일/지난 한달/기간 선택
활성 디바이스API 와 동일한 파라미터/결과 값/결과 코드로 이루어져 있습니다. 호출 경로만 다르게 호출하면 됩니다.
발송이력

1) 메시지 번호, 메시지 제목, 메시지 내용, 발송 예정일, 메시지 등록일, 메시지 수정일, 발송 완료일시, 발송타입, 안드로이드 발송여부, iOS 발송여부, 발송수, 오픈수, 실패수, 앱 삭제수, 발송 라벨
파라미터
appid
필수
앱정보에서의 App key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
appkey
필수
앱정보에서의 App Secret, [표 1. 앱정보 기준 파라미터 필수 값] 참조
customerkey
필수
앱정보에서의 Customer key, [표 1. 앱정보 기준 파라미터 필수 값] 참조
mode
필수
DEFT: 전체 푸시
STOS: 타게팅 푸시
msgidx
선택
해당하는 idx(해당 idx 하위의 다음 리스트를 호출)
listCount
선택
조회 수(최대 200건)
step
선택
메시지 상태값
C: 발송 완료
R: 발송 예약
S: 발송 중
F: 발송 실패
P: 일시정지
s_value
선택
메시지 검색값
label_code
선택
라벨코드 검색
s_date
선택
조회 시작기간
(조회 기간이 길면 s_date 기준으로 최대 조회일 제한)
e_date
선택
조회 종료기간
결과 값
code
결과 코드
message
결과 메시지
size
조회 결과 수
msgIdx
발송 메시지 번호
title
푸시 타이틀
message
푸시 메시지
senddate
발송 예정일
wdate
생성일
udate
수정일
step
발송 타입
resultdate
발송 완료 시간
isandroid
안드로이드 발송 여부
isios
iOS 발송 여부
sent
발송수
opend
오픈수
failed
실패수
appdel
앱 삭제수
label_name
발송 라벨
결과 예시
{
"code": "200",
"size": 200,
"message": "정상 처리 되었습니다.",
"pushs": [
{
"msgIdx": "12345678912345678",
"title": "푸시 타이틀입니다.",
"message": "푸시 메시지입니다.",
"senddate": "2022-01-26 12:31:48",
"wdate": "2022-01-26 12:31:48",
"udate": "2022-01-26 12:31:48",
"step": "C",
"resultdate": "2022-01-26 12:32:05",
"isandroid": "Y",
"isios": "Y",
"sent": 0,
"opend": 0,
"failed": 0,
"appdel": 0,
"label_name": ""
},
... 중략 ...
]
}
결과 코드
200
정상처리 됨
4031
4032
4033
4034
4035
API 권한 없음
404
PI 권한 없음
500
서버 처리 중 오류
503
필수 파라미터 없음 & 파라미터 값 오류
호출 예
해당 통신 방법에 대한 내용은 github에 올려져 있는 Fingerpush Server to Server 샘플 클래스를 이용하여 개발 가능합니다.
JAVA 버전 샘플: https://github.com/kissoft/FingerPushSTSinJava
JAVA Version
만일 핑거푸시 Server to Server 메시지 발송 샘플을 이용할 경우, 앞서 설명한 시간별 설치 수 조회 방법은 아래와 같이 처리할 수 있습니다.
// 1. 변수 선언
String jsonString = ""; // 서버로 발송 후 결과 메시지
String callUrl = "https://api-v2.fingerpush.com/rest/ext/v1/api명.jsp";
FingerpushDao pushDao = new FingerpushDaoImpl();
// 2. 파라미터 셋팅
List <BasicNameValuePair> params = new ArrayList<BasicNameValuePair>();
// 3. 필수값 셋팅
params.add (new BasicNameValuePair("appid", 앱아이디)); // (필수)
params.add (new BasicNameValuePair("appkey",앱 시크릿 키)); // (필수)
params.add (new BasicNameValuePair("customerkey",커스터머 키)); // (필수)
// 4. 파라미터 발송 후 결과 조회
jsonString = pushDao.sendHttpsUrlConExe(callUrl, params);
system.out.print(jsonString);
PHP Version
1. 대시보드 영역
월별 사용 현황(발송/오픈/삭제)
<?php
// 공통 필수
$key = array(
'appid' => '[발급받은 appkey]',
'appkey' => '[발급받은 appsecret]',
'customerkey' => '[발급받은 customerkey]',
);
$option = array("sdate" => "202312");
$url = 'https://api-v2.fingerpush.com/rest/ext/v1/getAppSOD.jsp';
$data = array_merge($key, $option);
$param = http_build_query($data);
$ch = curl_init (); // cURL 선언
curl_setopt ( $ch, CURLOPT_URL, $url ); // URL 세팅
curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false ); // 인증서 체크
curl_setopt ( $ch, CURLOPT_SSLVERSION, 1 ); // SSL 버전 -> 1만 된다.
curl_setopt ( $ch, CURLOPT_HEADER, 0 ); // 헤더 출력 여부
curl_setopt ( $ch, CURLOPT_POST, 1 ); // POST, GET 접속 여부
curl_setopt ( $ch, CURLOPT_TIMEOUT, 30 ); // Time Out 세팅
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); // 결과값 리턴 여부
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $param ); // parameter
$res = curl_exec ( $ch ); // cURL 실행하고 결과 저장
/* cURL 에러검출 */
$cErrno = curl_errno($ch);
if ($cErrno == 0) $response = trim($res);
else $response = exit;
curl_close ( $ch ); // cURL을 닫고 자원 반환
// 1. json 처리시
echo $response;
// 2. object 처리시
$result = json_decode ( $response, true ); // 결과값 JSON 디코드
print_r($result);
?>
월별 사용현황(설치)
<?php
// 공통 필수
$key = array(
'appid' => '[발급받은 appkey]',
'appkey' => '[발급받은 appsecret]',
'customerkey' => '[발급받은 customerkey]',
);
$option = array("sdate" => "202312");
$url = 'https://api-v2.fingerpush.com/rest/ext/v1/getInstallM.jsp';
$data = array_merge($key, $option);
$param = http_build_query($data);
$ch = curl_init (); // cURL 선언
curl_setopt ( $ch, CURLOPT_URL, $url ); // URL 세팅
curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false ); // 인증서 체크
curl_setopt ( $ch, CURLOPT_SSLVERSION, 1 ); // SSL 버전 -> 1만 된다.
curl_setopt ( $ch, CURLOPT_HEADER, 0 ); // 헤더 출력 여부
curl_setopt ( $ch, CURLOPT_POST, 1 ); // POST, GET 접속 여부
curl_setopt ( $ch, CURLOPT_TIMEOUT, 30 ); // Time Out 세팅
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); // 결과값 리턴 여부
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $param ); // parameter
$res = curl_exec ( $ch ); // cURL 실행하고 결과 저장
/* cURL 에러검출 */
$cErrno = curl_errno($ch);
if ($cErrno == 0) $response = trim($res);
else $response = exit;
curl_close ( $ch ); // cURL을 닫고 자원 반환
// 1. json 처리시
echo $response;
// 2. object 처리시
$result = json_decode ( $response, true ); // 결과값 JSON 디코드
print_r($result);
?>
액티브 디바이스 OS별 카운트
<?php
// 공통 필수
$key = array(
'appid' => '[발급받은 appkey]',
'appkey' => '[발급받은 appsecret]',
'customerkey' => '[발급받은 customerkey]',
);
$url = 'https://api-v2.fingerpush.com/rest/ext/v1/getActiveDeviceCont.jsp';
$param = http_build_query($key);
$ch = curl_init (); // cURL 선언
curl_setopt ( $ch, CURLOPT_URL, $url ); // URL 세팅
curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false ); // 인증서 체크
curl_setopt ( $ch, CURLOPT_SSLVERSION, 1 ); // SSL 버전 -> 1만 된다.
curl_setopt ( $ch, CURLOPT_HEADER, 0 ); // 헤더 출력 여부
curl_setopt ( $ch, CURLOPT_POST, 1 ); // POST, GET 접속 여부
curl_setopt ( $ch, CURLOPT_TIMEOUT, 30 ); // Time Out 세팅
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); // 결과값 리턴 여부
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $param ); // parameter
$res = curl_exec ( $ch ); // cURL 실행하고 결과 저장
/* cURL 에러검출 */
$cErrno = curl_errno($ch);
if ($cErrno == 0) $response = trim($res);
else $response = exit;
curl_close ( $ch ); // cURL을 닫고 자원 반환
// 1. json 처리시
echo $response;
// 2. object 처리시
$result = json_decode ( $response, true ); // 결과값 JSON 디코드
print_r($result);
?>
시간별 설치 수 조회(최근 6시간)
<?php
// 공통 필수
$key = array(
'appid' => '[발급받은 appkey]',
'appkey' => '[발급받은 appsecret]',
'customerkey' => '[발급받은 customerkey]',
);
$url = 'https://api-v2.fingerpush.com/rest/ext/v1/getInstallH.jsp';
$param = http_build_query($key);
$ch = curl_init (); // cURL 선언
curl_setopt ( $ch, CURLOPT_URL, $url ); // URL 세팅
curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false ); // 인증서 체크
curl_setopt ( $ch, CURLOPT_SSLVERSION, 1 ); // SSL 버전 -> 1만 된다.
curl_setopt ( $ch, CURLOPT_HEADER, 0 ); // 헤더 출력 여부
curl_setopt ( $ch, CURLOPT_POST, 1 ); // POST, GET 접속 여부
curl_setopt ( $ch, CURLOPT_TIMEOUT, 30 ); // Time Out 세팅
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); // 결과값 리턴 여부
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $param ); // parameter
$res = curl_exec ( $ch ); // cURL 실행하고 결과 저장
/* cURL 에러검출 */
$cErrno = curl_errno($ch);
if ($cErrno == 0) $response = trim($res);
else $response = exit;
curl_close ( $ch ); // cURL을 닫고 자원 반환
// 1. json 처리시
echo $response;
// 2. object 처리시
$result = json_decode ( $response, true ); // 결과값 JSON 디코드
print_r($result);
?>
2. 발송결과 리포트 영역
메시지에 따른 상태구분, 푸시 발송 시작일시, 메시지 등록일, 발송 완료일시, 발송수, 오픈수, 삭제수, 실패수, 설치수(전일 기준)
<?php
// 공통 필수
$key = array(
'appid' => '[발급받은 appkey]',
'appkey' => '[발급받은 appsecret]',
'customerkey' => '[발급받은 customerkey]',
);
$url = 'https://api-v2.fingerpush.com/rest/ext/v1/getPushInfo.jsp';
// 68LA2F7SZQ17030542667996621 -> 17030542667996621 // STOS 방식
// DEF_17030553691436908 -> 17030553691436908 // DEFT 방식
$msgidx = "17030553691436908"; // DEF_ 제외한 msgidx값
$option = array(
"mode" => "DEFT", // DEFT: 전체발송, STOS: 타겟팅(캠페인/자동) 발송 (필수)
"msg_idx" => $msgidx // msgidx (필수)
);
$data = array_merge($key, $option);
$param = http_build_query($data);
$ch = curl_init (); // cURL 선언
curl_setopt ( $ch, CURLOPT_URL, $url ); // URL 세팅
curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false ); // 인증서 체크
curl_setopt ( $ch, CURLOPT_SSLVERSION, 1 ); // SSL 버전 -> 1만 된다.
curl_setopt ( $ch, CURLOPT_HEADER, 0 ); // 헤더 출력 여부
curl_setopt ( $ch, CURLOPT_POST, 1 ); // POST, GET 접속 여부
curl_setopt ( $ch, CURLOPT_TIMEOUT, 30 ); // Time Out 세팅
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); // 결과값 리턴 여부
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $param ); // parameter
$res = curl_exec ( $ch ); // cURL 실행하고 결과 저장
/* cURL 에러검출 */
$cErrno = curl_errno($ch);
if ($cErrno == 0) $response = trim($res);
else $response = exit;
curl_close ( $ch ); // cURL을 닫고 자원 반환
// 1. json 처리시
echo $response;
// 2. object 처리시
$result = json_decode ( $response, true ); // 결과값 JSON 디코드
print_r($result);
?>
3. 디바이스 통계 영역
활성디바이스(액티브디바이스) 현황: 지난7일/지난 한달/기간 선택
<?php
// 공통 필수
$key = array(
'appid' => '[발급받은 appkey]',
'appkey' => '[발급받은 appsecret]',
'customerkey' => '[발급받은 customerkey]',
);
$url = 'https://api-v2.fingerpush.com/rest/ext/v1/getActiveDevice.jsp';
$option = array(
"mode" => "W", // W: 7일, M: 30일, B: 기간검색(필수)
"sdate" => '', // mode 가 B 일때
"edate" => '', // mode 가 B 일때
);
$data = array_merge($key, $option);
$param = http_build_query($data);
$ch = curl_init (); // cURL 선언
curl_setopt ( $ch, CURLOPT_URL, $url ); // URL 세팅
curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false ); // 인증서 체크
curl_setopt ( $ch, CURLOPT_SSLVERSION, 1 ); // SSL 버전 -> 1만 된다.
curl_setopt ( $ch, CURLOPT_HEADER, 0 ); // 헤더 출력 여부
curl_setopt ( $ch, CURLOPT_POST, 1 ); // POST, GET 접속 여부
curl_setopt ( $ch, CURLOPT_TIMEOUT, 30 ); // Time Out 세팅
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); // 결과값 리턴 여부
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $param ); // parameter
$res = curl_exec ( $ch ); // cURL 실행하고 결과 저장
/* cURL 에러검출 */
$cErrno = curl_errno($ch);
if ($cErrno == 0) $response = trim($res);
else $response = exit;
curl_close ( $ch ); // cURL을 닫고 자원 반환
// 1. json 처리시
echo $response;
// 2. object 처리시
$result = json_decode ( $response, true ); // 결과값 JSON 디코드
print_r($result);
?>
수신거부 디바이스 현황: 지난7일/지난 한달/기간 선택
<?php
// 공통 필수
$key = array(
'appid' => '[발급받은 appkey]',
'appkey' => '[발급받은 appsecret]',
'customerkey' => '[발급받은 customerkey]',
);
$url = 'https://api-v2.fingerpush.com/rest/ext/v1/getDeactiveDevice.jsp';
$option = array(
"mode" => "W", // W: 7일, M: 30일, B: 기간검색(필수)
"sdate" => '', // mode 가 B 일때
"edate" => '', // mode 가 B 일때
);
$data = array_merge($key, $option);
$param = http_build_query($data);
$ch = curl_init (); // cURL 선언
curl_setopt ( $ch, CURLOPT_URL, $url ); // URL 세팅
curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false ); // 인증서 체크
curl_setopt ( $ch, CURLOPT_SSLVERSION, 1 ); // SSL 버전 -> 1만 된다.
curl_setopt ( $ch, CURLOPT_HEADER, 0 ); // 헤더 출력 여부
curl_setopt ( $ch, CURLOPT_POST, 1 ); // POST, GET 접속 여부
curl_setopt ( $ch, CURLOPT_TIMEOUT, 30 ); // Time Out 세팅
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); // 결과값 리턴 여부
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $param ); // parameter
$res = curl_exec ( $ch ); // cURL 실행하고 결과 저장
/* cURL 에러검출 */
$cErrno = curl_errno($ch);
if ($cErrno == 0) $response = trim($res);
else $response = exit;
curl_close ( $ch ); // cURL을 닫고 자원 반환
// 1. json 처리시
echo $response;
// 2. object 처리시
$result = json_decode ( $response, true ); // 결과값 JSON 디코드
print_r($result);
?>
설치 디바이스 현황: 지난7일/지난 한달/기간 선택
<?php
// 공통 필수
$key = array(
'appid' => '[발급받은 appkey]',
'appkey' => '[발급받은 appsecret]',
'customerkey' => '[발급받은 customerkey]',
);
$url = 'https://api-v2.fingerpush.com/rest/ext/v1/getInstalledDevice.jsp';
$option = array(
"mode" => "W", // W: 7일, M: 30일, B: 기간검색(필수)
"sdate" => '', // mode 가 B 일때
"edate" => '', // mode 가 B 일때
);
$data = array_merge($key, $option);
$param = http_build_query($data);
$ch = curl_init (); // cURL 선언
curl_setopt ( $ch, CURLOPT_URL, $url ); // URL 세팅
curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false ); // 인증서 체크
curl_setopt ( $ch, CURLOPT_SSLVERSION, 1 ); // SSL 버전 -> 1만 된다.
curl_setopt ( $ch, CURLOPT_HEADER, 0 ); // 헤더 출력 여부
curl_setopt ( $ch, CURLOPT_POST, 1 ); // POST, GET 접속 여부
curl_setopt ( $ch, CURLOPT_TIMEOUT, 30 ); // Time Out 세팅
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); // 결과값 리턴 여부
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $param ); // parameter
$res = curl_exec ( $ch ); // cURL 실행하고 결과 저장
/* cURL 에러검출 */
$cErrno = curl_errno($ch);
if ($cErrno == 0) $response = trim($res);
else $response = exit;
curl_close ( $ch ); // cURL을 닫고 자원 반환
// 1. json 처리시
echo $response;
// 2. object 처리시
$result = json_decode ( $response, true ); // 결과값 JSON 디코드
print_r($result);
?>
접속 디바이스 현황: 지난7일/지난 한달/기간 선택
<?php
// 공통 필수
$key = array(
'appid' => '[발급받은 appkey]',
'appkey' => '[발급받은 appsecret]',
'customerkey' => '[발급받은 customerkey]',
);
$url = 'https://api-v2.fingerpush.com/rest/ext/v1/getConnectedDevice.jsp';
$option = array(
"mode" => "W", // W: 7일, M: 30일, B: 기간검색(필수)
"sdate" => '', // mode 가 B 일때
"edate" => '', // mode 가 B 일때
);
$data = array_merge($key, $option);
$param = http_build_query($data);
$ch = curl_init (); // cURL 선언
curl_setopt ( $ch, CURLOPT_URL, $url ); // URL 세팅
curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false ); // 인증서 체크
curl_setopt ( $ch, CURLOPT_SSLVERSION, 1 ); // SSL 버전 -> 1만 된다.
curl_setopt ( $ch, CURLOPT_HEADER, 0 ); // 헤더 출력 여부
curl_setopt ( $ch, CURLOPT_POST, 1 ); // POST, GET 접속 여부
curl_setopt ( $ch, CURLOPT_TIMEOUT, 30 ); // Time Out 세팅
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); // 결과값 리턴 여부
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $param ); // parameter
$res = curl_exec ( $ch ); // cURL 실행하고 결과 저장
/* cURL 에러검출 */
$cErrno = curl_errno($ch);
if ($cErrno == 0) $response = trim($res);
else $response = exit;
curl_close ( $ch ); // cURL을 닫고 자원 반환
// 1. json 처리시
echo $response;
// 2. object 처리시
$result = json_decode ( $response, true ); // 결과값 JSON 디코드
print_r($result);
?>
4. 발송 이력
메시지 번호, 메시지 제목, 메시지 내용, 발송 예정일, 메시지 등록일, 메시지 수정일, 발송 완료일시, 발송타입, 안드로이드 발송여부, iOS 발송여부, 발송수, 오픈수, 실패수, 앱 삭제수, 발송 라벨
<?php
// 공통 필수
$key = array(
'appid' => '[발급받은 appkey]',
'appkey' => '[발급받은 appsecret]',
'customerkey' => '[발급받은 customerkey]',
);
$url = 'https://api-v2.fingerpush.com/rest/ext/v1/getPushList.jsp';
$option = array(
"mode" => "DEFT", // DEFT: 전체 푸시, STOS: 타겟팅 푸시 (필수)
"msgidx" => "",
"listCount" => "2", // 조회수(최대 200개) : 2개
"step" => "F", // C: 발송완료, R: 발송예약, S: 발송중, F: 발송실패, P: 일시정지
"s_value" => "",
"label_code" => "",
"s_date" => "20231210", // 검색 시작일 : 20231210
"e_date" => "20231220", // 검색 종료일 : 20231220
);
$data = array_merge($key, $option);
$param = http_build_query($data);
$ch = curl_init (); // cURL 선언
curl_setopt ( $ch, CURLOPT_URL, $url ); // URL 세팅
curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false ); // 인증서 체크
curl_setopt ( $ch, CURLOPT_SSLVERSION, 1 ); // SSL 버전 -> 1만 된다.
curl_setopt ( $ch, CURLOPT_HEADER, 0 ); // 헤더 출력 여부
curl_setopt ( $ch, CURLOPT_POST, 1 ); // POST, GET 접속 여부
curl_setopt ( $ch, CURLOPT_TIMEOUT, 30 ); // Time Out 세팅
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); // 결과값 리턴 여부
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $param ); // parameter
$res = curl_exec ( $ch ); // cURL 실행하고 결과 저장
/* cURL 에러검출 */
$cErrno = curl_errno($ch);
if ($cErrno == 0) $response = trim($res);
else $response = exit;
curl_close ( $ch ); // cURL을 닫고 자원 반환
// 1. json 처리시
echo $response;
// 2. object 처리시
$result = json_decode ( $response, true ); // 결과값 JSON 디코드
print_r($result);
?>
Last updated