Skip to main content

Get My Guild

Retrieves the guild information that the user has joined.

Check URL

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

API Information

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

Request Parameters

ParameterTypeRequiredDescription
device_idstringRequiredDevice ID
table_codestringRequiredTable code

Response Data

Guild Information

  • Uid: Guild unique ID
  • Name: Guild name
  • MemberLimit: Member limit
  • MemberCount: Current member count
  • MemberPointType: Member point type
  • AutoJoin: Auto-join option
  • ExtraData: Additional data

Member Information

  • Grade: Member grade (master, manager, member)
  • Point: Member points
  • JoinedAt: Join date and time

Code Example

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

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

// HTTP 요청
TSharedRef<IHttpRequest> Request = FHttpModule::Get().CreateRequest();
Request->SetURL(TEXT("https://service-api.playnanoo.com/guild/v20230101/personal"));
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))
{
const TSharedPtr<FJsonObject>* GuildObject;
const TSharedPtr<FJsonObject>* MemberObject;

if (JsonObject->TryGetObjectField(TEXT("Guild"), GuildObject) &&
JsonObject->TryGetObjectField(TEXT("Member"), MemberObject))
{
FString GuildName = (*GuildObject)->GetStringField(TEXT("Name"));
FString Grade = (*MemberObject)->GetStringField(TEXT("Grade"));

UE_LOG(LogTemp, Log, TEXT("길드 조회 성공!"));
UE_LOG(LogTemp, Log, TEXT("Guild: %s"), *GuildName);
UE_LOG(LogTemp, Log, TEXT("My Grade: %s"), *Grade);
}
}
}
});

Request->ProcessRequest();
}
Authentication Required

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

Check Guild Membership

Use this API to check if the user is currently a member of a guild. If no guild is joined, an error will be returned.

Member Grades

The Grade field can have the following values:

  • "master": Guild master (guild creator)
  • "manager": Guild manager
  • "member": Regular member