연동 준비사항
캠페인 등록 API를 연동하려면 인증토큰(API KEY)을 발급받아야 합니다. 토큰을 이미 발급받았다면 추가할 권한만 요청합니다. HIVE Server API > 노티피케이션 > 푸시 v4 > 인증에서 인증토큰 발급과 요청 방법을 확인하세요.
캠페인 등록 API
기본 정보 및 요청 변수
Method | POST | ||||||
URL | /push/campaigns | ||||||
구분 | 필드명 | 설명 | 타입 | 필수 여부 |
|||
---|---|---|---|---|---|---|---|
sound | Header | Content-Type | application/json;charset=utf-8 | ||||
Authorization | bearer {{API KEY}} | ||||||
Body | id | 캠페인 수정 시 필수 입력 사항 | Integer | △ | |||
status | 캠페인 수정 시 필수 입력 사항 | Integer | △ | ||||
company | 회사 구분 ● gamevil: 컴투스홀딩스 ● com2us: 컴투스 ● gcp: 컴투스플랫폼 |
String | O | ||||
companyIndex | 회사 코드 (앱 센터에 등록된 회사 번호) | Integer | O | ||||
description | 캠페인 설명 | String | O | ||||
notice | 공지 푸시 여부 | Boolean | X | ||||
type | 발송 구분 ● B: 대용량 푸시 ● T: 타게팅 푸시 |
String | O | ||||
targetingId | 타게팅 ID 타게팅 캠페인일 경우 필수 입력 사항 |
Integer | △ | ||||
registrant | name | 등록자 이름 | String | X | |||
id | 등록자 id | String | O | ||||
reservation | localizing | 현지 시간 고려 여부 (일괄 발송 사용/미사용) | Boolean | O | |||
startDate | 반복 발송 기간 (YYYY-MM-DD) | String | O | ||||
endDate | String | O | |||||
time | 발송 시간 (HH:mm) | String | O | ||||
repeat | 반복 발송 여부 | Boolean | O | ||||
weekday | 주말을 제외한 반복 발송 요일 | Integer[] | X | ||||
skip | 반복 발송 기간에 발송을 건너뛸 날짜 | String[] | X | ||||
distribution | enable | 분산 발송 여부 | Boolean | X | |||
interval | 분산 발송 간격 | Integer | X | ||||
count | 분산 발송 갯수 | Integer | X | ||||
continents | 선택된 대륙별 국가 정보 목록 (국가코드 참고) CampaignContinent 구조와 예제는 아래에서 확인 |
CampaignContinent[] | O | ||||
countries | 선택된 국가 정보 (국가코드 참고) | String[] | O | ||||
game | gameindex | 게임 인덱스 | Integer | O | |||
serverIds | 서버 ID 목록 | String[] | X | ||||
apps[] | appindex | 앱 인덱스 | Integer | O | |||
appid | 앱 아이디 | String | O | ||||
defaultLanguage | 기본 언어값 (언어코드 참고) | String | O | ||||
notification | {{LANGUAGE}} | 메시지 정보 Message 구조와 예제는 아래에서 확인 |
Message | X | |||
option | badge | 푸시 알림 뱃지 | Integer | X | |||
overwrite | 푸시 덮어쓰기 기능 사용여부 | Boolean | X | ||||
collapseKey | 푸시 덮어쓰기 기능을 사용할 때 키값 | String | X | ||||
engagement | 유저 인게이지먼트 | String | X | ||||
comment | 문구 | String | X | ||||
groupKey | iOS와 Android OS 사용 기기에서 알림 수신 시, 알림을 같은 그룹끼리 묶어 노출하기 위한 그룹 키 값입니다. 기기 OS에 설정된 알림 옵션이 기본 적용됩니다. 옵션에 관한 자세한 내용은 아래 문서를 참고하세요. | String | X | ||||
android | icon | 유저 기기에 푸시 알림이 뜰 때 노출되는 아이콘 이미지 파일명입니다. 이미지 파일은 /src/main/res/drawable에 존재해야 합니다. 지원하는 이미지 파일 형식은 다음을 확인하세요. 웹에 있는 이미지를 노출하고 싶다면 이미지 파일명 대신 이미지 URL을 이 필드에 입력하세요. 이 필드가 비어있으면 앱 아이콘 이미지를 노출합니다. | String | X | |||
sound | 유저 기기에 푸시 알림이 뜰 때 재생할 알림 음원 파일명입니다. 앱 번들에 포함된 음원 파일을 지정할 수 있으며 음원 파일은 /src/main/res/raw에 존재해야 합니다. 이 필드가 비어있으면 시스템 기본 음원을 사용합니다. | String | X | ||||
priority | Android 기기로 전송할 메시지의 우선순위입니다. 이 우선순위는 메시지 전송 시기를 제어하는 FCM 개념입니다. NORMAL 또는 HIGH 값을 가질 수 있으며, 기본값은 NORMAL 입니다. 자세한 내용은 Firebase 가이드를 참고하세요.
|
enum(NORMAL, HIGH) | X | ||||
ios | sound | 유저 기기에 푸시 알림이 뜰 때 재생할 알림 음원 파일명입니다. 음원 파일은 앱 컨테이너의 Library/Sounds 또는 앱 메인 번들에 존재해야 합니다. 이 필드가 비어있으면 “default”로 자동 설정되며 유저 애플 기기 시스템 기본 음원을 사용합니다. | String | X |
option
필드에 관한 자세한 정보는 각 마켓의 가이드 라인을 참고하세요.
(Facebook의 경우 option 필드가 적용되지 않습니다.)
- iOS: Generating a remote notification
- Android: FirebaseNotification
구분 | 필드명 | 설명 | 타입 | 필수여부 |
---|---|---|---|---|
CampaignContinent | continent | 대륙 구분 | String | O |
countries | 대륙에 속한 국가 코드 | String[] | O |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
[ { "name": "Africa", "countries": [ "Algeria", "Angola", "Benin", "Sudan", "Swaziland", "Tanzania", "Togo", "Tunisia", "Zambia", "Zimbabwe" ] } ] |
구분 | 필드명 | 설명 | 타입 | 필수여부 | |
---|---|---|---|---|---|
Message | android | title | 제목 | String | O |
message | 본문 | String | O | ||
messageExpanded | 본문 확장 | String | X | ||
imageUrl | 이미지 경로 | String | X | ||
ticker | 티커 | String | X | ||
summaryText | 본문 간략히 | String | X | ||
iOS | title | 제목 | String | O | |
message | 본문 | String | O | ||
mediaUrl | 이미지 경로 | String | X | title | 제목 (1~30자 이내) | String | O |
body | 본문 (10~180자 이내) | String | O | ||
media | 이미지 URL | String | O |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
{ "ko": { "android": { "messageExpanded": "(광고) TEST(수신거부: 설정에서 변경 가능)", "ticker": "gg", "title": "(광고)test", "message": "(광고) test (수신거부: 설정에서 변경 가능)", "summaryText": "", "imageUrl": "" }, "ios": { "mediaUrl": "", "title": "푸시", "message": "(광고) TEST (수신거부: 설정에서 변경 가능)" }, "facebook": { "title" : "Title", "body" : "Push Message Body", "media" : "https://image.newdaily.co.kr/site/data/img/2022/05/13/2022051300019_0.jpg" } } } |
출력 결과
Header | Content-Type | application/json;charset=utf-8 |
UUID | {{UUID}} | |
Body | 성공일 경우 Body는 비어 있음 |
응답 상태 코드
키 | 값 | 설명 |
---|---|---|
200 | 성공 | (Body는 비어 있음) |
400 | Bad Request | POST 데이터 누락 JSON 포맷 오류 데이터 내 필수 요소가 누락되었거나 유효하지 않음 Body에 담긴 reason 메시지로 에러에 대한 추가 확인이 가능함 |
401 | Unauthorized | 요청 메시지의 Authorization 헤더가 누락되었거나 그 값이 유효하지 않음 인증토큰(API KEY)이 등록되어 있지 않음 해당 API로의 접근 권한 없음 |
403 | Forbidden | Authorization 헤더의 인증 스킴이 “Bearer”가 아님 (현재 Bearer만 지원) |
404 | Not Found | 요청 URL이 잘못되었음 |
500 | Internal Server Error | 서버 내부적으로 문제가 발생함 |
502 | Bad Gateway | 푸시 게이트웨이 서버 과부하 네트워크가 잘못된 연결을 시도하였음 |
503 | Service Unavailable | API 서버 또는 인증 서버 다운 상태 |
예제코드
캠페인 등록
1 2 3 4 5 |
curl -v -L \ -H "Content-Type: application/json" \ -H "Authorization: Bearer {API KEY}" \ -d '{"description":"TEST","status":1,"company":"gcp", "companyIndex" : 3, "type":"B","targetingId":0,"reservation":{"localizing":false,"startDate":"2025-11-06","endDate":"2025-11-06","time":"17:00:00","repeat":false,"periodType":"","weekday":[],"skip":[]},"game":{"gameName":"스탭 바이 스탭","gameindex":592,"serverIds":[],"apps":[{"appindex":20002,"appid":"com.gcp.stepbystep.android.google.global.normal","versions":[]}],"serverAll":true},"distribution":{"enable":false,"interval":0,"count":0},"defaultLanguage":"ko","option":{"badge":1,"engagement":"","overwrite":false,"collapseKey":"0","comment":"","groupKey": "", "android":{"icon":"","sound":"","priority":"high"},"ios":{"sound":""}},"timestamp":{"time":0,"date":""},"registrant":{"id":"soollung","name":"박기찬"},"notification":{"ko":{"android":{"title":"TEST","message":"(광고) TEST (수신거부: 설정에서 변경 가능)","messageExpanded":"","ticker":"","summaryText":"","imageUrl":""},"ios":{"title":"TEST","message":"(광고) TEST (수신거부: 설정에서 변경 가능)","mediaUrl":""},"facebook":{"title":"TEST", "body":"TEST MESSAGE BODY", "media": "https://image.newdaily.co.kr/site/data/img/2022/05/13/2022051300019_0.jpg"}}},"countries":["KR"],"continents":[{"name":"Africa","countries":[]},{"name":"Americas","countries":[]},{"name":"Asia","countries":["South Korea"]},{"name":"Europe","countries":[]},{"name":"Oceania","countries":[]},{"name":"Polar","countries":[]}]}' \ https://sandbox-notification.qpyou.cn/push/campaigns |
1 2 3 4 5 6 7 8 |
> POST /push/campaigns HTTP/1.1 > User-Agent: curl/7.29.0 > Host: sandbox-notification.qpyou.cn > Accept: */* > Content-Type: application/json > Authorization: Bearer {API KEY} > Content-Length: 1314 > Expect: 100-continue |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 |
< HTTP/1.1 100 Continue < HTTP/1.1 200 OK < Content-Length: 1491 < Content-Type: application/json <: 3d18420b-4cf3-48a8-a3bf-6c9ac6cbe86a < { "uuid": "3d18420b-4cf3-48a8-a3bf-6c9ac6cbe86a", "status": 1, "modify": true, "id": 532, "type": "B", "company": "gcp", "companyIndex": 3, "description": "TEST", "targetingId": 0, "reservation": { "localizing": false, "startDate": "2025-11-06", "endDate": "2025-11-06", "time": "17:00:00", "repeat": false }, "distribution": { "count": 0, "interval": 0, "enable": false }, "continents": [ { "name": "Africa", "countries": [] }, { "name": "Americas", "countries": [] }, { "name": "Asia", "countries": [ "South Korea" ] }, { "name": "Europe", "countries": [] }, { "name": "Oceania", "countries": [] }, { "name": "Polar", "countries": [] } ], "countries": [ "KR" ], "lastEndTime": 1762448400, "tasks": { "17:00:00": { "startTime": 1762448400, "endTime": 1762448400, "time": "17:00:00", "gmtOffset": 32400, "zones": [ "Asia/Seoul" ] } }, "game": { "gameindex": 592, "gameName": "스탭 바이 스탭", "apps": [ { "appid": "com.gcp.stepbystep.android.google.global.normal", "appindex": 20002 } ] }, "defaultLanguage": "ko", "notification": { "ko": { "android": { "messageExpanded": "", "ticker": "", "summaryText": "", "imageUrl": "", "title": "TEST", "message": "(광고) TEST (수신거부: 설정에서 변경 가능)" }, "ios": { "title": "TEST", "message": "(광고) TEST (수신거부: 설정에서 변경 가능)", "mediaUrl": "" }, "facebook": { "media": "https://image.newdaily.co.kr/site/data/img/2022/05/13/2022051300019_0.jpg", "title": "TEST", "body": "TEST MESSAGE BODY" } } }, "option": { "badge": 1, "engagement": "", "overwrite": false, "collapseKey": "0", "comment": "", "groupKey": "", "android": { "icon": "", "sound": "", "priority": "high" }, "ios": { "sound": "" } }, "timestamp": { "date": "2023-05-22 15:19:24.726", "time": 1684736364726 }, "registrant": { "name": "박기찬", "id": "soollung" }, "dryRun": false, "debug": false } |
캠페인 수정
1 2 3 4 5 6 7 |
curl -v -L \ -H "Content-Type: application/json" \ -H "Authorization: Bearer {API KEY}" \ -d '{"id":475,"description":"TEST 475","status":1,"company":"gcp","companyIndex" : 3,"type":"B","targetingId":0,"reservation":{"localizing":false,"startDate":"2020-11-06","endDate":"2020-11-06","time":"17:00:00","repeat":false,"periodType":"","weekday":[],"skip":[]},"game":{"gameName":"스탭 바이 스탭","gameindex":592,"serverIds":[],"apps":[{"appindex":20002,"appid":"com.gcp.stepbystep.android.google.global.normal","versions":[]}],"serverAll":true},"distribution":{"enable":false,"interval":0,"count":0},"defaultLanguage":"ko","option":{"badge":1,"engagement":"","overwrite":false,"collapseKey":"0","comment":"","android":{"icon":"","sound":"","priority":"high"},"ios":{"sound":""}, "groupKey":"test"},"timestamp":{"time":0,"date":""},"registrant":{"id":"soollung","name":"박기찬"},"notification":{"ko":{"android":{"title":"TEST","message":"(광고) TEST (수신거부: 설정에서 변경 가능)","messageExpanded":"","ticker":"","summaryText":"","imageUrl":""},"ios":{"title":"TEST","message":"(광고) TEST (수신거부: 설정에서 변경 가능)","mediaUrl":""},"facebook":{"title":"TEST", "body":"TEST MESSAGE BODY", "media": "https://image.newdaily.co.kr/site/data/img/2022/05/13/2022051300019_0.jpg"}}},"countries":["KR"],"continents":[{"name":"Africa","countries":[]},{"name":"Americas","countries":[]},{"name":"Asia","countries":["South Korea"]},{"name":"Europe","countries":[]},{"name":"Oceania","countries":[]},{"name":"Polar","countries":[]}]}' \ https://sandbox-notification.qpyou.cn/push/campaigns |
1 2 3 4 5 6 7 8 |
> POST /push/campaigns HTTP/1.1 > User-Agent: curl/7.29.0 > Host: sandbox-notification.qpyou.cn > Accept: */* > Content-Type: application/json > Authorization: Bearer {API KEY} > Content-Length: 1314 > Expect: 100-continue |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 |
< HTTP/1.1 100 Continue < HTTP/1.1 200 OK < Content-Length: 1491 < Content-Type: application/json < UUID: 65420989-ab96-4587-b19a-195fe13f9086 < { "uuid": "65420989-ab96-4587-b19a-195fe13f9086", "status": 1, "id": 475, "type": "B", "company": "gcp", "companyIndex": 3, "description": "TEST475", "targetingId": 0, "reservation": { "localizing": false, "startDate": "2020-11-06", "endDate": "2020-11-06", "time": "17:00:00", "repeat": false }, "distribution": { "count": 0, "interval": 0, "enable": false }, "continents": [{ "name": "Africa", "countries": [] }, { "name": "Americas", "countries": [] }, { "name": "Asia", "countries": ["South Korea"] }, { "name": "Europe", "countries": [] }, { "name": "Oceania", "countries": [] }, { "name": "Polar", "countries": [] }], "countries": ["KR"], "lastEndTime": 1604682000, "tasks": { "17:00:00": { "startTime": 1604682000, "endTime": 1604682000, "time": "17:00:00", "gmtOffset": 32400, "zones": ["Asia/Seoul"] } }, "game": { "gameindex": 592, "gameName": "스탭바이스탭", "apps": [{ "appid": "com.gcp.stepbystep.android.google.global.normal", "appindex": 20002 }] }, "defaultLanguage": "ko", "notification": { "ko": { "android": { "title": "TEST", "message": "(광고) TEST (수신거부: 설정에서 변경 가능)", "messageExpanded": "", "ticker": "", "summaryText": "", "imageUrl": "" }, "ios": { "title": "TEST", "message": "(광고) TEST (수신거부: 설정에서 변경 가능)", "mediaUrl": "" }, "facebook": { "title": "TEST", "body": "TEST MESSAGE BODY", "media": "https://image.newdaily.co.kr/site/data/img/2022/05/13/2022051300019_0.jpg" } } }, "option": { "badge": 1, "engagement": "", "overwrite": false, "collapseKey": "0", "comment": "", "android": { "icon": "", "sound": "", "priority": "high" }, "ios": { "sound": "" }, "groupKey": "test" }, "timestamp": { "date": "2020-03-23 11:03:43.094", "time": 1584929023094 }, "registrant": { "name": "박기찬", "id": "soollung" }, "dryRun": false, "debug": false } |
국가코드
Continent | Country | Code | Country | Code |
Africa | Angola | AO | Madagascar | MG |
Burkina Faso | BF | Mali | ML | |
Burundi | BI | Mauritania | MR | |
Benin | BJ | Mauritius | MU | |
Botswana | BW | Malawi | MW | |
Democratic Republic of the Congo | CD | Mozambique | MZ | |
Central African Republic | CF | Namibia | NA | |
Republic of the Congo | CG | Niger | NE | |
Ivory Coast | CI | Nigeria | NG | |
Cameroon | CM | Reunion | RE | |
Cape Verde | CV | Rwanda | RW | |
Djibouti | DJ | Seychelles | SC | |
Algeria | DZ | Sudan | SD | |
Egypt | EG | Saint Helena | SH | |
Western Sahara | EH | Sierra Leone | SL | |
Eritrea | ER | Senegal | SN | |
Ethiopia | ET | Somalia | SO | |
Gabon | GA | South Sudan | SS | |
Ghana | GH | Sao Tome and Principe | ST | |
Gambia | GM | Swaziland | SZ | |
Guinea | GN | Chad | TD | |
Equatorial Guinea | GQ | French Southern Territories | TF | |
Guinea-Bissau | GW | Togo | TG | |
British Indian Ocean Territory | IO | Tunisia | TN | |
Kenya | KE | Tanzania | TZ | |
Comoros | KM | Uganda | UG | |
Liberia | LR | Mayotte | YT | |
Lesotho | LS | South Africa | ZA | |
Libya | LY | Zambia | ZM | |
Morocco | MA | Zimbabwe | ZW | |
Americas | Antigua and Barbuda | AG | Honduras | HN |
Anguilla | AI | Haiti | HT | |
Argentina | AR | Jamaica | JM | |
Aruba | AW | Saint Kitts and Nevis | KN | |
Barbados | BB | Cayman Islands | KY | |
Saint Barthélemy | BL | Saint Lucia | LC | |
Bermuda | BM | Saint Martin | MF | |
Bolivia | BO | Martinique | MQ | |
Bonaire, Saint Eustatius and Saba | BQ | Montserrat | MS | |
Brazil | BR | Mexico | MX | |
Bahamas | BS | Nicaragua | NI | |
Belize | BZ | Panama | PA | |
Canada | CA | Peru | PE | |
Chile | CL | Saint Pierre and Miquelon | PM | |
Colombia | CO | Puerto Rico | PR | |
Costa Rica | CR | Paraguay | PY | |
Cuba | CU | Suriname | SR | |
Curaçao | CW | El Salvador | SV | |
Dominica | DM | Sint Maarten | SX | |
Dominican Republic | DO | Turks and Caicos Islands | TC | |
Ecuador | EC | Trinidad and Tobago | TT | |
Falkland Islands | FK | United States Minor Outlying Islands | UM | |
Grenada | GD | United States | US | |
French Guiana | GF | Uruguay | UY | |
Greenland | GL | Saint Vincent and the Grenadines | VC | |
Guadeloupe | GP | Venezuela | VE | |
South Georgia and the South Sandwich Islands | GS | British Virgin Islands | VG | |
Guatemala | GT | U.S. Virgin Islands | VI | |
Guyana | GY | |||
Asia | United Arab Emirates | AE | Lebanon | LB |
Afghanistan | AF | Sri Lanka | LK | |
Armenia | AM | Myanmar | MM | |
Azerbaijan | AZ | Mongolia | MN | |
Bangladesh | BD | Macao | MO | |
Bahrain | BH | Maldives | MV | |
Brunei | BN | Malaysia | MY | |
Bhutan | BT | Nepal | NP | |
China | CN | Oman | OM | |
Georgia | GE | Philippines | PH | |
Hong Kong | HK | Pakistan | PK | |
Indonesia | ID | Palestinian Territory | PS | |
Israel | IL | Qatar | QA | |
India | IN | Saudi Arabia | SA | |
Iraq | IQ | Singapore | SG | |
Iran | IR | Syria | SY | |
Jordan | JO | Thailand | TH | |
Japan | JP | Tajikistan | TJ | |
Kyrgyzstan | KG | East Timor | TL | |
Cambodia | KH | Turkmenistan | TM | |
North Korea | KP | Turkey | TR | |
South Korea | KR | Taiwan | TW | |
Kuwait | KW | Uzbekistan | UZ | |
Kazakhstan | KZ | Vietnam | VN | |
Laos | LA | Yemen | YE | |
Europe | Andorra | AD | Iceland | IS |
Albania | AL | Italy | IT | |
Austria | AT | Jersey | JE | |
Aland Islands | AX | Liechtenstein | LI | |
Bosnia and Herzegovina | BA | Lithuania | LT | |
Belgium | BE | Luxembourg | LU | |
Bulgaria | BG | Latvia | LV | |
Belarus | BY | Monaco | MC | |
Switzerland | CH | Moldova | MD | |
Cyprus | CY | Montenegro | ME | |
Czech Republic | CZ | Macedonia | MK | |
Germany | DE | Malta | MT | |
Denmark | DK | Netherlands | NL | |
Estonia | EE | Norway | NO | |
Spain | ES | Poland | PL | |
Finland | FI | Portugal | PT | |
Faroe Islands | FO | Romania | RO | |
France | FR | Serbia | RS | |
United Kingdom | GB | Russia | RU | |
Guernsey | GG | Sweden | SE | |
Gibraltar | GI | Slovenia | SI | |
Greece | GR | Svalbard and Jan Mayen | SJ | |
Croatia | HR | Slovakia | SK | |
Hungary | HU | San Marino | SM | |
Ireland | IE | Ukraine | UA | |
Isle of Man | IM | Vatican | VA | |
Oceania | American Samoa | AS | Niue | NU |
Australia | AU | New Zealand | NZ | |
Cocos Islands | CC | French Polynesia | PF | |
Cook Islands | CK | Papua New Guinea | PG | |
Christmas Island | CX | Pitcairn | PN | |
Fiji | FJ | Palau | PW | |
Micronesia | FM | Solomon Islands | SB | |
Guam | GU | Tokelau | TK | |
Kiribati | KI | Tonga | TO | |
Marshall Islands | MH | Tuvalu | TV | |
Northern Mariana Islands | MP | Vanuatu | VU | |
New Caledonia | NC | Wallis and Futuna | WF | |
Norfolk Island | NF | Samoa | WS | |
Nauru | NR | |||
Polar | Antarctica | AQ |
언어코드
언어코드 | 언어 |
---|---|
ko | 한국어 |
zh-hans | 중문간체 |
zh-hant | 중문번체 |
en | 영어 |
ja | 일본어 |
ar | 아랍어 |
fr | 프랑스어 |
de | 독일어 |
es | 스페인어 |
pt | 포루투갈어 |
th | 태국어 |
it | 이탈리아어 |
ru | 러시아어 |
id | 인도네시아어 |
vi | 베트남어 |
tr | 터키어 |