Game Notice
This guide explains how to use the game notice inquiry API.
Before calling the API, you must register the notices to be displayed in the game from the Hive Console.
Overview¶
The game notice inquiry API is called directly from the game via server-to-server communication and supports two types of interfaces depending on the query method.
- Get all notices: Retrieves all notices for a specific game (
game_index) at once. - Get paginated notices: Retrieves notices for a specific game (
game_index) in pages (pagination).
The Authorization request header must include an authentication token (Hive authentication key). The response includes basic notice information, language-specific details, game server ID list, and country code list.
A notice is returned in the response only if all of the following conditions are met:
status = 1: Active statusstart_time <= current time: Current time is after the display start timeend_time >= current time: Current time is before the display end time
Note
All times are based on KST (UTC+9).
Common response specification¶
Describes the common response examples and response codes that apply to all game notice inquiry API calls.
Success response example¶
Error response example¶
Response codes¶
| HTTP status code | Code | Message | Description |
|---|---|---|---|
| 200 | 0 | Success | Processed successfully |
| 500 | 1100 | Unknown error | Unknown cause error |
| 500 | 1101 | Internal server error | Internal server error |
| 400 | 1201 | Detail message (e.g., Missing required parameter: game_index) | Request format error |
| 400 | 1202 | Detail message (e.g., `game_index` must be a positive integer) | Parameter value error |
| 401 | 1203 | Unauthorized | Authorization error |
| 405 | 1204 | Method not allowed | HTTP request method error |
Get all notices¶
Returns the complete list of notices for a specific game (game_index).
Request information¶
| Item | Details |
|---|---|
| Production URL | https://social-api.qpyou.cn/games/{game_index}/notices |
| Sandbox URL | https://sandbox-social-api.qpyou.cn/games/{game_index}/notices |
| HTTP Method | GET |
| Response Format | JSON |
Request data¶
Request headers¶
| Field | Type | Required | Description | Notes |
|---|---|---|---|---|
| Authorization | string | Y | Bearer token (Hive authentication key) | AppCenter > Project Management > Game Details > Basic Information > Hive authentication key |
Request header example¶
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.KMUFsIDTnFmyG3nMiGM6H9FNFUROf3wh7SmqJp-QV30
Path parameters¶
| Field | Type | Required | Description |
|---|---|---|---|
| game_index | int | Y | Game index (positive integer) |
Request body¶
None (GET request)
Request example¶
curl -X GET "https://sandbox-social-api.qpyou.cn/games/313/notices" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.KMUFsIDTnFmyG3nMiGM6H9FNFUROf3wh7SmqJp-QV30"
Response data¶
Response body¶
| Field | Type | Description |
|---|---|---|
| result_code | int | Response result code |
| result_msg | string | Result message |
| data | object | Response data |
| ㄴ list | array | Notice list (array of basic notice information objects; returns [] if no results) |
Response example¶
{
"result_code": 0,
"result_msg": "Success",
"data": {
"list": [
{
"notice_id": 123,
"status": 1,
"type": "N",
"view_count": 500,
"registrant": "admin",
"top_placed": 1,
"start_time": "2026-03-01 00:00:00",
"end_time": "2026-03-31 23:59:59",
"company_index": 1,
"game_index": 313,
"country_expose_type": "W",
"details": {
"ko": {
"game_name": "테스트게임",
"title": "공지사항 제목",
"content": "공지사항 내용",
"crop_image": "https://example.com/img/123_kor.png"
},
"en": {
"game_name": "TestGame",
"title": "Notice Title",
"content": "Notice Content",
"crop_image": "https://example.com/img/123_eng.png"
}
},
"game_servers": ["server1", "server2"],
"country_codes": ["KR", "US"]
}
]
}
}
Get paginated notices¶
Returns the notice list for a specific game (game_index) in pages.
The Get all notices endpoint switches to paginated mode when either page or per_page is included as a query parameter.
Request information¶
| Item | Details |
|---|---|
| Production URL | https://social-api.qpyou.cn/games/{game_index}/notices?page={page}&per_page={per_page} |
| Sandbox URL | https://sandbox-social-api.qpyou.cn/games/{game_index}/notices?page={page}&per_page={per_page} |
| HTTP Method | GET |
| Response Format | JSON |
Request data¶
Request headers¶
| Field | Type | Required | Description | Notes |
|---|---|---|---|---|
| Authorization | string | Y | Bearer token (Hive authentication key) | AppCenter > Project Management > Game Details > Basic Information > Hive authentication key |
Request header example¶
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.KMUFsIDTnFmyG3nMiGM6H9FNFUROf3wh7SmqJp-QV30
Path parameters¶
| Field | Type | Required | Description |
|---|---|---|---|
| game_index | int | Y | Game index (positive integer) |
Query parameters¶
Note
If page or per_page is not a positive integer, the default value is used.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| page | int | N | 1 | Page number (starting from 1) |
| per_page | int | N | 20 | Number of items per page |
Request body¶
None (GET request)
Request example¶
curl -X GET "https://sandbox-social-api.qpyou.cn/games/313/notices?page=1&per_page=20" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTUxNjIzOTAyMn0.KMUFsIDTnFmyG3nMiGM6H9FNFUROf3wh7SmqJp-QV30"
Response data¶
Response body¶
| Field | Type | Description |
|---|---|---|
| result_code | int | Response result code |
| result_msg | string | Result message |
| data | object | Response data |
| ㄴ pagination | object | Pagination metadata |
| ㄴ page | int | Current page number |
| ㄴ per_page | int | Number of items per page |
| ㄴ total_count | int | Total number of records |
| ㄴ total_pages | int | Total number of pages (ceil(total_count / per_page); 0 if total_count = 0) |
| ㄴ list | array | Notice list (array of basic notice information objects; returns [] if no results) |
Response example¶
{
"result_code": 0,
"result_msg": "Success",
"data": {
"pagination": {
"page": 1,
"per_page": 20,
"total_count": 50,
"total_pages": 3
},
"list": [
{
"notice_id": 123,
"status": 1,
"type": "N",
"view_count": 500,
"registrant": "admin",
"top_placed": 1,
"start_time": "2026-03-01 00:00:00",
"end_time": "2026-03-31 23:59:59",
"company_index": 1,
"game_index": 313,
"country_expose_type": "W",
"details": {
"ko": {
"game_name": "테스트게임",
"title": "공지사항 제목",
"content": "공지사항 내용",
"crop_image": "https://example.com/img/123_kor.png"
},
"en": {
"game_name": "TestGame",
"title": "Notice Title",
"content": "Notice Content",
"crop_image": "https://example.com/img/123_eng.png"
}
},
"game_servers": ["server1", "server2"],
"country_codes": ["KR", "US"]
}
]
}
}
Response data details¶
Basic notice information¶
| Field | Type | Description |
|---|---|---|
| notice_id | int | Unique notice ID |
| status | int | Status (1: active; only active notices are returned) |
| type | string | Notice type (see type codes) |
| view_count | int | View count |
| registrant | string | Registrant |
| top_placed | int|null | Pinned to top (1 or higher: pinned, null: not pinned) |
| start_time | string | Display start time (yyyy-MM-dd HH:mm:ss, KST) |
| end_time | string | Display end time (yyyy-MM-dd HH:mm:ss, KST) |
| company_index | int | Company index |
| game_index | int | Game index |
| country_expose_type | string|null | Country exposure type (see country_expose_type codes; default: null) |
| details | object | Language-specific details (see details) |
| game_servers | array | Game server ID list (see game_servers) |
| country_codes | array | Country code list (see country_codes) |
type codes¶
| Code | Description |
|---|---|
I | Info |
C | Maintenance |
U | Update |
N | Notices |
A | Announcement |
E | Event |
D | Error |
country_expose_type codes¶
| Code | Description |
|---|---|
null | No restriction (displayed in all countries) |
W | Whitelist (displayed only in countries included in country_codes) |
B | Blacklist (blocked for countries included in country_codes) |
details¶
details is an object keyed by language code. Only languages registered for the notice are included; returns an empty object ({}) if no details exist.
| Field | Type | Description |
|---|---|---|
| game_name | string | Game name |
| title | string | Notice title |
| content | string | Notice content |
| crop_image | string | Cropped image URL |
Supported language codes¶
| Code | Language |
|---|---|
ko | Korean |
en | English |
ja | Japanese |
zh-hans | Chinese (Simplified) |
zh-hant | Chinese (Traditional) |
de | German |
fr | French |
ru | Russian |
es | Spanish |
pt | Portuguese |
id | Indonesian |
th | Thai |
vi | Vietnamese |
it | Italian |
tr | Turkish |
ar | Arabic |
game_servers¶
- List of game server IDs. Returns an empty array (
[]) if no data is available. - Example:
["server1", "server2", "server3"]
country_codes¶
- List of country codes. Returns an empty array (
[]) if no data is available. - Example:
["KR", "US", "JP"] - Reference: ISO 3166 standard