API Reference of GS2-Quest 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 |
startQuestScript | ScriptSetting | | | | | Script to be executed when the quest is started |
completeQuestScript | ScriptSetting | | | | | Script to be executed when a quest is completed |
failedQuestScript | ScriptSetting | | | | | Script to run when a quest fails |
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 |
QuestGroupModelMaster
Quest Group Model Master
A quest group is an entity for grouping multiple quests, and only one quest progression can be performed simultaneously within the group.
This means that if you need to be able to progress quests in parallel, you must separate the groups.
| Type | Condition | Require | Default | Limitation | Description |
---|
questGroupModelId | string | | ✓ | | ~ 1024 chars | Quest Group Master GRN |
name | string | | ✓ | | ~ 128 chars | Quest Group Model Name |
description | string | | | | ~ 1024 chars | description of Namespace |
metadata | string | | | | ~ 1024 chars | metadata |
challengePeriodEventId | string | | | | ~ 1024 chars | GS2-Schedule event GRN that sets the time period during which the quest can be attempted. |
createdAt | long | | ✓ | | | Datetime of creation |
updatedAt | long | | ✓ | | | Datetime of last update |
revision | long | | | 0 | ~ 9223372036854775805 | Revision |
QuestModelMaster
Quest Model Master
A quest is an entity that holds the consideration required to start ingame and the reward for completing it.
The reward obtained for clearing the quest can have multiple variations and can be drawn at the start of the quest.
For example, the same content can be used to manage the clear flag of a quest, but two types of content can be prepared based on whether or not a rare monster appears.
| Type | Condition | Require | Default | Limitation | Description |
---|
questModelId | string | | ✓ | | ~ 1024 chars | Quest Model Master GRN |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Model Name |
name | string | | ✓ | | ~ 128 chars | Quest Name |
description | string | | | | ~ 1024 chars | description of Namespace |
metadata | string | | | | ~ 1024 chars | metadata |
contents | List<Contents> | | ✓ | | 1 ~ 10 items | Quest Description |
challengePeriodEventId | string | | | | ~ 1024 chars | GS2-Schedule event GRN that sets the time period during which the quest can be attempted. |
firstCompleteAcquireActions | List<AcquireAction> | | | [] | ~ 10 items | List of First Clear Reward Actions |
consumeActions | List<ConsumeAction> | | | [] | ~ 10 items | Quest entry fee |
failedAcquireActions | List<AcquireAction> | | | [] | ~ 100 items | Reward for quest failure |
premiseQuestNames | List<string> | | | [] | ~ 10 items | Name of the quest that must be completed in order to attempt the quest |
createdAt | long | | ✓ | | | Datetime of creation |
updatedAt | long | | ✓ | | | Datetime of last update |
revision | long | | | 0 | ~ 9223372036854775805 | Revision |
CurrentQuestMaster
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 |
Contents
| Type | Condition | Require | Default | Limitation | Description |
---|
metadata | string | | | | ~ 256 chars | metadata |
completeAcquireActions | List<AcquireAction> | | | [] | ~ 10 items | Rewards for completing quests |
weight | int | | ✓ | 1 | 1 ~ 2147483646 | Weight to be drawn |
Reward
| Type | Condition | Require | Default | Limitation | Description |
---|
action | enum [] | | ✓ | | ~ 128 chars | Types of actions to be performed in the stamp sheet |
request | string | | ✓ | | ~ 5242880 chars | Request Model |
itemId | string | | ✓ | | ~ 1024 chars | Obtain Resource GRN |
value | int | | ✓ | | ~ 2147483646 | Quantity to be obtained |
Progress
Quest Progress
It is created at the beginning of the quest and deleted at the end.
When you exit the application in the middle of an ingame, this data will remain.
It is possible to resume the game from the ongoing quest information maintained by the entity.
| Type | Condition | Require | Default | Limitation | Description |
---|
progressId | string | | ✓ | | ~ 1024 chars | Quest Progress GRN |
userId | string | | ✓ | | ~ 128 chars | User Id |
transactionId | string | | ✓ | UUID | ~ 36 chars | Transaction ID |
questModelId | string | | ✓ | | ~ 1024 chars | Quest model GRN in progress |
randomSeed | long | | ✓ | | ~ 9223372036854775805 | Random number seed |
rewards | List<Reward> | | | [] | ~ 1000 items | Maximum rewards earned from quests |
metadata | string | | | | ~ 256 chars | metadata |
createdAt | long | | ✓ | | | Datetime of creation |
updatedAt | long | | ✓ | | | Datetime of last update |
revision | long | | | 0 | ~ 9223372036854775805 | Revision |
CompletedQuestList
List of completed quests
| Type | Condition | Require | Default | Limitation | Description |
---|
completedQuestListId | string | | ✓ | | ~ 1024 chars | List of cleared quests GRN |
userId | string | | ✓ | | ~ 128 chars | User Id |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Name |
completeQuestNames | List<string> | | | | ~ 1000 items | List of Names of the quests already conquered |
createdAt | long | | ✓ | | | Datetime of creation |
updatedAt | long | | ✓ | | | Datetime of last update |
revision | long | | | 0 | ~ 9223372036854775805 | Revision |
QuestGroupModel
Quest Group Model
A quest group is an entity for grouping multiple quests, and only one quest progression can be executed simultaneously within the group.
This means that if you need to be able to progress quests in parallel, you must separate the groups.
| Type | Condition | Require | Default | Limitation | Description |
---|
questGroupModelId | string | | ✓ | | ~ 1024 chars | Quest Group GRN |
name | string | | ✓ | | ~ 128 chars | Quest Group Name |
metadata | string | | | | ~ 1024 chars | metadata |
quests | List<QuestModel> | | | | ~ 1000 items | Quests belonging to the group |
challengePeriodEventId | string | | | | ~ 1024 chars | GS2-Schedule event GRN that sets the time period during which the quest can be attempted. |
QuestModel
Quest Model
A quest is an entity that holds the consideration required to start ingame and the reward for completing it.
The reward obtained upon completion of the quest can have multiple variations and can be drawn at the start of the quest.
For example, the same content can be used to manage the clear flag of a quest, but two types of content can be prepared based on whether or not a rare monster appears.
| Type | Condition | Require | Default | Limitation | Description |
---|
questModelId | string | | ✓ | | ~ 1024 chars | Quest Model GRN |
name | string | | ✓ | | ~ 128 chars | Quest Model Name |
metadata | string | | | | ~ 1024 chars | metadata |
contents | List<Contents> | | ✓ | | 1 ~ 10 items | Quest Description |
challengePeriodEventId | string | | | | ~ 1024 chars | GS2-Schedule event GRN that sets the time period during which the quest can be attempted. |
firstCompleteAcquireActions | List<AcquireAction> | | | [] | ~ 10 items | List of First Clear Reward Actions |
consumeActions | List<ConsumeAction> | | | [] | ~ 10 items | Quest entry fee |
failedAcquireActions | List<AcquireAction> | | | [] | ~ 100 items | Reward for quest failure |
premiseQuestNames | List<string> | | | [] | ~ 10 items | Name of the quest that must be completed in order to attempt the quest |
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 |
ConsumeAction
| Type | Condition | Require | Default | Limitation | Description |
---|
action | enum [] | | ✓ | | ~ 128 chars | Types of actions to be performed in the stamp task |
request | string | | ✓ | | ~ 1048576 chars | JSON of the obtain 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 |
ScriptSetting
| Type | Condition | Require | Default | Limitation | Description |
---|
triggerScriptId | string | | | | ~ 1024 chars | Script GRN |
doneTriggerTargetType | enum [’none’, ‘gs2_script’, ‘aws’] | | ✓ | “none” | ~ 128 chars | Notification of Completion |
doneTriggerScriptId | string | {doneTriggerTargetType} == “gs2_script” | | | ~ 1024 chars | Script GRN |
doneTriggerQueueNamespaceId | string | {doneTriggerTargetType} == “gs2_script” | | | ~ 1024 chars | Namespace GRN |
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 Namespaces |
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/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DescribeNamespaces(
&quest.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\Quest\Gs2QuestRestClient;
use Gs2\Quest\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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DescribeNamespacesRequest;
import io.gs2.quest.result.DescribeNamespacesResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DescribeNamespacesRequest;
using Gs2.Gs2Quest.Result.DescribeNamespacesResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DescribeNamespacesResult> asyncResult = null;
yield return client.DescribeNamespaces(
new Gs2.Gs2Quest.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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.describeNamespaces(
new Gs2Quest.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 quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.describe_namespaces(
quest.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('quest')
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 |
startQuestScript | ScriptSetting | | | | | Script to be executed when the quest is started |
completeQuestScript | ScriptSetting | | | | | Script to be executed when a quest is completed |
failedQuestScript | ScriptSetting | | | | | Script to run when a quest fails |
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 | Created namespace |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.CreateNamespace(
&quest.CreateNamespaceRequest {
Name: pointy.String("namespace1"),
Description: nil,
TransactionSetting: &quest.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"),
},
StartQuestScript: nil,
CompleteQuestScript: nil,
FailedQuestScript: nil,
LogSetting: &quest.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\Quest\Gs2QuestRestClient;
use Gs2\Quest\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\Quest\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"))
->withStartQuestScript(null)
->withCompleteQuestScript(null)
->withFailedQuestScript(null)
->withLogSetting((new \Gs2\Quest\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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.CreateNamespaceRequest;
import io.gs2.quest.result.CreateNamespaceResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
CreateNamespaceResult result = client.createNamespace(
new CreateNamespaceRequest()
.withName("namespace1")
.withDescription(null)
.withTransactionSetting(new io.gs2.quest.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"))
.withStartQuestScript(null)
.withCompleteQuestScript(null)
.withFailedQuestScript(null)
.withLogSetting(new io.gs2.quest.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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.CreateNamespaceRequest;
using Gs2.Gs2Quest.Result.CreateNamespaceResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.CreateNamespaceResult> asyncResult = null;
yield return client.CreateNamespace(
new Gs2.Gs2Quest.Request.CreateNamespaceRequest()
.WithName("namespace1")
.WithDescription(null)
.WithTransactionSetting(new Gs2.Gs2Quest.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"))
.WithStartQuestScript(null)
.WithCompleteQuestScript(null)
.WithFailedQuestScript(null)
.WithLogSetting(new Gs2.Gs2Quest.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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.createNamespace(
new Gs2Quest.CreateNamespaceRequest()
.withName("namespace1")
.withDescription(null)
.withTransactionSetting(new Gs2Quest.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"))
.withStartQuestScript(null)
.withCompleteQuestScript(null)
.withFailedQuestScript(null)
.withLogSetting(new Gs2Quest.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 quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.create_namespace(
quest.CreateNamespaceRequest()
.with_name(self.hash1)
.with_description(None)
.with_transaction_setting(
quest.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_start_quest_script(None)
.with_complete_quest_script(None)
.with_failed_quest_script(None)
.with_log_setting(
quest.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('quest')
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',
},
startQuestScript=nil,
completeQuestScript=nil,
failedQuestScript=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
Get namespace status
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/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.GetNamespaceStatus(
&quest.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\Quest\Gs2QuestRestClient;
use Gs2\Quest\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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.GetNamespaceStatusRequest;
import io.gs2.quest.result.GetNamespaceStatusResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.GetNamespaceStatusRequest;
using Gs2.Gs2Quest.Result.GetNamespaceStatusResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.GetNamespaceStatusResult> asyncResult = null;
yield return client.GetNamespaceStatus(
new Gs2.Gs2Quest.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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.getNamespaceStatus(
new Gs2Quest.GetNamespaceStatusRequest()
.withNamespaceName("namespace1")
);
const status = result.getStatus();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.get_namespace_status(
quest.GetNamespaceStatusRequest()
.with_namespace_name(self.hash1)
)
status = result.status
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
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/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.GetNamespace(
&quest.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\Quest\Gs2QuestRestClient;
use Gs2\Quest\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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.GetNamespaceRequest;
import io.gs2.quest.result.GetNamespaceResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.GetNamespaceRequest;
using Gs2.Gs2Quest.Result.GetNamespaceResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.GetNamespaceResult> asyncResult = null;
yield return client.GetNamespace(
new Gs2.Gs2Quest.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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.getNamespace(
new Gs2Quest.GetNamespaceRequest()
.withNamespaceName("namespace1")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.get_namespace(
quest.GetNamespaceRequest()
.with_namespace_name(self.hash1)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
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 |
startQuestScript | ScriptSetting | | | | | Script to be executed when the quest is started |
completeQuestScript | ScriptSetting | | | | | Script to be executed when a quest is completed |
failedQuestScript | ScriptSetting | | | | | Script to run when a quest fails |
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/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.UpdateNamespace(
&quest.UpdateNamespaceRequest {
NamespaceName: pointy.String("namespace1"),
Description: pointy.String("description1"),
TransactionSetting: &quest.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"),
},
StartQuestScript: nil,
CompleteQuestScript: nil,
FailedQuestScript: nil,
LogSetting: &quest.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\Quest\Gs2QuestRestClient;
use Gs2\Quest\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\Quest\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"))
->withStartQuestScript(null)
->withCompleteQuestScript(null)
->withFailedQuestScript(null)
->withLogSetting((new \Gs2\Quest\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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.UpdateNamespaceRequest;
import io.gs2.quest.result.UpdateNamespaceResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
UpdateNamespaceResult result = client.updateNamespace(
new UpdateNamespaceRequest()
.withNamespaceName("namespace1")
.withDescription("description1")
.withTransactionSetting(new io.gs2.quest.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"))
.withStartQuestScript(null)
.withCompleteQuestScript(null)
.withFailedQuestScript(null)
.withLogSetting(new io.gs2.quest.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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.UpdateNamespaceRequest;
using Gs2.Gs2Quest.Result.UpdateNamespaceResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.UpdateNamespaceResult> asyncResult = null;
yield return client.UpdateNamespace(
new Gs2.Gs2Quest.Request.UpdateNamespaceRequest()
.WithNamespaceName("namespace1")
.WithDescription("description1")
.WithTransactionSetting(new Gs2.Gs2Quest.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"))
.WithStartQuestScript(null)
.WithCompleteQuestScript(null)
.WithFailedQuestScript(null)
.WithLogSetting(new Gs2.Gs2Quest.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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.updateNamespace(
new Gs2Quest.UpdateNamespaceRequest()
.withNamespaceName("namespace1")
.withDescription("description1")
.withTransactionSetting(new Gs2Quest.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"))
.withStartQuestScript(null)
.withCompleteQuestScript(null)
.withFailedQuestScript(null)
.withLogSetting(new Gs2Quest.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 quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.update_namespace(
quest.UpdateNamespaceRequest()
.with_namespace_name(self.hash1)
.with_description('description1')
.with_transaction_setting(
quest.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_start_quest_script(None)
.with_complete_quest_script(None)
.with_failed_quest_script(None)
.with_log_setting(
quest.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('quest')
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',
},
startQuestScript=nil,
completeQuestScript=nil,
failedQuestScript=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/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DeleteNamespace(
&quest.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\Quest\Gs2QuestRestClient;
use Gs2\Quest\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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DeleteNamespaceRequest;
import io.gs2.quest.result.DeleteNamespaceResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DeleteNamespaceRequest;
using Gs2.Gs2Quest.Result.DeleteNamespaceResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DeleteNamespaceResult> asyncResult = null;
yield return client.DeleteNamespace(
new Gs2.Gs2Quest.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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.deleteNamespace(
new Gs2Quest.DeleteNamespaceRequest()
.withNamespaceName("namespace1")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.delete_namespace(
quest.DeleteNamespaceRequest()
.with_namespace_name(self.hash1)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
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;
dumpUserDataByUserId
Get dump data of the data associated with the specified user ID
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
userId | string | | ✓ | | ~ 128 chars | User Id |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DumpUserDataByUserId(
&quest.DumpUserDataByUserIdRequest {
UserId: pointy.String("user-0001"),
}
)
if err != nil {
panic("error occurred")
}
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DumpUserDataByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->dumpUserDataByUserId(
(new DumpUserDataByUserIdRequest())
->withUserId("user-0001")
);
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DumpUserDataByUserIdRequest;
import io.gs2.quest.result.DumpUserDataByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DumpUserDataByUserIdResult result = client.dumpUserDataByUserId(
new DumpUserDataByUserIdRequest()
.withUserId("user-0001")
);
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DumpUserDataByUserIdRequest;
using Gs2.Gs2Quest.Result.DumpUserDataByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DumpUserDataByUserIdResult> asyncResult = null;
yield return client.DumpUserDataByUserId(
new Gs2.Gs2Quest.Request.DumpUserDataByUserIdRequest()
.WithUserId("user-0001"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.dumpUserDataByUserId(
new Gs2Quest.DumpUserDataByUserIdRequest()
.withUserId("user-0001")
);
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.dump_user_data_by_user_id(
quest.DumpUserDataByUserIdRequest()
.with_user_id('user-0001')
)
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.dump_user_data_by_user_id({
userId='user-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
checkDumpUserDataByUserId
Check if the dump of the data associated with the specified user ID is complete
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
userId | string | | ✓ | | ~ 128 chars | User Id |
Result
| Type | Description |
---|
url | string | URL of output data |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.CheckDumpUserDataByUserId(
&quest.CheckDumpUserDataByUserIdRequest {
UserId: pointy.String("user-0001"),
}
)
if err != nil {
panic("error occurred")
}
url := result.Url
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\CheckDumpUserDataByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->checkDumpUserDataByUserId(
(new CheckDumpUserDataByUserIdRequest())
->withUserId("user-0001")
);
$url = $result->getUrl();
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.CheckDumpUserDataByUserIdRequest;
import io.gs2.quest.result.CheckDumpUserDataByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
CheckDumpUserDataByUserIdResult result = client.checkDumpUserDataByUserId(
new CheckDumpUserDataByUserIdRequest()
.withUserId("user-0001")
);
String url = result.getUrl();
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.CheckDumpUserDataByUserIdRequest;
using Gs2.Gs2Quest.Result.CheckDumpUserDataByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.CheckDumpUserDataByUserIdResult> asyncResult = null;
yield return client.CheckDumpUserDataByUserId(
new Gs2.Gs2Quest.Request.CheckDumpUserDataByUserIdRequest()
.WithUserId("user-0001"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var url = result.Url;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.checkDumpUserDataByUserId(
new Gs2Quest.CheckDumpUserDataByUserIdRequest()
.withUserId("user-0001")
);
const url = result.getUrl();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.check_dump_user_data_by_user_id(
quest.CheckDumpUserDataByUserIdRequest()
.with_user_id('user-0001')
)
url = result.url
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.check_dump_user_data_by_user_id({
userId='user-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
url = result.url;
cleanUserDataByUserId
Get clean data of the data associated with the specified user ID
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
userId | string | | ✓ | | ~ 128 chars | User Id |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.CleanUserDataByUserId(
&quest.CleanUserDataByUserIdRequest {
UserId: pointy.String("user-0001"),
}
)
if err != nil {
panic("error occurred")
}
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\CleanUserDataByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->cleanUserDataByUserId(
(new CleanUserDataByUserIdRequest())
->withUserId("user-0001")
);
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.CleanUserDataByUserIdRequest;
import io.gs2.quest.result.CleanUserDataByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
CleanUserDataByUserIdResult result = client.cleanUserDataByUserId(
new CleanUserDataByUserIdRequest()
.withUserId("user-0001")
);
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.CleanUserDataByUserIdRequest;
using Gs2.Gs2Quest.Result.CleanUserDataByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.CleanUserDataByUserIdResult> asyncResult = null;
yield return client.CleanUserDataByUserId(
new Gs2.Gs2Quest.Request.CleanUserDataByUserIdRequest()
.WithUserId("user-0001"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.cleanUserDataByUserId(
new Gs2Quest.CleanUserDataByUserIdRequest()
.withUserId("user-0001")
);
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.clean_user_data_by_user_id(
quest.CleanUserDataByUserIdRequest()
.with_user_id('user-0001')
)
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.clean_user_data_by_user_id({
userId='user-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
checkCleanUserDataByUserId
Check if the clean of the data associated with the specified user ID is complete
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
userId | string | | ✓ | | ~ 128 chars | User Id |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.CheckCleanUserDataByUserId(
&quest.CheckCleanUserDataByUserIdRequest {
UserId: pointy.String("user-0001"),
}
)
if err != nil {
panic("error occurred")
}
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\CheckCleanUserDataByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->checkCleanUserDataByUserId(
(new CheckCleanUserDataByUserIdRequest())
->withUserId("user-0001")
);
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.CheckCleanUserDataByUserIdRequest;
import io.gs2.quest.result.CheckCleanUserDataByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
CheckCleanUserDataByUserIdResult result = client.checkCleanUserDataByUserId(
new CheckCleanUserDataByUserIdRequest()
.withUserId("user-0001")
);
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.CheckCleanUserDataByUserIdRequest;
using Gs2.Gs2Quest.Result.CheckCleanUserDataByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.CheckCleanUserDataByUserIdResult> asyncResult = null;
yield return client.CheckCleanUserDataByUserId(
new Gs2.Gs2Quest.Request.CheckCleanUserDataByUserIdRequest()
.WithUserId("user-0001"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.checkCleanUserDataByUserId(
new Gs2Quest.CheckCleanUserDataByUserIdRequest()
.withUserId("user-0001")
);
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.check_clean_user_data_by_user_id(
quest.CheckCleanUserDataByUserIdRequest()
.with_user_id('user-0001')
)
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.check_clean_user_data_by_user_id({
userId='user-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
prepareImportUserDataByUserId
Start importing data associated with the specified user ID
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
userId | string | | ✓ | | ~ 128 chars | User Id |
Result
| Type | Description |
---|
uploadToken | string | Token used to reflect results after upload |
uploadUrl | string | URL used to upload user data |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.PrepareImportUserDataByUserId(
&quest.PrepareImportUserDataByUserIdRequest {
UserId: pointy.String("user-0001"),
}
)
if err != nil {
panic("error occurred")
}
uploadToken := result.UploadToken
uploadUrl := result.UploadUrl
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\PrepareImportUserDataByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->prepareImportUserDataByUserId(
(new PrepareImportUserDataByUserIdRequest())
->withUserId("user-0001")
);
$uploadToken = $result->getUploadToken();
$uploadUrl = $result->getUploadUrl();
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.PrepareImportUserDataByUserIdRequest;
import io.gs2.quest.result.PrepareImportUserDataByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
PrepareImportUserDataByUserIdResult result = client.prepareImportUserDataByUserId(
new PrepareImportUserDataByUserIdRequest()
.withUserId("user-0001")
);
String uploadToken = result.getUploadToken();
String uploadUrl = result.getUploadUrl();
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.PrepareImportUserDataByUserIdRequest;
using Gs2.Gs2Quest.Result.PrepareImportUserDataByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.PrepareImportUserDataByUserIdResult> asyncResult = null;
yield return client.PrepareImportUserDataByUserId(
new Gs2.Gs2Quest.Request.PrepareImportUserDataByUserIdRequest()
.WithUserId("user-0001"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var uploadToken = result.UploadToken;
var uploadUrl = result.UploadUrl;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.prepareImportUserDataByUserId(
new Gs2Quest.PrepareImportUserDataByUserIdRequest()
.withUserId("user-0001")
);
const uploadToken = result.getUploadToken();
const uploadUrl = result.getUploadUrl();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.prepare_import_user_data_by_user_id(
quest.PrepareImportUserDataByUserIdRequest()
.with_user_id('user-0001')
)
upload_token = result.upload_token
upload_url = result.upload_url
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.prepare_import_user_data_by_user_id({
userId='user-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
uploadToken = result.uploadToken;
uploadUrl = result.uploadUrl;
importUserDataByUserId
Start importing data associated with the specified user ID
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
userId | string | | ✓ | | ~ 128 chars | User Id |
uploadToken | string | | ✓ | | ~ 1024 chars | Token received in preparation for upload |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.ImportUserDataByUserId(
&quest.ImportUserDataByUserIdRequest {
UserId: pointy.String("user-0001"),
UploadToken: pointy.String("upload-0001"),
}
)
if err != nil {
panic("error occurred")
}
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\ImportUserDataByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->importUserDataByUserId(
(new ImportUserDataByUserIdRequest())
->withUserId("user-0001")
->withUploadToken("upload-0001")
);
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.ImportUserDataByUserIdRequest;
import io.gs2.quest.result.ImportUserDataByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
ImportUserDataByUserIdResult result = client.importUserDataByUserId(
new ImportUserDataByUserIdRequest()
.withUserId("user-0001")
.withUploadToken("upload-0001")
);
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.ImportUserDataByUserIdRequest;
using Gs2.Gs2Quest.Result.ImportUserDataByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.ImportUserDataByUserIdResult> asyncResult = null;
yield return client.ImportUserDataByUserId(
new Gs2.Gs2Quest.Request.ImportUserDataByUserIdRequest()
.WithUserId("user-0001")
.WithUploadToken("upload-0001"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.importUserDataByUserId(
new Gs2Quest.ImportUserDataByUserIdRequest()
.withUserId("user-0001")
.withUploadToken("upload-0001")
);
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.import_user_data_by_user_id(
quest.ImportUserDataByUserIdRequest()
.with_user_id('user-0001')
.with_upload_token('upload-0001')
)
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.import_user_data_by_user_id({
userId='user-0001',
uploadToken='upload-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
checkImportUserDataByUserId
Check if the import of the data associated with the specified user ID is complete
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
userId | string | | ✓ | | ~ 128 chars | User Id |
uploadToken | string | | ✓ | | ~ 1024 chars | Token received in preparation for upload |
Result
| Type | Description |
---|
url | string | URL of log data |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.CheckImportUserDataByUserId(
&quest.CheckImportUserDataByUserIdRequest {
UserId: pointy.String("user-0001"),
UploadToken: pointy.String("upload-0001"),
}
)
if err != nil {
panic("error occurred")
}
url := result.Url
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\CheckImportUserDataByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->checkImportUserDataByUserId(
(new CheckImportUserDataByUserIdRequest())
->withUserId("user-0001")
->withUploadToken("upload-0001")
);
$url = $result->getUrl();
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.CheckImportUserDataByUserIdRequest;
import io.gs2.quest.result.CheckImportUserDataByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
CheckImportUserDataByUserIdResult result = client.checkImportUserDataByUserId(
new CheckImportUserDataByUserIdRequest()
.withUserId("user-0001")
.withUploadToken("upload-0001")
);
String url = result.getUrl();
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.CheckImportUserDataByUserIdRequest;
using Gs2.Gs2Quest.Result.CheckImportUserDataByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.CheckImportUserDataByUserIdResult> asyncResult = null;
yield return client.CheckImportUserDataByUserId(
new Gs2.Gs2Quest.Request.CheckImportUserDataByUserIdRequest()
.WithUserId("user-0001")
.WithUploadToken("upload-0001"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var url = result.Url;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.checkImportUserDataByUserId(
new Gs2Quest.CheckImportUserDataByUserIdRequest()
.withUserId("user-0001")
.withUploadToken("upload-0001")
);
const url = result.getUrl();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.check_import_user_data_by_user_id(
quest.CheckImportUserDataByUserIdRequest()
.with_user_id('user-0001')
.with_upload_token('upload-0001')
)
url = result.url
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.check_import_user_data_by_user_id({
userId='user-0001',
uploadToken='upload-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
url = result.url;
describeQuestGroupModelMasters
Get list of quest group 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<QuestGroupModelMaster> | List of Quest Group Masters |
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/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DescribeQuestGroupModelMasters(
&quest.DescribeQuestGroupModelMastersRequest {
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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DescribeQuestGroupModelMastersRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->describeQuestGroupModelMasters(
(new DescribeQuestGroupModelMastersRequest())
->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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DescribeQuestGroupModelMastersRequest;
import io.gs2.quest.result.DescribeQuestGroupModelMastersResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DescribeQuestGroupModelMastersResult result = client.describeQuestGroupModelMasters(
new DescribeQuestGroupModelMastersRequest()
.withNamespaceName("namespace1")
.withPageToken(null)
.withLimit(null)
);
List<QuestGroupModelMaster> 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DescribeQuestGroupModelMastersRequest;
using Gs2.Gs2Quest.Result.DescribeQuestGroupModelMastersResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DescribeQuestGroupModelMastersResult> asyncResult = null;
yield return client.DescribeQuestGroupModelMasters(
new Gs2.Gs2Quest.Request.DescribeQuestGroupModelMastersRequest()
.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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.describeQuestGroupModelMasters(
new Gs2Quest.DescribeQuestGroupModelMastersRequest()
.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 quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.describe_quest_group_model_masters(
quest.DescribeQuestGroupModelMastersRequest()
.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('quest')
api_result = client.describe_quest_group_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;
createQuestGroupModelMaster
Create a new quest group master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
name | string | | ✓ | | ~ 128 chars | Quest Group Model Name |
description | string | | | | ~ 1024 chars | description of Namespace |
metadata | string | | | | ~ 1024 chars | metadata |
challengePeriodEventId | string | | | | ~ 1024 chars | GS2-Schedule event GRN that sets the time period during which the quest can be attempted. |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.CreateQuestGroupModelMaster(
&quest.CreateQuestGroupModelMasterRequest {
NamespaceName: pointy.String("namespace1"),
Name: pointy.String("quest-group-0001"),
Description: nil,
Metadata: nil,
ChallengePeriodEventId: 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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\CreateQuestGroupModelMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->createQuestGroupModelMaster(
(new CreateQuestGroupModelMasterRequest())
->withNamespaceName(self::namespace1)
->withName("quest-group-0001")
->withDescription(null)
->withMetadata(null)
->withChallengePeriodEventId(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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.CreateQuestGroupModelMasterRequest;
import io.gs2.quest.result.CreateQuestGroupModelMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
CreateQuestGroupModelMasterResult result = client.createQuestGroupModelMaster(
new CreateQuestGroupModelMasterRequest()
.withNamespaceName("namespace1")
.withName("quest-group-0001")
.withDescription(null)
.withMetadata(null)
.withChallengePeriodEventId(null)
);
QuestGroupModelMaster 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.CreateQuestGroupModelMasterRequest;
using Gs2.Gs2Quest.Result.CreateQuestGroupModelMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.CreateQuestGroupModelMasterResult> asyncResult = null;
yield return client.CreateQuestGroupModelMaster(
new Gs2.Gs2Quest.Request.CreateQuestGroupModelMasterRequest()
.WithNamespaceName("namespace1")
.WithName("quest-group-0001")
.WithDescription(null)
.WithMetadata(null)
.WithChallengePeriodEventId(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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.createQuestGroupModelMaster(
new Gs2Quest.CreateQuestGroupModelMasterRequest()
.withNamespaceName("namespace1")
.withName("quest-group-0001")
.withDescription(null)
.withMetadata(null)
.withChallengePeriodEventId(null)
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.create_quest_group_model_master(
quest.CreateQuestGroupModelMasterRequest()
.with_namespace_name(self.hash1)
.with_name('quest-group-0001')
.with_description(None)
.with_metadata(None)
.with_challenge_period_event_id(None)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.create_quest_group_model_master({
namespaceName='namespace1',
name='quest-group-0001',
description=nil,
metadata=nil,
challengePeriodEventId=nil,
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
getQuestGroupModelMaster
Get Quest Group Master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Model Name |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.GetQuestGroupModelMaster(
&quest.GetQuestGroupModelMasterRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("quest-group-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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\GetQuestGroupModelMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->getQuestGroupModelMaster(
(new GetQuestGroupModelMasterRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("quest-group-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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.GetQuestGroupModelMasterRequest;
import io.gs2.quest.result.GetQuestGroupModelMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
GetQuestGroupModelMasterResult result = client.getQuestGroupModelMaster(
new GetQuestGroupModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
);
QuestGroupModelMaster 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.GetQuestGroupModelMasterRequest;
using Gs2.Gs2Quest.Result.GetQuestGroupModelMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.GetQuestGroupModelMasterResult> asyncResult = null;
yield return client.GetQuestGroupModelMaster(
new Gs2.Gs2Quest.Request.GetQuestGroupModelMasterRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("quest-group-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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.getQuestGroupModelMaster(
new Gs2Quest.GetQuestGroupModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.get_quest_group_model_master(
quest.GetQuestGroupModelMasterRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('quest-group-0001')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.get_quest_group_model_master({
namespaceName='namespace1',
questGroupName='quest-group-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
updateQuestGroupModelMaster
Update Quest Group Master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Model Name |
description | string | | | | ~ 1024 chars | description of Namespace |
metadata | string | | | | ~ 1024 chars | metadata |
challengePeriodEventId | string | | | | ~ 1024 chars | GS2-Schedule event GRN that sets the time period during which the quest can be attempted. |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.UpdateQuestGroupModelMaster(
&quest.UpdateQuestGroupModelMasterRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("quest-group-0001"),
Description: pointy.String("description1"),
Metadata: nil,
ChallengePeriodEventId: pointy.String("grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002"),
}
)
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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\UpdateQuestGroupModelMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->updateQuestGroupModelMaster(
(new UpdateQuestGroupModelMasterRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("quest-group-0001")
->withDescription("description1")
->withMetadata(null)
->withChallengePeriodEventId("grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002")
);
$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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.UpdateQuestGroupModelMasterRequest;
import io.gs2.quest.result.UpdateQuestGroupModelMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
UpdateQuestGroupModelMasterResult result = client.updateQuestGroupModelMaster(
new UpdateQuestGroupModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withDescription("description1")
.withMetadata(null)
.withChallengePeriodEventId("grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002")
);
QuestGroupModelMaster 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.UpdateQuestGroupModelMasterRequest;
using Gs2.Gs2Quest.Result.UpdateQuestGroupModelMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.UpdateQuestGroupModelMasterResult> asyncResult = null;
yield return client.UpdateQuestGroupModelMaster(
new Gs2.Gs2Quest.Request.UpdateQuestGroupModelMasterRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("quest-group-0001")
.WithDescription("description1")
.WithMetadata(null)
.WithChallengePeriodEventId("grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002"),
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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.updateQuestGroupModelMaster(
new Gs2Quest.UpdateQuestGroupModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withDescription("description1")
.withMetadata(null)
.withChallengePeriodEventId("grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.update_quest_group_model_master(
quest.UpdateQuestGroupModelMasterRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('quest-group-0001')
.with_description('description1')
.with_metadata(None)
.with_challenge_period_event_id('grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.update_quest_group_model_master({
namespaceName='namespace1',
questGroupName='quest-group-0001',
description='description1',
metadata=nil,
challengePeriodEventId='grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
deleteQuestGroupModelMaster
Delete Quest Group Master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Model Name |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DeleteQuestGroupModelMaster(
&quest.DeleteQuestGroupModelMasterRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("quest-group-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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DeleteQuestGroupModelMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->deleteQuestGroupModelMaster(
(new DeleteQuestGroupModelMasterRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("quest-group-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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DeleteQuestGroupModelMasterRequest;
import io.gs2.quest.result.DeleteQuestGroupModelMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DeleteQuestGroupModelMasterResult result = client.deleteQuestGroupModelMaster(
new DeleteQuestGroupModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
);
QuestGroupModelMaster 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DeleteQuestGroupModelMasterRequest;
using Gs2.Gs2Quest.Result.DeleteQuestGroupModelMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DeleteQuestGroupModelMasterResult> asyncResult = null;
yield return client.DeleteQuestGroupModelMaster(
new Gs2.Gs2Quest.Request.DeleteQuestGroupModelMasterRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("quest-group-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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.deleteQuestGroupModelMaster(
new Gs2Quest.DeleteQuestGroupModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.delete_quest_group_model_master(
quest.DeleteQuestGroupModelMasterRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('quest-group-0001')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.delete_quest_group_model_master({
namespaceName='namespace1',
questGroupName='quest-group-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
describeQuestModelMasters
Get list of quest model masters
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Model 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<QuestModelMaster> | List of Quest Model Masters |
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/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DescribeQuestModelMasters(
&quest.DescribeQuestModelMastersRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("quest-group-0001"),
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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DescribeQuestModelMastersRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->describeQuestModelMasters(
(new DescribeQuestModelMastersRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("quest-group-0001")
->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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DescribeQuestModelMastersRequest;
import io.gs2.quest.result.DescribeQuestModelMastersResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DescribeQuestModelMastersResult result = client.describeQuestModelMasters(
new DescribeQuestModelMastersRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withPageToken(null)
.withLimit(null)
);
List<QuestModelMaster> 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DescribeQuestModelMastersRequest;
using Gs2.Gs2Quest.Result.DescribeQuestModelMastersResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DescribeQuestModelMastersResult> asyncResult = null;
yield return client.DescribeQuestModelMasters(
new Gs2.Gs2Quest.Request.DescribeQuestModelMastersRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("quest-group-0001")
.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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.describeQuestModelMasters(
new Gs2Quest.DescribeQuestModelMastersRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withPageToken(null)
.withLimit(null)
);
const items = result.getItems();
const nextPageToken = result.getNextPageToken();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.describe_quest_model_masters(
quest.DescribeQuestModelMastersRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('quest-group-0001')
.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('quest')
api_result = client.describe_quest_model_masters({
namespaceName='namespace1',
questGroupName='quest-group-0001',
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;
createQuestModelMaster
Create a new quest model master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Model Name |
name | string | | ✓ | | ~ 128 chars | Quest Name |
description | string | | | | ~ 1024 chars | description of Namespace |
metadata | string | | | | ~ 1024 chars | metadata |
contents | List<Contents> | | ✓ | | 1 ~ 10 items | Quest Description |
challengePeriodEventId | string | | | | ~ 1024 chars | GS2-Schedule event GRN that sets the time period during which the quest can be attempted. |
firstCompleteAcquireActions | List<AcquireAction> | | | [] | ~ 10 items | List of First Clear Reward Actions |
consumeActions | List<ConsumeAction> | | | [] | ~ 10 items | Quest entry fee |
failedAcquireActions | List<AcquireAction> | | | [] | ~ 100 items | Reward for quest failure |
premiseQuestNames | List<string> | | | [] | ~ 10 items | Name of the quest that must be completed in order to attempt the quest |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.CreateQuestModelMaster(
&quest.CreateQuestModelMasterRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("quest-group-0001"),
Name: pointy.String("quest-0001"),
Description: nil,
Metadata: nil,
Contents: []quest.Contents{
quest.Contents{
Metadata: pointy.String("normal"),
CompleteAcquireActions: []quest.AcquireAction{
quest.AcquireAction{
Action: pointy.String("Gs2Experience:AddExperienceByUserId"),
Request: pointy.String("Gs2Experience:AddExperienceByUserId-request1"),
},
},
Weight: pointy.Int32(1),
},
},
ChallengePeriodEventId: nil,
FirstCompleteAcquireActions: nil,
ConsumeActions: nil,
FailedAcquireActions: nil,
PremiseQuestNames: 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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\CreateQuestModelMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->createQuestModelMaster(
(new CreateQuestModelMasterRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("quest-group-0001")
->withName("quest-0001")
->withDescription(null)
->withMetadata(null)
->withContents([ (new \Gs2\Quest\Model\Contents())
->withMetadata("normal")
->withCompleteAcquireActions([ (new \Gs2\Quest\Model\AcquireAction())
->withAction("Gs2Experience:AddExperienceByUserId")
->withRequest("Gs2Experience:AddExperienceByUserId-request1"),
])
->withWeight(1),
])
->withChallengePeriodEventId(null)
->withFirstCompleteAcquireActions(null)
->withConsumeActions(null)
->withFailedAcquireActions(null)
->withPremiseQuestNames(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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.CreateQuestModelMasterRequest;
import io.gs2.quest.result.CreateQuestModelMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
CreateQuestModelMasterResult result = client.createQuestModelMaster(
new CreateQuestModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withName("quest-0001")
.withDescription(null)
.withMetadata(null)
.withContents(Arrays.asList(
new io.gs2.quest.model.Contents()
.withMetadata("normal")
.withCompleteAcquireActions(Arrays.asList(
new io.gs2.quest.model.AcquireAction()
.withAction("Gs2Experience:AddExperienceByUserId")
.withRequest("Gs2Experience:AddExperienceByUserId-request1")
))
.withWeight(1)
))
.withChallengePeriodEventId(null)
.withFirstCompleteAcquireActions(null)
.withConsumeActions(null)
.withFailedAcquireActions(null)
.withPremiseQuestNames(null)
);
QuestModelMaster 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.CreateQuestModelMasterRequest;
using Gs2.Gs2Quest.Result.CreateQuestModelMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.CreateQuestModelMasterResult> asyncResult = null;
yield return client.CreateQuestModelMaster(
new Gs2.Gs2Quest.Request.CreateQuestModelMasterRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("quest-group-0001")
.WithName("quest-0001")
.WithDescription(null)
.WithMetadata(null)
.WithContents(new Gs2.Gs2Quest.Model.Contents[] {
new Gs2.Gs2Quest.Model.Contents()
.WithMetadata("normal")
.WithCompleteAcquireActions(new Gs2.Core.Model.AcquireAction[] {
new Gs2.Core.Model.AcquireAction()
.WithAction("Gs2Experience:AddExperienceByUserId")
.WithRequest("Gs2Experience:AddExperienceByUserId-request1")
})
.WithWeight(1)
})
.WithChallengePeriodEventId(null)
.WithFirstCompleteAcquireActions(null)
.WithConsumeActions(null)
.WithFailedAcquireActions(null)
.WithPremiseQuestNames(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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.createQuestModelMaster(
new Gs2Quest.CreateQuestModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withName("quest-0001")
.withDescription(null)
.withMetadata(null)
.withContents([
new Gs2Quest.model.Contents()
.withMetadata("normal")
.withCompleteAcquireActions([
new Gs2Quest.model.AcquireAction()
.withAction("Gs2Experience:AddExperienceByUserId")
.withRequest("Gs2Experience:AddExperienceByUserId-request1")
])
.withWeight(1)
])
.withChallengePeriodEventId(null)
.withFirstCompleteAcquireActions(null)
.withConsumeActions(null)
.withFailedAcquireActions(null)
.withPremiseQuestNames(null)
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.create_quest_model_master(
quest.CreateQuestModelMasterRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('quest-group-0001')
.with_name('quest-0001')
.with_description(None)
.with_metadata(None)
.with_contents([ quest.Contents()
.with_metadata('normal')
.with_complete_acquire_actions([ quest.AcquireAction()
.with_action('Gs2Experience:AddExperienceByUserId')
.with_request('Gs2Experience:AddExperienceByUserId-request1'),
])
.with_weight(1),
])
.with_challenge_period_event_id(None)
.with_first_complete_acquire_actions(None)
.with_consume_actions(None)
.with_failed_acquire_actions(None)
.with_premise_quest_names(None)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.create_quest_model_master({
namespaceName='namespace1',
questGroupName='quest-group-0001',
name='quest-0001',
description=nil,
metadata=nil,
contents={
{
metadata='normal',
completeAcquireActions={
{
action='Gs2Experience:AddExperienceByUserId',
request='Gs2Experience:AddExperienceByUserId-request1',
}
},
weight=1,
}
},
challengePeriodEventId=nil,
firstCompleteAcquireActions=nil,
consumeActions=nil,
failedAcquireActions=nil,
premiseQuestNames=nil,
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
getQuestModelMaster
Get Quest Model Master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Model Name |
questName | string | | ✓ | | ~ 128 chars | Quest Name |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.GetQuestModelMaster(
&quest.GetQuestModelMasterRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("quest-group-0001"),
QuestName: pointy.String("quest-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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\GetQuestModelMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->getQuestModelMaster(
(new GetQuestModelMasterRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("quest-group-0001")
->withQuestName("quest-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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.GetQuestModelMasterRequest;
import io.gs2.quest.result.GetQuestModelMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
GetQuestModelMasterResult result = client.getQuestModelMaster(
new GetQuestModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withQuestName("quest-0001")
);
QuestModelMaster 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.GetQuestModelMasterRequest;
using Gs2.Gs2Quest.Result.GetQuestModelMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.GetQuestModelMasterResult> asyncResult = null;
yield return client.GetQuestModelMaster(
new Gs2.Gs2Quest.Request.GetQuestModelMasterRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("quest-group-0001")
.WithQuestName("quest-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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.getQuestModelMaster(
new Gs2Quest.GetQuestModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withQuestName("quest-0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.get_quest_model_master(
quest.GetQuestModelMasterRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('quest-group-0001')
.with_quest_name('quest-0001')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.get_quest_model_master({
namespaceName='namespace1',
questGroupName='quest-group-0001',
questName='quest-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
updateQuestModelMaster
Update Quest Model Master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Model Name |
questName | string | | ✓ | | ~ 128 chars | Quest Name |
description | string | | | | ~ 1024 chars | description of Namespace |
metadata | string | | | | ~ 1024 chars | metadata |
contents | List<Contents> | | ✓ | | 1 ~ 10 items | Quest Description |
challengePeriodEventId | string | | | | ~ 1024 chars | GS2-Schedule event GRN that sets the time period during which the quest can be attempted. |
firstCompleteAcquireActions | List<AcquireAction> | | | [] | ~ 10 items | List of First Clear Reward Actions |
consumeActions | List<ConsumeAction> | | | [] | ~ 10 items | Quest entry fee |
failedAcquireActions | List<AcquireAction> | | | [] | ~ 100 items | Reward for quest failure |
premiseQuestNames | List<string> | | | [] | ~ 10 items | Name of the quest that must be completed in order to attempt the quest |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.UpdateQuestModelMaster(
&quest.UpdateQuestModelMasterRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("quest-group-0001"),
QuestName: pointy.String("quest-0001"),
Description: pointy.String("description1"),
Metadata: nil,
Contents: []quest.Contents{
quest.Contents{
Metadata: pointy.String("normal"),
CompleteAcquireActions: []quest.AcquireAction{
quest.AcquireAction{
Action: pointy.String("Gs2Experience:AddExperienceByUserId"),
Request: pointy.String("Gs2Experience:AddExperienceByUserId-request1"),
},
},
Weight: pointy.Int32(1),
},
},
ChallengePeriodEventId: pointy.String("grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002"),
FirstCompleteAcquireActions: nil,
ConsumeActions: nil,
FailedAcquireActions: nil,
PremiseQuestNames: 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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\UpdateQuestModelMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->updateQuestModelMaster(
(new UpdateQuestModelMasterRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("quest-group-0001")
->withQuestName("quest-0001")
->withDescription("description1")
->withMetadata(null)
->withContents([ (new \Gs2\Quest\Model\Contents())
->withMetadata("normal")
->withCompleteAcquireActions([ (new \Gs2\Quest\Model\AcquireAction())
->withAction("Gs2Experience:AddExperienceByUserId")
->withRequest("Gs2Experience:AddExperienceByUserId-request1"),
])
->withWeight(1),
])
->withChallengePeriodEventId("grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002")
->withFirstCompleteAcquireActions(null)
->withConsumeActions(null)
->withFailedAcquireActions(null)
->withPremiseQuestNames(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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.UpdateQuestModelMasterRequest;
import io.gs2.quest.result.UpdateQuestModelMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
UpdateQuestModelMasterResult result = client.updateQuestModelMaster(
new UpdateQuestModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withQuestName("quest-0001")
.withDescription("description1")
.withMetadata(null)
.withContents(Arrays.asList(
new io.gs2.quest.model.Contents()
.withMetadata("normal")
.withCompleteAcquireActions(Arrays.asList(
new io.gs2.quest.model.AcquireAction()
.withAction("Gs2Experience:AddExperienceByUserId")
.withRequest("Gs2Experience:AddExperienceByUserId-request1")
))
.withWeight(1)
))
.withChallengePeriodEventId("grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002")
.withFirstCompleteAcquireActions(null)
.withConsumeActions(null)
.withFailedAcquireActions(null)
.withPremiseQuestNames(null)
);
QuestModelMaster 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.UpdateQuestModelMasterRequest;
using Gs2.Gs2Quest.Result.UpdateQuestModelMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.UpdateQuestModelMasterResult> asyncResult = null;
yield return client.UpdateQuestModelMaster(
new Gs2.Gs2Quest.Request.UpdateQuestModelMasterRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("quest-group-0001")
.WithQuestName("quest-0001")
.WithDescription("description1")
.WithMetadata(null)
.WithContents(new Gs2.Gs2Quest.Model.Contents[] {
new Gs2.Gs2Quest.Model.Contents()
.WithMetadata("normal")
.WithCompleteAcquireActions(new Gs2.Core.Model.AcquireAction[] {
new Gs2.Core.Model.AcquireAction()
.WithAction("Gs2Experience:AddExperienceByUserId")
.WithRequest("Gs2Experience:AddExperienceByUserId-request1")
})
.WithWeight(1)
})
.WithChallengePeriodEventId("grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002")
.WithFirstCompleteAcquireActions(null)
.WithConsumeActions(null)
.WithFailedAcquireActions(null)
.WithPremiseQuestNames(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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.updateQuestModelMaster(
new Gs2Quest.UpdateQuestModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withQuestName("quest-0001")
.withDescription("description1")
.withMetadata(null)
.withContents([
new Gs2Quest.model.Contents()
.withMetadata("normal")
.withCompleteAcquireActions([
new Gs2Quest.model.AcquireAction()
.withAction("Gs2Experience:AddExperienceByUserId")
.withRequest("Gs2Experience:AddExperienceByUserId-request1")
])
.withWeight(1)
])
.withChallengePeriodEventId("grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002")
.withFirstCompleteAcquireActions(null)
.withConsumeActions(null)
.withFailedAcquireActions(null)
.withPremiseQuestNames(null)
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.update_quest_model_master(
quest.UpdateQuestModelMasterRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('quest-group-0001')
.with_quest_name('quest-0001')
.with_description('description1')
.with_metadata(None)
.with_contents([ quest.Contents()
.with_metadata('normal')
.with_complete_acquire_actions([ quest.AcquireAction()
.with_action('Gs2Experience:AddExperienceByUserId')
.with_request('Gs2Experience:AddExperienceByUserId-request1'),
])
.with_weight(1),
])
.with_challenge_period_event_id('grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002')
.with_first_complete_acquire_actions(None)
.with_consume_actions(None)
.with_failed_acquire_actions(None)
.with_premise_quest_names(None)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.update_quest_model_master({
namespaceName='namespace1',
questGroupName='quest-group-0001',
questName='quest-0001',
description='description1',
metadata=nil,
contents={
{
metadata='normal',
completeAcquireActions={
{
action='Gs2Experience:AddExperienceByUserId',
request='Gs2Experience:AddExperienceByUserId-request1',
}
},
weight=1,
}
},
challengePeriodEventId='grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002',
firstCompleteAcquireActions=nil,
consumeActions=nil,
failedAcquireActions=nil,
premiseQuestNames=nil,
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
deleteQuestModelMaster
Delete Quest Model Master’
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Model Name |
questName | string | | ✓ | | ~ 128 chars | Quest Name |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DeleteQuestModelMaster(
&quest.DeleteQuestModelMasterRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("quest-group-0001"),
QuestName: pointy.String("quest-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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DeleteQuestModelMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->deleteQuestModelMaster(
(new DeleteQuestModelMasterRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("quest-group-0001")
->withQuestName("quest-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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DeleteQuestModelMasterRequest;
import io.gs2.quest.result.DeleteQuestModelMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DeleteQuestModelMasterResult result = client.deleteQuestModelMaster(
new DeleteQuestModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withQuestName("quest-0001")
);
QuestModelMaster 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DeleteQuestModelMasterRequest;
using Gs2.Gs2Quest.Result.DeleteQuestModelMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DeleteQuestModelMasterResult> asyncResult = null;
yield return client.DeleteQuestModelMaster(
new Gs2.Gs2Quest.Request.DeleteQuestModelMasterRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("quest-group-0001")
.WithQuestName("quest-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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.deleteQuestModelMaster(
new Gs2Quest.DeleteQuestModelMasterRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withQuestName("quest-0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.delete_quest_model_master(
quest.DeleteQuestModelMasterRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('quest-group-0001')
.with_quest_name('quest-0001')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.delete_quest_model_master({
namespaceName='namespace1',
questGroupName='quest-group-0001',
questName='quest-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
exportMaster
Export master data for currently active quest masters
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/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.ExportMaster(
&quest.ExportMasterRequest {
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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\ExportMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->exportMaster(
(new ExportMasterRequest())
->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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.ExportMasterRequest;
import io.gs2.quest.result.ExportMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
ExportMasterResult result = client.exportMaster(
new ExportMasterRequest()
.withNamespaceName("namespace1")
);
CurrentQuestMaster 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.ExportMasterRequest;
using Gs2.Gs2Quest.Result.ExportMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.ExportMasterResult> asyncResult = null;
yield return client.ExportMaster(
new Gs2.Gs2Quest.Request.ExportMasterRequest()
.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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.exportMaster(
new Gs2Quest.ExportMasterRequest()
.withNamespaceName("namespace1")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.export_master(
quest.ExportMasterRequest()
.with_namespace_name(self.hash1)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.export_master({
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;
getCurrentQuestMaster
Get currently active quest masters
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/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.GetCurrentQuestMaster(
&quest.GetCurrentQuestMasterRequest {
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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\GetCurrentQuestMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->getCurrentQuestMaster(
(new GetCurrentQuestMasterRequest())
->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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.GetCurrentQuestMasterRequest;
import io.gs2.quest.result.GetCurrentQuestMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
GetCurrentQuestMasterResult result = client.getCurrentQuestMaster(
new GetCurrentQuestMasterRequest()
.withNamespaceName("namespace1")
);
CurrentQuestMaster 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.GetCurrentQuestMasterRequest;
using Gs2.Gs2Quest.Result.GetCurrentQuestMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.GetCurrentQuestMasterResult> asyncResult = null;
yield return client.GetCurrentQuestMaster(
new Gs2.Gs2Quest.Request.GetCurrentQuestMasterRequest()
.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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.getCurrentQuestMaster(
new Gs2Quest.GetCurrentQuestMasterRequest()
.withNamespaceName("namespace1")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.get_current_quest_master(
quest.GetCurrentQuestMasterRequest()
.with_namespace_name(self.hash1)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.get_current_quest_master({
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;
updateCurrentQuestMaster
Update and currently available quest master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
settings | string | | ✓ | | ~ 5242880 chars | Master data |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.UpdateCurrentQuestMaster(
&quest.UpdateCurrentQuestMasterRequest {
NamespaceName: pointy.String("namespace1"),
Settings: pointy.String("{\n \"version\": \"2019-05-14\",\n \"groups\": [\n {\n \"name\": \"main\",\n \"metadata\": \"MAIN\",\n \"quests\": [\n {\n \"name\": \"1-1\",\n \"metadata\": \"stage1-1\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 10}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 100, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 99\n },\n {\n \"metadata\": \"rare\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 10}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 500, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 1\n }\n ],\n \"consumeActions\": [\n {\n \"action\": \"Gs2Stamina:ConsumeStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"consumeValue\\\": 5}\"\n }\n ],\n \"failedAcquireActions\": [\n {\n \"action\": \"Gs2Stamina:RecoverStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"recoverValue\\\": 5}\"\n }\n ],\n \"premiseQuestNames\": [\n ]\n },\n {\n \"name\": \"1-2\",\n \"metadata\": \"stage1-2\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 20}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 200, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 98\n },\n {\n \"metadata\": \"rare\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 20}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 1000, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 2\n }\n ],\n \"consumeActions\": [\n {\n \"action\": \"Gs2Stamina:ConsumeStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"consumeValue\\\": 5}\"\n }\n ],\n \"failedAcquireActions\": [\n {\n \"action\": \"Gs2Stamina:RecoverStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"recoverValue\\\": 5}\"\n }\n ],\n \"premiseQuestNames\": [\n \"1-1\"\n ]\n }\n ]\n },\n {\n \"name\": \"sub\",\n \"metadata\": \"SUB\",\n \"quests\": [\n {\n \"name\": \"1-1\",\n \"metadata\": \"stage1-1\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2JobQueue:PushByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"queue-0001\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"jobs\\\": [{\\\"scriptId\\\": \\\"script-0001\\\", \\\"args\\\": {}, \\\"maxTryCount\\\": 3}]}\"\n }\n ],\n \"weight\": 1\n }\n ],\n \"premiseQuestNames\": [\n ]\n }\n ]\n }\n ]\n }"),
}
)
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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\UpdateCurrentQuestMasterRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->updateCurrentQuestMaster(
(new UpdateCurrentQuestMasterRequest())
->withNamespaceName(self::namespace1)
->withSettings("{\n \"version\": \"2019-05-14\",\n \"groups\": [\n {\n \"name\": \"main\",\n \"metadata\": \"MAIN\",\n \"quests\": [\n {\n \"name\": \"1-1\",\n \"metadata\": \"stage1-1\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 10}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 100, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 99\n },\n {\n \"metadata\": \"rare\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 10}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 500, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 1\n }\n ],\n \"consumeActions\": [\n {\n \"action\": \"Gs2Stamina:ConsumeStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"consumeValue\\\": 5}\"\n }\n ],\n \"failedAcquireActions\": [\n {\n \"action\": \"Gs2Stamina:RecoverStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"recoverValue\\\": 5}\"\n }\n ],\n \"premiseQuestNames\": [\n ]\n },\n {\n \"name\": \"1-2\",\n \"metadata\": \"stage1-2\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 20}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 200, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 98\n },\n {\n \"metadata\": \"rare\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 20}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 1000, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 2\n }\n ],\n \"consumeActions\": [\n {\n \"action\": \"Gs2Stamina:ConsumeStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"consumeValue\\\": 5}\"\n }\n ],\n \"failedAcquireActions\": [\n {\n \"action\": \"Gs2Stamina:RecoverStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"recoverValue\\\": 5}\"\n }\n ],\n \"premiseQuestNames\": [\n \"1-1\"\n ]\n }\n ]\n },\n {\n \"name\": \"sub\",\n \"metadata\": \"SUB\",\n \"quests\": [\n {\n \"name\": \"1-1\",\n \"metadata\": \"stage1-1\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2JobQueue:PushByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"queue-0001\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"jobs\\\": [{\\\"scriptId\\\": \\\"script-0001\\\", \\\"args\\\": {}, \\\"maxTryCount\\\": 3}]}\"\n }\n ],\n \"weight\": 1\n }\n ],\n \"premiseQuestNames\": [\n ]\n }\n ]\n }\n ]\n }")
);
$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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.UpdateCurrentQuestMasterRequest;
import io.gs2.quest.result.UpdateCurrentQuestMasterResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
UpdateCurrentQuestMasterResult result = client.updateCurrentQuestMaster(
new UpdateCurrentQuestMasterRequest()
.withNamespaceName("namespace1")
.withSettings("{\n \"version\": \"2019-05-14\",\n \"groups\": [\n {\n \"name\": \"main\",\n \"metadata\": \"MAIN\",\n \"quests\": [\n {\n \"name\": \"1-1\",\n \"metadata\": \"stage1-1\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 10}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 100, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 99\n },\n {\n \"metadata\": \"rare\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 10}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 500, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 1\n }\n ],\n \"consumeActions\": [\n {\n \"action\": \"Gs2Stamina:ConsumeStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"consumeValue\\\": 5}\"\n }\n ],\n \"failedAcquireActions\": [\n {\n \"action\": \"Gs2Stamina:RecoverStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"recoverValue\\\": 5}\"\n }\n ],\n \"premiseQuestNames\": [\n ]\n },\n {\n \"name\": \"1-2\",\n \"metadata\": \"stage1-2\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 20}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 200, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 98\n },\n {\n \"metadata\": \"rare\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 20}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 1000, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 2\n }\n ],\n \"consumeActions\": [\n {\n \"action\": \"Gs2Stamina:ConsumeStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"consumeValue\\\": 5}\"\n }\n ],\n \"failedAcquireActions\": [\n {\n \"action\": \"Gs2Stamina:RecoverStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"recoverValue\\\": 5}\"\n }\n ],\n \"premiseQuestNames\": [\n \"1-1\"\n ]\n }\n ]\n },\n {\n \"name\": \"sub\",\n \"metadata\": \"SUB\",\n \"quests\": [\n {\n \"name\": \"1-1\",\n \"metadata\": \"stage1-1\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2JobQueue:PushByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"queue-0001\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"jobs\\\": [{\\\"scriptId\\\": \\\"script-0001\\\", \\\"args\\\": {}, \\\"maxTryCount\\\": 3}]}\"\n }\n ],\n \"weight\": 1\n }\n ],\n \"premiseQuestNames\": [\n ]\n }\n ]\n }\n ]\n }")
);
CurrentQuestMaster 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.UpdateCurrentQuestMasterRequest;
using Gs2.Gs2Quest.Result.UpdateCurrentQuestMasterResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.UpdateCurrentQuestMasterResult> asyncResult = null;
yield return client.UpdateCurrentQuestMaster(
new Gs2.Gs2Quest.Request.UpdateCurrentQuestMasterRequest()
.WithNamespaceName("namespace1")
.WithSettings("{\n \"version\": \"2019-05-14\",\n \"groups\": [\n {\n \"name\": \"main\",\n \"metadata\": \"MAIN\",\n \"quests\": [\n {\n \"name\": \"1-1\",\n \"metadata\": \"stage1-1\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 10}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 100, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 99\n },\n {\n \"metadata\": \"rare\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 10}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 500, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 1\n }\n ],\n \"consumeActions\": [\n {\n \"action\": \"Gs2Stamina:ConsumeStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"consumeValue\\\": 5}\"\n }\n ],\n \"failedAcquireActions\": [\n {\n \"action\": \"Gs2Stamina:RecoverStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"recoverValue\\\": 5}\"\n }\n ],\n \"premiseQuestNames\": [\n ]\n },\n {\n \"name\": \"1-2\",\n \"metadata\": \"stage1-2\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 20}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 200, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 98\n },\n {\n \"metadata\": \"rare\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 20}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 1000, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 2\n }\n ],\n \"consumeActions\": [\n {\n \"action\": \"Gs2Stamina:ConsumeStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"consumeValue\\\": 5}\"\n }\n ],\n \"failedAcquireActions\": [\n {\n \"action\": \"Gs2Stamina:RecoverStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"recoverValue\\\": 5}\"\n }\n ],\n \"premiseQuestNames\": [\n \"1-1\"\n ]\n }\n ]\n },\n {\n \"name\": \"sub\",\n \"metadata\": \"SUB\",\n \"quests\": [\n {\n \"name\": \"1-1\",\n \"metadata\": \"stage1-1\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2JobQueue:PushByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"queue-0001\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"jobs\\\": [{\\\"scriptId\\\": \\\"script-0001\\\", \\\"args\\\": {}, \\\"maxTryCount\\\": 3}]}\"\n }\n ],\n \"weight\": 1\n }\n ],\n \"premiseQuestNames\": [\n ]\n }\n ]\n }\n ]\n }"),
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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.updateCurrentQuestMaster(
new Gs2Quest.UpdateCurrentQuestMasterRequest()
.withNamespaceName("namespace1")
.withSettings("{\n \"version\": \"2019-05-14\",\n \"groups\": [\n {\n \"name\": \"main\",\n \"metadata\": \"MAIN\",\n \"quests\": [\n {\n \"name\": \"1-1\",\n \"metadata\": \"stage1-1\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 10}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 100, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 99\n },\n {\n \"metadata\": \"rare\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 10}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 500, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 1\n }\n ],\n \"consumeActions\": [\n {\n \"action\": \"Gs2Stamina:ConsumeStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"consumeValue\\\": 5}\"\n }\n ],\n \"failedAcquireActions\": [\n {\n \"action\": \"Gs2Stamina:RecoverStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"recoverValue\\\": 5}\"\n }\n ],\n \"premiseQuestNames\": [\n ]\n },\n {\n \"name\": \"1-2\",\n \"metadata\": \"stage1-2\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 20}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 200, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 98\n },\n {\n \"metadata\": \"rare\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2Experience:AddExperienceByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"experienceName\\\": \\\"player\\\", \\\"propertyId\\\": \\\"player\\\", \\\"experienceValue\\\": 20}\"\n },\n {\n \"action\": \"Gs2Inventory:AcquireItemSetByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"gold\\\", \\\"inventoryName\\\": \\\"wallet\\\", \\\"itemName\\\": \\\"basic\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"acquireCount\\\": 1000, \\\"expiresAt\\\": null}\"\n }\n ],\n \"weight\": 2\n }\n ],\n \"consumeActions\": [\n {\n \"action\": \"Gs2Stamina:ConsumeStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"consumeValue\\\": 5}\"\n }\n ],\n \"failedAcquireActions\": [\n {\n \"action\": \"Gs2Stamina:RecoverStaminaByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"basic\\\", \\\"staminaName\\\": \\\"quest\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"recoverValue\\\": 5}\"\n }\n ],\n \"premiseQuestNames\": [\n \"1-1\"\n ]\n }\n ]\n },\n {\n \"name\": \"sub\",\n \"metadata\": \"SUB\",\n \"quests\": [\n {\n \"name\": \"1-1\",\n \"metadata\": \"stage1-1\",\n \"contents\": [\n {\n \"metadata\": \"normal\",\n \"completeAcquireActions\": [\n {\n \"action\": \"Gs2JobQueue:PushByUserId\",\n \"request\": \"{\\\"namespaceName\\\": \\\"queue-0001\\\", \\\"userId\\\": \\\"#{userId}\\\", \\\"jobs\\\": [{\\\"scriptId\\\": \\\"script-0001\\\", \\\"args\\\": {}, \\\"maxTryCount\\\": 3}]}\"\n }\n ],\n \"weight\": 1\n }\n ],\n \"premiseQuestNames\": [\n ]\n }\n ]\n }\n ]\n }")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.update_current_quest_master(
quest.UpdateCurrentQuestMasterRequest()
.with_namespace_name(self.hash1)
.with_settings('{\n "version": "2019-05-14",\n "groups": [\n {\n "name": "main",\n "metadata": "MAIN",\n "quests": [\n {\n "name": "1-1",\n "metadata": "stage1-1",\n "contents": [\n {\n "metadata": "normal",\n "completeAcquireActions": [\n {\n "action": "Gs2Experience:AddExperienceByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"experienceName\\": \\"player\\", \\"propertyId\\": \\"player\\", \\"experienceValue\\": 10}"\n },\n {\n "action": "Gs2Inventory:AcquireItemSetByUserId",\n "request": "{\\"namespaceName\\": \\"gold\\", \\"inventoryName\\": \\"wallet\\", \\"itemName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"acquireCount\\": 100, \\"expiresAt\\": null}"\n }\n ],\n "weight": 99\n },\n {\n "metadata": "rare",\n "completeAcquireActions": [\n {\n "action": "Gs2Experience:AddExperienceByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"experienceName\\": \\"player\\", \\"propertyId\\": \\"player\\", \\"experienceValue\\": 10}"\n },\n {\n "action": "Gs2Inventory:AcquireItemSetByUserId",\n "request": "{\\"namespaceName\\": \\"gold\\", \\"inventoryName\\": \\"wallet\\", \\"itemName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"acquireCount\\": 500, \\"expiresAt\\": null}"\n }\n ],\n "weight": 1\n }\n ],\n "consumeActions": [\n {\n "action": "Gs2Stamina:ConsumeStaminaByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"staminaName\\": \\"quest\\", \\"userId\\": \\"#{userId}\\", \\"consumeValue\\": 5}"\n }\n ],\n "failedAcquireActions": [\n {\n "action": "Gs2Stamina:RecoverStaminaByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"staminaName\\": \\"quest\\", \\"userId\\": \\"#{userId}\\", \\"recoverValue\\": 5}"\n }\n ],\n "premiseQuestNames": [\n ]\n },\n {\n "name": "1-2",\n "metadata": "stage1-2",\n "contents": [\n {\n "metadata": "normal",\n "completeAcquireActions": [\n {\n "action": "Gs2Experience:AddExperienceByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"experienceName\\": \\"player\\", \\"propertyId\\": \\"player\\", \\"experienceValue\\": 20}"\n },\n {\n "action": "Gs2Inventory:AcquireItemSetByUserId",\n "request": "{\\"namespaceName\\": \\"gold\\", \\"inventoryName\\": \\"wallet\\", \\"itemName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"acquireCount\\": 200, \\"expiresAt\\": null}"\n }\n ],\n "weight": 98\n },\n {\n "metadata": "rare",\n "completeAcquireActions": [\n {\n "action": "Gs2Experience:AddExperienceByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"experienceName\\": \\"player\\", \\"propertyId\\": \\"player\\", \\"experienceValue\\": 20}"\n },\n {\n "action": "Gs2Inventory:AcquireItemSetByUserId",\n "request": "{\\"namespaceName\\": \\"gold\\", \\"inventoryName\\": \\"wallet\\", \\"itemName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"acquireCount\\": 1000, \\"expiresAt\\": null}"\n }\n ],\n "weight": 2\n }\n ],\n "consumeActions": [\n {\n "action": "Gs2Stamina:ConsumeStaminaByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"staminaName\\": \\"quest\\", \\"userId\\": \\"#{userId}\\", \\"consumeValue\\": 5}"\n }\n ],\n "failedAcquireActions": [\n {\n "action": "Gs2Stamina:RecoverStaminaByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"staminaName\\": \\"quest\\", \\"userId\\": \\"#{userId}\\", \\"recoverValue\\": 5}"\n }\n ],\n "premiseQuestNames": [\n "1-1"\n ]\n }\n ]\n },\n {\n "name": "sub",\n "metadata": "SUB",\n "quests": [\n {\n "name": "1-1",\n "metadata": "stage1-1",\n "contents": [\n {\n "metadata": "normal",\n "completeAcquireActions": [\n {\n "action": "Gs2JobQueue:PushByUserId",\n "request": "{\\"namespaceName\\": \\"queue-0001\\", \\"userId\\": \\"#{userId}\\", \\"jobs\\": [{\\"scriptId\\": \\"script-0001\\", \\"args\\": {}, \\"maxTryCount\\": 3}]}"\n }\n ],\n "weight": 1\n }\n ],\n "premiseQuestNames": [\n ]\n }\n ]\n }\n ]\n }')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.update_current_quest_master({
namespaceName='namespace1',
settings='{\n "version": "2019-05-14",\n "groups": [\n {\n "name": "main",\n "metadata": "MAIN",\n "quests": [\n {\n "name": "1-1",\n "metadata": "stage1-1",\n "contents": [\n {\n "metadata": "normal",\n "completeAcquireActions": [\n {\n "action": "Gs2Experience:AddExperienceByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"experienceName\\": \\"player\\", \\"propertyId\\": \\"player\\", \\"experienceValue\\": 10}"\n },\n {\n "action": "Gs2Inventory:AcquireItemSetByUserId",\n "request": "{\\"namespaceName\\": \\"gold\\", \\"inventoryName\\": \\"wallet\\", \\"itemName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"acquireCount\\": 100, \\"expiresAt\\": null}"\n }\n ],\n "weight": 99\n },\n {\n "metadata": "rare",\n "completeAcquireActions": [\n {\n "action": "Gs2Experience:AddExperienceByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"experienceName\\": \\"player\\", \\"propertyId\\": \\"player\\", \\"experienceValue\\": 10}"\n },\n {\n "action": "Gs2Inventory:AcquireItemSetByUserId",\n "request": "{\\"namespaceName\\": \\"gold\\", \\"inventoryName\\": \\"wallet\\", \\"itemName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"acquireCount\\": 500, \\"expiresAt\\": null}"\n }\n ],\n "weight": 1\n }\n ],\n "consumeActions": [\n {\n "action": "Gs2Stamina:ConsumeStaminaByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"staminaName\\": \\"quest\\", \\"userId\\": \\"#{userId}\\", \\"consumeValue\\": 5}"\n }\n ],\n "failedAcquireActions": [\n {\n "action": "Gs2Stamina:RecoverStaminaByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"staminaName\\": \\"quest\\", \\"userId\\": \\"#{userId}\\", \\"recoverValue\\": 5}"\n }\n ],\n "premiseQuestNames": [\n ]\n },\n {\n "name": "1-2",\n "metadata": "stage1-2",\n "contents": [\n {\n "metadata": "normal",\n "completeAcquireActions": [\n {\n "action": "Gs2Experience:AddExperienceByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"experienceName\\": \\"player\\", \\"propertyId\\": \\"player\\", \\"experienceValue\\": 20}"\n },\n {\n "action": "Gs2Inventory:AcquireItemSetByUserId",\n "request": "{\\"namespaceName\\": \\"gold\\", \\"inventoryName\\": \\"wallet\\", \\"itemName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"acquireCount\\": 200, \\"expiresAt\\": null}"\n }\n ],\n "weight": 98\n },\n {\n "metadata": "rare",\n "completeAcquireActions": [\n {\n "action": "Gs2Experience:AddExperienceByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"experienceName\\": \\"player\\", \\"propertyId\\": \\"player\\", \\"experienceValue\\": 20}"\n },\n {\n "action": "Gs2Inventory:AcquireItemSetByUserId",\n "request": "{\\"namespaceName\\": \\"gold\\", \\"inventoryName\\": \\"wallet\\", \\"itemName\\": \\"basic\\", \\"userId\\": \\"#{userId}\\", \\"acquireCount\\": 1000, \\"expiresAt\\": null}"\n }\n ],\n "weight": 2\n }\n ],\n "consumeActions": [\n {\n "action": "Gs2Stamina:ConsumeStaminaByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"staminaName\\": \\"quest\\", \\"userId\\": \\"#{userId}\\", \\"consumeValue\\": 5}"\n }\n ],\n "failedAcquireActions": [\n {\n "action": "Gs2Stamina:RecoverStaminaByUserId",\n "request": "{\\"namespaceName\\": \\"basic\\", \\"staminaName\\": \\"quest\\", \\"userId\\": \\"#{userId}\\", \\"recoverValue\\": 5}"\n }\n ],\n "premiseQuestNames": [\n "1-1"\n ]\n }\n ]\n },\n {\n "name": "sub",\n "metadata": "SUB",\n "quests": [\n {\n "name": "1-1",\n "metadata": "stage1-1",\n "contents": [\n {\n "metadata": "normal",\n "completeAcquireActions": [\n {\n "action": "Gs2JobQueue:PushByUserId",\n "request": "{\\"namespaceName\\": \\"queue-0001\\", \\"userId\\": \\"#{userId}\\", \\"jobs\\": [{\\"scriptId\\": \\"script-0001\\", \\"args\\": {}, \\"maxTryCount\\": 3}]}"\n }\n ],\n "weight": 1\n }\n ],\n "premiseQuestNames": [\n ]\n }\n ]\n }\n ]\n }',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
updateCurrentQuestMasterFromGitHub
Update and currently available quest master
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
checkoutSetting | GitHubCheckoutSetting | | ✓ | | | Setup to check out master data from GitHub |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.UpdateCurrentQuestMasterFromGitHub(
&quest.UpdateCurrentQuestMasterFromGitHubRequest {
NamespaceName: pointy.String("namespace1"),
CheckoutSetting: {'apiKeyId': '$gitHubApiKey1.apiKeyId', 'repositoryName': 'gs2io/master-data', 'sourcePath': 'path/to/file.json', 'referenceType': 'branch', 'branchName': 'develop'},
}
)
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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\UpdateCurrentQuestMasterFromGitHubRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->updateCurrentQuestMasterFromGitHub(
(new UpdateCurrentQuestMasterFromGitHubRequest())
->withNamespaceName(self::namespace1)
->withCheckoutSetting({'apiKeyId': '$gitHubApiKey1.apiKeyId', 'repositoryName': 'gs2io/master-data', 'sourcePath': 'path/to/file.json', 'referenceType': 'branch', 'branchName': 'develop'})
);
$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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.UpdateCurrentQuestMasterFromGitHubRequest;
import io.gs2.quest.result.UpdateCurrentQuestMasterFromGitHubResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
UpdateCurrentQuestMasterFromGitHubResult result = client.updateCurrentQuestMasterFromGitHub(
new UpdateCurrentQuestMasterFromGitHubRequest()
.withNamespaceName("namespace1")
.withCheckoutSetting({'apiKeyId': '$gitHubApiKey1.apiKeyId', 'repositoryName': 'gs2io/master-data', 'sourcePath': 'path/to/file.json', 'referenceType': 'branch', 'branchName': 'develop'})
);
CurrentQuestMaster 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.UpdateCurrentQuestMasterFromGitHubRequest;
using Gs2.Gs2Quest.Result.UpdateCurrentQuestMasterFromGitHubResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.UpdateCurrentQuestMasterFromGitHubResult> asyncResult = null;
yield return client.UpdateCurrentQuestMasterFromGitHub(
new Gs2.Gs2Quest.Request.UpdateCurrentQuestMasterFromGitHubRequest()
.WithNamespaceName("namespace1")
.WithCheckoutSetting({'apiKeyId': '$gitHubApiKey1.apiKeyId', 'repositoryName': 'gs2io/master-data', 'sourcePath': 'path/to/file.json', 'referenceType': 'branch', 'branchName': 'develop'}),
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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.updateCurrentQuestMasterFromGitHub(
new Gs2Quest.UpdateCurrentQuestMasterFromGitHubRequest()
.withNamespaceName("namespace1")
.withCheckoutSetting({'apiKeyId': '$gitHubApiKey1.apiKeyId', 'repositoryName': 'gs2io/master-data', 'sourcePath': 'path/to/file.json', 'referenceType': 'branch', 'branchName': 'develop'})
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.update_current_quest_master_from_git_hub(
quest.UpdateCurrentQuestMasterFromGitHubRequest()
.with_namespace_name(self.hash1)
.with_checkout_setting({'apiKeyId': '$gitHubApiKey1.apiKeyId', 'repositoryName': 'gs2io/master-data', 'sourcePath': 'path/to/file.json', 'referenceType': 'branch', 'branchName': 'develop'})
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.update_current_quest_master_from_git_hub({
namespaceName='namespace1',
checkoutSetting={'apiKeyId': '$gitHubApiKey1.apiKeyId', 'repositoryName': 'gs2io/master-data', 'sourcePath': 'path/to/file.json', 'referenceType': 'branch', 'branchName': 'develop'},
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
describeProgressesByUserId
Get list of quest progress
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
userId | string | | ✓ | | ~ 128 chars | User Id |
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<Progress> | List of Quest Progresses |
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/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DescribeProgressesByUserId(
&quest.DescribeProgressesByUserIdRequest {
NamespaceName: pointy.String("namespace1"),
UserId: pointy.String("user-0001"),
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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DescribeProgressesByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->describeProgressesByUserId(
(new DescribeProgressesByUserIdRequest())
->withNamespaceName(self::namespace1)
->withUserId("user-0001")
->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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DescribeProgressesByUserIdRequest;
import io.gs2.quest.result.DescribeProgressesByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DescribeProgressesByUserIdResult result = client.describeProgressesByUserId(
new DescribeProgressesByUserIdRequest()
.withNamespaceName("namespace1")
.withUserId("user-0001")
.withPageToken(null)
.withLimit(null)
);
List<Progress> 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DescribeProgressesByUserIdRequest;
using Gs2.Gs2Quest.Result.DescribeProgressesByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DescribeProgressesByUserIdResult> asyncResult = null;
yield return client.DescribeProgressesByUserId(
new Gs2.Gs2Quest.Request.DescribeProgressesByUserIdRequest()
.WithNamespaceName("namespace1")
.WithUserId("user-0001")
.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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.describeProgressesByUserId(
new Gs2Quest.DescribeProgressesByUserIdRequest()
.withNamespaceName("namespace1")
.withUserId("user-0001")
.withPageToken(null)
.withLimit(null)
);
const items = result.getItems();
const nextPageToken = result.getNextPageToken();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.describe_progresses_by_user_id(
quest.DescribeProgressesByUserIdRequest()
.with_namespace_name(self.hash1)
.with_user_id('user-0001')
.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('quest')
api_result = client.describe_progresses_by_user_id({
namespaceName='namespace1',
userId='user-0001',
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;
createProgressByUserId
Create quest progress by specifying user ID
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
userId | string | | ✓ | | ~ 128 chars | User Id |
questModelId | string | | ✓ | | ~ 1024 chars | Quest model GRN in progress |
force | bool | | ✓ | false | | If have a quest already started, you can discard it and start it |
config | List<Config> | | | [] | ~ 32 items | Set values to be applied to stamp sheet variables |
Result
| Type | Description |
---|
item | Progress | Quest Progress |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.CreateProgressByUserId(
&quest.CreateProgressByUserIdRequest {
NamespaceName: pointy.String("namespace1"),
UserId: pointy.String("user-0001"),
QuestModelId: pointy.String("grn:gs2:ap-northeast-1:YourOwnerId:quest:namespace1:group:main:quest:1-1"),
Force: nil,
Config: 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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\CreateProgressByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->createProgressByUserId(
(new CreateProgressByUserIdRequest())
->withNamespaceName(self::namespace1)
->withUserId("user-0001")
->withQuestModelId("grn:gs2:ap-northeast-1:YourOwnerId:quest:\namespace1:group:main:quest:1-1")
->withForce(null)
->withConfig(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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.CreateProgressByUserIdRequest;
import io.gs2.quest.result.CreateProgressByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
CreateProgressByUserIdResult result = client.createProgressByUserId(
new CreateProgressByUserIdRequest()
.withNamespaceName("namespace1")
.withUserId("user-0001")
.withQuestModelId("grn:gs2:ap-northeast-1:YourOwnerId:quest:namespace1:group:main:quest:1-1")
.withForce(null)
.withConfig(null)
);
Progress 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.CreateProgressByUserIdRequest;
using Gs2.Gs2Quest.Result.CreateProgressByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.CreateProgressByUserIdResult> asyncResult = null;
yield return client.CreateProgressByUserId(
new Gs2.Gs2Quest.Request.CreateProgressByUserIdRequest()
.WithNamespaceName("namespace1")
.WithUserId("user-0001")
.WithQuestModelId("grn:gs2:ap-northeast-1:YourOwnerId:quest:namespace1:group:main:quest:1-1")
.WithForce(null)
.WithConfig(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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.createProgressByUserId(
new Gs2Quest.CreateProgressByUserIdRequest()
.withNamespaceName("namespace1")
.withUserId("user-0001")
.withQuestModelId("grn:gs2:ap-northeast-1:YourOwnerId:quest:namespace1:group:main:quest:1-1")
.withForce(null)
.withConfig(null)
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.create_progress_by_user_id(
quest.CreateProgressByUserIdRequest()
.with_namespace_name(self.hash1)
.with_user_id('user-0001')
.with_quest_model_id('grn:gs2:ap-northeast-1:YourOwnerId:quest:namespace1:group:main:quest:1-1')
.with_force(None)
.with_config(None)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.create_progress_by_user_id({
namespaceName='namespace1',
userId='user-0001',
questModelId='grn:gs2:ap-northeast-1:YourOwnerId:quest:namespace1:group:main:quest:1-1',
force=nil,
config=nil,
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
getProgress
Get quest progress
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
accessToken | string | | ✓ | | ~ 128 chars | User Id |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.GetProgress(
&quest.GetProgressRequest {
NamespaceName: pointy.String("namespace1"),
AccessToken: pointy.String("$access_token_0001"),
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
questGroup := result.QuestGroup
quest := result.Quest
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\GetProgressRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->getProgress(
(new GetProgressRequest())
->withNamespaceName(self::namespace1)
->withAccessToken(self::$accessToken0001)
);
$item = $result->getItem();
$questGroup = $result->getQuestGroup();
$quest = $result->getQuest();
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.GetProgressRequest;
import io.gs2.quest.result.GetProgressResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
GetProgressResult result = client.getProgress(
new GetProgressRequest()
.withNamespaceName("namespace1")
.withAccessToken("$access_token_0001")
);
Progress item = result.getItem();
QuestGroupModel questGroup = result.getQuestGroup();
QuestModel quest = result.getQuest();
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.GetProgressRequest;
using Gs2.Gs2Quest.Result.GetProgressResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.GetProgressResult> asyncResult = null;
yield return client.GetProgress(
new Gs2.Gs2Quest.Request.GetProgressRequest()
.WithNamespaceName("namespace1")
.WithAccessToken("$access_token_0001"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
var questGroup = result.QuestGroup;
var quest = result.Quest;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.getProgress(
new Gs2Quest.GetProgressRequest()
.withNamespaceName("namespace1")
.withAccessToken("$access_token_0001")
);
const item = result.getItem();
const questGroup = result.getQuestGroup();
const quest = result.getQuest();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.get_progress(
quest.GetProgressRequest()
.with_namespace_name(self.hash1)
.with_access_token(self.access_token_0001)
)
item = result.item
quest_group = result.quest_group
quest = result.quest
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.get_progress({
namespaceName='namespace1',
accessToken='$access_token_0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
questGroup = result.questGroup;
quest = result.quest;
getProgressByUserId
Get quest progress by specifying user ID
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
userId | string | | ✓ | | ~ 128 chars | User Id |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.GetProgressByUserId(
&quest.GetProgressByUserIdRequest {
NamespaceName: pointy.String("namespace1"),
UserId: pointy.String("user-0001"),
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
questGroup := result.QuestGroup
quest := result.Quest
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\GetProgressByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->getProgressByUserId(
(new GetProgressByUserIdRequest())
->withNamespaceName(self::namespace1)
->withUserId("user-0001")
);
$item = $result->getItem();
$questGroup = $result->getQuestGroup();
$quest = $result->getQuest();
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.GetProgressByUserIdRequest;
import io.gs2.quest.result.GetProgressByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
GetProgressByUserIdResult result = client.getProgressByUserId(
new GetProgressByUserIdRequest()
.withNamespaceName("namespace1")
.withUserId("user-0001")
);
Progress item = result.getItem();
QuestGroupModel questGroup = result.getQuestGroup();
QuestModel quest = result.getQuest();
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.GetProgressByUserIdRequest;
using Gs2.Gs2Quest.Result.GetProgressByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.GetProgressByUserIdResult> asyncResult = null;
yield return client.GetProgressByUserId(
new Gs2.Gs2Quest.Request.GetProgressByUserIdRequest()
.WithNamespaceName("namespace1")
.WithUserId("user-0001"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
var questGroup = result.QuestGroup;
var quest = result.Quest;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.getProgressByUserId(
new Gs2Quest.GetProgressByUserIdRequest()
.withNamespaceName("namespace1")
.withUserId("user-0001")
);
const item = result.getItem();
const questGroup = result.getQuestGroup();
const quest = result.getQuest();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.get_progress_by_user_id(
quest.GetProgressByUserIdRequest()
.with_namespace_name(self.hash1)
.with_user_id('user-0001')
)
item = result.item
quest_group = result.quest_group
quest = result.quest
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.get_progress_by_user_id({
namespaceName='namespace1',
userId='user-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
questGroup = result.questGroup;
quest = result.quest;
start
Start Quest
Within the same category, a game player can execute one quest at a time.
If there is already a quest running in the same category, this API will return an error.
By calling the API to retrieve quests in progress, you can get the information you need to resume a quest.
You can force a quest to start by specifying true for the force parameter.
If the quest is successfully started, a Progress object is responded to.
The Progress object responds with some information necessary to execute the quest.
transactionId is the unique ID of the running quest.
This ID must be specified when reporting the completion of a quest.
randomSeed is a random number seed that can be used to determine the contents of the quest.
A different random number is dispensed each time you start a quest, so you can use this value as the seed value to keep the game going.
Even if an application is forcefully terminated during a quest, it can be resumed under the same conditions.
The rewards are the “maximum value” of the rewards and their quantities available for this quest.
You can also pass rewards to the quest completion report, where you specify the quantity of items actually obtained during the quest.
See the Quest Completion Reporting API documentation for more details.
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Name |
questName | string | | ✓ | | ~ 128 chars | Quest Name |
accessToken | string | | ✓ | | ~ 128 chars | User Id |
force | bool | | ✓ | false | | If have a quest already started, you can discard it and start it |
config | List<Config> | | | [] | ~ 32 items | Set values to be applied to stamp sheet variables |
Result
| Type | Description |
---|
transactionId | string | Transaction ID of the stamp sheet issued |
stampSheet | string | Stamp sheet used to execute the quest initiation process |
stampSheetEncryptionKeyId | string | Cryptographic key GRN used for stamp sheet signature calculations |
autoRunStampSheet | bool? | Is stamp sheet auto-execution enabled? |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.Start(
&quest.StartRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("group-0001"),
QuestName: pointy.String("quest-0001"),
AccessToken: pointy.String("$access_token_0001"),
Force: nil,
Config: nil,
}
)
if err != nil {
panic("error occurred")
}
transactionId := result.TransactionId
stampSheet := result.StampSheet
stampSheetEncryptionKeyId := result.StampSheetEncryptionKeyId
autoRunStampSheet := result.AutoRunStampSheet
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\StartRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->start(
(new StartRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("group-0001")
->withQuestName("quest-0001")
->withAccessToken(self::$accessToken0001)
->withForce(null)
->withConfig(null)
);
$transactionId = $result->getTransactionId();
$stampSheet = $result->getStampSheet();
$stampSheetEncryptionKeyId = $result->getStampSheetEncryptionKeyId();
$autoRunStampSheet = $result->getAutoRunStampSheet();
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.StartRequest;
import io.gs2.quest.result.StartResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
StartResult result = client.start(
new StartRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("group-0001")
.withQuestName("quest-0001")
.withAccessToken("$access_token_0001")
.withForce(null)
.withConfig(null)
);
String transactionId = result.getTransactionId();
String stampSheet = result.getStampSheet();
String stampSheetEncryptionKeyId = result.getStampSheetEncryptionKeyId();
boolean autoRunStampSheet = result.getAutoRunStampSheet();
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.StartRequest;
using Gs2.Gs2Quest.Result.StartResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.StartResult> asyncResult = null;
yield return client.Start(
new Gs2.Gs2Quest.Request.StartRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("group-0001")
.WithQuestName("quest-0001")
.WithAccessToken("$access_token_0001")
.WithForce(null)
.WithConfig(null),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var transactionId = result.TransactionId;
var stampSheet = result.StampSheet;
var stampSheetEncryptionKeyId = result.StampSheetEncryptionKeyId;
var autoRunStampSheet = result.AutoRunStampSheet;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.start(
new Gs2Quest.StartRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("group-0001")
.withQuestName("quest-0001")
.withAccessToken("$access_token_0001")
.withForce(null)
.withConfig(null)
);
const transactionId = result.getTransactionId();
const stampSheet = result.getStampSheet();
const stampSheetEncryptionKeyId = result.getStampSheetEncryptionKeyId();
const autoRunStampSheet = result.getAutoRunStampSheet();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.start(
quest.StartRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('group-0001')
.with_quest_name('quest-0001')
.with_access_token(self.access_token_0001)
.with_force(None)
.with_config(None)
)
transaction_id = result.transaction_id
stamp_sheet = result.stamp_sheet
stamp_sheet_encryption_key_id = result.stamp_sheet_encryption_key_id
auto_run_stamp_sheet = result.auto_run_stamp_sheet
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.start({
namespaceName='namespace1',
questGroupName='group-0001',
questName='quest-0001',
accessToken='$access_token_0001',
force=nil,
config=nil,
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
transactionId = result.transactionId;
stampSheet = result.stampSheet;
stampSheetEncryptionKeyId = result.stampSheetEncryptionKeyId;
autoRunStampSheet = result.autoRunStampSheet;
startByUserId
Start a quest by specifying a user ID
Within the same category, a game player can execute one quest at a time.
If there is already a running quest in the same category, this API will return an error.
By calling the API to retrieve quests in progress, you can get the information you need to resume a quest.
You can force a quest to start by specifying true for the force parameter.
If the quest is successfully started, a Progress object is responded to.
The Progress object responds with some information necessary to execute the quest.
transactionId is the unique ID of the running quest.
This ID must be specified when reporting the completion of a quest.
randomSeed is a random number seed that can be used to determine the contents of the quest.
A different random number is dispensed each time a quest is opened®, so you can use this value as a seed value to keep the game going.
Even if an application is forcefully terminated during a quest, it can be resumed under the same conditions.
The rewards are the “maximum value” of the rewards and their quantities available for this quest.
You can also pass rewards to the quest completion report, where you specify the quantity of items actually obtained during the quest.
See the Quest Completion Reporting API documentation for more details.
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Name |
questName | string | | ✓ | | ~ 128 chars | Quest Name |
userId | string | | ✓ | | ~ 128 chars | User Id |
force | bool | | ✓ | false | | If have a quest already started, you can discard it and start it |
config | List<Config> | | | [] | ~ 32 items | Set values to be applied to stamp sheet variables |
Result
| Type | Description |
---|
transactionId | string | Transaction ID of the stamp sheet issued |
stampSheet | string | Stamp sheet used to execute the quest initiation process |
stampSheetEncryptionKeyId | string | Cryptographic key GRN used for stamp sheet signature calculations |
autoRunStampSheet | bool? | Is stamp sheet auto-execution enabled? |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.StartByUserId(
&quest.StartByUserIdRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("group-0001"),
QuestName: pointy.String("quest-0001"),
UserId: pointy.String("user-0001"),
Force: nil,
Config: nil,
}
)
if err != nil {
panic("error occurred")
}
transactionId := result.TransactionId
stampSheet := result.StampSheet
stampSheetEncryptionKeyId := result.StampSheetEncryptionKeyId
autoRunStampSheet := result.AutoRunStampSheet
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\StartByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->startByUserId(
(new StartByUserIdRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("group-0001")
->withQuestName("quest-0001")
->withUserId("user-0001")
->withForce(null)
->withConfig(null)
);
$transactionId = $result->getTransactionId();
$stampSheet = $result->getStampSheet();
$stampSheetEncryptionKeyId = $result->getStampSheetEncryptionKeyId();
$autoRunStampSheet = $result->getAutoRunStampSheet();
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.StartByUserIdRequest;
import io.gs2.quest.result.StartByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
StartByUserIdResult result = client.startByUserId(
new StartByUserIdRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("group-0001")
.withQuestName("quest-0001")
.withUserId("user-0001")
.withForce(null)
.withConfig(null)
);
String transactionId = result.getTransactionId();
String stampSheet = result.getStampSheet();
String stampSheetEncryptionKeyId = result.getStampSheetEncryptionKeyId();
boolean autoRunStampSheet = result.getAutoRunStampSheet();
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.StartByUserIdRequest;
using Gs2.Gs2Quest.Result.StartByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.StartByUserIdResult> asyncResult = null;
yield return client.StartByUserId(
new Gs2.Gs2Quest.Request.StartByUserIdRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("group-0001")
.WithQuestName("quest-0001")
.WithUserId("user-0001")
.WithForce(null)
.WithConfig(null),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var transactionId = result.TransactionId;
var stampSheet = result.StampSheet;
var stampSheetEncryptionKeyId = result.StampSheetEncryptionKeyId;
var autoRunStampSheet = result.AutoRunStampSheet;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.startByUserId(
new Gs2Quest.StartByUserIdRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("group-0001")
.withQuestName("quest-0001")
.withUserId("user-0001")
.withForce(null)
.withConfig(null)
);
const transactionId = result.getTransactionId();
const stampSheet = result.getStampSheet();
const stampSheetEncryptionKeyId = result.getStampSheetEncryptionKeyId();
const autoRunStampSheet = result.getAutoRunStampSheet();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.start_by_user_id(
quest.StartByUserIdRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('group-0001')
.with_quest_name('quest-0001')
.with_user_id('user-0001')
.with_force(None)
.with_config(None)
)
transaction_id = result.transaction_id
stamp_sheet = result.stamp_sheet
stamp_sheet_encryption_key_id = result.stamp_sheet_encryption_key_id
auto_run_stamp_sheet = result.auto_run_stamp_sheet
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.start_by_user_id({
namespaceName='namespace1',
questGroupName='group-0001',
questName='quest-0001',
userId='user-0001',
force=nil,
config=nil,
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
transactionId = result.transactionId;
stampSheet = result.stampSheet;
stampSheetEncryptionKeyId = result.stampSheetEncryptionKeyId;
autoRunStampSheet = result.autoRunStampSheet;
end
Completed Quest
Of the “maximum” of available rewards and their quantity in the quest received at the start of the quest, the rewards actually obtained in the quest are reported in rewards.
isComplete reports whether the quest was completed. If the quest is failed, the rewards value is ignored and the reward for failure set for the quest is given.
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
accessToken | string | | ✓ | | ~ 128 chars | User Id |
rewards | List<Reward> | | | [] | ~ 1000 items | The actual rewards from the quest |
isComplete | bool | | ✓ | | | Completed the quest |
config | List<Config> | | | [] | ~ 32 items | Set values to be applied to stamp sheet variables |
Result
| Type | Description |
---|
item | Progress | Quest Progress |
transactionId | string | Transaction ID of the stamp sheet issued |
stampSheet | string | Stamp sheet used to execute the reward granting process |
stampSheetEncryptionKeyId | string | Cryptographic key GRN used for stamp sheet signature calculations |
autoRunStampSheet | bool? | Is stamp sheet auto-execution enabled? |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.End(
&quest.EndRequest {
NamespaceName: pointy.String("namespace1"),
AccessToken: pointy.String("$access_token_0001"),
Rewards: []quest.Reward{
{},
},
IsComplete: pointy.Bool(true),
Config: nil,
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
transactionId := result.TransactionId
stampSheet := result.StampSheet
stampSheetEncryptionKeyId := result.StampSheetEncryptionKeyId
autoRunStampSheet := result.AutoRunStampSheet
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\EndRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->end(
(new EndRequest())
->withNamespaceName(self::namespace1)
->withAccessToken(self::$accessToken0001)
->withRewards([ {},
])
->withIsComplete(True)
->withConfig(null)
);
$item = $result->getItem();
$transactionId = $result->getTransactionId();
$stampSheet = $result->getStampSheet();
$stampSheetEncryptionKeyId = $result->getStampSheetEncryptionKeyId();
$autoRunStampSheet = $result->getAutoRunStampSheet();
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.EndRequest;
import io.gs2.quest.result.EndResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
EndResult result = client.end(
new EndRequest()
.withNamespaceName("namespace1")
.withAccessToken("$access_token_0001")
.withRewards(Arrays.asList(
{}
))
.withIsComplete(true)
.withConfig(null)
);
Progress item = result.getItem();
String transactionId = result.getTransactionId();
String stampSheet = result.getStampSheet();
String stampSheetEncryptionKeyId = result.getStampSheetEncryptionKeyId();
boolean autoRunStampSheet = result.getAutoRunStampSheet();
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.EndRequest;
using Gs2.Gs2Quest.Result.EndResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.EndResult> asyncResult = null;
yield return client.End(
new Gs2.Gs2Quest.Request.EndRequest()
.WithNamespaceName("namespace1")
.WithAccessToken("$access_token_0001")
.WithRewards(new Gs2.Gs2Quest.Model.Reward[] {
{}
})
.WithIsComplete(true)
.WithConfig(null),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
var transactionId = result.TransactionId;
var stampSheet = result.StampSheet;
var stampSheetEncryptionKeyId = result.StampSheetEncryptionKeyId;
var autoRunStampSheet = result.AutoRunStampSheet;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.end(
new Gs2Quest.EndRequest()
.withNamespaceName("namespace1")
.withAccessToken("$access_token_0001")
.withRewards([
{}
])
.withIsComplete(true)
.withConfig(null)
);
const item = result.getItem();
const transactionId = result.getTransactionId();
const stampSheet = result.getStampSheet();
const stampSheetEncryptionKeyId = result.getStampSheetEncryptionKeyId();
const autoRunStampSheet = result.getAutoRunStampSheet();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.end(
quest.EndRequest()
.with_namespace_name(self.hash1)
.with_access_token(self.access_token_0001)
.with_rewards([ {},
])
.with_is_complete(True)
.with_config(None)
)
item = result.item
transaction_id = result.transaction_id
stamp_sheet = result.stamp_sheet
stamp_sheet_encryption_key_id = result.stamp_sheet_encryption_key_id
auto_run_stamp_sheet = result.auto_run_stamp_sheet
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.end({
namespaceName='namespace1',
accessToken='$access_token_0001',
rewards={
{}
},
isComplete=true,
config=nil,
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
transactionId = result.transactionId;
stampSheet = result.stampSheet;
stampSheetEncryptionKeyId = result.stampSheetEncryptionKeyId;
autoRunStampSheet = result.autoRunStampSheet;
endByUserId
Complete quest with user ID
Of the “maximum” of available rewards and their quantity in the quest received at the start of the quest, the rewards actually obtained in the quest are reported in rewards.
isComplete reports whether the quest was completed. If the quest is failed, the rewards value is ignored and the reward for failure set for the quest is given.
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
userId | string | | ✓ | | ~ 128 chars | User Id |
rewards | List<Reward> | | | [] | ~ 1000 items | The actual rewards from the quest |
isComplete | bool | | ✓ | | | Completed the quest |
config | List<Config> | | | [] | ~ 32 items | Set values to be applied to stamp sheet variables |
Result
| Type | Description |
---|
item | Progress | Quest Progress |
transactionId | string | Transaction ID of the stamp sheet issued |
stampSheet | string | Stamp sheet used to execute the reward granting process |
stampSheetEncryptionKeyId | string | Cryptographic key GRN used for stamp sheet signature calculations |
autoRunStampSheet | bool? | Is stamp sheet auto-execution enabled? |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.EndByUserId(
&quest.EndByUserIdRequest {
NamespaceName: pointy.String("namespace1"),
UserId: pointy.String("user-0001"),
Rewards: pointy.String("$progress1.rewards"),
IsComplete: pointy.Bool(true),
Config: nil,
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
transactionId := result.TransactionId
stampSheet := result.StampSheet
stampSheetEncryptionKeyId := result.StampSheetEncryptionKeyId
autoRunStampSheet := result.AutoRunStampSheet
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\EndByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->endByUserId(
(new EndByUserIdRequest())
->withNamespaceName(self::namespace1)
->withUserId("user-0001")
->withRewards(self::$progress1.rewards)
->withIsComplete(True)
->withConfig(null)
);
$item = $result->getItem();
$transactionId = $result->getTransactionId();
$stampSheet = $result->getStampSheet();
$stampSheetEncryptionKeyId = $result->getStampSheetEncryptionKeyId();
$autoRunStampSheet = $result->getAutoRunStampSheet();
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.EndByUserIdRequest;
import io.gs2.quest.result.EndByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
EndByUserIdResult result = client.endByUserId(
new EndByUserIdRequest()
.withNamespaceName("namespace1")
.withUserId("user-0001")
.withRewards("$progress1.rewards")
.withIsComplete(true)
.withConfig(null)
);
Progress item = result.getItem();
String transactionId = result.getTransactionId();
String stampSheet = result.getStampSheet();
String stampSheetEncryptionKeyId = result.getStampSheetEncryptionKeyId();
boolean autoRunStampSheet = result.getAutoRunStampSheet();
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.EndByUserIdRequest;
using Gs2.Gs2Quest.Result.EndByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.EndByUserIdResult> asyncResult = null;
yield return client.EndByUserId(
new Gs2.Gs2Quest.Request.EndByUserIdRequest()
.WithNamespaceName("namespace1")
.WithUserId("user-0001")
.WithRewards("$progress1.rewards")
.WithIsComplete(true)
.WithConfig(null),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
var transactionId = result.TransactionId;
var stampSheet = result.StampSheet;
var stampSheetEncryptionKeyId = result.StampSheetEncryptionKeyId;
var autoRunStampSheet = result.AutoRunStampSheet;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.endByUserId(
new Gs2Quest.EndByUserIdRequest()
.withNamespaceName("namespace1")
.withUserId("user-0001")
.withRewards("$progress1.rewards")
.withIsComplete(true)
.withConfig(null)
);
const item = result.getItem();
const transactionId = result.getTransactionId();
const stampSheet = result.getStampSheet();
const stampSheetEncryptionKeyId = result.getStampSheetEncryptionKeyId();
const autoRunStampSheet = result.getAutoRunStampSheet();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.end_by_user_id(
quest.EndByUserIdRequest()
.with_namespace_name(self.hash1)
.with_user_id('user-0001')
.with_rewards(self.progress1.rewards)
.with_is_complete(True)
.with_config(None)
)
item = result.item
transaction_id = result.transaction_id
stamp_sheet = result.stamp_sheet
stamp_sheet_encryption_key_id = result.stamp_sheet_encryption_key_id
auto_run_stamp_sheet = result.auto_run_stamp_sheet
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.end_by_user_id({
namespaceName='namespace1',
userId='user-0001',
rewards='$progress1.rewards',
isComplete=true,
config=nil,
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
transactionId = result.transactionId;
stampSheet = result.stampSheet;
stampSheetEncryptionKeyId = result.stampSheetEncryptionKeyId;
autoRunStampSheet = result.autoRunStampSheet;
deleteProgress
Get quest progress
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
accessToken | string | | ✓ | | ~ 128 chars | User Id |
Result
| Type | Description |
---|
item | Progress | Quest Progress |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DeleteProgress(
&quest.DeleteProgressRequest {
NamespaceName: pointy.String("namespace1"),
AccessToken: pointy.String("$access_token_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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DeleteProgressRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->deleteProgress(
(new DeleteProgressRequest())
->withNamespaceName(self::namespace1)
->withAccessToken(self::$accessToken0001)
);
$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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DeleteProgressRequest;
import io.gs2.quest.result.DeleteProgressResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DeleteProgressResult result = client.deleteProgress(
new DeleteProgressRequest()
.withNamespaceName("namespace1")
.withAccessToken("$access_token_0001")
);
Progress 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DeleteProgressRequest;
using Gs2.Gs2Quest.Result.DeleteProgressResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DeleteProgressResult> asyncResult = null;
yield return client.DeleteProgress(
new Gs2.Gs2Quest.Request.DeleteProgressRequest()
.WithNamespaceName("namespace1")
.WithAccessToken("$access_token_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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.deleteProgress(
new Gs2Quest.DeleteProgressRequest()
.withNamespaceName("namespace1")
.withAccessToken("$access_token_0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.delete_progress(
quest.DeleteProgressRequest()
.with_namespace_name(self.hash1)
.with_access_token(self.access_token_0001)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.delete_progress({
namespaceName='namespace1',
accessToken='$access_token_0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
deleteProgressByUserId
Delete quest progress by specifying user ID
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
userId | string | | ✓ | | ~ 128 chars | User Id |
Result
| Type | Description |
---|
item | Progress | Quest Progress |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DeleteProgressByUserId(
&quest.DeleteProgressByUserIdRequest {
NamespaceName: pointy.String("namespace1"),
UserId: pointy.String("user-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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DeleteProgressByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->deleteProgressByUserId(
(new DeleteProgressByUserIdRequest())
->withNamespaceName(self::namespace1)
->withUserId("user-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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DeleteProgressByUserIdRequest;
import io.gs2.quest.result.DeleteProgressByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DeleteProgressByUserIdResult result = client.deleteProgressByUserId(
new DeleteProgressByUserIdRequest()
.withNamespaceName("namespace1")
.withUserId("user-0001")
);
Progress 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DeleteProgressByUserIdRequest;
using Gs2.Gs2Quest.Result.DeleteProgressByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DeleteProgressByUserIdResult> asyncResult = null;
yield return client.DeleteProgressByUserId(
new Gs2.Gs2Quest.Request.DeleteProgressByUserIdRequest()
.WithNamespaceName("namespace1")
.WithUserId("user-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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.deleteProgressByUserId(
new Gs2Quest.DeleteProgressByUserIdRequest()
.withNamespaceName("namespace1")
.withUserId("user-0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.delete_progress_by_user_id(
quest.DeleteProgressByUserIdRequest()
.with_namespace_name(self.hash1)
.with_user_id('user-0001')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.delete_progress_by_user_id({
namespaceName='namespace1',
userId='user-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
createProgressByStampSheet
Start quest with a stamp sheet
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
stampSheet | string | | ✓ | | ~ 5242880 chars | Stamp sheet |
keyId | string | | ✓ | | ~ 1024 chars | encryption key GRN |
Result
| Type | Description |
---|
item | Progress | Created Quest Progress |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.CreateProgressByStampSheet(
&quest.CreateProgressByStampSheetRequest {
StampSheet: pointy.String("$stampSheet"),
KeyId: pointy.String("$key1.keyId"),
}
)
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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\CreateProgressByStampSheetRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->createProgressByStampSheet(
(new CreateProgressByStampSheetRequest())
->withStampSheet(self::$stampSheet)
->withKeyId(self::$key1.keyId)
);
$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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.CreateProgressByStampSheetRequest;
import io.gs2.quest.result.CreateProgressByStampSheetResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
CreateProgressByStampSheetResult result = client.createProgressByStampSheet(
new CreateProgressByStampSheetRequest()
.withStampSheet("$stampSheet")
.withKeyId("$key1.keyId")
);
Progress 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.CreateProgressByStampSheetRequest;
using Gs2.Gs2Quest.Result.CreateProgressByStampSheetResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.CreateProgressByStampSheetResult> asyncResult = null;
yield return client.CreateProgressByStampSheet(
new Gs2.Gs2Quest.Request.CreateProgressByStampSheetRequest()
.WithStampSheet("$stampSheet")
.WithKeyId("$key1.keyId"),
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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.createProgressByStampSheet(
new Gs2Quest.CreateProgressByStampSheetRequest()
.withStampSheet("$stampSheet")
.withKeyId("$key1.keyId")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.create_progress_by_stamp_sheet(
quest.CreateProgressByStampSheetRequest()
.with_stamp_sheet(self.stamp_sheet)
.with_key_id(self.key1.key_id)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.create_progress_by_stamp_sheet({
stampSheet='$stampSheet',
keyId='$key1.keyId',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
deleteProgressByStampTask
Delete Quest Progress in Stamp Tasks
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
stampTask | string | | ✓ | | ~ 5242880 chars | Stamp task |
keyId | string | | ✓ | | ~ 1024 chars | encryption key GRN |
Result
| Type | Description |
---|
item | Progress | Deleted Quest Progress |
newContextStack | string | Request of context in which stamp task execution results are recorded |
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DeleteProgressByStampTask(
&quest.DeleteProgressByStampTaskRequest {
StampTask: pointy.String("$stampTask"),
KeyId: pointy.String("$key1.keyId"),
}
)
if err != nil {
panic("error occurred")
}
item := result.Item
newContextStack := result.NewContextStack
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DeleteProgressByStampTaskRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->deleteProgressByStampTask(
(new DeleteProgressByStampTaskRequest())
->withStampTask(self::$stampTask)
->withKeyId(self::$key1.keyId)
);
$item = $result->getItem();
$newContextStack = $result->getNewContextStack();
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DeleteProgressByStampTaskRequest;
import io.gs2.quest.result.DeleteProgressByStampTaskResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DeleteProgressByStampTaskResult result = client.deleteProgressByStampTask(
new DeleteProgressByStampTaskRequest()
.withStampTask("$stampTask")
.withKeyId("$key1.keyId")
);
Progress item = result.getItem();
String newContextStack = result.getNewContextStack();
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DeleteProgressByStampTaskRequest;
using Gs2.Gs2Quest.Result.DeleteProgressByStampTaskResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DeleteProgressByStampTaskResult> asyncResult = null;
yield return client.DeleteProgressByStampTask(
new Gs2.Gs2Quest.Request.DeleteProgressByStampTaskRequest()
.WithStampTask("$stampTask")
.WithKeyId("$key1.keyId"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var item = result.Item;
var newContextStack = result.NewContextStack;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.deleteProgressByStampTask(
new Gs2Quest.DeleteProgressByStampTaskRequest()
.withStampTask("$stampTask")
.withKeyId("$key1.keyId")
);
const item = result.getItem();
const newContextStack = result.getNewContextStack();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.delete_progress_by_stamp_task(
quest.DeleteProgressByStampTaskRequest()
.with_stamp_task(self.stamp_task)
.with_key_id(self.key1.key_id)
)
item = result.item
new_context_stack = result.new_context_stack
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.delete_progress_by_stamp_task({
stampTask='$stampTask',
keyId='$key1.keyId',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
newContextStack = result.newContextStack;
describeCompletedQuestLists
Get list of quest progress
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
accessToken | string | | ✓ | | ~ 128 chars | User Id |
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<CompletedQuestList> | List of Quest Progressios |
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/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DescribeCompletedQuestLists(
&quest.DescribeCompletedQuestListsRequest {
NamespaceName: pointy.String("namespace1"),
AccessToken: pointy.String("$access_token_0001"),
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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DescribeCompletedQuestListsRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->describeCompletedQuestLists(
(new DescribeCompletedQuestListsRequest())
->withNamespaceName(self::namespace1)
->withAccessToken(self::$accessToken0001)
->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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DescribeCompletedQuestListsRequest;
import io.gs2.quest.result.DescribeCompletedQuestListsResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DescribeCompletedQuestListsResult result = client.describeCompletedQuestLists(
new DescribeCompletedQuestListsRequest()
.withNamespaceName("namespace1")
.withAccessToken("$access_token_0001")
.withPageToken(null)
.withLimit(null)
);
List<CompletedQuestList> 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DescribeCompletedQuestListsRequest;
using Gs2.Gs2Quest.Result.DescribeCompletedQuestListsResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DescribeCompletedQuestListsResult> asyncResult = null;
yield return client.DescribeCompletedQuestLists(
new Gs2.Gs2Quest.Request.DescribeCompletedQuestListsRequest()
.WithNamespaceName("namespace1")
.WithAccessToken("$access_token_0001")
.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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.describeCompletedQuestLists(
new Gs2Quest.DescribeCompletedQuestListsRequest()
.withNamespaceName("namespace1")
.withAccessToken("$access_token_0001")
.withPageToken(null)
.withLimit(null)
);
const items = result.getItems();
const nextPageToken = result.getNextPageToken();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.describe_completed_quest_lists(
quest.DescribeCompletedQuestListsRequest()
.with_namespace_name(self.hash1)
.with_access_token(self.access_token_0001)
.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('quest')
api_result = client.describe_completed_quest_lists({
namespaceName='namespace1',
accessToken='$access_token_0001',
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;
describeCompletedQuestListsByUserId
Get list of quest progress by specifying user ID
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
userId | string | | ✓ | | ~ 128 chars | User Id |
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<CompletedQuestList> | List of Quest Progressios |
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/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DescribeCompletedQuestListsByUserId(
&quest.DescribeCompletedQuestListsByUserIdRequest {
NamespaceName: pointy.String("namespace1"),
UserId: pointy.String("user-0001"),
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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DescribeCompletedQuestListsByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->describeCompletedQuestListsByUserId(
(new DescribeCompletedQuestListsByUserIdRequest())
->withNamespaceName(self::namespace1)
->withUserId("user-0001")
->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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DescribeCompletedQuestListsByUserIdRequest;
import io.gs2.quest.result.DescribeCompletedQuestListsByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DescribeCompletedQuestListsByUserIdResult result = client.describeCompletedQuestListsByUserId(
new DescribeCompletedQuestListsByUserIdRequest()
.withNamespaceName("namespace1")
.withUserId("user-0001")
.withPageToken(null)
.withLimit(null)
);
List<CompletedQuestList> 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DescribeCompletedQuestListsByUserIdRequest;
using Gs2.Gs2Quest.Result.DescribeCompletedQuestListsByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DescribeCompletedQuestListsByUserIdResult> asyncResult = null;
yield return client.DescribeCompletedQuestListsByUserId(
new Gs2.Gs2Quest.Request.DescribeCompletedQuestListsByUserIdRequest()
.WithNamespaceName("namespace1")
.WithUserId("user-0001")
.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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.describeCompletedQuestListsByUserId(
new Gs2Quest.DescribeCompletedQuestListsByUserIdRequest()
.withNamespaceName("namespace1")
.withUserId("user-0001")
.withPageToken(null)
.withLimit(null)
);
const items = result.getItems();
const nextPageToken = result.getNextPageToken();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.describe_completed_quest_lists_by_user_id(
quest.DescribeCompletedQuestListsByUserIdRequest()
.with_namespace_name(self.hash1)
.with_user_id('user-0001')
.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('quest')
api_result = client.describe_completed_quest_lists_by_user_id({
namespaceName='namespace1',
userId='user-0001',
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;
getCompletedQuestList
Get Quest Progress
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Name |
accessToken | string | | ✓ | | ~ 128 chars | User Id |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.GetCompletedQuestList(
&quest.GetCompletedQuestListRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("main"),
AccessToken: pointy.String("$access_token_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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\GetCompletedQuestListRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->getCompletedQuestList(
(new GetCompletedQuestListRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("main")
->withAccessToken(self::$accessToken0001)
);
$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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.GetCompletedQuestListRequest;
import io.gs2.quest.result.GetCompletedQuestListResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
GetCompletedQuestListResult result = client.getCompletedQuestList(
new GetCompletedQuestListRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("main")
.withAccessToken("$access_token_0001")
);
CompletedQuestList 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.GetCompletedQuestListRequest;
using Gs2.Gs2Quest.Result.GetCompletedQuestListResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.GetCompletedQuestListResult> asyncResult = null;
yield return client.GetCompletedQuestList(
new Gs2.Gs2Quest.Request.GetCompletedQuestListRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("main")
.WithAccessToken("$access_token_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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.getCompletedQuestList(
new Gs2Quest.GetCompletedQuestListRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("main")
.withAccessToken("$access_token_0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.get_completed_quest_list(
quest.GetCompletedQuestListRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('main')
.with_access_token(self.access_token_0001)
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.get_completed_quest_list({
namespaceName='namespace1',
questGroupName='main',
accessToken='$access_token_0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
getCompletedQuestListByUserId
Get quest progress by specifying user ID
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Name |
userId | string | | ✓ | | ~ 128 chars | User Id |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.GetCompletedQuestListByUserId(
&quest.GetCompletedQuestListByUserIdRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("main"),
UserId: pointy.String("user-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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\GetCompletedQuestListByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->getCompletedQuestListByUserId(
(new GetCompletedQuestListByUserIdRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("main")
->withUserId("user-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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.GetCompletedQuestListByUserIdRequest;
import io.gs2.quest.result.GetCompletedQuestListByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
GetCompletedQuestListByUserIdResult result = client.getCompletedQuestListByUserId(
new GetCompletedQuestListByUserIdRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("main")
.withUserId("user-0001")
);
CompletedQuestList 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.GetCompletedQuestListByUserIdRequest;
using Gs2.Gs2Quest.Result.GetCompletedQuestListByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.GetCompletedQuestListByUserIdResult> asyncResult = null;
yield return client.GetCompletedQuestListByUserId(
new Gs2.Gs2Quest.Request.GetCompletedQuestListByUserIdRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("main")
.WithUserId("user-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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.getCompletedQuestListByUserId(
new Gs2Quest.GetCompletedQuestListByUserIdRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("main")
.withUserId("user-0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.get_completed_quest_list_by_user_id(
quest.GetCompletedQuestListByUserIdRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('main')
.with_user_id('user-0001')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.get_completed_quest_list_by_user_id({
namespaceName='namespace1',
questGroupName='main',
userId='user-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
deleteCompletedQuestListByUserId
Delete quest progress by specifying user ID
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Name |
userId | string | | ✓ | | ~ 128 chars | User Id |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DeleteCompletedQuestListByUserId(
&quest.DeleteCompletedQuestListByUserIdRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("main"),
UserId: pointy.String("user-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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DeleteCompletedQuestListByUserIdRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->deleteCompletedQuestListByUserId(
(new DeleteCompletedQuestListByUserIdRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("main")
->withUserId("user-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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DeleteCompletedQuestListByUserIdRequest;
import io.gs2.quest.result.DeleteCompletedQuestListByUserIdResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DeleteCompletedQuestListByUserIdResult result = client.deleteCompletedQuestListByUserId(
new DeleteCompletedQuestListByUserIdRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("main")
.withUserId("user-0001")
);
CompletedQuestList 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DeleteCompletedQuestListByUserIdRequest;
using Gs2.Gs2Quest.Result.DeleteCompletedQuestListByUserIdResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DeleteCompletedQuestListByUserIdResult> asyncResult = null;
yield return client.DeleteCompletedQuestListByUserId(
new Gs2.Gs2Quest.Request.DeleteCompletedQuestListByUserIdRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("main")
.WithUserId("user-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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.deleteCompletedQuestListByUserId(
new Gs2Quest.DeleteCompletedQuestListByUserIdRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("main")
.withUserId("user-0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.delete_completed_quest_list_by_user_id(
quest.DeleteCompletedQuestListByUserIdRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('main')
.with_user_id('user-0001')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.delete_completed_quest_list_by_user_id({
namespaceName='namespace1',
questGroupName='main',
userId='user-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
describeQuestGroupModels
Get list of quest groups
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/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DescribeQuestGroupModels(
&quest.DescribeQuestGroupModelsRequest {
NamespaceName: pointy.String("namespace1"),
}
)
if err != nil {
panic("error occurred")
}
items := result.Items
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DescribeQuestGroupModelsRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->describeQuestGroupModels(
(new DescribeQuestGroupModelsRequest())
->withNamespaceName(self::namespace1)
);
$items = $result->getItems();
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DescribeQuestGroupModelsRequest;
import io.gs2.quest.result.DescribeQuestGroupModelsResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DescribeQuestGroupModelsResult result = client.describeQuestGroupModels(
new DescribeQuestGroupModelsRequest()
.withNamespaceName("namespace1")
);
List<QuestGroupModel> items = result.getItems();
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DescribeQuestGroupModelsRequest;
using Gs2.Gs2Quest.Result.DescribeQuestGroupModelsResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DescribeQuestGroupModelsResult> asyncResult = null;
yield return client.DescribeQuestGroupModels(
new Gs2.Gs2Quest.Request.DescribeQuestGroupModelsRequest()
.WithNamespaceName("namespace1"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var items = result.Items;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.describeQuestGroupModels(
new Gs2Quest.DescribeQuestGroupModelsRequest()
.withNamespaceName("namespace1")
);
const items = result.getItems();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.describe_quest_group_models(
quest.DescribeQuestGroupModelsRequest()
.with_namespace_name(self.hash1)
)
items = result.items
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.describe_quest_group_models({
namespaceName='namespace1',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
items = result.items;
getQuestGroupModel
Get Quest Group Model
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Name |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.GetQuestGroupModel(
&quest.GetQuestGroupModelRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("quest-group-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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\GetQuestGroupModelRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->getQuestGroupModel(
(new GetQuestGroupModelRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("quest-group-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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.GetQuestGroupModelRequest;
import io.gs2.quest.result.GetQuestGroupModelResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
GetQuestGroupModelResult result = client.getQuestGroupModel(
new GetQuestGroupModelRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
);
QuestGroupModel 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.GetQuestGroupModelRequest;
using Gs2.Gs2Quest.Result.GetQuestGroupModelResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.GetQuestGroupModelResult> asyncResult = null;
yield return client.GetQuestGroupModel(
new Gs2.Gs2Quest.Request.GetQuestGroupModelRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("quest-group-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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.getQuestGroupModel(
new Gs2Quest.GetQuestGroupModelRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.get_quest_group_model(
quest.GetQuestGroupModelRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('quest-group-0001')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.get_quest_group_model({
namespaceName='namespace1',
questGroupName='quest-group-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;
describeQuestModels
Get list of quest models
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Name |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.DescribeQuestModels(
&quest.DescribeQuestModelsRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("quest-group-0001"),
}
)
if err != nil {
panic("error occurred")
}
items := result.Items
use Gs2\Core\Model\BasicGs2Credential;
use Gs2\Core\Model\Region;
use Gs2\Core\Net\Gs2RestSession;
use Gs2\Core\Exception\Gs2Exception;
use Gs2\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\DescribeQuestModelsRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->describeQuestModels(
(new DescribeQuestModelsRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("quest-group-0001")
);
$items = $result->getItems();
} 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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.DescribeQuestModelsRequest;
import io.gs2.quest.result.DescribeQuestModelsResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
DescribeQuestModelsResult result = client.describeQuestModels(
new DescribeQuestModelsRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
);
List<QuestModel> items = result.getItems();
} 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.DescribeQuestModelsRequest;
using Gs2.Gs2Quest.Result.DescribeQuestModelsResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.DescribeQuestModelsResult> asyncResult = null;
yield return client.DescribeQuestModels(
new Gs2.Gs2Quest.Request.DescribeQuestModelsRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("quest-group-0001"),
r => asyncResult = r
);
if (asyncResult.Error != null) {
throw asyncResult.Error;
}
var result = asyncResult.Result;
var items = result.Items;
import Gs2Core from '@/gs2/core';
import * as Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.describeQuestModels(
new Gs2Quest.DescribeQuestModelsRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
);
const items = result.getItems();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.describe_quest_models(
quest.DescribeQuestModelsRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('quest-group-0001')
)
items = result.items
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.describe_quest_models({
namespaceName='namespace1',
questGroupName='quest-group-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
items = result.items;
getQuestModel
Get Quest Model
Request
| Type | Condition | Require | Default | Limitation | Description |
---|
namespaceName | string | | ✓ | | ~ 32 chars | Namespace name |
questGroupName | string | | ✓ | | ~ 128 chars | Quest Group Name |
questName | string | | ✓ | | ~ 128 chars | Quest Model Name |
Result
Implementation Example
import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
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 := quest.Gs2QuestRestClient{
Session: &session,
}
result, err := client.GetQuestModel(
&quest.GetQuestModelRequest {
NamespaceName: pointy.String("namespace1"),
QuestGroupName: pointy.String("quest-group-0001"),
QuestName: pointy.String("quest-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\Quest\Gs2QuestRestClient;
use Gs2\Quest\Request\GetQuestModelRequest;
$session = new Gs2RestSession(
new BasicGs2Credential(
"your client id",
"your client secret"
),
Region::AP_NORTHEAST_1
);
$session->open();
$client = new Gs2AccountRestClient(
$session
);
try {
$result = $client->getQuestModel(
(new GetQuestModelRequest())
->withNamespaceName(self::namespace1)
->withQuestGroupName("quest-group-0001")
->withQuestName("quest-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.quest.rest.Gs2QuestRestClient;
import io.gs2.quest.request.GetQuestModelRequest;
import io.gs2.quest.result.GetQuestModelResult;
Gs2RestSession session = new Gs2RestSession(
Region.AP_NORTHEAST_1,
new BasicGs2Credential(
'your client id',
'your client secret'
)
);
session.connect();
Gs2QuestRestClient client = new Gs2QuestRestClient(session);
try {
GetQuestModelResult result = client.getQuestModel(
new GetQuestModelRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withQuestName("quest-0001")
);
QuestModel 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.Gs2Quest.Gs2QuestRestClient;
using Gs2.Gs2Quest.Request.GetQuestModelRequest;
using Gs2.Gs2Quest.Result.GetQuestModelResult;
var session = new Gs2RestSession(
new BasicGs2Credential(
'your client id',
'your client secret'
),
Region.ApNortheast1
);
yield return session.Open();
var client = new Gs2QuestRestClient(session);
AsyncResult<Gs2.Gs2Quest.Result.GetQuestModelResult> asyncResult = null;
yield return client.GetQuestModel(
new Gs2.Gs2Quest.Request.GetQuestModelRequest()
.WithNamespaceName("namespace1")
.WithQuestGroupName("quest-group-0001")
.WithQuestName("quest-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 Gs2Quest from '@/gs2/quest';
const session = new Gs2Core.Gs2RestSession(
"ap-northeast-1",
new Gs2Core.BasicGs2Credential(
'your client id',
'your client secret'
)
);
await session.connect();
const client = new Gs2Quest.Gs2QuestRestClient(session);
try {
const result = await client.getQuestModel(
new Gs2Quest.GetQuestModelRequest()
.withNamespaceName("namespace1")
.withQuestGroupName("quest-group-0001")
.withQuestName("quest-0001")
);
const item = result.getItem();
} catch (e) {
process.exit(1);
}
from gs2 import core
from gs2 import quest
session = core.Gs2RestSession(
core.BasicGs2Credential(
'your client id',
'your client secret'
),
"ap-northeast-1",
)
session.connect()
client = quest.Gs2QuestRestClient(session)
try:
result = client.get_quest_model(
quest.GetQuestModelRequest()
.with_namespace_name(self.hash1)
.with_quest_group_name('quest-group-0001')
.with_quest_name('quest-0001')
)
item = result.item
except core.Gs2Exception as e:
exit(1)
client = gs2('quest')
api_result = client.get_quest_model({
namespaceName='namespace1',
questGroupName='quest-group-0001',
questName='quest-0001',
})
if(api_result.isError) then
-- When error occurs
fail(api_result['statusCode'], api_result['message'])
end
result = api_result.result
item = result.item;