Skip to main content

Search Guild

Searches for guilds by name.

Check URL

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

API Information

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

Request Parameters

ParameterTypeRequiredDescription
device_idstringRequiredDevice ID
table_codestringRequiredTable code
namestringRequiredGuild name to search

Response Data

Items Array

  • TableCode: Table code
  • Uid: Guild unique ID
  • Name: Guild name
  • Point: Guild points
  • MasterUuid: Master user ID
  • MasterNickname: Master nickname
  • Country: Guild country code
  • MemberCount: Member count
  • MemberLimit: Maximum member limit
  • AutoJoin: Auto-join availability
  • ExtraData: Additional data
  • InDate: Guild creation date

Code Example

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

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

// HTTP 요청
TSharedRef<IHttpRequest> Request = FHttpModule::Get().CreateRequest();
Request->SetURL(TEXT("https://service-api.playnanoo.com/guild/v20230101/search/name"));
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 TArray<TSharedPtr<FJsonValue>>* ItemsArray;
if (JsonObject->TryGetArrayField(TEXT("Items"), ItemsArray))
{
UE_LOG(LogTemp, Log, TEXT("길드 검색 성공! 총 %d개"), ItemsArray->Num());

for (const auto& ItemValue : *ItemsArray)
{
TSharedPtr<FJsonObject> Item = ItemValue->AsObject();
FString Name = Item->GetStringField(TEXT("Name"));
FString Uid = Item->GetStringField(TEXT("Uid"));

UE_LOG(LogTemp, Log, TEXT("Guild: %s (UID: %s)"), *Name, *Uid);
}
}
}
}
});

Request->ProcessRequest();
}
Authentication Required

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

Search Results

This API searches for guilds that exactly match the entered name. It is an exact match search, not a partial match search.