유저
사용자 참여 채널 조회 및 사용자 차단 목록 조회, 사용자 차단 및 차단 해제를 위한 API 사용 방법을 안내합니다.
사용자 참여 채널 조회 API
사용자가 참여 중인 채널 중에서 1:1 채널(ONE_ON_ONE)을 제외한 채널 목록을 조회합니다.
Request URL
| 서버 | URL |
| LIVE | https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/channels |
| SANDBOX | https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/channels |
| HTTP METHOD | GET |
Path parameters
| 필드명 | 설명 | 타입 | 필수 여부 |
| gameIndex | Hive 게임 인덱스 | integer | Y |
| playerId | Player ID | long | Y |
| 필드명 | 설명 | 타입 | 필수 여부 |
| X-Access-Token | 앱 서버 인증을 위한 OAuth 2.0 Access Token (OAuth Token 발급하기 참고) | string | Y |
Response body
| 필드명 | 설명 | 타입 |
| code | 응답 결과 코드 | integer |
| message | 결과 메시지 | string |
| data | 응답 데이터 | object |
| token_validation | JWT 검증 결과 (공통 응답 참고) | object |
Response body > data
| 필드명 | 설명 | 타입 |
| gameIndex | Hive 게임 인덱스 | integer |
| playerId | Player ID | long |
| channels | 채널 목록 | object array |
Response body > data > channels
| 필드명 | 설명 | 타입 |
| channelId | 채널 ID | string |
| type | 채널 타입 (PRIVATE, PUBLIC, GROUP) | string |
| gameIndex | Hive 게임 인덱스 | integer |
| owner | 채널 소유자 | string |
| channelName | 채널 이름 | string |
| memberCount | 현재 채널 참여 인원 | integer |
| maxMemberCount | 최대 채널 참여 인원 | integer |
| chatHistoryAllowed | 메시지 이력 조회 가능 여부 | boolean |
| regTime | 채널 생성 일시 (UTC+0 기준, yyyy-MM-dd'T'HH:mm:ss.SSSZ 형식) | string |
| regTimeMillis | 채널 생성 일시 (UnixTimestamp Millisecond) | long |
Request sample
curl --request GET 'https://sandbox-api-chat.withhive.com/api/v1/games/1/users/1001/channels' \
--header 'X-Access-Token: eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6InByb2plY3RfYWJjMTIzIn0...'
Response sample
{
"code": 0,
"message": "Success.",
"data": {
"gameIndex": 1,
"playerId": 1001,
"channels": [
{
"channelId": "guild:12345",
"type": "GROUP",
"gameIndex": 1,
"owner": "1000",
"channelName": "길드 채팅방",
"memberCount": 1,
"maxMemberCount": 50,
"chatHistoryAllowed": true,
"regTime": "2023-12-19T15:01:01.004Z",
"regTimeMillis": 1731306364351
},
{
"channelId": "open:67890",
"type": "PUBLIC",
"gameIndex": 1,
"owner": "SYSTEM",
"channelName": "오픈 채팅방",
"memberCount": 2,
"maxMemberCount": 100,
"chatHistoryAllowed": true,
"regTime": "2023-12-20T10:15:30.123Z",
"regTimeMillis": 1731302348750
}
// ... 채널
]
},
"token_validation": {
"result_code": 0,
"result_msg": "success"
}
}
사용자 차단 API
사용자를 차단하여 실시간 메시지 전송과 수신을 제한합니다.
사용자 차단 후 채널 및 메시지 동작 방식은 아래와 같이 변경됩니다.
- 차단된 사용자로부터 1:1 채널(
ONE_ON_ONE) 초대를 받을 수 있습니다. - 이는 차단된 상대에게 차단 여부를 알리지 않기 위함입니다.
- 차단된 사용자로부터 채팅 메시지와 채널 입장 및 퇴장에 대한 이벤트 메시지를 수신하지 않습니다.
- 차단된 사용자에게 메시지를 전송할 수 없습니다.
Request URL
| 서버 | URL |
| LIVE | https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/block/{blockPlayerId} |
| SANDBOX | https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/block/{blockPlayerId} |
| HTTP METHOD | POST |
Path parameters
| 필드명 | 설명 | 타입 | 필수 여부 |
| gameIndex | Hive 게임 인덱스 | string | Y |
| playerId | 차단한 사용자의 Player ID | long | Y |
| blockPlayerId | 차단된 사용자의 Player ID | long | Y |
| 필드명 | 설명 | 타입 | 필수 여부 |
| X-Access-Token | 앱 서버 인증을 위한 OAuth 2.0 Access Token (OAuth Token 발급하기 참고) | string | Y |
Response body
| 필드명 | 설명 | 타입 |
| code | 응답 결과 코드 | integer |
| message | 결과 메시지 | string |
| token_validation | JWT 검증 결과 (공통 응답 참고) | object |
Request sample
curl --request POST 'https://sandbox-api-chat.withhive.com/api/v1/games/1/users/1001/block/1002' \
--header 'X-Access-Token: eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6InByb2plY3RfYWJjMTIzIn0...'
Response sample
{
"code": 0,
"message": "Success.",
"token_validation": {
"result_code": 0,
"result_msg": "success"
}
}
사용자 차단 목록 조회
특정 사용자에 의해 차단된 사용자 목록을 조회합니다.
Request URL
| 서버 | URL |
| LIVE | https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/blocks |
| SANDBOX | https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/blocks |
| HTTP METHOD | GET |
Path parameters
| 필드명 | 설명 | 타입 | 필수 여부 |
| gameIndex | Hive 게임 인덱스 | string | Y |
| playerId | 차단한 사용자의 Player ID | long | Y |
| 필드명 | 설명 | 타입 | 필수 여부 |
| X-Access-Token | 앱 서버 인증을 위한 OAuth 2.0 Access Token (OAuth Token 발급하기 참고) | string | Y |
Response body
| 필드명 | 설명 | 타입 |
| code | 응답 결과 코드 | integer |
| message | 결과 메시지 | string |
| data | 응답 데이터 | object |
| token_validation | JWT 검증 결과 (공통 응답 참고) | object |
Response body > data
| 필드명 | 설명 | 타입 |
| gameIndex | Hive 게임 인덱스 | integer |
| playerId | 차단한 사용자의 Player ID | long |
| blockedUsers | 차단된 사용자 정보 목록 | object array |
Response body > data > blockedUsers
| 필드명 | 설명 | 타입 |
| blockedPlayerId | 차단된 사용자의 Player ID | long |
| blockedTime | 차단된 일시 (UTC+0 기준, yyyy-MM-dd'T'HH:mm:ss.SSSZ 형식) | string |
| blockedTimeMillis | 차단된 시각 (UnixTimestamp Millisecond) | long |
Request sample
curl --request GET 'https://sandbox-api-chat.withhive.com/api/v1/games/1/users/1001/blocks' \
--header 'X-Access-Token: eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6InByb2plY3RfYWJjMTIzIn0...'
Response sample
{
"code": 0,
"message": "Success.",
"data": {
"gameIndex": 1,
"playerId": 1001,
"blockedUsers": [
{
"blockedPlayerId": 1002,
"blockedTime": "2023-12-20T10:15:30.123Z",
"blockedTimeMillis": 1739329550811
},
{
"blockedPlayerId": 1003,
"blockedTime": "2023-12-21T08:45:12.456Z",
"blockedTimeMillis": 1739329553137
},
// ... 차단 목록
]
},
"token_validation": {
"result_code": 0,
"result_msg": "success"
}
}
사용자 차단 해제
사용자 차단을 해제합니다.
Request URL
| 서버 | URL |
| LIVE | https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/block/{blockedPlayerId} |
| SANDBOX | https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/block/{blockedPlayerId} |
| HTTP METHOD | DELETE |
Path parameters
| 필드명 | 설명 | 타입 | 필수 여부 |
| gameIndex | Hive 게임 인덱스 | string | Y |
| playerId | Player ID | long | Y |
| blockedPlayerId | 차단을 해제할 사용자의 Player ID | long | Y |
| 필드명 | 설명 | 타입 | 필수 여부 |
| X-Access-Token | 앱 서버 인증을 위한 OAuth 2.0 Access Token (OAuth Token 발급하기 참고) | string | Y |
Response body
| 필드명 | 설명 | 타입 |
| code | 응답 결과 코드 | integer |
| message | 결과 메시지 | string |
| token_validation | JWT 검증 결과 (공통 응답 참고) | object |
Request sample
curl --request DELETE 'https://sandbox-api-chat.withhive.com/api/v1/games/1/users/1001/block/1002' \
--header 'X-Access-Token: eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6InByb2plY3RfYWJjMTIzIn0...'
Response sample
{
"code": 0,
"message": "Success.",
"token_validation": {
"result_code": 0,
"result_msg": "success"
}
}