길드 기본 기능 v3

안내
  • 길드v3는 길드정보와 길드재화정보를 분리하여 저장하는 구조입니다.

길드 생성

길드를 생성합니다.

  • 뒤끝 콘솔에서 등록한 길드 생성조건에 모두 만족하는 회원만이 길드 생성이 가능합니다.
    길드 생성조건의 기준은, 콘솔설정에서 지정한 테이블, 지정한 파티션의 가장 최신 값으로 판단합니다. 뒤끝 콘솔에 등록한 길드 생성조건이 없으면 모든 회원이 길드 생성이 가능합니다.
주의
  • 길드명은 최소 2자 - 최대 16자이며, 한글, 영문, 숫자 사용가능하며 특수문자는 불가능합니다.
  • 또한 숫자로 시작할 수 없으며, 공백은 가능하나 연속입력 불가, 공백으로 시작하거나 끝날 수 없습니다.
  • 메타정보는 원하는 정보를 저장할 수 있으며, ModifyGuild(Param)을 통해서 메타정보를 추가/수정 가능합니다.
  • 국가코드는 길드 생성 이후 길드마스터가 UpdateCountryCode를 사용하여 추가/수정할 수 있습니다.
  • CountryCode에 대한 정보는 이곳을 참고해주세요.
  • 반드시 유저들의 국가코드에 존재하는 국가만 길드의 국가코드에 등록해야 합니다.
  • 유저들의 국가코드 풀에 해당하지 않는 길드의 국가코드는 콘솔에서 표시되지 않습니다.

동기

// 동기함수의 경우 countryCode가 CountryCode.NONE 으로 초기화 되어 있습니다.
CreateGuildV3(string guildName, int goodsCount, CountryCode countryCode = CountryCode.NONE) -> BackendReturnObject
CreateGuildV3(string guildName, int goodsCount, Param param, CountryCode countryCode = CountryCode.NONE) -> BackendReturnObject

// example
// 메타정보가 없는 경우 
Backend.Social.Guild.CreateGuildV3("guildName", 2, CountryCode.NONE);
// param 에 원하는 메타정보를 입력 (Optional)
Param param = new Param();
param.Add("level",0);
param.Add("buf",1);
Backend.Social.Guild.CreateGuildV3("guildName", 2, param, CountryCode.NONE);

비동기

CreateGuildV3(String guildName, int goodsCount, Function callback) -> void
CreateGuildV3(String guildName, int goodsCount, Param param, Function callback) -> void
CreateGuildV3(String guildName, int goodsCount, CountryCode countryCode, Function callback) -> void
CreateGuildV3(String guildName, int goodsCount, Param param, CountryCode countryCode, Function callback) -> void

// example
Backend.Social.Guild.CreateGuildV3( "guildName", 2, ( callback ) => 
{
    // 이후 처리
});
Backend.Social.Guild.CreateGuildV3( "guildName", 2, param, ( callback ) => 
{
    // 이후 처리
});
Backend.Social.Guild.CreateGuildV3( "guildName", 2, CountryCode.SouthKorea, ( callback ) => 
{
    // 이후 처리
});
Backend.Social.Guild.CreateGuildV3( "guildName", 2, param, CountryCode.SouthKorea, ( callback ) => 
{
    // 이후 처리
});

Parameters

ValueTypeDescription
guildNamestring길드 이름
goodsCountint사용할 길드재화의 갯수 (1~10)
paramParam(Optional) 길드에 관한 메타정보
countryCodeCountryCode(Optional) 국가 정보

Error Cases

  • goodsCount가 10이상인 경우
    statusCode : 400
    errorCode : BadParameterException
    message : bad goodsCount is too big, 잘못된 goodsCount is too big 입니다

  • goodsCount가 0이하인 경우
    statusCode : 400
    errorCode : UndefinedParameterException
    message : undefined goodsCount must be more then 1, goodsCount must be more then 1을(를) 확인할 수 없습니다

  • 콘솔 설정 조건에 맞지 않는 유저가 길드 생성시도한 경우
    statusCode : 403
    errorCode : ForbiddenError
    message : Forbidden createGuild, 금지된 createGuild

  • 중복된 길드명으로 생성시도한 경우
    statusCode : 409
    errorCode : DuplicatedParameterException
    message : Duplicated guildName, 중복된 guildName 입니다

  • 길드명 조건이 맞지 않는 경우
    statusCode : 412
    errorCode : PreconditionFailed
    message : guildName 사전 조건을 만족하지 않습니다.

  • 이미 속해있는 길드가 존재하는 경우
    statusCode : 412
    errorCode : PreconditionFailed
    message : JoinedGamer 사전 조건을 만족하지 않습니다.

