Skip to main content

Get Guild Join Request List

Retrieves the list of guild join requests.

Check URL

This API uses the service-api.playnanoo.com domain.

API Information

  • URL: https://service-api.playnanoo.com/guild/v20230101/member/request
  • Method: PUT
  • Authentication Required: Yes (Bearer Token)

Request Parameters

ParameterTypeRequiredDescription
device_idstringRequiredDevice ID
table_codestringRequiredTable code
uidstringRequiredGuild UID

Response Data

Request Information Array

  • MemberUuid: Member UUID who requested to join
  • Nickname: Nickname
  • RequestedAt: Request date and time
  • ExtraData: Additional data

Code Example

void UMyGame::GetGuildMemberRequests(const FString& DeviceId, const FString& TableCode, const FString& GuildUid)
{
// 플레이어 정보가 포함된 요청 바디 생성
TSharedPtr<FJsonObject> Body = FPlayNANOOHelper::CreateRequestBody();
Body->SetStringField(TEXT("device_id"), DeviceId);
Body->SetStringField(TEXT("table_code"), TableCode);
Body->SetStringField(TEXT("uid"), GuildUid);

// JSON 문자열 변환
FString JsonBody = FPlayNANOOHelper::ToJsonString(Body);

// HTTP 요청
TSharedRef<IHttpRequest> Request = FHttpModule::Get().CreateRequest();
Request->SetURL(TEXT("https://service-api.playnanoo.com/guild/v20230101/member/request"));
Request->SetVerb(TEXT("PUT"));
FPlayNANOOHelper::SetCommonHeaders(Request, true); // 인증 토큰 포함
Request->SetContentAsString(JsonBody);

Request->OnProcessRequestComplete().BindLambda(
[](FHttpRequestPtr Req, FHttpResponsePtr Res, bool bSuccess)
{
if (bSuccess && Res.IsValid())
{
TSharedPtr<FJsonObject> JsonObject;
TSharedRef<TJsonReader<>> Reader = TJsonReaderFactory<>::Create(Res->GetContentAsString());

if (FJsonSerializer::Deserialize(Reader, JsonObject))
{
int32 Total = JsonObject->GetIntegerField(TEXT("Total"));
const TArray<TSharedPtr<FJsonValue>>* RequestsArray;

if (JsonObject->TryGetArrayField(TEXT("Requests"), RequestsArray))
{
UE_LOG(LogTemp, Log, TEXT("가입 신청 목록 조회 성공! 총 %d개"), Total);

for (const auto& RequestValue : *RequestsArray)
{
TSharedPtr<FJsonObject> RequestObj = RequestValue->AsObject();
FString Nickname = RequestObj->GetStringField(TEXT("Nickname"));
FString RequestedAt = RequestObj->GetStringField(TEXT("RequestedAt"));

UE_LOG(LogTemp, Log, TEXT("Request from: %s at %s"), *Nickname, *RequestedAt);
}
}
}
}
});

Request->ProcessRequest();
}
Authentication Required

This API requires Bearer token authentication. You must first log in to obtain an access token.

Permission Required

This API can only be called by guild masters or administrators. Regular members will receive a permission error.

Auto-Join Guilds

If auto_join was set to "Y" during guild creation, join requests are automatically approved, so this list will always be empty.

Pending List

Join requests remain in this list until they are approved or rejected. It is recommended to check and process them regularly.