Skip to main content
Version: 5.11.8

GetGuildListV3

public BackendReturnObject GetGuildListV3();
public BackendReturnObject GetGuildListV3(int limit);
public BackendReturnObject GetGuildListV3(string firstKey);
public BackendReturnObject GetGuildListV3(int limit, string firstKey);

Parameters

ValueTypeDescriptiondefault
limitint(Optional) Number of guild lists to be loaded100
firstKeystring(Optional) Starting point of guild list to be loaded(offset)-

Description

Looks up all guild lists.
The guild list is returned with the metadata of each guild.

Example

Synchronous

Backend.Guild.GetGuildListV3();
Backend.Guild.GetGuildListV3(5);

// When reading the first list, stores the firstkey value,
BackendReturnObject bro = Backend.Guild.GetGuildListV3();
String firstKey = bro.FirstKeyString();
// and reads it again when moving to the next page by setting firstKey as an offset.
Backend.Guild.GetGuildListV3(firstKey);
Backend.Guild.GetGuildListV3(5, firstKey);

Asynchronous

Backend.Guild.GetGuildListV3((callback) => 
{
// Post-process
});
Backend.Guild.GetGuildListV3(5, (callback) =>
{
// Post-process
});

// Stores firstKey the same way as the synchronous method, and loads the next list
Backend.Guild.GetGuildListV3(firstKey, (callback) =>
{
// Post-process
});
Backend.Guild.GetGuildListV3(20, firstKey, (callback) =>
{
// Post-process
});

SendQueue

SendQueue.Enqueue(Backend.Guild.GetGuildListV3, (callback) => 
{
// Post-process
});
SendQueue.Enqueue(Backend.Guild.GetGuildListV3, 5, (callback) =>
{
// Post-process
});

// Stores firstKey the same way as the synchronous method, and loads the next list
SendQueue.Enqueue(Backend.Guild.GetGuildListV3, firstKey, (callback) =>
{
// Post-process
});
SendQueue.Enqueue(Backend.Guild.GetGuildListV3, 20, firstKey, (callback) =>
{
// Post-process
});

Return cases

Success cases

When the lookup is successful
statusCode : 200

returnValue : refer to GetReturnValuetoJSON

GetReturnValuetoJSON

{ 
rows:
[
// new guild(guilds made with versions v2 and v3)
{
// Number of guild members
memberCount:{ N: "5" },
// Vice guild master list
viceMasterList: {
L:[
{
M:
{
// Vice guild master indate
inDate: { S: "2019-02-25T06:29:28.849Z" },
// Vice guild master's nickname
nickname: { S: "id23" }
}
},
{
M:
{
inDate: { S: "2019-02-25T06:29:27.533Z" },
nickname: { S: "id22"}
}
}
]
},
// Guild master's nickname
masterNickname: { S: "id24" },
// Guild inDate
inDate: { S: "2019-04-12T07:38:16.522Z" },
// Guild name
guildName: { S: "mumin" },
// Amount of guild goods
goodsCount: { N: "2"},
// Guild metadata
buf: { N: "1" },
// Guild metadata
level: { S: "silver" },
// Quick join status(Only exists when set through SetRegistrationValueV3)
_immediateRegistration: { BOOL: "true"},
// Country code(Only exists when country code is added)
_countryCode: {S: "KR"}
// Guild master inDate
masterInDate: { S: "2019-02-25T06:29:30.022Z" }
},
// old guild
{
// Guild name
guildName: { S: "guildName" },
// Total amount of guild goods 1(contribution + use)
totalGoods1Amount: { N: "0" },
// Total amount of guild goods 2(contribution + use)
totalGoods2Amount: { N: "0" },
// Total amount of guild goods 3(contribution + use)
totalGoods3Amount: { N: "0" },
// Number of guild members
memberCount: { N: "2" },
// Vice guild master list
viceMasterList: {
L:[
{
M:{
// Vice guild master indate
inDate: { S: "2018-07-31T01:19:49.193Z" },
// Vice guild master's nickname
nickname: { S: "customid1" }
}
}
]
},
// Guild metadata
buf: { N: "1" },
// Guild master's nickname
masterNickname: { S: "masterNickname" },
// Guild inDate
inDate: { S: "2018-07-13T07:04:39.650Z" },
// Guild metadata
level: { S: "gold" },
// Guild master inDate
masterInDate: { S: "2018-06-25T03:19:01.706Z" }
}
],
firstKey: { // Offset key for the list's paging process(not returned if the entire list is loaded)
inDate: { S: "2018-07-13T07:04:39.650Z" }
}
}

Sample code

public class GuildItem
{
public int memberCount;
public Dictionary<string, string> viceMasterList = new Dictionary<string, string>();
public string masterNickname;
public string inDate;
public string guildName;
public int goodsCount;
public bool _immediateRegistration;
public string _countryCode;
public string masterInDate;
public override string ToString()
{
string viceMasterString = string.Empty;
foreach(var li in viceMasterList)
{
viceMasterString += $"Vice guild master : {li.Value}({li.Key})\n";
}
return $"memberCount : {memberCount}\n" +
$"masterNickname : {masterNickname}\n" +
$"inDate : {inDate}\n" +
$"guildName : {guildName}\n" +
$"goodsCount : {goodsCount}\n" +
$"_immediateRegistration : {_immediateRegistration}\n" +
$"_countryCode : {_countryCode}\n" +
$"masterInDate : {masterInDate}\n" +
$"memberCount : {memberCount}\n" +
viceMasterString;
}
};
public void GetGuildListV3()
{
var bro = Backend.Guild.GetGuildListV3();

if(!bro.IsSuccess())
return;

LitJson.JsonData json = bro.FlattenRows();

List<GuildItem> guildList = new List<GuildItem>();

for(int i = 0; i < json.Count; i++)
{
GuildItem guildItem = new GuildItem();

guildItem.memberCount = int.Parse(json[i]["memberCount"].ToString());
guildItem.masterNickname = json[i]["masterNickname"].ToString();
guildItem.inDate = json[i]["inDate"].ToString();
guildItem.guildName = json[i]["guildName"].ToString();
guildItem.goodsCount = int.Parse(json[i]["goodsCount"].ToString());
if(json[i].ContainsKey("_immediateRegistration"))
{
guildItem._immediateRegistration = json[i]["_immediateRegistration"].ToString() == "true" ? true : false;
}
if(json[i].ContainsKey("_countryCode"))
{
guildItem._countryCode = json[i]["_countryCode"].ToString();
}
guildItem.masterInDate = json[i]["masterInDate"].ToString();
LitJson.JsonData viceListJson = json[i]["viceMasterList"];
for(int j = 0; j < viceListJson.Count; j++)
{
guildItem.viceMasterList.Add(viceListJson[j]["inDate"].ToString(), viceListJson[j]["nickname"].ToString());
}

guildList.Add(guildItem);
Debug.Log(guildItem.ToString());
}
}