나의 길드 정보 받아오기

현재 게이머가 속한 길드의 정보를 반환합니다.
길드에 속해 있지 않은 경우, statusCode 412, errorCode PreconditionFailed을 반환합니다.

v2 버전의 길드와 달리, 길드 굿즈 정보를 반환하지 않습니다.

동기

GetMyGuildInfoV3() -> BackendReturnObject

// example
Backend.Social.Guild.GetMyGuildInfoV3();

비동기

GetMyGuildInfoV3(Function callback) -> void

// example
Backend.Social.Guild.GetMyGuildInfoV3( ( callback ) => 
{
    // 이후 처리
});

Error case

  • Old guild 의 유저가 조회한 경우
    statusCode : 412
    errorCode : PreconditionFailed
    message : guild's version is different 사전 조건을 만족하지 않습니다.

  • guild가 없는 유저가 조회한 경우
    statusCode : 412
    errorCode : PreconditionFailed
    message : notGuildMember 사전 조건을 만족하지 않습니다.

결과값 예시

{
    // 길드 정보
    guild:
    {
        // 길드원 수
        memberCount:{ N: "5" },
        // 부길드마스터 리스트
        viceMasterList:
        {
            L:
            [
                {
                    M:
                    {
                        // 부길드마스터 indate
                        inDate: { S: "2019-02-25T06:29:28.849Z" },
                        // 부길드마스터 닉네임
                        nickname: { S: "id23" }
                    }
                },
                {
                    M:
                    {
                        inDate: { S: "2019-02-25T06:29:27.533Z" },
                        nickname: { S: "id22" }
                    }
                }
            ]
        },
        // 길드마스터 닉네임
        masterNickname: { S: "id24" },
        // 길드의 indate
        inDate: { S: "2019-04-12T07:38:16.522Z" },
        // 길드 명
        guildName: { S: "mumin" },
        // 길드 굿즈 수량
        goodsCount:{ N: "2" },
        // 길드마스터의  indate
        masterInDate: { S: "2019-02-25T06:29:30.022Z" }
        // 즉시가입 여부 (SetRegistrationValueV3를 통해 설정 한 경우만 존재)
        _immediateRegistration: { BOOL: "true"},
        // 국가코드 (국가코드를 추가한 경우에만 존재)
        _countryCode: {S: "KR"}
    }
}

길드 리스트 받아오기

현재 프로젝트 내에 존재하는 길드 리스트를 반환합니다.

동기

GetGuildListV3() -> BackendReturnObject
GetGuildListV3(int limit) -> BackendReturnObject
GetGuildListV3(String firstKey) -> BackendReturnObject
GetGuildListV3(int limit, String firstKey) -> BackendReturnObject

// example
Backend.Social.Guild.GetGuildListV3();
Backend.Social.Guild.GetGuildListV3(5);

// 처음 리스트를 읽을 때, firstkey 값을 저장해 놓은 뒤,
BackendReturnObject bro = Backend.Social.Guild.GetGuildListV3();
String firstKey = bro.FirstKeyString();
// 다음페이지 넘어갈 때 firstKey를 offset으로 하여 다시 읽어옴
Backend.Social.Guild.GetGuildListV3(firstKey);
Backend.Social.Guild.GetGuildListV3(5, firstKey);

비동기

GetGuildListV3(Function callback) -> void
GetGuildListV3(int limit, Function callback) -> void
GetGuildListV3(String firstKey, Function callback) -> void
GetGuildListV3(int limit, String firstKey, Function callback) -> void

