GS2-Quest
GS2 SDK Reference
GS2 SDK Reference
Models
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 | Description | |
---|---|---|
namespaceId | string | Namespace GRN |
name | string | Namespace name |
description | string | 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 |
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 | Description | |
---|---|---|
questGroupModelId | string | Quest Group Master GRN |
name | string | Quest Group Model Name |
description | string | description of Namespace |
metadata | string | metadata |
challengePeriodEventId | string | 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 |
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 | Description | |
---|---|---|
questModelId | string | Quest Model Master GRN |
questGroupName | string | Quest Model Name |
name | string | Quest Name |
description | string | description of Namespace |
metadata | string | metadata |
contents | Contents[] | Quest Description |
challengePeriodEventId | string | GS2-Schedule event GRN that sets the time period during which the quest can be attempted. |
firstCompleteAcquireActions | AcquireAction[] | List of First Clear Reward Actions |
consumeActions | ConsumeAction[] | Quest entry fee |
failedAcquireActions | AcquireAction[] | Reward for quest failure |
premiseQuestNames | string[] | 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 |
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 | Description | |
---|---|---|
namespaceId | string | Namespace GRN |
settings | string | Master data |
Contents
Type | Description | |
---|---|---|
metadata | string | metadata |
completeAcquireActions | AcquireAction[] | Rewards for completing quests |
weight | int | Weight to be drawn |
Reward
Type | Description | |
---|---|---|
action | enum [] | Types of actions to be performed in the stamp sheet |
request | string | Request Model |
itemId | string | Obtain Resource GRN |
value | int | 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 | Description | |
---|---|---|
progressId | string | Quest Progress GRN |
userId | string | User Id |
transactionId | string | Transaction ID |
questModelId | string | Quest model GRN in progress |
randomSeed | long | Random number seed |
rewards | Reward[] | Maximum rewards earned from quests |
metadata | string | metadata |
createdAt | long | Datetime of creation |
updatedAt | long | Datetime of last update |
CompletedQuestList
List of completed quests
Type | Description | |
---|---|---|
completedQuestListId | string | List of cleared quests GRN |
userId | string | User Id |
questGroupName | string | Quest Group Name |
completeQuestNames | string[] | List of Names of the quests already conquered |
createdAt | long | Datetime of creation |
updatedAt | long | Datetime of last update |
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 | Description | |
---|---|---|
questGroupModelId | string | Quest Group GRN |
name | string | Quest Group Name |
metadata | string | metadata |
quests | QuestModel[] | Quests belonging to the group |
challengePeriodEventId | string | 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 | Description | |
---|---|---|
questModelId | string | Quest Model GRN |
name | string | Quest Model Name |
metadata | string | metadata |
contents | Contents[] | Quest Description |
challengePeriodEventId | string | GS2-Schedule event GRN that sets the time period during which the quest can be attempted. |
firstCompleteAcquireActions | AcquireAction[] | List of First Clear Reward Actions |
consumeActions | ConsumeAction[] | Quest entry fee |
failedAcquireActions | AcquireAction[] | Reward for quest failure |
premiseQuestNames | string[] | Name of the quest that must be completed in order to attempt the quest |
AcquireAction
Type | Description | |
---|---|---|
action | enum [] | Types of actions to be performed in the stamp sheet |
request | string | JSON of request |
ConsumeAction
Type | Description | |
---|---|---|
action | enum [] | Types of actions to be performed in the stamp task |
request | string | JSON of the obtain request |
Config
Type | Description | |
---|---|---|
key | string | Name |
value | string | Value |
GitHubCheckoutSetting
Type | Description | |
---|---|---|
apiKeyId | string | GitHub API key GRN |
repositoryName | string | Repository Name |
sourcePath | string | Source code file path |
referenceType | enum ['commit_hash', 'branch', 'tag'] | Source of code |
commitHash | string | Commit hash |
branchName | string | Branch Name |
tagName | string | Tag Name |
ScriptSetting
Type | Description | |
---|---|---|
triggerScriptId | string | Script GRN |
doneTriggerTargetType | enum ['none', 'gs2_script', 'aws'] | Notification of Completion |
doneTriggerScriptId | string | Script GRN |
doneTriggerQueueNamespaceId | string | Namespace GRN |
LogSetting
Type | Description | |
---|---|---|
loggingNamespaceId | string | Namespace GRN |
TransactionSetting
Type | Description | |
---|---|---|
enableAutoRun | bool | Automatically run issued stamp sheets on the server side, or |
distributorNamespaceId | string | GS2-Distributor namespace used for stamp sheet execution |
keyId | string | GS2-Key encryption key used to sign the stamp sheet |
queueNamespaceId | string | Namespace in GS2-JobQueue used to run the stamp sheet |
Methods
describeNamespaces
describeNamespaces
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;
Get list of namespaces
Request
Type | 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 | Namespace[] | List of Namespaces |
nextPageToken | string | Page token to retrieve the rest of the listing |
createNamespace
createNamespace
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;
Create a new namespace
Request
Type | 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 |
Result
Type | Description | |
---|---|---|
item | Namespace | Created namespace |
getNamespaceStatus
getNamespaceStatus
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;
Get namespace status
Request
Type | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name |
Result
Type | Description | |
---|---|---|
status | string |
getNamespace
getNamespace
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;
Get namespace
Request
Type | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name |
Result
Type | Description | |
---|---|---|
item | Namespace | Namespace |
updateNamespace
updateNamespace
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;
Update namespace
Request
Type | 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 |
Result
Type | Description | |
---|---|---|
item | Namespace | Updated namespace |
deleteNamespace
deleteNamespace
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;
Delete namespace
Request
Type | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name |
Result
Type | Description | |
---|---|---|
item | Namespace | Deleted namespace |
describeQuestGroupModelMasters
describeQuestGroupModelMasters
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;
Get list of quest group masters
Request
Type | 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 | QuestGroupModelMaster[] | List of Quest Group Masters |
nextPageToken | string | Page token to retrieve the rest of the listing |
createQuestGroupModelMaster
createQuestGroupModelMaster
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;
Create a new quest group master
Request
Type | 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
Type | Description | |
---|---|---|
item | QuestGroupModelMaster | Created Quest Group Master |
getQuestGroupModelMaster
getQuestGroupModelMaster
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;
Get Quest Group Master
Request
Type | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name | |
questGroupName | string | ✓ | ~ 128 chars | Quest Group Model Name |
Result
Type | Description | |
---|---|---|
item | QuestGroupModelMaster | Quest Group Master |
updateQuestGroupModelMaster
updateQuestGroupModelMaster
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;
Update Quest Group Master
Request
Type | 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
Type | Description | |
---|---|---|
item | QuestGroupModelMaster | Updated Quest Group Master |
deleteQuestGroupModelMaster
deleteQuestGroupModelMaster
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;
Delete Quest Group Master
Request
Type | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name | |
questGroupName | string | ✓ | ~ 128 chars | Quest Group Model Name |
Result
Type | Description | |
---|---|---|
item | QuestGroupModelMaster | Deleted Quest Group Master |
describeQuestModelMasters
describeQuestModelMasters
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;
Get list of quest model masters
Request
Type | 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 | QuestModelMaster[] | List of Quest Model Masters |
nextPageToken | string | Page token to retrieve the rest of the listing |
createQuestModelMaster
createQuestModelMaster
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.Gs2Quest.Model.AcquireAction[] {
new Gs2.Gs2Quest.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;
Create a new quest model master
Request
Type | 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 | Contents[] | ✓ | Quest Description | ||
challengePeriodEventId | string | ~ 1024 chars | GS2-Schedule event GRN that sets the time period during which the quest can be attempted. | ||
firstCompleteAcquireActions | AcquireAction[] | [] | List of First Clear Reward Actions | ||
consumeActions | ConsumeAction[] | [] | Quest entry fee | ||
failedAcquireActions | AcquireAction[] | [] | Reward for quest failure | ||
premiseQuestNames | string[] | [] | Name of the quest that must be completed in order to attempt the quest |
Result
Type | Description | |
---|---|---|
item | QuestModelMaster | Created Quest Model Master |
getQuestModelMaster
getQuestModelMaster
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;
Get Quest Model Master
Request
Type | 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
Type | Description | |
---|---|---|
item | QuestModelMaster | Quest Model Master |
updateQuestModelMaster
updateQuestModelMaster
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.Gs2Quest.Model.AcquireAction[] {
new Gs2.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),
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;
Update Quest Model Master
Request
Type | 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 | Contents[] | ✓ | Quest Description | ||
challengePeriodEventId | string | ~ 1024 chars | GS2-Schedule event GRN that sets the time period during which the quest can be attempted. | ||
firstCompleteAcquireActions | AcquireAction[] | [] | List of First Clear Reward Actions | ||
consumeActions | ConsumeAction[] | [] | Quest entry fee | ||
failedAcquireActions | AcquireAction[] | [] | Reward for quest failure | ||
premiseQuestNames | string[] | [] | Name of the quest that must be completed in order to attempt the quest |
Result
Type | Description | |
---|---|---|
item | QuestModelMaster | Updated Quest Model Master |
deleteQuestModelMaster
deleteQuestModelMaster
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;
Delete Quest Model Master'
Request
Type | 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
Type | Description | |
---|---|---|
item | QuestModelMaster | Deleted Quest Model Master |
exportMaster
exportMaster
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;
Export master data for currently active quest masters
Request
Type | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name |
Result
Type | Description | |
---|---|---|
item | CurrentQuestMaster | Currently available quest masters |
getCurrentQuestMaster
getCurrentQuestMaster
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;
Get currently active quest masters
Request
Type | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name |
Result
Type | Description | |
---|---|---|
item | CurrentQuestMaster | Currently available quest masters |
updateCurrentQuestMaster
updateCurrentQuestMaster
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;
Update and currently available quest master
Request
Type | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name | |
settings | string | ✓ | ~ 5242880 chars | Master data |
Result
Type | Description | |
---|---|---|
item | CurrentQuestMaster | Updated and currently available quest master |
updateCurrentQuestMasterFromGitHub
updateCurrentQuestMasterFromGitHub
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;
Update and currently available quest master
Request
Type | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name | |
checkoutSetting | GitHubCheckoutSetting | ✓ | Setup to check out master data from GitHub |
Result
Type | Description | |
---|---|---|
item | CurrentQuestMaster | Updated and currently available quest master |
describeProgressesByUserId
describeProgressesByUserId
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;
Get list of quest progress
Request
Type | 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 | Progress[] | List of Quest Progresses |
nextPageToken | string | Page token to retrieve the rest of the listing |
createProgressByUserId
createProgressByUserId
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;
Create quest progress by specifying user ID
Request
Type | 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 | Config[] | [] | Set values to be applied to stamp sheet variables |
Result
Type | Description | |
---|---|---|
item | Progress | Quest Progress |
getProgress
getProgress
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;
Get quest progress
Request
Type | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name | |
accessToken | string | ✓ | ~ 128 chars | User Id |
Result
Type | Description | |
---|---|---|
item | Progress | Quest Progress |
questGroup | QuestGroupModel | Quest Group Model |
quest | QuestModel | Quest Model |
getProgressByUserId
getProgressByUserId
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;
Get quest progress by specifying user ID
Request
Type | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name | |
userId | string | ✓ | ~ 128 chars | User Id |
Result
Type | Description | |
---|---|---|
item | Progress | Quest Progress |
questGroup | QuestGroupModel | Quest Group Model |
quest | QuestModel | Quest Model |
start
start
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;
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 | 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 | Config[] | [] | 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? |
startByUserId
startByUserId
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;
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 | 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 | Config[] | [] | 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? |
end
end
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"),
TransactionId: pointy.String("transaction-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)
->withTransactionId("transaction-0001")
->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")
.withTransactionId("transaction-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")
.WithTransactionId("transaction-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")
.withTransactionId("transaction-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_transaction_id('transaction-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',
transactionId='transaction-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;
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 | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name | |
accessToken | string | ✓ | ~ 128 chars | User Id | |
transactionId | string | ✓ | UUID | ~ 36 chars | Transaction ID |
rewards | Reward[] | [] | The actual rewards from the quest | ||
isComplete | bool | ✓ | Completed the quest | ||
config | Config[] | [] | 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? |
endByUserId
endByUserId
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"),
TransactionId: pointy.String("$progress1.transactionId"),
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")
->withTransactionId(self::$progress1.transactionId)
->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")
.withTransactionId("$progress1.transactionId")
.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")
.WithTransactionId("$progress1.transactionId")
.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")
.withTransactionId("$progress1.transactionId")
.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_transaction_id(self.progress1.transaction_id)
.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',
transactionId='$progress1.transactionId',
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;
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 | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name | |
userId | string | ✓ | ~ 128 chars | User Id | |
transactionId | string | ✓ | UUID | ~ 36 chars | Transaction ID |
rewards | Reward[] | [] | The actual rewards from the quest | ||
isComplete | bool | ✓ | Completed the quest | ||
config | Config[] | [] | 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? |
deleteProgress
deleteProgress
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;
Get quest progress
Request
Type | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name | |
accessToken | string | ✓ | ~ 128 chars | User Id |
Result
Type | Description | |
---|---|---|
item | Progress | Quest Progress |
deleteProgressByUserId
deleteProgressByUserId
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;
Delete quest progress by specifying user ID
Request
Type | Require | Default | Limitation | Description | |
---|---|---|---|---|---|
namespaceName | string | ✓ | ~ 32 chars | Namespace name | |
userId | string | ✓ | ~ 128 chars | User Id |
Result
Type | Description | |
---|---|---|
item | Progress | Quest Progress |
createProgressByStampSheet
createProgressByStampSheet
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;
Start quest with a stamp sheet
Request
Type | 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 |
deleteProgressByStampTask
deleteProgressByStampTask
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;
Delete Quest Progress in Stamp Tasks
Request
Type | 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 |
describeCompletedQuestLists
describeCompletedQuestLists
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;
Get list of quest progress
Request
Type | 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 | CompletedQuestList[] | List of Quest Progressios |
nextPageToken | string | Page token to retrieve the rest of the listing |
describeCompletedQuestListsByUserId
describeCompletedQuestListsByUserId
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)
-&