PUSH API
    • PDF

    PUSH API

    • PDF

    Article Summary

    기본 정보

    API URL

    https://sens.apigw.ntruss.com/push/v2
    

    SENS Push API Swagger 바로가기

    API Header

    항목Mandatory설명
    Content-TypeMandatory요청 Body Content Type을 application/json으로 지정 (POST)
    x-ncp-apigw-timestampMandatory1970년 1월 1일 00:00:00 협정 세계시(UTC)부터의 경과 시간을 밀리초(Millisecond)로 나타낸 것이다.
    API Gateway 서버와 시간 차가 5분 이상 나는 경우 유효하지 않은 요청으로 간주
    x-ncp-iam-access-keyMandatory포탈 또는 Sub Account에서 발급받은 Access Key ID
    x-ncp-apigw-signature-v2Mandatory위 예제의 Body를 Access Key Id와 맵핑되는 SecretKey로 암호화한 서명
    HMAC 암호화 알고리즘은 HmacSHA256 사용

    NAVER Cloud Platform 인증키 및 Signature 생성 가이드 바로가기

    참고

    FCM(GCM) 타입은 2024년 6월 20일에 서비스 제공이 종료됩니다. FCMv1으로 전환하려면 FCMv1 전환 가이드를 참조해 주십시오.

    디바이스

    디바이스 토큰 등록

    디바이스 토큰을 등록하고 사용자에 바인딩합니다.

    요청 URL

    POST https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/users
    
    Content-Type: application/json; charset=utf-8
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디

    Headers

    API Header 바로가기

    요청 Body

    {
        "userId":"string",
        "country":"string",
        "language":"string",
        "timezone":"integer",
        "channelName":"string",
        "deviceType":"(GCM|FCMv1|APNS)",
        "deviceToken":"string",
        "isNotificationAgreement":"boolean",
        "isAdAgreement":"boolean",
        "isNightAdAgreement":"boolean"
    }
    
    항목MandatoryType설명비고
    userIdMandatoryString사용자 아이디- 사용자를 식별하는 아이디
    - 최대 128자
    countryOptionalString국가코드- 디바이스 국가 설정 (기본: KR)
    - ISO-3166-1 alpha-2
    - 영문 대문자만 가능
    languageOptionalString언어 코드-디바이스 언어 설정 (기본: ko)
    - ISO-639-1
    - 영문 소문자만 가능
    timezoneOptionalInteger타임존- Number of seconds away from UTC (기본: 32400)
    - Example: 28800 (UTC+8)
    channelNameOptionalString등록할 채널명등록된 채널명을 입력하면 채널에 추가
    deviceTypeMandatoryString디바이스 타입- FCMv1: Android
    - APNS: iOS
    - GCM: Android (deprecated 2024.6.19.)
    deviceTokenMandatoryString디바이스 토큰
    isNotificationAgreementMandatoryBoolean푸시 알림 메시지 수신여부false 시 모든 메시지 미수신
    isAdAgreementMandatoryBoolean광고성 메시지 수신여부false 시 광고성 메시지 미수신
    (messageType: AD)
    isNightAdAgreementMandatoryBoolean야간 광고성 메시지 수신여부false 시 야간 광고성 메시지 미수신
    (messageType: AD)
    (야간 - 오후 9시 ~ 익일 오전 8시)

    응답 Body

    없음
    

    응답 Status

    HTTP StatusDesc
    201Created (등록 완료)
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    500Internal Server Error

    디바이스 토큰 조회

    등록된 디바이스/사용자를 조회합니다.

    요청 URL

    GET https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/users/{userId}
    
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디
    userIdMandatoryString사용자 아이디디바이스 토큰 등록 시 바인딩한 사용자 아이디

    Headers

    API Header 바로가기

    요청 Body

    없음
    

    응답 Body

    {
        "userId":"string",
        "country":"string",
        "language":"string",
        "timezone":"integer",
        "channelName":"string",
        "notificationAgreement":"boolean",
        "adAgreement":"boolean",
        "nightAdAgreement":"boolean",
        "notificationAgreementTime":"datetime",
        "adAgreementTime":"datetime",
        "nightAdAgreementTime":"datetime",
        "createTime":"datetime",
        "updateTime":"datetime",
        "devices":[
            {
                "deviceType":"(GCM|FCMv1|APNS)",
                "deviceToken":"string"
            }
        ]
    }
    
    항목MandatoryType설명비고
    userIdMandatoryString사용자 아이디
    countryMandatoryString국가코드- 디바이스 국가 설정 (기본: KR)
    - ISO-3166-1 alpha-2
    - 영문 대문자만 가능
    languageMandatoryString언어코드- 디바이스 언어 설정 (기본: ko)
    - ISO-639-1
    - 영문 소문자만 가능
    - 예외적으로 zh-Hant / zh-Hans 사용 가능 (대소문자 구분)
    timezoneMandatoryInteger타임존- Number of seconds away from UTC (기본: 32400)
    - Example: 28800 (UTC+8)
    channelNameOptionalString등록된 채널명
    notificationAgreementMandatoryBoolean푸시 알림 메시지 수신여부false 시 모든 메시지 미수신
    adAgreementMandatoryBoolean광고성 메시지 수신여부false 시 광고성 메시지 미수신
    (messageType: AD)
    nightAdAgreementMandatoryBoolean야간 광고성 메시지 수신여부false 시 야간 광고성 메시지 미수신
    (messageType: AD)
    (야간 - 오후 9시 ~ 익일 오전 8시)
    notificationAgreementTimeMandatoryDateTime푸시 알림 메시지 수신동의 시간가장 최근 수신 동의한 시간
    adAgreementTimeMandatoryDateTime광고성 메시지 수신동의 시간가장 최근 수신 동의한 시간
    nightAdAgreementTimeMandatoryDateTime야간 광고성 메시지 수신동의 시간가장 최근 수신 동의한 시간
    createTimeMandatoryDateTime토큰 등록 시간
    updateTimeMandatoryDateTime토큰 수정 시간
    devices.deviceTypeMandatoryString디바이스 타입- FCMv1: Android
    - APNS: iOS
    - GCM: Android (deprecated 2024.6.19.)
    devices.deviceTokenMandatoryString디바이스 토큰

    응답 Status

    HTTP StatusDesc
    200OK (조회 완료)
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    500Internal Server Error

    디바이스 토큰 삭제

    사용자(userId)에 바인딩된 디바이스를 모두 삭제합니다. 사용자도 함께 삭제됩니다.

    요청 URL

    DELETE https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/users/{userId}
    
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디
    userIdMandatoryString사용자 아이디디바이스 토큰 등록 시 바인딩한 사용자 아이디

    Headers

    API Header 바로가기

    요청 Body

    없음
    

    응답 Body

    없음
    

    응답 Status

    HTTP StatusDesc
    204No Content (삭제 완료)
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    500Internal Server Error

    채널

    채널 생성

    채널을 생성합니다.

    요청 URL

    POST https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/channels
    
    Content-Type: application/json; charset=utf-8
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디
    channelNameMandatoryString채널명생성할 채널명

    Headers

    API Header 바로가기

    요청 Body

    {
        "channelName":"string",
        "channelDesc":"string"
    }
    
    항목MandatoryType설명비고
    channelNameMandatoryString채널명생성할 채널명
    channelDescOptionalString채널 설명생성할 채널 설명

    응답 Body

    없음
    

    응답 Status

    HTTP StatusDesc
    201Created (추가 완료)
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    409Conflict (채널명 중복)
    500Internal Server Error

    채널 수정

    채널을 수정합니다.

    요청 URL

    PUT https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/channels
    
    Content-Type: application/json; charset=utf-8
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디

    Headers

    API Header 바로가기

    요청 Body

    [
        {
            "channelName":"string",
            "channelDesc":"string"
        }
    ]
    
    항목MandatoryType설명비고
    channelNameMandatoryString채널명- 한 번에 1,000건까지 요청 가능(List)
    - 채널명에 해당하는 설명이 업데이트
    - 수정할 채널명
    channelDescOptionalString채널 설명수정한 채널 설명

    응답 Body

    [
        {
            "channelName": "string",
            "channelDesc": "string",
            "createTime": "localDateTime",
            "updateTime": "localDateTime"
        }
    ]
    
    항목MandatoryType설명비고
    channelNameMandatoryString채널명생성할 채널명
    channelDescOptionalString채널 설명수정한 채널 설명
    createTimeMandatoryString생성 시간format: LocalDateTime
    updateTimeOptionalString수정 시간format: LocalDateTime

    응답 Status

    HTTP StatusDesc
    200OK
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    429Too Many Request
    500Internal Server Error

    채널 조회

    채널을 조회합니다.

    요청 URL

    GET https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/channels
    
    Content-Type: application/json; charset=utf-8
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디

    Parameters

    항목MandatoryType설명비고
    channelNameOptionalString채널명- like 조회 결과 반환
    - 생성한 채널명
    pageSizeOptionalInteger페이지 사이즈- default: 100
    - 0 ~ 100 사이의 숫자만 입력 가능
    pageIndexOptionalInteger페이지 인덱스default: 0

    Headers

    API Header 바로가기

    요청 Body

    없음
    

    응답 Body

    [
        {
            "channelName": "string",
            "channelDesc": "string",
            "createTime": "localDateTime",
            "updateTime": "localDateTime"
        }
    ]
    
    항목MandatoryType설명비고
    channelNameMandatoryString채널명생성한 채널명
    channelDescOptionalString채널 설명생성한 채널 설명
    createTimeMandatoryString생성 시간format: LocalDateTime
    updateTimeOptionalString수정 시간format: LocalDateTime

    응답 Status

    HTTP StatusDesc
    200OK
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    429Too Many Request
    500Internal Server Error

    채널 삭제

    채널을 삭제합니다.

    요청 URL

    DELETE https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/channels
    
    Content-Type: application/json; charset=utf-8
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디

    Headers

    API Header 바로가기

    요청 Body

    [
        {
            "channelName":"string"
        }
    ]
    
    항목MandatoryType설명비고
    channelNameMandatoryString채널명- 한 번에 1,000건까지 요청 가능(List)
    - 삭제할 채널명

    응답 Body

    없음
    

    응답 Status

    HTTP StatusDesc
    204No Content
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    429Too Many Request
    500Internal Server Error

    채널에 사용자 추가

    채널에 사용자를 추가합니다.

    요청 URL

    POST https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/channels/{channelName}/users/{userId}
    
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디
    channelNameMandatoryString채널명사용자를 추가할 채널명
    userIdMandatoryString사용자 아이디디바이스 토큰 등록 시 바인딩한 사용자 아이디

    Headers

    API Header 바로가기

    요청 Body

    없음
    

    응답 Body

    없음
    

    응답 Status

    HTTP StatusDesc
    201Created (추가 완료)
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    500Internal Server Error

    채널에 사용자 삭제

    채널에서 사용자를 삭제합니다.

    요청 URL

    DELETE https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/channels/{channelName}/users/{userId}
    
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디
    channelNameMandatoryString채널명사용자를 삭제할 채널명
    userIdMandatoryString사용자 아이디디바이스 토큰 등록 시 바인딩한 사용자 아이디

    Headers

    API Header 바로가기

    요청 Body

    없음
    

    응답 Body

    없음
    

    응답 Status

    HTTP StatusDesc
    204No Content (삭제 완료)
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    500Internal Server Error

    메시지

    메시지 발송

    메시지를 발송합니다.

    요청 URL

    POST https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/messages
    
    Content-Type: application/json; charset=utf-8
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디

    Headers

    API Header 바로가기

    요청 Body

    {
      "messageType": "(AD | NOTIF)",
      "target": {
        "type": "(ALL | CHANNEL | USER)",
        "deviceType": "(GCM | FCMv1 | APNS)",
        "to": [
          "string",
          "string"
        ],
        "country": [
          "string",
          "string"
        ]
      },
      "message": {
        "default": {
          "content": "string",
          "custom": {
            "customKey1": "customValue1",
            "customKey2": "customValue2"
          },
          "option": {},
          "i18n": {
            "default": {
              "content": "string",
              "custom": {
                "customKey1": "customValue1",
                "customKey2": "customValue2"
              }
            },
            "[language]": {
              "content": "string",
              "custom": {
                "customKey1": "customValue1",
                "customKey2": "customValue2"
              }
            }
          }
        },
        "gcm": {
          "content": "string",
          "custom": {
            "customKey1": "customValue1",
            "customKey2": "customValue2"
          },
          "option": {},
          "i18n": {
            "default": {
              "content": "string",
              "custom": {
                "customKey1": "customValue1",
                "customKey2": "customValue2"
              }
            },
            "[language]": {
              "content": "string",
              "custom": {
                "customKey1": "customValue1",
                "customKey2": "customValue2"
              }
            }
          }
        },
        "fcmv1": {
          "content": "string",
          "custom": {
            "customKey1": "customValue1",
            "customKey2": "customValue2"
          },
          "option": {},
          "i18n": {
            "default": {
              "content": "string",
              "custom": {
                "customKey1": "customValue1",
                "customKey2": "customValue2"
              }
            },
            "[language]": {
              "content": "string",
              "custom": {
                "customKey1": "customValue1",
                "customKey2": "customValue2"
              }
            }
          }
        },
        "apns": {
          "content": "string",
          "custom": {
            "customKey1": "customValue1",
            "customKey2": "customValue2"
          },
          "option": {},
          "i18n": {
            "default": {
              "content": "string",
              "custom": {
                "customKey1": "customValue1",
                "customKey2": "customValue2"
              }
            },
            "[language]": {
              "content": "string",
              "custom": {
                "customKey1": "customValue1",
                "customKey2": "customValue2"
              }
            }
          }
        }
      },
      "reserveTime": "yyyy-MM-dd HH:mm",
      "reserveTimeZone": "string",
      "scheduleCode": "string"
    }
    
    항목MandatoryType설명비고
    messageTypeOptionalString메시지 타입- NOTIF: 알림 메시지
    - AD: 광고성 메시지
    - (default: NOTIF)
    target.typeMandatoryString수신대상 타입- ALL: 서비스에 등록된 모든 디바이스
    - CHANNEL: 채널에 등록된 모든 디바이스
    - USER: 사용자에 바인딩된 모든 디바이스
    target.deviceTypeOptionalString수신대상 디바이스 타입- FCMv1: Android
    - APNS: iOS
    - GCM: Android (deprecated 2024.6.19.)
    - null 일 경우 모든 디바이스
    target.toOptionalArray of String수신대상 식별자- ALL: 입력 필요 없음
    - CHANNEL: 채널명
    - USER: 사용자 아이디
    - 최대 100개
    target.countryOptionalArray of String수신대상 국가코드- 수신 대상 디바이스 국가코드
    - ISO-3166-1 alpha-2
    - 대문자만 가능
    messageMandatoryObject발송 공통메시지메시지 규격은 아래 공통메시지 규격 참고
    message.i18nOptionalObject디바이스 언어별 다국어 메시지 처리를 위한 객체메시지 규격은 아래 다국어 메시지 규격 참고
    reserveTimeOptionalString예약 일시메시지 발송 예약 일시 (yyyy-MM-dd HH:mm)
    reserveTimeZoneOptionalString예약 일시 타임존- 예약 일시 타임존 (기본: Asia/Seoul)
    - 지원 타임존 목록
    - TZ database name 값 사용
    scheduleCodeOptionalString스케줄 코드등록하려는 스케줄 코드
    참고
    • Android 디바이스 메시지 발송 시 GCM/FCM을 모두 지원하며 네이버 클라우드 플랫폼 SENS에서는 Type을 GCM으로 사용합니다.
    • target.deviceType을 GCM 또는 FCMv1으로 지정 시 모든 Android 단말에 메시지가 발송되는게 아니라 해당 Type으로 등록된 디바이스 토큰을 가진 User에게만 메시지가 발송됩니다.
    • 동일한 디바이스의 토큰이 GCM, FCMv1 모두 등록된 경우에는 target.deviceType: ALL 또는 지정하지 않고 메시지를 발송하는 경우, 중복 수신될 수 있습니다.

    공통 메시지

    • 메시지 발송 requestBody의 message 항목이 공통 메시지를 위한 규격이다.
    • message.default.XXX, message.gcm.XXX, message.fcmv1.XXX, message.apns.XXX로 구분할 수 있으며 message.default는 필수로 작성해 주십시오.
    • default만 작성 시 모든 Push Type에 동일한 메시지가 발송되며 gcm, fcmv1, apns 작성시 Push Type별로 메시지를 분리할 수 있습니다.
    • 적용 우선 순위: gcm = fcmv1 = apns > default
    • message에 아래 표대로 메시지를 작성하면 각 Push Type에 맞게 메시지가 생성되어 발송됩니다.
    message 하위 항목MandatoryTypeGCM/FCMv1APNS
    contentOptionalStringdata.contentalert or alert.body
    customOptionalObjectdata.KEY로 지정
    * FCMv1: customKey:customValue 형식 = string:string
    aps와 동일한 레벨의 KEY로 지정
    optionOptionalObject아래 Push Type 별 사용 가능한 option 참조
    i18nOptionalObject
    참고

    메시지 발송 시 message.fcmv1을 별도로 구성하지 않으면 message.gcm > message.default의 우선순위로 메시지를 사용하게 되므로, FCMv1에서 변경되는 부분에 따라 메시지 발송에 영향을 줄 수 있습니다.

    다국어 메시지

    • 디바이스에 설정된 language에 따라 다국어 메시지를 처리하기 위한 규격입니다.
    • message.default.XXX, message.[language].XXX로 구분할 수 있으며 `language는 ISO-639-1 표준을 따르고 소문자만 사용 가능합니다. 하지만 예외적으로 중국어 간체/번체 지원을 위해 zh-Hant, zh-Hans는 사용할 수 있습니다.
      • ISO-639-1
      • 소문자만 가능
      • zh-Hant, zh-Hans 사용 가능 (대소문자 구분)
    • language는 디바이스 등록 시 설정된 언어 코드 기준입니다.
    • 적용 우선 순위는 message.content, message.custom 보다 높습니다.
    i18n 하위 항목MandatoryTypeGCM/FCMv1APNS
    contentMandatoryStringdata.contentalert or alert.body
    customOptionalObjectdata.KEY로 지정
    * FCMv1: customKey:customValue 형식 = string:string
    aps와 동일한 레벨의 KEY로 지정

    Push Type 별 사용 가능한 option

    참고

    FCMv1 타입에서 메시지 정보 가이드가 아래와 같이 변경됩니다.

    • delay_while_idle 옵션 삭제
    • time_to_live 옵션명 ttl로 변경

    응답 Body

    {
        "requestId":"string",
        "requestTime":"string",
        "statusCode":"string",
        "statusName":"string"
    }
    
    항목MandatoryType설명비고
    requestIdMandatoryString요청 아이디
    requestTimeMandatoryDateTime요청 시간
    statusCodeMandatoryString요청 상태 코드아래 Response Code 참조
    statusNameMandatoryString요청 상태명- success: 성공
    - reserved: 예약 중
    - scheduled: 스케줄 중
    - fail: 실패

    응답 Status

    HTTP StatusDesc
    202Accepted (발송 요청 완료)
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    500Internal Server Error

    메시지 발송 결과 조회

    메시지 발송 결과를 조회합니다.

    요청 URL

    GET https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/messages/{requestId}
    
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디
    requestIdMandatoryString메시지 발송요청 아이디메시지 발송 시 반환되는 요청 식별자

    Headers

    API Header 바로가기

    요청 Body

    없음
    

    응답 Body

    {
        "requestId":"string",
        "requestTime":"string",
        "statusCode":"string",
        "statusName":"string",
        "messageStatusCode":"string",
        "messageStatusName":"string",
        "completeTime":"string",
        "targetCount":"integer",
        "sentCount":"integer",
        "messageType":"string",
        "target":{
            ...
        },
        "message":{
            ...
        }
    }
    
    항목MandatoryType설명비고
    requestIdMandatoryString요청 아이디
    requestTimeMandatoryDateTime요청 시간
    statusCodeMandatoryString요청 상태 코드- 202: 성공
    - 그 외: 실패
    statusNameMandatoryString요청 상태명- success: 성공
    - fail: 실패
    messageStatusCodeMandatoryString발송 상태 코드- 200: 성공
    - 그 외: 실패
    messageStatusNameMandatoryString발송 상태명- success: 성공
    - processing: 처리 중
    - fail: 실패
    completeTimeMandatoryDateTime발송 완료 시간
    targetCountMandatoryInteger요청 대상 디바이스 개수
    sentCountMandatoryInteger발송 성공 디바이스 개수
    messageTypeMandatoryString메시지 타입- NOTIF: 알림 메시지
    - AD: 광고성 메시지
    targetMandatoryObject요청 target 정보
    messageMandatoryObject요청 message 정보

    응답 Status

    HTTP StatusDesc
    200OK (조회 완료)
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    500Internal Server Error

    예약 메시지

    예약 메시지 상태 조회

    메시지 발송 예약 상태를 조회합니다.

    GET https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/reservations/{reserveId}/reserve-status
    
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디
    reserveIdMandatoryString예약 메시지 아이디예약 발송 요청 조회 시 반환되는 메시지 식별자(requestId)

    Headers

    API Header 바로가기

    요청 Body

    없음
    

    응답 Body

    {
      "reserveId": "string",
      "reserveTimeZone": "string",
      "reserveTime": "string",
      "reserveStatus": "string"
    }
    
    항목MandatoryType설명비고
    reserveIdMandatoryString예약 메시지 아이디예약 발송 요청 조회 시 반환되는 메시지 식별자(requestId)
    reserveTimeMandatoryString예약 일시메시지 발송 예약 일시 (yyyy-MM-dd HH:mm)
    reserveTimeZoneMandatoryString예약 일시 타임존- 예약 일시 타임존 (기본: Asia / Seoul)
    - 지원 타임존 목록
    - TZ database name 값 사용
    reserveStatusMandatoryString예약 상태- READY: 발송 대기
    - PROCESSING: 발송 요청 중
    - CANCELED: 발송 취소
    - FAIL: 발송 요청 실패
    - DONE: 발송 요청 성공
    - STALE: 발송 요청 실패 (시간 초과)

    응답 Status

    HTTP StatusDesc
    200OK (조회 완료)
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    500Internal Server Error

    예약 메시지 취소

    메시지 발송 예약을 취소합니다.

    DELETE https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/reservations/{reserveId}
    
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디
    reserveIdMandatoryString예약 메시지 아이디예약 발송 요청 조회 시 반환되는 메시지 식별자(requestId)

    Headers

    API Header 바로가기

    요청 Body

    없음
    

    응답 Body

    없음
    

    응답 Status

    HTTP StatusDesc
    204No Content (삭제 완료)
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    500Internal Server Error

    스케줄 메시지

    스케줄 메시지 취소

    메시지 발송 스케줄을 취소합니다.

    DELETE https://sens.apigw.ntruss.com/push/v2/services/{serviceId}/schedules/{scheduleCode}/messages/{messageId}
    
    x-ncp-apigw-timestamp: {Timestamp}
    x-ncp-iam-access-key: {Sub Account Access Key}
    x-ncp-apigw-signature-v2: {API Gateway Signature}
    

    Path Variables

    항목MandatoryType설명비고
    serviceIdMandatoryString서비스 아이디프로젝트 등록 시 발급받은 서비스 아이디
    scheduleCodeMandatoryString스케줄 코드스케줄 등록 시 사용한 코드
    messageIdMandatoryString예약 메시지 아이디스케줄 발송 요청 조회 시 반환되는 메시지 식별자(requestId)

    Headers

    API Header 바로가기

    요청 Body

    없음
    

    응답 Body

    없음
    

    응답 Status

    HTTP StatusDesc
    204No Content (삭제 완료)
    400Bad Request
    401Unauthorized
    403Forbidden
    404Not Found
    500Internal Server Error

    이 문서가 도움이 되었습니까?

    What's Next
    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.