// example
Backend.Social.Guild.GetGuildListV3, ( callback ) => 
{
    // 이후 처리
});
Backend.Social.Guild.GetGuildListV3, 5, ( callback ) => 
{
    // 이후 처리
});

// 동기함수와 같은방식으로 firstKey를 저장한 후, 다음 리스트를 불러옴
Backend.Social.Guild.GetGuildListV3( firstKey, ( callback ) => 
{
    // 이후 처리
});
Backend.Social.Guild.GetGuildListV3( 20, firstKey, ( callback ) => 
{
    // 이후 처리
});

Parameters

ValueTypeDescriptiondefault
limitint(Optional) 불러올 길드 리스트의 수100
firstKeyString(Optional) 불러올 길드 리스트의 시작점(offset)

결과값 예시

{ 
    rows:
    [ 
        // new guild (v2, v3버전으로 만들어진 길드)
        {
            // 길드원 수 
            memberCount:{ N: "5" }, 
            // 부길드마스터 리스트 
            viceMasterList: {
                L:[
                    {
                        M:
                        { 
                            // 부길드마스터 indate
                            inDate: { S: "2019-02-25T06:29:28.849Z" }, 
                            // 부길드마스터 닉네임
                            nickname: { S: "id23" } 
                        }
                    },
                    {
                        M: 
                        {
                            inDate: { S: "2019-02-25T06:29:27.533Z" },
                            nickname: { S: "id22"}
                        }
                    }
                ]
            },
            // 길드마스터 닉네임 
            masterNickname: { S: "id24" },
            // 길드의 inDate
            inDate: { S: "2019-04-12T07:38:16.522Z" },
            // 길드명
            guildName: { S: "mumin" },
            // 길드 굿즈 수량
            goodsCount: { N: "2"},
            // 길드 메타 데이터
            buf: { N: "1" },
            // 길드 메타 데이터
            level: { S: "silver" },
            // 즉시가입 여부 (SetRegistrationValueV3를 통해 설정 한 경우만 존재)
            _immediateRegistration: { BOOL: "true"},
            // 국가코드 (국가코드를 추가한 경우에만 존재)
            _countryCode: {S: "KR"}
            // 길드마스터의 inDate
            masterInDate: { S: "2019-02-25T06:29:30.022Z" } 
        },
        // old guild
        { 
            // 길드명
            guildName: { S: "guildName" },
            // 길드의 굿즈1 총량 (기부+사용)
            totalGoods1Amount: { N: "0" }, 
            // 길드의 굿즈2 총량 (기부+사용)
            totalGoods2Amount: { N: "0" }, 
            // 길드의 굿즈3 총량 (기부+사용)
            totalGoods3Amount: { N: "0" }, 
            // 길드원 수 
            memberCount: { N: "2" }, 
            // 부길드마스터 리스트 
            viceMasterList: { 
                L:[
                    {
                        M:{
                            // 부길드 마스터 indate
                            inDate: { S: "2018-07-31T01:19:49.193Z" },
                            // 부길드 마스터 닉네임
                            nickname: { S: "customid1" }
                        }
                    }
                ]
            },
            // 길드 메타 데이터
            buf: { N: "1" },  
            // 길드 마스터 닉네임 
            masterNickname: { S: "masterNickname" }, 
            // 길드의 inDate
            inDate: { S: "2018-07-13T07:04:39.650Z" }, 
            // 길드 메타 데이터
            level: { S: "gold" },  
            // 길드 마스터의 inDate
            masterInDate: { S: "2018-06-25T03:19:01.706Z" } 
        }
    ],
    firstKey: { // 리스트를 페이징 처리하기 위한 offset key (리스트의 끝까지 불러온 경우 리턴되지 않음)
        inDate: { S: "2018-07-13T07:04:39.650Z" } 
    }
}

특정 길드 정보 받아오기

특정 길드의 정보를 반환합니다.

동기

GetGuildInfoV3(String guildIndate) -> BackendReturnObject

// example
Backend.Social.Guild.GetGuildInfoV3("guildIndate");

비동기

GetGuildInfoV3(String guildIndate, Function callback) -> void

// example
Backend.Social.Guild.GetGuildInfoV3( "guildIndate", callback => 
{
    // 이후 처리
});

Parameter

