API Reference of GS2-Lottery SDK
Model
Namespace
Namespace
Namespace is a mechanism that allows multiple uses of the same service for different purposes within a single project.
Basically, GS2 services have a layer called namespace, and different namespaces are treated as completely different data spaces, even for the same service.
Therefore, it is necessary to create a namespace before starting to use each service.
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceId | string | | ✓ | | ~ 1024 chars | Namespace GRN |
name | string | | ✓ | | ~ 32 chars | Namespace name |
description | string | | | | ~ 1024 chars | description of Namespace |
transactionSetting | TransactionSetting | | ✓ | | | Transaction settings |
lotteryTriggerScriptId | string | | | | ~ 1024 chars | GS2-Script scripts to be called when the lottery is executed |
choicePrizeTableScriptId | string | | | | ~ 1024 chars | GS2-Script script for dynamically determining lottery probability tables |
logSetting | LogSetting | | | | | Log output settings |
createdAt | long | | ✓ | | | Datetime of creation |
updatedAt | long | | ✓ | | | Datetime of last update |
queueNamespaceId | string | | | | ~ 1024 chars | Namespace in GS2-JobQueue used to run the stamp sheet |
keyId | string | | | | ~ 1024 chars | GS2-Key namespace used to issue stamp sheets |
revision | long | | | 0 | ~ 9223372036854775805 | Revision |
LotteryModelMaster
Lottery Model Master
The Lottery Model Master is the entity that defines the emission method and emission rate in Lottery.
There are two types of emission methods: the normal lottery method draws lots with a fixed probability each time, and the rate of emission is determined by the number of lots drawn.
The box lottery is a lottery method in which a predefined number of prizes are placed in a box and the prizes are removed from the box each time the lottery is drawn.
The lottery process uses an ejection probability table.
GS2-Script can be used to replace a part of the ejection probability table with a different table when multiple drawings are performed.
By using this mechanism, it is possible to apply a different lottery probability table only once in a 10-round gacha.
| Type | Condition | Require | Default | Limitation | Description |
---|
lotteryModelId | string | | ✓ | | ~ 1024 chars | Lottery Model Master GRN |
name | string | | ✓ | | ~ 128 chars | Lottery Model Name |
metadata | string | | | | ~ 128 chars | metadata |
description | string | | | | ~ 1024 chars | description of Namespace |
mode | enum [’normal’, ‘box’] | | ✓ | | ~ 128 chars | Drawing mode |
method | enum [‘prize_table’, ‘script’] | | ✓ | | ~ 128 chars | Lottery Method |
prizeTableName | string | {method} == “prize_table” | ✓ | | ~ 128 chars | Name of prize table |
choicePrizeTableScriptId | string | {method} == “script” | ✓ | | ~ 1024 chars | GS2-Script script to determine the emission probability table |
createdAt | long | | ✓ | | | Datetime of creation |
updatedAt | long | | ✓ | | | Datetime of last update |
revision | long | | | 0 | ~ 9223372036854775805 | Revision |
PrizeTableMaster
Prize Table Master
The prize can be a stamp sheet reward or a further emission probability table.
By nesting the emission probability tables, a table that draws for SSR/SR/R rarity can be passed through the table.
The second tier can be set up to draw for specific content.
In this way, it is easier to adjust the overall emission probability of each rarity.
| Type | Condition | Require | Default | Limitation | Description |
---|
prizeTableId | string | | ✓ | | ~ 1024 chars | Prize Table Master GRN |
name | string | | ✓ | | ~ 128 chars | Prize Table Name |
metadata | string | | | | ~ 128 chars | metadata |
description | string | | | | ~ 1024 chars | description of Namespace |
prizes | List<Prize> | | ✓ | | | List of Prize |
createdAt | long | | ✓ | | | Datetime of creation |
updatedAt | long | | ✓ | | | Datetime of last update |
revision | long | | | 0 | ~ 9223372036854775805 | Revision |
LotteryModel
Lottery Model
The Lottery Model is the entity that defines the emission method and emission rate in Lottery.
There are two types of emission methods: the normal lottery method draws lots with a fixed probability each time, and the rate of emission is determined by the number of lots drawn.
The box lottery is a lottery method in which a predefined number of prizes are placed in a box and the prizes are removed from the box each time the lottery is drawn.
The lottery process uses an ejection probability table.
GS2-Script can be used to replace a part of the ejection probability table with a different table when multiple drawings are performed.
By using this mechanism, it is possible to apply a different lottery probability table only once in a 10-round gacha.
| Type | Condition | Require | Default | Limitation | Description |
---|
lotteryModelId | string | | ✓ | | ~ 1024 chars | Prize Table GRN |
name | string | | ✓ | | ~ 128 chars | Lottery Model Name |
metadata | string | | | | ~ 128 chars | metadata |
mode | enum [’normal’, ‘box’] | | ✓ | | ~ 128 chars | Drawing mode |
method | enum [‘prize_table’, ‘script’] | | ✓ | | ~ 128 chars | Lottery Method |
prizeTableName | string | {method} == “prize_table” | ✓ | | ~ 128 chars | Name of prize table |
choicePrizeTableScriptId | string | {method} == “script” | ✓ | | ~ 1024 chars | GS2-Script script to determine the emission probability table |
PrizeTable
Prize Table
The prize can be either a stamp sheet reward or a further emission probability table.
By nesting the emission probability tables, a table that draws for SSR/SR/R rarity can be passed through the table.
The second tier can be set up to draw for specific content.
In this way, it is easier to adjust the overall emission probability of each rarity.
| Type | Condition | Require | Default | Limitation | Description |
---|
prizeTableId | string | | ✓ | | ~ 1024 chars | Prize Table GRN |
name | string | | ✓ | | ~ 128 chars | Name of prize table |
metadata | string | | | | ~ 128 chars | metadata |
prizes | List<Prize> | | ✓ | | | List of Prizes |
Probability
| Type | Condition | Require | Default | Limitation | Description |
---|
prize | DrawnPrize | | ✓ | | | Type of prize |
rate | float | | ✓ | | ~ 1.0 | Emission probability (0.0-1.0) |
CurrentLotteryMaster
Currently available master data
GS2 uses JSON format files for master data management.
By uploading the file, you can actually reflect the settings on the server.
We provide a master data editor on the management console as a way to create JSON files, but you can also create JSON files using the
The service can also be used by creating a tool more appropriate for game management and exporting a JSON file in the appropriate format.
Please refer to the documentation for the format of the JSON file.
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceId | string | | ✓ | | ~ 1024 chars | Namespace GRN |
settings | string | | ✓ | | ~ 5242880 chars | Master data |
Prize
| Type | Condition | Require | Default | Limitation | Description |
---|
prizeId | string | | ✓ | UUID | ~ 36 chars | Prize ID |
type | enum [‘action’, ‘prize_table’] | | ✓ | | ~ 128 chars | Type of prize |
acquireActions | List<AcquireAction> | {type} == “action” | ✓ | [] | | List of Acquire Action |
drawnLimit | int | {type} == “action” | | | 1 ~ 100000 | Maximum number of draws |
limitFailOverPrizeId | string | {type} == “action” and {drawnLimit} > 0 | ✓ | | ~ 32 chars | Prize ID to be discharged instead when the maximum number of drawn has been reached. |
prizeTableName | string | {type} == “prize_table” | ✓ | | ~ 128 chars | Name of prize table |
weight | int | | ✓ | | 1 ~ 2147483646 | Emission Weight |
PrizeLimit
PrizeLimit
| Type | Condition | Require | Default | Limitation | Description |
---|
prizeLimitId | string | | ✓ | | ~ 1024 chars | Prize Limit GRN |
prizeId | string | | ✓ | | ~ 36 chars | Name of prize table |
drawnCount | int | | ✓ | | ~ 2147483646 | Number of drawn |
createdAt | long | | ✓ | | | Datetime of creation |
updatedAt | long | | ✓ | | | Datetime of last update |
revision | long | | | 0 | ~ 9223372036854775805 | Revision |
DrawnPrize
| Type | Condition | Require | Default | Limitation | Description |
---|
prizeId | string | | ✓ | | ~ 36 chars | Prize ID |
acquireActions | List<AcquireAction> | | | | | List of Acquire Actions |
BoxItem
| Type | Condition | Require | Default | Limitation | Description |
---|
acquireActions | List<AcquireAction> | | | | | List of Acquire Action |
remaining | int | | ✓ | | ~ 2147483646 | Remaining quantity |
initial | int | | ✓ | | ~ 2147483646 | Initial quantity |
BoxItems
| Type | Condition | Require | Default | Limitation | Description |
---|
boxId | string | | ✓ | | ~ 1024 chars | Box GRN |
prizeTableName | string | | ✓ | | ~ 128 chars | Prize Table Name |
userId | string | | ✓ | | ~ 128 chars | User Id |
items | List<BoxItem> | | | | | List of Items taken out of the box |
AcquireAction
| Type | Condition | Require | Default | Limitation | Description |
---|
action | enum [] | | ✓ | | ~ 128 chars | Types of actions to be performed in the stamp sheet |
request | string | | ✓ | | ~ 1048576 chars | JSON of request |
Config
| Type | Condition | Require | Default | Limitation | Description |
---|
key | string | | ✓ | | ~ 64 chars | Name |
value | string | | | | ~ 51200 chars | Value |
GitHubCheckoutSetting
| Type | Condition | Require | Default | Limitation | Description |
---|
apiKeyId | string | | ✓ | | ~ 1024 chars | GitHub API key GRN |
repositoryName | string | | ✓ | | ~ 1024 chars | Repository Name |
sourcePath | string | | ✓ | | ~ 1024 chars | Source code file path |
referenceType | enum [‘commit_hash’, ‘branch’, ’tag’] | | ✓ | | ~ 128 chars | Source of code |
commitHash | string | {referenceType} == “commit_hash” | ✓ | | ~ 1024 chars | Commit hash |
branchName | string | {referenceType} == “branch” | ✓ | | ~ 1024 chars | Branch Name |
tagName | string | {referenceType} == “tag” | ✓ | | ~ 1024 chars | Tag Name |
LogSetting
| Type | Condition | Require | Default | Limitation | Description |
---|
loggingNamespaceId | string | | ✓ | | ~ 1024 chars | Namespace GRN |
TransactionSetting
| Type | Condition | Require | Default | Limitation | Description |
---|
enableAutoRun | bool | | ✓ | false | | Automatically run issued stamp sheets on the server side, or |
distributorNamespaceId | string | {enableAutoRun} | ✓ | | ~ 1024 chars | GS2-Distributor namespace used for stamp sheet execution |
keyId | string | !{enableAutoRun} | ✓ | | ~ 1024 chars | GS2-Key encryption key used to sign the stamp sheet |
queueNamespaceId | string | | | | ~ 1024 chars | Namespace in GS2-JobQueue used to run the stamp sheet |
Methods
describeNamespaces
Get list of namespaces
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
pageToken | string | | | | ~ 1024 chars | Token specifying the position from which to start acquiring data |
limit | int | | ✓ | 30 | 1 ~ 1000 | Number of data acquired |
Result
| Type | Description |
---|
items | List<Namespace> | List of Namespace |
nextPageToken | string | Page token to retrieve the rest of the listing |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.DescribeNamespaces(
&lottery.DescribeNamespacesRequest {
PageToken: nil,
Limit: nil,
}
)
if err != nil {
panic("error occurred")
}
items := result.Items
nextPageToken := result.NextPageToken
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\DescribeNamespacesRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->describeNamespaces(
(new DescribeNamespacesRequest())
->withPageToken(null)
->withLimit(null)
);
$items = $result->getItems();
$nextPageToken = $result->getNextPageToken();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.DescribeNamespacesRequest;
import io.gs2.lottery.result.DescribeNamespacesResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
DescribeNamespacesResult result = client.describeNamespaces(
new DescribeNamespacesRequest()
.withPageToken(null)
.withLimit(null)
);
List<Namespace> items = result.getItems();
String nextPageToken = result.getNextPageToken();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.DescribeNamespacesRequest;
using Gs2.Gs2Lottery.Result.DescribeNamespacesResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.DescribeNamespacesResult> asyncResult = null;
yield return client.DescribeNamespaces(
new Gs2.Gs2Lottery.Request.DescribeNamespacesRequest()
.WithPageToken(null)
.WithLimit(null),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var items = result.Items;
var nextPageToken = result.NextPageToken;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.describeNamespaces(
new Gs2Lottery.DescribeNamespacesRequest()
.withPageToken(null)
.withLimit(null)
);
const items = result.getItems();
const nextPageToken = result.getNextPageToken();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.describe_namespaces(
lottery.DescribeNamespacesRequest()
.with_page_token(None)
.with_limit(None)
)
items = result.items
next_page_token = result.next_page_token
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.describe_namespaces({
pageToken=nil,
limit=nil,
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
items = result.items;
nextPageToken = result.nextPageToken;
createNamespace
Create a new namespace
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
name | string | | ✓ | | ~ 32 chars | Namespace name |
description | string | | | | ~ 1024 chars | description of Namespace |
transactionSetting | TransactionSetting | | ✓ | | | Transaction settings |
lotteryTriggerScriptId | string | | | | ~ 1024 chars | GS2-Script scripts to be called when the lottery is executed |
choicePrizeTableScriptId | string | | | | ~ 1024 chars | GS2-Script script for dynamically determining lottery probability tables |
logSetting | LogSetting | | | | | Log output settings |
queueNamespaceId | string | | | | ~ 1024 chars | Namespace in GS2-JobQueue used to run the stamp sheet |
keyId | string | | | | ~ 1024 chars | GS2-Key namespace used to issue stamp sheets |
Result
| Type | Description |
---|
item | Namespace | Namespace created |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.CreateNamespace(
&lottery.CreateNamespaceRequest {
Name: pointy.String("namespace1"),
Description: nil,
TransactionSetting: &lottery.TransactionSetting{
EnableAutoRun: pointy.Bool(false),
QueueNamespaceId: pointy.String("grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0001"),
KeyId: pointy.String("grn:gs2:ap-northeast-1:YourOwnerId:key:namespace1:key:key-0001"),
},
LotteryTriggerScriptId: nil,
ChoicePrizeTableScriptId: nil,
LogSetting: &lottery.LogSetting{
LoggingNamespaceId: pointy.String("grn:gs2:ap-northeast-1:YourOwnerId:log:namespace1"),
},
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\CreateNamespaceRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->createNamespace(
(new CreateNamespaceRequest())
->withName(self::namespace1)
->withDescription(null)
->withTransactionSetting((new \Gs2\Lottery\Model\TransactionSetting())
->withEnableAutoRun(False)
->withQueueNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0001")
->withKeyId("grn:gs2:ap-northeast-1:YourOwnerId:key:\namespace1:key:key-0001"))
->withLotteryTriggerScriptId(null)
->withChoicePrizeTableScriptId(null)
->withLogSetting((new \Gs2\Lottery\Model\LogSetting())
->withLoggingNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:log:\namespace1"))
);
$item = $result->getItem();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.CreateNamespaceRequest;
import io.gs2.lottery.result.CreateNamespaceResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
CreateNamespaceResult result = client.createNamespace(
new CreateNamespaceRequest()
.withName("namespace1")
.withDescription(null)
.withTransactionSetting(new io.gs2.lottery.model.TransactionSetting()
.withEnableAutoRun(false)
.withQueueNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0001")
.withKeyId("grn:gs2:ap-northeast-1:YourOwnerId:key:namespace1:key:key-0001"))
.withLotteryTriggerScriptId(null)
.withChoicePrizeTableScriptId(null)
.withLogSetting(new io.gs2.lottery.model.LogSetting()
.withLoggingNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:log:namespace1"))
);
Namespace item = result.getItem();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.CreateNamespaceRequest;
using Gs2.Gs2Lottery.Result.CreateNamespaceResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.CreateNamespaceResult> asyncResult = null;
yield return client.CreateNamespace(
new Gs2.Gs2Lottery.Request.CreateNamespaceRequest()
.WithName("namespace1")
.WithDescription(null)
.WithTransactionSetting(new Gs2.Gs2Lottery.Model.TransactionSetting()
.WithEnableAutoRun(false)
.WithQueueNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0001")
.WithKeyId("grn:gs2:ap-northeast-1:YourOwnerId:key:namespace1:key:key-0001"))
.WithLotteryTriggerScriptId(null)
.WithChoicePrizeTableScriptId(null)
.WithLogSetting(new Gs2.Gs2Lottery.Model.LogSetting()
.WithLoggingNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:log:namespace1")),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.createNamespace(
new Gs2Lottery.CreateNamespaceRequest()
.withName("namespace1")
.withDescription(null)
.withTransactionSetting(new Gs2Lottery.model.TransactionSetting()
.withEnableAutoRun(false)
.withQueueNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0001")
.withKeyId("grn:gs2:ap-northeast-1:YourOwnerId:key:namespace1:key:key-0001"))
.withLotteryTriggerScriptId(null)
.withChoicePrizeTableScriptId(null)
.withLogSetting(new Gs2Lottery.model.LogSetting()
.withLoggingNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:log:namespace1"))
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.create_namespace(
lottery.CreateNamespaceRequest()
.with_name(self.hash1)
.with_description(None)
.with_transaction_setting(
lottery.TransactionSetting()
.with_enable_auto_run(False)
.with_queue_namespace_id('grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0001')
.with_key_id('grn:gs2:ap-northeast-1:YourOwnerId:key:namespace1:key:key-0001'))
.with_lottery_trigger_script_id(None)
.with_choice_prize_table_script_id(None)
.with_log_setting(
lottery.LogSetting()
.with_logging_namespace_id('grn:gs2:ap-northeast-1:YourOwnerId:log:namespace1'))
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.create_namespace({
name='namespace1',
description=nil,
transactionSetting={
enableAutoRun=false,
queueNamespaceId='grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0001',
keyId='grn:gs2:ap-northeast-1:YourOwnerId:key:namespace1:key:key-0001',
},
lotteryTriggerScriptId=nil,
choicePrizeTableScriptId=nil,
logSetting={
loggingNamespaceId='grn:gs2:ap-northeast-1:YourOwnerId:log:namespace1',
},
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
getNamespaceStatus
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
Result
| Type | Description |
---|
status | string | |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.GetNamespaceStatus(
&lottery.GetNamespaceStatusRequest {
NamespaceName: pointy.String("namespace1"),
}
)
if err != nil {
panic("error occurred")
}
status := result.Status
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\GetNamespaceStatusRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->getNamespaceStatus(
(new GetNamespaceStatusRequest())
->withNamespaceName(self::namespace1)
);
$status = $result->getStatus();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.GetNamespaceStatusRequest;
import io.gs2.lottery.result.GetNamespaceStatusResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
GetNamespaceStatusResult result = client.getNamespaceStatus(
new GetNamespaceStatusRequest()
.withNamespaceName("namespace1")
);
String status = result.getStatus();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.GetNamespaceStatusRequest;
using Gs2.Gs2Lottery.Result.GetNamespaceStatusResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.GetNamespaceStatusResult> asyncResult = null;
yield return client.GetNamespaceStatus(
new Gs2.Gs2Lottery.Request.GetNamespaceStatusRequest()
.WithNamespaceName("namespace1"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var status = result.Status;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.getNamespaceStatus(
new Gs2Lottery.GetNamespaceStatusRequest()
.withNamespaceName("namespace1")
);
const status = result.getStatus();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.get_namespace_status(
lottery.GetNamespaceStatusRequest()
.with_namespace_name(self.hash1)
)
status = result.status
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.get_namespace_status({
namespaceName='namespace1',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
status = result.status;
getNamespace
Get namespace
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.GetNamespace(
&lottery.GetNamespaceRequest {
NamespaceName: pointy.String("namespace1"),
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\GetNamespaceRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->getNamespace(
(new GetNamespaceRequest())
->withNamespaceName(self::namespace1)
);
$item = $result->getItem();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.GetNamespaceRequest;
import io.gs2.lottery.result.GetNamespaceResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
GetNamespaceResult result = client.getNamespace(
new GetNamespaceRequest()
.withNamespaceName("namespace1")
);
Namespace item = result.getItem();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.GetNamespaceRequest;
using Gs2.Gs2Lottery.Result.GetNamespaceResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.GetNamespaceResult> asyncResult = null;
yield return client.GetNamespace(
new Gs2.Gs2Lottery.Request.GetNamespaceRequest()
.WithNamespaceName("namespace1"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.getNamespace(
new Gs2Lottery.GetNamespaceRequest()
.withNamespaceName("namespace1")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.get_namespace(
lottery.GetNamespaceRequest()
.with_namespace_name(self.hash1)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.get_namespace({
namespaceName='namespace1',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
updateNamespace
Update namespace
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
description | string | | | | ~ 1024 chars | description of Namespace |
transactionSetting | TransactionSetting | | ✓ | | | Transaction settings |
lotteryTriggerScriptId | string | | | | ~ 1024 chars | GS2-Script scripts to be called when the lottery is executed |
choicePrizeTableScriptId | string | | | | ~ 1024 chars | GS2-Script script for dynamically determining lottery probability tables |
logSetting | LogSetting | | | | | Log output settings |
queueNamespaceId | string | | | | ~ 1024 chars | Namespace in GS2-JobQueue used to run the stamp sheet |
keyId | string | | | | ~ 1024 chars | GS2-Key namespace used to issue stamp sheets |
Result
| Type | Description |
---|
item | Namespace | Updated namespace |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.UpdateNamespace(
&lottery.UpdateNamespaceRequest {
NamespaceName: pointy.String("namespace1"),
Description: pointy.String("description1"),
TransactionSetting: &lottery.TransactionSetting{
EnableAutoRun: pointy.Bool(false),
QueueNamespaceId: pointy.String("grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0002"),
KeyId: pointy.String("grn:gs2:ap-northeast-1:YourOwnerId:key:namespace1:key:key-0002"),
},
LotteryTriggerScriptId: nil,
ChoicePrizeTableScriptId: nil,
LogSetting: &lottery.LogSetting{
LoggingNamespaceId: pointy.String("grn:gs2:ap-northeast-1:YourOwnerId:log:namespace1"),
},
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\UpdateNamespaceRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->updateNamespace(
(new UpdateNamespaceRequest())
->withNamespaceName(self::namespace1)
->withDescription("description1")
->withTransactionSetting((new \Gs2\Lottery\Model\TransactionSetting())
->withEnableAutoRun(False)
->withQueueNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0002")
->withKeyId("grn:gs2:ap-northeast-1:YourOwnerId:key:\namespace1:key:key-0002"))
->withLotteryTriggerScriptId(null)
->withChoicePrizeTableScriptId(null)
->withLogSetting((new \Gs2\Lottery\Model\LogSetting())
->withLoggingNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:log:\namespace1"))
);
$item = $result->getItem();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.UpdateNamespaceRequest;
import io.gs2.lottery.result.UpdateNamespaceResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
UpdateNamespaceResult result = client.updateNamespace(
new UpdateNamespaceRequest()
.withNamespaceName("namespace1")
.withDescription("description1")
.withTransactionSetting(new io.gs2.lottery.model.TransactionSetting()
.withEnableAutoRun(false)
.withQueueNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0002")
.withKeyId("grn:gs2:ap-northeast-1:YourOwnerId:key:namespace1:key:key-0002"))
.withLotteryTriggerScriptId(null)
.withChoicePrizeTableScriptId(null)
.withLogSetting(new io.gs2.lottery.model.LogSetting()
.withLoggingNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:log:namespace1"))
);
Namespace item = result.getItem();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.UpdateNamespaceRequest;
using Gs2.Gs2Lottery.Result.UpdateNamespaceResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.UpdateNamespaceResult> asyncResult = null;
yield return client.UpdateNamespace(
new Gs2.Gs2Lottery.Request.UpdateNamespaceRequest()
.WithNamespaceName("namespace1")
.WithDescription("description1")
.WithTransactionSetting(new Gs2.Gs2Lottery.Model.TransactionSetting()
.WithEnableAutoRun(false)
.WithQueueNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0002")
.WithKeyId("grn:gs2:ap-northeast-1:YourOwnerId:key:namespace1:key:key-0002"))
.WithLotteryTriggerScriptId(null)
.WithChoicePrizeTableScriptId(null)
.WithLogSetting(new Gs2.Gs2Lottery.Model.LogSetting()
.WithLoggingNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:log:namespace1")),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.updateNamespace(
new Gs2Lottery.UpdateNamespaceRequest()
.withNamespaceName("namespace1")
.withDescription("description1")
.withTransactionSetting(new Gs2Lottery.model.TransactionSetting()
.withEnableAutoRun(false)
.withQueueNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0002")
.withKeyId("grn:gs2:ap-northeast-1:YourOwnerId:key:namespace1:key:key-0002"))
.withLotteryTriggerScriptId(null)
.withChoicePrizeTableScriptId(null)
.withLogSetting(new Gs2Lottery.model.LogSetting()
.withLoggingNamespaceId("grn:gs2:ap-northeast-1:YourOwnerId:log:namespace1"))
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.update_namespace(
lottery.UpdateNamespaceRequest()
.with_namespace_name(self.hash1)
.with_description('description1')
.with_transaction_setting(
lottery.TransactionSetting()
.with_enable_auto_run(False)
.with_queue_namespace_id('grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0002')
.with_key_id('grn:gs2:ap-northeast-1:YourOwnerId:key:namespace1:key:key-0002'))
.with_lottery_trigger_script_id(None)
.with_choice_prize_table_script_id(None)
.with_log_setting(
lottery.LogSetting()
.with_logging_namespace_id('grn:gs2:ap-northeast-1:YourOwnerId:log:namespace1'))
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.update_namespace({
namespaceName='namespace1',
description='description1',
transactionSetting={
enableAutoRun=false,
queueNamespaceId='grn:gs2:ap-northeast-1:YourOwnerId:queue:queue-0002',
keyId='grn:gs2:ap-northeast-1:YourOwnerId:key:namespace1:key:key-0002',
},
lotteryTriggerScriptId=nil,
choicePrizeTableScriptId=nil,
logSetting={
loggingNamespaceId='grn:gs2:ap-northeast-1:YourOwnerId:log:namespace1',
},
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
deleteNamespace
Delete namespace
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
Result
| Type | Description |
---|
item | Namespace | Deleted namespace |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.DeleteNamespace(
&lottery.DeleteNamespaceRequest {
NamespaceName: pointy.String("namespace1"),
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\DeleteNamespaceRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->deleteNamespace(
(new DeleteNamespaceRequest())
->withNamespaceName(self::namespace1)
);
$item = $result->getItem();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.DeleteNamespaceRequest;
import io.gs2.lottery.result.DeleteNamespaceResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
DeleteNamespaceResult result = client.deleteNamespace(
new DeleteNamespaceRequest()
.withNamespaceName("namespace1")
);
Namespace item = result.getItem();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.DeleteNamespaceRequest;
using Gs2.Gs2Lottery.Result.DeleteNamespaceResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.DeleteNamespaceResult> asyncResult = null;
yield return client.DeleteNamespace(
new Gs2.Gs2Lottery.Request.DeleteNamespaceRequest()
.WithNamespaceName("namespace1"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.deleteNamespace(
new Gs2Lottery.DeleteNamespaceRequest()
.withNamespaceName("namespace1")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.delete_namespace(
lottery.DeleteNamespaceRequest()
.with_namespace_name(self.hash1)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.delete_namespace({
namespaceName='namespace1',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
describeLotteryModelMasters
Get list of lottery model masters
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
pageToken | string | | | | ~ 1024 chars | Token specifying the position from which to start acquiring data |
limit | int | | ✓ | 30 | 1 ~ 1000 | Number of data acquired |
Result
| Type | Description |
---|
items | List<LotteryModelMaster> | List of Lottery Model Master |
nextPageToken | string | Page token to retrieve the rest of the listing |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.DescribeLotteryModelMasters(
&lottery.DescribeLotteryModelMastersRequest {
NamespaceName: pointy.String("namespace1"),
PageToken: nil,
Limit: nil,
}
)
if err != nil {
panic("error occurred")
}
items := result.Items
nextPageToken := result.NextPageToken
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\DescribeLotteryModelMastersRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->describeLotteryModelMasters(
(new DescribeLotteryModelMastersRequest())
->withNamespaceName(self::namespace1)
->withPageToken(null)
->withLimit(null)
);
$items = $result->getItems();
$nextPageToken = $result->getNextPageToken();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.DescribeLotteryModelMastersRequest;
import io.gs2.lottery.result.DescribeLotteryModelMastersResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
DescribeLotteryModelMastersResult result = client.describeLotteryModelMasters(
new DescribeLotteryModelMastersRequest()
.withNamespaceName("namespace1")
.withPageToken(null)
.withLimit(null)
);
List<LotteryModelMaster> items = result.getItems();
String nextPageToken = result.getNextPageToken();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.DescribeLotteryModelMastersRequest;
using Gs2.Gs2Lottery.Result.DescribeLotteryModelMastersResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.DescribeLotteryModelMastersResult> asyncResult = null;
yield return client.DescribeLotteryModelMasters(
new Gs2.Gs2Lottery.Request.DescribeLotteryModelMastersRequest()
.WithNamespaceName("namespace1")
.WithPageToken(null)
.WithLimit(null),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var items = result.Items;
var nextPageToken = result.NextPageToken;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.describeLotteryModelMasters(
new Gs2Lottery.DescribeLotteryModelMastersRequest()
.withNamespaceName("namespace1")
.withPageToken(null)
.withLimit(null)
);
const items = result.getItems();
const nextPageToken = result.getNextPageToken();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.describe_lottery_model_masters(
lottery.DescribeLotteryModelMastersRequest()
.with_namespace_name(self.hash1)
.with_page_token(None)
.with_limit(None)
)
items = result.items
next_page_token = result.next_page_token
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.describe_lottery_model_masters({
namespaceName='namespace1',
pageToken=nil,
limit=nil,
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
items = result.items;
nextPageToken = result.nextPageToken;
createLotteryModelMaster
Create a new lottery model master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
name | string | | ✓ | | ~ 128 chars | Lottery Model Name |
description | string | | | | ~ 1024 chars | description of Namespace |
metadata | string | | | | ~ 128 chars | metadata |
mode | enum [’normal’, ‘box’] | | ✓ | | ~ 128 chars | Drawing mode |
method | enum [‘prize_table’, ‘script’] | | ✓ | | ~ 128 chars | Lottery Method |
prizeTableName | string | {method} == “prize_table” | ✓ | | ~ 128 chars | Name of prize table |
choicePrizeTableScriptId | string | {method} == “script” | ✓ | | ~ 1024 chars | GS2-Script script to determine the emission probability table |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.CreateLotteryModelMaster(
&lottery.CreateLotteryModelMasterRequest {
NamespaceName: pointy.String("namespace1"),
Name: pointy.String("lotteryModel-0001"),
Description: nil,
Metadata: nil,
Mode: pointy.String("normal"),
Method: pointy.String("prize_table"),
PrizeTableName: pointy.String("prizeTable-0001"),
ChoicePrizeTableScriptId: nil,
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\CreateLotteryModelMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->createLotteryModelMaster(
(new CreateLotteryModelMasterRequest())
->withNamespaceName(self::namespace1)
->withName("lotteryModel-0001")
->withDescription(null)
->withMetadata(null)
->withMode("normal")
->withMethod("prize_table")
->withPrizeTableName("prizeTable-0001")
->withChoicePrizeTableScriptId(null)
);
$item = $result->getItem();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.CreateLotteryModelMasterRequest;
import io.gs2.lottery.result.CreateLotteryModelMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
CreateLotteryModelMasterResult result = client.createLotteryModelMaster(
new CreateLotteryModelMasterRequest()
.withNamespaceName("namespace1")
.withName("lotteryModel-0001")
.withDescription(null)
.withMetadata(null)
.withMode("normal")
.withMethod("prize_table")
.withPrizeTableName("prizeTable-0001")
.withChoicePrizeTableScriptId(null)
);
LotteryModelMaster item = result.getItem();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.CreateLotteryModelMasterRequest;
using Gs2.Gs2Lottery.Result.CreateLotteryModelMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.CreateLotteryModelMasterResult> asyncResult = null;
yield return client.CreateLotteryModelMaster(
new Gs2.Gs2Lottery.Request.CreateLotteryModelMasterRequest()
.WithNamespaceName("namespace1")
.WithName("lotteryModel-0001")
.WithDescription(null)
.WithMetadata(null)
.WithMode("normal")
.WithMethod("prize_table")
.WithPrizeTableName("prizeTable-0001")
.WithChoicePrizeTableScriptId(null),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.createLotteryModelMaster(
new Gs2Lottery.CreateLotteryModelMasterRequest()
.withNamespaceName("namespace1")
.withName("lotteryModel-0001")
.withDescription(null)
.withMetadata(null)
.withMode("normal")
.withMethod("prize_table")
.withPrizeTableName("prizeTable-0001")
.withChoicePrizeTableScriptId(null)
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.create_lottery_model_master(
lottery.CreateLotteryModelMasterRequest()
.with_namespace_name(self.hash1)
.with_name('lotteryModel-0001')
.with_description(None)
.with_metadata(None)
.with_mode('normal')
.with_method('prize_table')
.with_prize_table_name('prizeTable-0001')
.with_choice_prize_table_script_id(None)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.create_lottery_model_master({
namespaceName='namespace1',
name='lotteryModel-0001',
description=nil,
metadata=nil,
mode='normal',
method='prize_table',
prizeTableName='prizeTable-0001',
choicePrizeTableScriptId=nil,
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
getLotteryModelMaster
Obtain a lottery model master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
lotteryName | string | | ✓ | | ~ 128 chars | Lottery Model Name |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.GetLotteryModelMaster(
&lottery.GetLotteryModelMasterRequest {
NamespaceName: pointy.String("namespace1"),
LotteryName: pointy.String("lotteryModel-0001"),
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\GetLotteryModelMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->getLotteryModelMaster(
(new GetLotteryModelMasterRequest())
->withNamespaceName(self::namespace1)
->withLotteryName("lotteryModel-0001")
);
$item = $result->getItem();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.GetLotteryModelMasterRequest;
import io.gs2.lottery.result.GetLotteryModelMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
GetLotteryModelMasterResult result = client.getLotteryModelMaster(
new GetLotteryModelMasterRequest()
.withNamespaceName("namespace1")
.withLotteryName("lotteryModel-0001")
);
LotteryModelMaster item = result.getItem();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.GetLotteryModelMasterRequest;
using Gs2.Gs2Lottery.Result.GetLotteryModelMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.GetLotteryModelMasterResult> asyncResult = null;
yield return client.GetLotteryModelMaster(
new Gs2.Gs2Lottery.Request.GetLotteryModelMasterRequest()
.WithNamespaceName("namespace1")
.WithLotteryName("lotteryModel-0001"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.getLotteryModelMaster(
new Gs2Lottery.GetLotteryModelMasterRequest()
.withNamespaceName("namespace1")
.withLotteryName("lotteryModel-0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.get_lottery_model_master(
lottery.GetLotteryModelMasterRequest()
.with_namespace_name(self.hash1)
.with_lottery_name('lotteryModel-0001')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.get_lottery_model_master({
namespaceName='namespace1',
lotteryName='lotteryModel-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
updateLotteryModelMaster
Update Lottery Model Master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
lotteryName | string | | ✓ | | ~ 128 chars | Lottery Model Name |
description | string | | | | ~ 1024 chars | description of Namespace |
metadata | string | | | | ~ 128 chars | metadata |
mode | enum [’normal’, ‘box’] | | ✓ | | ~ 128 chars | Drawing mode |
method | enum [‘prize_table’, ‘script’] | | ✓ | | ~ 128 chars | Lottery Method |
prizeTableName | string | {method} == “prize_table” | ✓ | | ~ 128 chars | Name of prize table |
choicePrizeTableScriptId | string | {method} == “script” | ✓ | | ~ 1024 chars | GS2-Script script to determine the emission probability table |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.UpdateLotteryModelMaster(
&lottery.UpdateLotteryModelMasterRequest {
NamespaceName: pointy.String("namespace1"),
LotteryName: pointy.String("lotteryModel-0001"),
Description: pointy.String("description1"),
Metadata: pointy.String("METADATA1"),
Mode: pointy.String("box"),
Method: pointy.String("prize_table"),
PrizeTableName: pointy.String("prizeTable-0002"),
ChoicePrizeTableScriptId: nil,
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\UpdateLotteryModelMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->updateLotteryModelMaster(
(new UpdateLotteryModelMasterRequest())
->withNamespaceName(self::namespace1)
->withLotteryName("lotteryModel-0001")
->withDescription("description1")
->withMetadata("METADATA1")
->withMode("box")
->withMethod("prize_table")
->withPrizeTableName("prizeTable-0002")
->withChoicePrizeTableScriptId(null)
);
$item = $result->getItem();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.UpdateLotteryModelMasterRequest;
import io.gs2.lottery.result.UpdateLotteryModelMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
UpdateLotteryModelMasterResult result = client.updateLotteryModelMaster(
new UpdateLotteryModelMasterRequest()
.withNamespaceName("namespace1")
.withLotteryName("lotteryModel-0001")
.withDescription("description1")
.withMetadata("METADATA1")
.withMode("box")
.withMethod("prize_table")
.withPrizeTableName("prizeTable-0002")
.withChoicePrizeTableScriptId(null)
);
LotteryModelMaster item = result.getItem();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.UpdateLotteryModelMasterRequest;
using Gs2.Gs2Lottery.Result.UpdateLotteryModelMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.UpdateLotteryModelMasterResult> asyncResult = null;
yield return client.UpdateLotteryModelMaster(
new Gs2.Gs2Lottery.Request.UpdateLotteryModelMasterRequest()
.WithNamespaceName("namespace1")
.WithLotteryName("lotteryModel-0001")
.WithDescription("description1")
.WithMetadata("METADATA1")
.WithMode("box")
.WithMethod("prize_table")
.WithPrizeTableName("prizeTable-0002")
.WithChoicePrizeTableScriptId(null),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.updateLotteryModelMaster(
new Gs2Lottery.UpdateLotteryModelMasterRequest()
.withNamespaceName("namespace1")
.withLotteryName("lotteryModel-0001")
.withDescription("description1")
.withMetadata("METADATA1")
.withMode("box")
.withMethod("prize_table")
.withPrizeTableName("prizeTable-0002")
.withChoicePrizeTableScriptId(null)
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.update_lottery_model_master(
lottery.UpdateLotteryModelMasterRequest()
.with_namespace_name(self.hash1)
.with_lottery_name('lotteryModel-0001')
.with_description('description1')
.with_metadata('METADATA1')
.with_mode('box')
.with_method('prize_table')
.with_prize_table_name('prizeTable-0002')
.with_choice_prize_table_script_id(None)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.update_lottery_model_master({
namespaceName='namespace1',
lotteryName='lotteryModel-0001',
description='description1',
metadata='METADATA1',
mode='box',
method='prize_table',
prizeTableName='prizeTable-0002',
choicePrizeTableScriptId=nil,
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
deleteLotteryModelMaster
Delete Lottery Model Master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
lotteryName | string | | ✓ | | ~ 128 chars | Lottery Model Name |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.DeleteLotteryModelMaster(
&lottery.DeleteLotteryModelMasterRequest {
NamespaceName: pointy.String("namespace1"),
LotteryName: pointy.String("lotteryModel-0001"),
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\DeleteLotteryModelMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->deleteLotteryModelMaster(
(new DeleteLotteryModelMasterRequest())
->withNamespaceName(self::namespace1)
->withLotteryName("lotteryModel-0001")
);
$item = $result->getItem();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.DeleteLotteryModelMasterRequest;
import io.gs2.lottery.result.DeleteLotteryModelMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
DeleteLotteryModelMasterResult result = client.deleteLotteryModelMaster(
new DeleteLotteryModelMasterRequest()
.withNamespaceName("namespace1")
.withLotteryName("lotteryModel-0001")
);
LotteryModelMaster item = result.getItem();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.DeleteLotteryModelMasterRequest;
using Gs2.Gs2Lottery.Result.DeleteLotteryModelMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.DeleteLotteryModelMasterResult> asyncResult = null;
yield return client.DeleteLotteryModelMaster(
new Gs2.Gs2Lottery.Request.DeleteLotteryModelMasterRequest()
.WithNamespaceName("namespace1")
.WithLotteryName("lotteryModel-0001"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.deleteLotteryModelMaster(
new Gs2Lottery.DeleteLotteryModelMasterRequest()
.withNamespaceName("namespace1")
.withLotteryName("lotteryModel-0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.delete_lottery_model_master(
lottery.DeleteLotteryModelMasterRequest()
.with_namespace_name(self.hash1)
.with_lottery_name('lotteryModel-0001')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.delete_lottery_model_master({
namespaceName='namespace1',
lotteryName='lotteryModel-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
describePrizeTableMasters
Get list of prize table masters
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
pageToken | string | | | | ~ 1024 chars | Token specifying the position from which to start acquiring data |
limit | int | | ✓ | 30 | 1 ~ 1000 | Number of data acquired |
Result
| Type | Description |
---|
items | List<PrizeTableMaster> | List of Emission probability table |
nextPageToken | string | Page token to retrieve the rest of the listing |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.DescribePrizeTableMasters(
&lottery.DescribePrizeTableMastersRequest {
NamespaceName: pointy.String("namespace1"),
PageToken: nil,
Limit: nil,
}
)
if err != nil {
panic("error occurred")
}
items := result.Items
nextPageToken := result.NextPageToken
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\DescribePrizeTableMastersRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->describePrizeTableMasters(
(new DescribePrizeTableMastersRequest())
->withNamespaceName(self::namespace1)
->withPageToken(null)
->withLimit(null)
);
$items = $result->getItems();
$nextPageToken = $result->getNextPageToken();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.DescribePrizeTableMastersRequest;
import io.gs2.lottery.result.DescribePrizeTableMastersResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
DescribePrizeTableMastersResult result = client.describePrizeTableMasters(
new DescribePrizeTableMastersRequest()
.withNamespaceName("namespace1")
.withPageToken(null)
.withLimit(null)
);
List<PrizeTableMaster> items = result.getItems();
String nextPageToken = result.getNextPageToken();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.DescribePrizeTableMastersRequest;
using Gs2.Gs2Lottery.Result.DescribePrizeTableMastersResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.DescribePrizeTableMastersResult> asyncResult = null;
yield return client.DescribePrizeTableMasters(
new Gs2.Gs2Lottery.Request.DescribePrizeTableMastersRequest()
.WithNamespaceName("namespace1")
.WithPageToken(null)
.WithLimit(null),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var items = result.Items;
var nextPageToken = result.NextPageToken;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.describePrizeTableMasters(
new Gs2Lottery.DescribePrizeTableMastersRequest()
.withNamespaceName("namespace1")
.withPageToken(null)
.withLimit(null)
);
const items = result.getItems();
const nextPageToken = result.getNextPageToken();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.describe_prize_table_masters(
lottery.DescribePrizeTableMastersRequest()
.with_namespace_name(self.hash1)
.with_page_token(None)
.with_limit(None)
)
items = result.items
next_page_token = result.next_page_token
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.describe_prize_table_masters({
namespaceName='namespace1',
pageToken=nil,
limit=nil,
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
items = result.items;
nextPageToken = result.nextPageToken;
createPrizeTableMaster
Create new prize table master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
name | string | | ✓ | | ~ 128 chars | Prize Table Name |
description | string | | | | ~ 1024 chars | description of Namespace |
metadata | string | | | | ~ 128 chars | metadata |
prizes | List<Prize> | | ✓ | | | List of Prize |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.CreatePrizeTableMaster(
&lottery.CreatePrizeTableMasterRequest {
NamespaceName: pointy.String("namespace1"),
Name: pointy.String("prizeTable-0001"),
Description: nil,
Metadata: nil,
Prizes: []lottery.Prize{
lottery.Prize{
PrizeId: pointy.String("1"),
Type: pointy.String("action"),
AcquireActions: []lottery.AcquireAction{
lottery.AcquireAction{
Action: pointy.String("Gs2Money:DepositByUserId"),
Request: pointy.String("Gs2Money:DepositByUserId:request:ssr-0001"),
},
},
Weight: pointy.Int32(1),
},
lottery.Prize{
PrizeId: pointy.String("2"),
Type: pointy.String("action"),
AcquireActions: []lottery.AcquireAction{
lottery.AcquireAction{
Action: pointy.String("Gs2Money:DepositByUserId"),
Request: pointy.String("Gs2Money:DepositByUserId:request:ssr-0002"),
},
},
Weight: pointy.Int32(2),
},
lottery.Prize{
PrizeId: pointy.String("3"),
Type: pointy.String("action"),
AcquireActions: []lottery.AcquireAction{
lottery.AcquireAction{
Action: pointy.String("Gs2Money:DepositByUserId"),
Request: pointy.String("Gs2Money:DepositByUserId:request:ssr-0003"),
},
},
Weight: pointy.Int32(3),
},
},
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\CreatePrizeTableMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->createPrizeTableMaster(
(new CreatePrizeTableMasterRequest())
->withNamespaceName(self::namespace1)
->withName("prizeTable-0001")
->withDescription(null)
->withMetadata(null)
->withPrizes([ (new \Gs2\Lottery\Model\Prize())
->withPrizeId("1")
->withType("action")
->withAcquireActions([ (new \Gs2\Lottery\Model\AcquireAction())
->withAction("Gs2Money:DepositByUserId")
->withRequest("Gs2Money:DepositByUserId:request:ssr-0001"),
])
->withWeight(1),
(new \Gs2\Lottery\Model\Prize())
->withPrizeId("2")
->withType("action")
->withAcquireActions([ (new \Gs2\Lottery\Model\AcquireAction())
->withAction("Gs2Money:DepositByUserId")
->withRequest("Gs2Money:DepositByUserId:request:ssr-0002"),
])
->withWeight(2),
(new \Gs2\Lottery\Model\Prize())
->withPrizeId("3")
->withType("action")
->withAcquireActions([ (new \Gs2\Lottery\Model\AcquireAction())
->withAction("Gs2Money:DepositByUserId")
->withRequest("Gs2Money:DepositByUserId:request:ssr-0003"),
])
->withWeight(3),
])
);
$item = $result->getItem();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.CreatePrizeTableMasterRequest;
import io.gs2.lottery.result.CreatePrizeTableMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
CreatePrizeTableMasterResult result = client.createPrizeTableMaster(
new CreatePrizeTableMasterRequest()
.withNamespaceName("namespace1")
.withName("prizeTable-0001")
.withDescription(null)
.withMetadata(null)
.withPrizes(Arrays.asList(
new io.gs2.lottery.model.Prize()
.withPrizeId("1")
.withType("action")
.withAcquireActions(Arrays.asList(
new io.gs2.lottery.model.AcquireAction()
.withAction("Gs2Money:DepositByUserId")
.withRequest("Gs2Money:DepositByUserId:request:ssr-0001")
))
.withWeight(1),
new io.gs2.lottery.model.Prize()
.withPrizeId("2")
.withType("action")
.withAcquireActions(Arrays.asList(
new io.gs2.lottery.model.AcquireAction()
.withAction("Gs2Money:DepositByUserId")
.withRequest("Gs2Money:DepositByUserId:request:ssr-0002")
))
.withWeight(2),
new io.gs2.lottery.model.Prize()
.withPrizeId("3")
.withType("action")
.withAcquireActions(Arrays.asList(
new io.gs2.lottery.model.AcquireAction()
.withAction("Gs2Money:DepositByUserId")
.withRequest("Gs2Money:DepositByUserId:request:ssr-0003")
))
.withWeight(3)
))
);
PrizeTableMaster item = result.getItem();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.CreatePrizeTableMasterRequest;
using Gs2.Gs2Lottery.Result.CreatePrizeTableMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.CreatePrizeTableMasterResult> asyncResult = null;
yield return client.CreatePrizeTableMaster(
new Gs2.Gs2Lottery.Request.CreatePrizeTableMasterRequest()
.WithNamespaceName("namespace1")
.WithName("prizeTable-0001")
.WithDescription(null)
.WithMetadata(null)
.WithPrizes(new Gs2.Gs2Lottery.Model.Prize[] {
new Gs2.Gs2Lottery.Model.Prize()
.WithPrizeId("1")
.WithType("action")
.WithAcquireActions(new Gs2.Core.Model.AcquireAction[] {
new Gs2.Core.Model.AcquireAction()
.WithAction("Gs2Money:DepositByUserId")
.WithRequest("Gs2Money:DepositByUserId:request:ssr-0001")
})
.WithWeight(1),
new Gs2.Gs2Lottery.Model.Prize()
.WithPrizeId("2")
.WithType("action")
.WithAcquireActions(new Gs2.Core.Model.AcquireAction[] {
new Gs2.Core.Model.AcquireAction()
.WithAction("Gs2Money:DepositByUserId")
.WithRequest("Gs2Money:DepositByUserId:request:ssr-0002")
})
.WithWeight(2),
new Gs2.Gs2Lottery.Model.Prize()
.WithPrizeId("3")
.WithType("action")
.WithAcquireActions(new Gs2.Core.Model.AcquireAction[] {
new Gs2.Core.Model.AcquireAction()
.WithAction("Gs2Money:DepositByUserId")
.WithRequest("Gs2Money:DepositByUserId:request:ssr-0003")
})
.WithWeight(3)
}),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.createPrizeTableMaster(
new Gs2Lottery.CreatePrizeTableMasterRequest()
.withNamespaceName("namespace1")
.withName("prizeTable-0001")
.withDescription(null)
.withMetadata(null)
.withPrizes([
new Gs2Lottery.model.Prize()
.withPrizeId("1")
.withType("action")
.withAcquireActions([
new Gs2Lottery.model.AcquireAction()
.withAction("Gs2Money:DepositByUserId")
.withRequest("Gs2Money:DepositByUserId:request:ssr-0001")
])
.withWeight(1),
new Gs2Lottery.model.Prize()
.withPrizeId("2")
.withType("action")
.withAcquireActions([
new Gs2Lottery.model.AcquireAction()
.withAction("Gs2Money:DepositByUserId")
.withRequest("Gs2Money:DepositByUserId:request:ssr-0002")
])
.withWeight(2),
new Gs2Lottery.model.Prize()
.withPrizeId("3")
.withType("action")
.withAcquireActions([
new Gs2Lottery.model.AcquireAction()
.withAction("Gs2Money:DepositByUserId")
.withRequest("Gs2Money:DepositByUserId:request:ssr-0003")
])
.withWeight(3)
])
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.create_prize_table_master(
lottery.CreatePrizeTableMasterRequest()
.with_namespace_name(self.hash1)
.with_name('prizeTable-0001')
.with_description(None)
.with_metadata(None)
.with_prizes([ lottery.Prize()
.with_prize_id('1')
.with_type('action')
.with_acquire_actions([ lottery.AcquireAction()
.with_action('Gs2Money:DepositByUserId')
.with_request('Gs2Money:DepositByUserId:request:ssr-0001'),
])
.with_weight(1),
lottery.Prize()
.with_prize_id('2')
.with_type('action')
.with_acquire_actions([ lottery.AcquireAction()
.with_action('Gs2Money:DepositByUserId')
.with_request('Gs2Money:DepositByUserId:request:ssr-0002'),
])
.with_weight(2),
lottery.Prize()
.with_prize_id('3')
.with_type('action')
.with_acquire_actions([ lottery.AcquireAction()
.with_action('Gs2Money:DepositByUserId')
.with_request('Gs2Money:DepositByUserId:request:ssr-0003'),
])
.with_weight(3),
])
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.create_prize_table_master({
namespaceName='namespace1',
name='prizeTable-0001',
description=nil,
metadata=nil,
prizes={
{
prizeId='1',
type='action',
acquireActions={
{
action='Gs2Money:DepositByUserId',
request='Gs2Money:DepositByUserId:request:ssr-0001',
}
},
weight=1,
},
{
prizeId='2',
type='action',
acquireActions={
{
action='Gs2Money:DepositByUserId',
request='Gs2Money:DepositByUserId:request:ssr-0002',
}
},
weight=2,
},
{
prizeId='3',
type='action',
acquireActions={
{
action='Gs2Money:DepositByUserId',
request='Gs2Money:DepositByUserId:request:ssr-0003',
}
},
weight=3,
}
},
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
getPrizeTableMaster
Obtain prize table master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
prizeTableName | string | | ✓ | | ~ 128 chars | Prize Table Name |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.GetPrizeTableMaster(
&lottery.GetPrizeTableMasterRequest {
NamespaceName: pointy.String("namespace1"),
PrizeTableName: pointy.String("prizeTable-0001"),
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\GetPrizeTableMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->getPrizeTableMaster(
(new GetPrizeTableMasterRequest())
->withNamespaceName(self::namespace1)
->withPrizeTableName("prizeTable-0001")
);
$item = $result->getItem();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.GetPrizeTableMasterRequest;
import io.gs2.lottery.result.GetPrizeTableMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
GetPrizeTableMasterResult result = client.getPrizeTableMaster(
new GetPrizeTableMasterRequest()
.withNamespaceName("namespace1")
.withPrizeTableName("prizeTable-0001")
);
PrizeTableMaster item = result.getItem();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.GetPrizeTableMasterRequest;
using Gs2.Gs2Lottery.Result.GetPrizeTableMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.GetPrizeTableMasterResult> asyncResult = null;
yield return client.GetPrizeTableMaster(
new Gs2.Gs2Lottery.Request.GetPrizeTableMasterRequest()
.WithNamespaceName("namespace1")
.WithPrizeTableName("prizeTable-0001"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.getPrizeTableMaster(
new Gs2Lottery.GetPrizeTableMasterRequest()
.withNamespaceName("namespace1")
.withPrizeTableName("prizeTable-0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.get_prize_table_master(
lottery.GetPrizeTableMasterRequest()
.with_namespace_name(self.hash1)
.with_prize_table_name('prizeTable-0001')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('lottery')
api_result = client.get_prize_table_master({
namespaceName='namespace1',
prizeTableName='prizeTable-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
updatePrizeTableMaster
Update prize table master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
prizeTableName | string | | ✓ | | ~ 128 chars | Prize Table Name |
description | string | | | | ~ 1024 chars | description of Namespace |
metadata | string | | | | ~ 128 chars | metadata |
prizes | List<Prize> | | ✓ | | | List of Prize |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/lottery"
import "github.com/openlyinc/pointy"
session := core.Gs2RestSession{
Credential: &core.BasicGs2Credential{
ClientId: "your client id",
ClientSecret: "your client secret",
},
Region: core.ApNortheast1,
}
if err := session.Connect(); err != nil {
panic("error occurred")
}
client := lottery.Gs2LotteryRestClient{
Session: &session,
}
result, err := client.UpdatePrizeTableMaster(
&lottery.UpdatePrizeTableMasterRequest {
NamespaceName: pointy.String("namespace1"),
PrizeTableName: pointy.String("prizeTable-0001"),
Description: pointy.String("description1"),
Metadata: pointy.String("METADATA1"),
Prizes: []lottery.Prize{
lottery.Prize{
PrizeId: pointy.String("4"),
Type: pointy.String("action"),
AcquireActions: []lottery.AcquireAction{
lottery.AcquireAction{
Action: pointy.String("Gs2Money:DepositByUserId"),
Request: pointy.String("Gs2Money:DepositByUserId:request:ssr-1001"),
},
},
Weight: pointy.Int32(2),
},
lottery.Prize{
PrizeId: pointy.String("5"),
Type: pointy.String("action"),
AcquireActions: []lottery.AcquireAction{
lottery.AcquireAction{
Action: pointy.String("Gs2Money:DepositByUserId"),
Request: pointy.String("Gs2Money:DepositByUserId:request:ssr-1002"),
},
},
Weight: pointy.Int32(3),
},
lottery.Prize{
PrizeId: pointy.String("6"),
Type: pointy.String("action"),
AcquireActions: []lottery.AcquireAction{
lottery.AcquireAction{
Action: pointy.String("Gs2Money:DepositByUserId"),
Request: pointy.String("Gs2Money:DepositByUserId:request:ssr-1003"),
},
},
Weight: pointy.Int32(4),
},
},
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Lottery\Gs2LotteryRestClient;
use Gs2\Lottery\Request\UpdatePrizeTableMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->updatePrizeTableMaster(
(new UpdatePrizeTableMasterRequest())
->withNamespaceName(self::namespace1)
->withPrizeTableName("prizeTable-0001")
->withDescription("description1")
->withMetadata("METADATA1")
->withPrizes([ (new \Gs2\Lottery\Model\Prize())
->withPrizeId("4")
->withType("action")
->withAcquireActions([ (new \Gs2\Lottery\Model\AcquireAction())
->withAction("Gs2Money:DepositByUserId")
->withRequest("Gs2Money:DepositByUserId:request:ssr-1001"),
])
->withWeight(2),
(new \Gs2\Lottery\Model\Prize())
->withPrizeId("5")
->withType("action")
->withAcquireActions([ (new \Gs2\Lottery\Model\AcquireAction())
->withAction("Gs2Money:DepositByUserId")
->withRequest("Gs2Money:DepositByUserId:request:ssr-1002"),
])
->withWeight(3),
(new \Gs2\Lottery\Model\Prize())
->withPrizeId("6")
->withType("action")
->withAcquireActions([ (new \Gs2\Lottery\Model\AcquireAction())
->withAction("Gs2Money:DepositByUserId")
->withRequest("Gs2Money:DepositByUserId:request:ssr-1003"),
])
->withWeight(4),
])
);
$item = $result->getItem();
} catch (Gs2Exception $e) {
exit("error occurred")
}
import io.gs2.core.model.Region;
import io.gs2.core.model.BasicGs2Credential;
import io.gs2.core.rest.Gs2RestSession;
import io.gs2.core.exception.Gs2Exception;
import io.gs2.lottery.rest.Gs2LotteryRestClient;
import io.gs2.lottery.request.UpdatePrizeTableMasterRequest;
import io.gs2.lottery.result.UpdatePrizeTableMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2LotteryRestClient client = new Gs2LotteryRestClient(session);
try {
UpdatePrizeTableMasterResult result = client.updatePrizeTableMaster(
new UpdatePrizeTableMasterRequest()
.withNamespaceName("namespace1")
.withPrizeTableName("prizeTable-0001")
.withDescription("description1")
.withMetadata("METADATA1")
.withPrizes(Arrays.asList(
new io.gs2.lottery.model.Prize()
.withPrizeId("4")
.withType("action")
.withAcquireActions(Arrays.asList(
new io.gs2.lottery.model.AcquireAction()
.withAction("Gs2Money:DepositByUserId")
.withRequest("Gs2Money:DepositByUserId:request:ssr-1001")
))
.withWeight(2),
new io.gs2.lottery.model.Prize()
.withPrizeId("5")
.withType("action")
.withAcquireActions(Arrays.asList(
new io.gs2.lottery.model.AcquireAction()
.withAction("Gs2Money:DepositByUserId")
.withRequest("Gs2Money:DepositByUserId:request:ssr-1002")
))
.withWeight(3),
new io.gs2.lottery.model.Prize()
.withPrizeId("6")
.withType("action")
.withAcquireActions(Arrays.asList(
new io.gs2.lottery.model.AcquireAction()
.withAction("Gs2Money:DepositByUserId")
.withRequest("Gs2Money:DepositByUserId:request:ssr-1003")
))
.withWeight(4)
))
);
PrizeTableMaster item = result.getItem();
} catch (Gs2Exception e) {
System.exit(1);
}
using Gs2.Core.Model.Region;
using Gs2.Core.Model.BasicGs2Credential;
using Gs2.Core.Net.Gs2RestSession;
using Gs2.Core.Exception.Gs2Exception;
using Gs2.Core.AsyncResult;
using Gs2.Gs2Lottery.Gs2LotteryRestClient;
using Gs2.Gs2Lottery.Request.UpdatePrizeTableMasterRequest;
using Gs2.Gs2Lottery.Result.UpdatePrizeTableMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2LotteryRestClient(session);
AsyncResult<Gs2.Gs2Lottery.Result.UpdatePrizeTableMasterResult> asyncResult = null;
yield return client.UpdatePrizeTableMaster(
new Gs2.Gs2Lottery.Request.UpdatePrizeTableMasterRequest()
.WithNamespaceName("namespace1")
.WithPrizeTableName("prizeTable-0001")
.WithDescription("description1")
.WithMetadata("METADATA1")
.WithPrizes(new Gs2.Gs2Lottery.Model.Prize[] {
new Gs2.Gs2Lottery.Model.Prize()
.WithPrizeId("4")
.WithType("action")
.WithAcquireActions(new Gs2.Core.Model.AcquireAction[] {
new Gs2.Core.Model.AcquireAction()
.WithAction("Gs2Money:DepositByUserId")
.WithRequest("Gs2Money:DepositByUserId:request:ssr-1001")
})
.WithWeight(2),
new Gs2.Gs2Lottery.Model.Prize()
.WithPrizeId("5")
.WithType("action")
.WithAcquireActions(new Gs2.Core.Model.AcquireAction[] {
new Gs2.Core.Model.AcquireAction()
.WithAction("Gs2Money:DepositByUserId")
.WithRequest("Gs2Money:DepositByUserId:request:ssr-1002")
})
.WithWeight(3),
new Gs2.Gs2Lottery.Model.Prize()
.WithPrizeId("6")
.WithType("action")
.WithAcquireActions(new Gs2.Core.Model.AcquireAction[] {
new Gs2.Core.Model.AcquireAction()
.WithAction("Gs2Money:DepositByUserId")
.WithRequest("Gs2Money:DepositByUserId:request:ssr-1003")
})
.WithWeight(4)
}),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
import Gs2Core from '@/gs2/core';
import * as Gs2Lottery from '@/gs2/lottery';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Lottery.Gs2LotteryRestClient(session);
try {
const result = await client.updatePrizeTableMaster(
new Gs2Lottery.UpdatePrizeTableMasterRequest()
.withNamespaceName("namespace1")
.withPrizeTableName("prizeTable-0001")
.withDescription("description1")
.withMetadata("METADATA1")
.withPrizes([
new Gs2Lottery.model.Prize()
.withPrizeId("4")
.withType("action")
.withAcquireActions([
new Gs2Lottery.model.AcquireAction()
.withAction("Gs2Money:DepositByUserId")
.withRequest("Gs2Money:DepositByUserId:request:ssr-1001")
])
.withWeight(2),
new Gs2Lottery.model.Prize()
.withPrizeId("5")
.withType("action")
.withAcquireActions([
new Gs2Lottery.model.AcquireAction()
.withAction("Gs2Money:DepositByUserId")
.withRequest("Gs2Money:DepositByUserId:request:ssr-1002")
])
.withWeight(3),
new Gs2Lottery.model.Prize()
.withPrizeId("6")
.withType("action")
.withAcquireActions([
new Gs2Lottery.model.AcquireAction()
.withAction("Gs2Money:DepositByUserId")
.withRequest("Gs2Money:DepositByUserId:request:ssr-1003")
])
.withWeight(4)
])
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import lottery
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = lottery.Gs2LotteryRestClient(session)
try:
result = client.update_prize_table_master(
lottery.UpdatePrizeTableMasterRequest()
.with_namespace_name(self.hash1)
.with_prize_table_name('prizeTable-0001')
.with_description('description1')
.with_metadata('METADATA1')
.