ValueTypeDescription
guildIndateString정보를 받아올 길드의 indate

Error case

  • old guild를 조회한 경우
    statusCode : 412
    errorCode : PreconditionFailed
    message : guild's version is different 사전 조건을 만족하지 않습니다.

결과값 예시

{
    // 길드 정보
    guild:
    {
        // 길드원 수
        memberCount:{ N: "5" },
        // 부길드마스터 리스트
        viceMasterList:
        {
            L:
            [
                {
                    M:
                    {
                        // 부길드마스터 indate
                        inDate: { S: "2019-02-25T06:29:28.849Z" },
                        // 부길드마스터 닉네임
                        nickname: { S: "id23" }
                    }
                },
                {
                    M:
                    {
                        inDate: { S: "2019-02-25T06:29:27.533Z" },
                        nickname: { S: "id22" }
                    }
                }
            ]
        },
        // 길드마스터 닉네임
        masterNickname: { S: "id24" },
        // 길드의 indate
        inDate: { S: "2019-04-12T07:38:16.522Z" },
        // 길드 명
        guildName: { S: "mumin" },
        // 길드 굿즈 수량
        goodsCount:{ N: "2" },
        // 즉시가입 여부 (SetRegistrationValueV3를 통해 설정 한 경우만 존재)
        _immediateRegistration: { BOOL: "true"},
        // 국가코드 (국가코드를 추가한 경우에만 존재)
        _countryCode: {S: "KR"},
        // 길드마스터의  indate
        masterInDate: { S: "2019-02-25T06:29:30.022Z" }
    }
}

길드 멤버 리스트 받아오기

특정 길드의 멤버 리스트를 받아옵니다.

동기

GetGuildMemberListV3(String guildIndate) -> BackendReturnObject
GetGuildMemberListV3(String guildIndate, int limit) -> BackendReturnObject
GetGuildMemberListV3(String guildIndate, String firstKey) -> BackendReturnObject
GetGuildMemberListV3(String guildIndate, int limit, String firstKey) -> BackendReturnObject

// example
Backend.Social.Guild.GetGuildMemberListV3("guildIndate");
Backend.Social.Guild.GetGuildMemberListV3("guildIndate", 5);

// 처음 리스트를 읽을 때, firstkey 값을 저장해 놓은 뒤,
BackendReturnObject bro = Backend.Social.Guild.GetGuildMemberListV3();
String firstKey = bro.FirstKeyString();
// 다음페이지 넘어갈 때 firstKey를 offset으로 하여 다시 읽어옴
Backend.Social.Guild.GetGuildMemberListV3("guildIndate", firstKey);
Backend.Social.Guild.GetGuildMemberListV3("guildIndate", 5, firstKey);

비동기

GetGuildMemberListV3(String guildIndate, Function callback) -> void
GetGuildMemberListV3(String guildIndate, int limit, Function callback) -> void
GetGuildMemberListV3(String guildIndate, String firstKey, Function callback) -> void
GetGuildMemberListV3(String guildIndate, int limit, String firstKey, Function callback) -> void

// example
Backend.Social.Guild.GetGuildMemberListV3( "guildIndate", ( callback ) => 
{
    // 이후 처리
});
Backend.Social.Guild.GetGuildMemberListV3( "guildIndate", 5, ( callback ) => 
{
    // 이후 처리
});
// 동기함수와 같은방식으로 firstKey를 저장한 후, 다음 리스트를 불러옴
Backend.Social.Guild.GetGuildMemberListV3( "guildIndate", firstKey, ( callback ) => 
{
    // 이후 처리
});
Backend.Social.Guild.GetGuildMemberListV3( "guildIndate", 20, firstKey, ( callback ) => 
{
    // 이후 처리
});

Parameters

ValueTypeDescriptiondefault
guildIndatestring길드멤버 리스트를 불러올 길드의 inDate
limitint(Optional) 불러올 길드 멤버 리스트의 수100
firstKeyString(Optional) 불러올 길드 멤버 리스트의 시작점(offset)

결과값 예시

{
    rows:
    [
        // 길드원1
        {
            // 길드원1의 굿즈2 기부(+사용) 총량
            totalGoods2Amount:{ N:"21" },
            // 길드원1의 굿즈3 기부(+사용) 총량
            totalGoods3Amount:{ N:"8" },
            // 길드원1 닉네임
            nickname:{ S:"id2" },
            // 길드원1의 길드 indate (길드 가입 시점)
            inDate:{ S:"2018-11-21T05:42:24.511Z" },
            // 길드원1 indate
            gamerInDate:{ S:"2018-11-08T03:32:18.210Z" },
            // 길드원1 길드 권한 (master/viceMaster/member)
            position:{ S:"master" }
        },
        // 길드원2
        {
            totalGoods2Amount:{ N:"0" },
            totalGoods3Amount:{ N:"0" },
            inDate:{ S:"2018-11-22T05:45:11.638Z" },
            goods1List:{ L:[ ] },
            gamerInDate:{ S:"2018-11-13T01:46:25.323Z" },
            totalGoods1Amount:{ N:"0" },
            goods2List:{ L:[ ] },
            position:{ S:"member" }
        },
    ]
}

길드 가입 요청

특정 길드에 가입을 요청합니다.
콘솔에서 등록한 가입조건을 만족해야 가입 요청이 됩니다. 콘솔에서 등록한 가입조건이 없는 경우, 모든 회원이 가입 요청 가능합니다.
길드 마스터 혹은 부 길드 마스터 승인 이후 길드에 가입됩니다.

동기

ApplyGuildV3 (String guildIndate) -> BackendReturnObject

// example
Backend.Social.Guild.ApplyGuildV3 ("guildIndate");

비동기

ApplyGuildV3 (String guildIndate, Function callback) -> BackendReturnObject

// example
Backend.Social.Guild.ApplyGuildV3( "guildIndate", ( callback ) => 
{
    // 이후 처리
});

Parameter

ValueTypeDescription
guildIndateString가입신청할 길드의 indate

Error cases

  • 콘솔 설정 조건에 맞지 않는 유저가 길드 가입 요청 시도한 경우
    statusCode : 403
    errorCode : ForbiddenError
    message : Forbidden applyGuild, 금지된 applyGuild

  • 이미 가입요청한 길드에 다시 가입요청 한 경우
    statusCode : 409
    errorCode : DuplicatedParameterException
    message : Duplicated alreadyRequestGamer, 중복된 alreadyRequestGamer 입니다

  • 이미 속해있는 길드가 존재하는 경우
    statusCode : 412
    errorCode : PreconditionFailed
    message : JoinedGamer 사전 조건을 만족하지 않습니다.

  • 길드원이 이미 100명이상인 경우
    statusCode : 429
    errorCode : Too Many Request
    message : guild member count 요청 횟수를 초과하였습니다..

길드 탈퇴

현재 가입되어 있는 길드를 탈퇴합니다.
길드 마스터의 경우, 길드원이 하나도 없는 경우 길드 탈퇴가 가능합니다.

동기

WithdrawGuildV3() -> BackendReturnObject

// example
Backend.Social.Guild.WithdrawGuildV3();

비동기

WithdrawGuildV3(Function callback) -> void

// example
Backend.Social.Guild.WithdrawGuildV3( ( callback ) => 
{
    // 이후 처리
});

Error cases

  • 유저가 길드마스터인데 멤버가 남아있는 경우
    statusCode : 412
    errorCode : PreconditionFailed
    message : memberExist 사전 조건을 만족하지 않습니다.

  • 길드에 속하지 않은 유저가 탈퇴시도한 경우
    statusCode : 400
    errorCode : ValidationException
    message : Supplied AttributeValue is empty, must contain exactly one of the supported datatypes

길드에 재화 기부

현재 가입되어 있는 길드에 재화를 기부합니다.
뒤끝은 열가지 종류의 재화를 기부할 수 있도록 허용하고, 이 굿즈의 총량은 길드 생성시 정할 수 있습니다. 그리고 이를 각각 goods1, goods2, goods3 ⋯ goods10으로 명명합니다.

동기

ContributeGoodsV3 (goodsType type, int amount) -> BackendReturnObject

// example
Backend.Social.Guild.ContributeGoodsV3(goodsType.goods1, 20);

비동기

ContributeGoodsV3 (goodsType type, int amount, Function callback) -> void

// example
Backend.Social.Guild.ContributeGoodsV3( goodsType.goods1, 10, (callback) => 
{
    // 이후 처리
});

Parameters

ValueTypeDescription
typegoodsType (enum)기부할 재화의 종류. goodsType.goodsN (N : 1~10)
amountint기부할 금액의 양. 양수만 허용.

Error case

  • amount 가 음수인 경우
    statusCode : 412
    errorCode : PreconditionFailed
    message : type 사전 조건을 만족하지 않습니다.

  • goodsCount 이상의 goodsType에 기부한 경우
    statusCode : 400
    errorCode : BadParameterException
    message : bad goodsType, 잘못된 goodsType 입니다

길드 정보 변경

길드의 메타정보를 변경합니다. 길드명은 변경 불가합니다.

동기

ModifyGuildV3(Param param) -> BackendReturnObject

//example
Param param = new Param();
param.Add("buf",2);
Backend.Social.Guild.ModifyGuildV3(param);

비동기

ModifyGuildV3(Param param, Function callback) -> void

//example
Backend.Social.Guild.ModifyGuildV3( param, ( callback ) =>
{
    // 이후 처리
});

Parameter

ValueTypeDescription
paramParam길드에 관하여 생성/수정할 메타정보

Error case

  • 길드명 변경 시도한 경우
    statusCode : 400
    errorCode : BadParameterException
    message : bad guildName, 잘못된 guildName 입니다

  • 길드에 가입하지 않은 회원이 시도한 경우
    statusCode : 412
    errorCode : PreconditionFailed
    message : subscribed guild 사전 조건을 만족하지 않습니다.

길드명으로 GuildIndate 가져오기

길드명을 통해서 해당길드의 indate를 가져옵니다.

동기

GetGuildIndateByGuildNameV3 (string GuildName) -> BackendReturnObject

// example
Backend.Social.Guild.GetGuildIndateByGuildNameV3("GuildName");

비동기

GetGuildIndateByGuildNameV3 (string GuildName, Function callback) -> void

// example
Backend.Social.Guild.GetGuildIndateByGuildNameV3( "GuildName", ( callback ) => 
{
    // 이후 처리
});

Parameters

ValueTypeDescription
typegoodsType (enum)기부할 재화의 종류. goodsType.goods1 혹은 goodsType.goods2 혹은 goodsType.goods3
amountint기부할 금액의 양. 양수만 허용.

결과값 예시

{
    guildInDate: 
        { S: "2019-03-04T00:29:41.084Z" }
}

Error cases

  • 길드명이 해당되는 길드가 없는 경우
    statusCode : 404
    errorCode : NotFoundException
    message : guild not found, guild을(를) 찾을 수 없습니다

  • 길드명을 입력하지 않은 경우
    statusCode : 404
    errorCode : NotFoundException
    message : Resource not found, Resource을(를) 찾을 수 없습니다

내 길드의 굿즈 내역 가져오기

내가 속한 길드의 굿즈 내역을 가져옵니다.

동기

GetMyGuildGoodsV3 () -> BackendReturnObject

// example
Backend.Social.Guild.GetMyGuildGoodsV3();

비동기

GetMyGuildGoodsV3 (Function callback) -> void

// example
Backend.Social.Guild.GetMyGuildGoodsV3( ( callback ) => 
{
    // 이후 처리
});

결과값 예시

{
    // 굿즈 내역
    goods:{
        // 굿즈 1 기부 + 사용 총량
        totalGoods1Amount:
            { N: "0" },
        // 굿즈 1 기부/사용 유저 리스트
        goods1UserList:
            { L: [ 
                {
                    M:{
                        // 처음으로 굿즈 기부 혹은 사용한 시점
                        inDate:{
                            S: "2018-11-29T02:03:36.816Z"
                        },
                        // 유저 닉네임
                        nickname:{
                            S: "id19"
                        },
                        // 사용한 총 굿즈량 (길드마스터만 존재)
                        usingTotalAmount:{
                            N: "-1"
                        },
                        // 기부한 총 굿즈량
                        totalAmount:{
                            N: "1"
                        },
                        // 마지막 기부 혹은 사용 시점
                        updatedAt: {
                            S: "2019-07-10T07:02:39.223Z"
                        }
                    }
                }
            ] },
        // 굿즈 2 기부 + 사용 총량
        totalGoods2Amount:
            { N: "0" },
        // 굿즈 2 기부/사용 유저 리스트
        goods2UserList:
            { L:[ ] },
        // 굿즈 3 기부 + 사용 총량
        totalGoods3Amount:
            { N: "0" },
        // 굿즈 3 기부/사용 유저 리스트
        goods3UserList:
            { L:[ ] },
        // 굿즈 4 기부 + 사용 총량
        totalGoods4Amount:
            { N: "0" },
        // 굿즈 4 기부/사용 유저 리스트
        goods4UserList:
            { L:[ ] },
        // 굿즈 5 기부 + 사용 총량
        totalGoods5Amount:
            { N: "0" },
        // 굿즈 5 기부/사용 유저 리스트
        goods5UserList:
            { L:[ ] },
        }
    }
}

Error cases

  • 길드에 속하지 않은 경우
    statusCode : 412
    errorCode : PreconditionFailed
    message : notGuildMember 사전 조건을 만족하지 않습니다.

다른 길드의 굿즈 내역 가져오기

길드 InDate를 이용하여 다른 길드의 굿즈 내역을 가져옵니다.

동기

GetGuildGoodsByIndateV3 (String guildIndate) -> BackendReturnObject

// example
Backend.Social.Guild.GetGuildGoodsByIndateV3(guildIndate);

비동기

GetGuildGoodsByIndateV3 (String guildIndate, Function callback) -> void

// example
Backend.Social.Guild.GetGuildGoodsByIndateV3( guildIndate, ( callback ) => 
{
    // 이후 처리
});

결과값 예시

{
    // 굿즈 내역
    goods:{
        // 갱신 시각
        updateAt :
            { S: "2018-11-29T02:03:36.816Z"},
        // 굿즈 1 기부 + 사용 총량
        totalGoods1Amount:
            { N: "0" },
        // 굿즈 1 기부/사용 유저 리스트
        goods1UserList:
            { L: [ 
                {
                    M:{
                        // 처음으로 굿즈 기부 혹은 사용한 시점
                        inDate:{
                            S: "2018-11-29T02:03:36.816Z"
                        },
                        // 유저 닉네임
                        nickname:{
                            S: "id19"
                        },
                        // 사용한 총 굿즈량 (길드마스터만 존재)
                        usingTotalAmount:{
                            N: "-1"
                        },
                        // 기부한 총 굿즈량
                        totalAmount:{
                            N: "1"
                        },
                        // 마지막 기부 혹은 사용 시점
                        updatedAt: {
                            S: "2019-07-10T07:02:39.223Z"
                        }
                    }
                }
            ] },
        // 굿즈 2 기부 + 사용 총량
        totalGoods2Amount:
            { N: "0" },
        // 굿즈 2 기부/사용 유저 리스트
        goods2UserList:
            { L:[ ] },
        // 굿즈 3 기부 + 사용 총량
        totalGoods3Amount:
            { N: "0" },
        // 굿즈 3 기부/사용 유저 리스트
        goods3UserList:
            { L:[ ] },
        // 굿즈 4 기부 + 사용 총량
        totalGoods4Amount:
            { N: "0" },
        // 굿즈 4 기부/사용 유저 리스트
        goods4UserList:
            { L:[ ] },
        // 굿즈 5 기부 + 사용 총량
        totalGoods5Amount:
            { N: "0" },
        // 굿즈 5 기부/사용 유저 리스트
        goods5UserList:
            { L:[ ] },
        }
    }
}

Error cases

  • 존재하지 않는 길드 InDate를 호출하는 경우
    statusCode : 404
    errorCode : NotFoundException
    message : guild not found, guild을(를) 찾을 수 없습니다

  • InDate를 입력하지 않은 경우
    statusCode : 404
    errorCode : NotFoundException
    message : Resource not found, Resource을(를) 찾을 수 없습니다