API Reference of GS2-Quest SDK Model Namespace Namespace
Namespace is a mechanism that allows multiple uses of the same service for different purposes within a single project.
Basically, GS2 services have a layer called namespace, and different namespaces are treated as completely different data spaces, even for the same service.
Therefore, it is necessary to create a namespace before starting to use each service.
Type Condition Require Default Limitation Description namespaceId string ✓ ~ 1024 chars Namespace GRN name string ✓ ~ 128 chars Namespace name description string ~ 1024 chars Description 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 ✓ Now Datetime of creation (Unix time unit:milliseconds) updatedAt long ✓ Now Datetime of last update (Unix time unit:milliseconds) revision long 0 ~ 9223372036854775805 Revision
QuestGroupModelMaster Quest Group Model Master
A quest group is an entity for grouping multiple quests, and only one quest progression can be performed simultaneously within the group.
This means that if you need to be able to progress quests in parallel, you must separate the groups.
Type Condition Require Default Limitation Description questGroupModelId string ✓ ~ 1024 chars Quest Group Master GRN name string ✓ ~ 128 chars Quest Group Model Name description string ~ 1024 chars Description metadata string ~ 1024 chars metadata challengePeriodEventId string ~ 1024 chars GS2-Schedule event GRN that sets the time period during which the quest can be attempted. createdAt long ✓ Now Datetime of creation (Unix time unit:milliseconds) updatedAt long ✓ Now Datetime of last update (Unix time unit:milliseconds) revision long 0 ~ 9223372036854775805 Revision
QuestModelMaster Quest Model Master
A quest is an entity that holds the consideration required to start ingame and the reward for completing it.
The reward obtained for clearing the quest can have multiple variations and can be drawn at the start of the quest.
For example, the same content can be used to manage the clear flag of a quest, but two types of content can be prepared based on whether or not a rare monster appears.
Type Condition Require Default Limitation Description questModelId string ✓ ~ 1024 chars Quest Model Master GRN questGroupName string ✓ ~ 128 chars Quest Model Name name string ✓ ~ 128 chars Quest Name description string ~ 1024 chars Description metadata string ~ 1024 chars metadata contents List<Contents> ✓ 1 ~ 10 items Quest Description challengePeriodEventId string ~ 1024 chars GS2-Schedule event GRN that sets the time period during which the quest can be attempted. firstCompleteAcquireActions List<AcquireAction> [] ~ 10 items List of First Clear Reward Actions verifyActions List<VerifyAction> [] ~ 10 items List of verification actions for quest participation conditions consumeActions List<ConsumeAction> [] ~ 10 items Quest entry fee failedAcquireActions List<AcquireAction> [] ~ 100 items Reward for quest failure premiseQuestNames List<string> [] ~ 10 items Name of the quest that must be completed in order to attempt the quest createdAt long ✓ Now Datetime of creation (Unix time unit:milliseconds) updatedAt long ✓ Now Datetime of last update (Unix time unit:milliseconds) revision long 0 ~ 9223372036854775805 Revision
CurrentQuestMaster Currently available master data
GS2 uses JSON format files for master data management.
By uploading the file, you can actually reflect the settings on the server.
We provide a master data editor on the management console as a way to create JSON files, but you can also create JSON files using the
The service can also be used by creating a tool more appropriate for game management and exporting a JSON file in the appropriate format.
Type Condition Require Default Limitation Description namespaceId string ✓ ~ 1024 chars Currently available Quest Master GRN settings string ✓ ~ 5242880 chars Master data
Contents Contents
Type Condition Require Default Limitation Description metadata string ~ 256 chars metadata completeAcquireActions List<AcquireAction> [] ~ 10 items Rewards for completing quests weight int ✓ 1 1 ~ 2147483646 Weight to be drawn
Reward Reward
Type Condition Require Default Limitation Description action enum {"Gs2AdReward:AcquirePointByUserId" ,"Gs2Dictionary:AddEntriesByUserId" ,"Gs2Enchant:ReDrawBalanceParameterStatusByUserId" ,"Gs2Enchant:SetBalanceParameterStatusByUserId" ,"Gs2Enchant:ReDrawRarityParameterStatusByUserId" ,"Gs2Enchant:AddRarityParameterStatusByUserId" ,"Gs2Enchant:SetRarityParameterStatusByUserId" ,"Gs2Enhance:DirectEnhanceByUserId" ,"Gs2Enhance:UnleashByUserId" ,"Gs2Enhance:CreateProgressByUserId" ,"Gs2Exchange:ExchangeByUserId" ,"Gs2Exchange:IncrementalExchangeByUserId" ,"Gs2Exchange:CreateAwaitByUserId" ,"Gs2Exchange:AcquireForceByUserId" ,"Gs2Exchange:SkipByUserId" ,"Gs2Experience:AddExperienceByUserId" ,"Gs2Experience:SetExperienceByUserId" ,"Gs2Experience:AddRankCapByUserId" ,"Gs2Experience:SetRankCapByUserId" ,"Gs2Experience:MultiplyAcquireActionsByUserId" ,"Gs2Formation:AddMoldCapacityByUserId" ,"Gs2Formation:SetMoldCapacityByUserId" ,"Gs2Formation:AcquireActionsToFormProperties" ,"Gs2Formation:SetFormByUserId" ,"Gs2Formation:AcquireActionsToPropertyFormProperties" ,"Gs2Friend:UpdateProfileByUserId" ,"Gs2Grade:AddGradeByUserId" ,"Gs2Grade:ApplyRankCapByUserId" ,"Gs2Grade:MultiplyAcquireActionsByUserId" ,"Gs2Guild:IncreaseMaximumCurrentMaximumMemberCountByGuildName" ,"Gs2Guild:SetMaximumCurrentMaximumMemberCountByGuildName" ,"Gs2Idle:IncreaseMaximumIdleMinutesByUserId" ,"Gs2Idle:SetMaximumIdleMinutesByUserId" ,"Gs2Idle:ReceiveByUserId" ,"Gs2Inbox:SendMessageByUserId" ,"Gs2Inventory:AddCapacityByUserId" ,"Gs2Inventory:SetCapacityByUserId" ,"Gs2Inventory:AcquireItemSetByUserId" ,"Gs2Inventory:AcquireItemSetWithGradeByUserId" ,"Gs2Inventory:AddReferenceOfByUserId" ,"Gs2Inventory:DeleteReferenceOfByUserId" ,"Gs2Inventory:AcquireSimpleItemsByUserId" ,"Gs2Inventory:SetSimpleItemsByUserId" ,"Gs2Inventory:AcquireBigItemByUserId" ,"Gs2Inventory:SetBigItemByUserId" ,"Gs2JobQueue:PushByUserId" ,"Gs2Limit:CountDownByUserId" ,"Gs2Limit:DeleteCounterByUserId" ,"Gs2LoginReward:DeleteReceiveStatusByUserId" ,"Gs2LoginReward:UnmarkReceivedByUserId" ,"Gs2Lottery:DrawByUserId" ,"Gs2Lottery:ResetBoxByUserId" ,"Gs2Mission:RevertReceiveByUserId" ,"Gs2Mission:IncreaseCounterByUserId" ,"Gs2Mission:SetCounterByUserId" ,"Gs2Money:DepositByUserId" ,"Gs2Money:RevertRecordReceipt" ,"Gs2Money2:DepositByUserId" ,"Gs2Quest:CreateProgressByUserId" ,"Gs2Schedule:TriggerByUserId" ,"Gs2Script:InvokeScript" ,"Gs2SerialKey:RevertUseByUserId" ,"Gs2SerialKey:IssueOnce" ,"Gs2Showcase:DecrementPurchaseCountByUserId" ,"Gs2Showcase:ForceReDrawByUserId" ,"Gs2SkillTree:MarkReleaseByUserId" ,"Gs2Stamina:RecoverStaminaByUserId" ,"Gs2Stamina:RaiseMaxValueByUserId" ,"Gs2Stamina:SetMaxValueByUserId" ,"Gs2Stamina:SetRecoverIntervalByUserId" ,"Gs2Stamina:SetRecoverValueByUserId" ,"Gs2StateMachine:StartStateMachineByUserId" , } ✓ ~ 128 chars Types of actions to be performed in the acquire action request string ✓ ~ 5242880 chars Request Model itemId string ✓ ~ 1024 chars Obtain Resource GRN value int ✓ ~ 2147483646 Quantity to be obtained
Progress Quest Progress
It is created at the beginning of the quest and deleted at the end.
When you exit the application in the middle of an ingame, this data will remain.
It is possible to resume the game from the ongoing quest information maintained by the entity.
Type Condition Require Default Limitation Description progressId string ✓ ~ 1024 chars Quest Progress GRN userId string ✓ ~ 128 chars User Id transactionId string ✓ UUID ~ 36 chars Transaction ID questModelId string ✓ ~ 1024 chars Quest model GRN in progress randomSeed long ✓ ~ 9223372036854775805 Random number seed rewards List<Reward> [] ~ 1000 items Maximum rewards earned from quests failedRewards List<Reward> [] ~ 1000 items Maximum rewards earned when quest fails metadata string ~ 256 chars metadata createdAt long ✓ Now Datetime of creation (Unix time unit:milliseconds) updatedAt long ✓ Now Datetime of last update (Unix time unit:milliseconds) revision long 0 ~ 9223372036854775805 Revision
CompletedQuestList List of completed quests
Type Condition Require Default Limitation Description completedQuestListId string ✓ ~ 1024 chars List of cleared quests GRN userId string ✓ ~ 128 chars User Id questGroupName string ✓ ~ 128 chars Quest Group Name completeQuestNames List<string> ~ 1000 items List of Names of the quests already conquered createdAt long ✓ Now Datetime of creation (Unix time unit:milliseconds) updatedAt long ✓ Now Datetime of last update (Unix time unit:milliseconds) revision long 0 ~ 9223372036854775805 Revision
QuestGroupModel Quest Group Model
A quest group is an entity for grouping multiple quests, and only one quest progression can be executed simultaneously within the group.
This means that if you need to be able to progress quests in parallel, you must separate the groups.
Type Condition Require Default Limitation Description questGroupModelId string ✓ ~ 1024 chars Quest Group GRN name string ✓ ~ 128 chars Quest Group Name metadata string ~ 1024 chars metadata quests List<QuestModel> ~ 1000 items Quests belonging to the group challengePeriodEventId string ~ 1024 chars GS2-Schedule event GRN that sets the time period during which the quest can be attempted.
QuestModel Quest Model
A quest is an entity that holds the consideration required to start ingame and the reward for completing it.
The reward obtained upon completion of the quest can have multiple variations and can be drawn at the start of the quest.
For example, the same content can be used to manage the clear flag of a quest, but two types of content can be prepared based on whether or not a rare monster appears.
Type Condition Require Default Limitation Description questModelId string ✓ ~ 1024 chars Quest Model GRN name string ✓ ~ 128 chars Quest Model Name metadata string ~ 1024 chars metadata contents List<Contents> ✓ 1 ~ 10 items Quest Description challengePeriodEventId string ~ 1024 chars GS2-Schedule event GRN that sets the time period during which the quest can be attempted. firstCompleteAcquireActions List<AcquireAction> [] ~ 10 items List of First Clear Reward Actions verifyActions List<VerifyAction> [] ~ 10 items List of verification actions for quest participation conditions consumeActions List<ConsumeAction> [] ~ 10 items Quest entry fee failedAcquireActions List<AcquireAction> [] ~ 100 items Reward for quest failure premiseQuestNames List<string> [] ~ 10 items Name of the quest that must be completed in order to attempt the quest
AcquireAction Acquire Action
Type Condition Require Default Limitation Description action enum {"Gs2AdReward:AcquirePointByUserId" ,"Gs2Dictionary:AddEntriesByUserId" ,"Gs2Enchant:ReDrawBalanceParameterStatusByUserId" ,"Gs2Enchant:SetBalanceParameterStatusByUserId" ,"Gs2Enchant:ReDrawRarityParameterStatusByUserId" ,"Gs2Enchant:AddRarityParameterStatusByUserId" ,"Gs2Enchant:SetRarityParameterStatusByUserId" ,"Gs2Enhance:DirectEnhanceByUserId" ,"Gs2Enhance:UnleashByUserId" ,"Gs2Enhance:CreateProgressByUserId" ,"Gs2Exchange:ExchangeByUserId" ,"Gs2Exchange:IncrementalExchangeByUserId" ,"Gs2Exchange:CreateAwaitByUserId" ,"Gs2Exchange:AcquireForceByUserId" ,"Gs2Exchange:SkipByUserId" ,"Gs2Experience:AddExperienceByUserId" ,"Gs2Experience:SetExperienceByUserId" ,"Gs2Experience:AddRankCapByUserId" ,"Gs2Experience:SetRankCapByUserId" ,"Gs2Experience:MultiplyAcquireActionsByUserId" ,"Gs2Formation:AddMoldCapacityByUserId" ,"Gs2Formation:SetMoldCapacityByUserId" ,"Gs2Formation:AcquireActionsToFormProperties" ,"Gs2Formation:SetFormByUserId" ,"Gs2Formation:AcquireActionsToPropertyFormProperties" ,"Gs2Friend:UpdateProfileByUserId" ,"Gs2Grade:AddGradeByUserId" ,"Gs2Grade:ApplyRankCapByUserId" ,"Gs2Grade:MultiplyAcquireActionsByUserId" ,"Gs2Guild:IncreaseMaximumCurrentMaximumMemberCountByGuildName" ,"Gs2Guild:SetMaximumCurrentMaximumMemberCountByGuildName" ,"Gs2Idle:IncreaseMaximumIdleMinutesByUserId" ,"Gs2Idle:SetMaximumIdleMinutesByUserId" ,"Gs2Idle:ReceiveByUserId" ,"Gs2Inbox:SendMessageByUserId" ,"Gs2Inventory:AddCapacityByUserId" ,"Gs2Inventory:SetCapacityByUserId" ,"Gs2Inventory:AcquireItemSetByUserId" ,"Gs2Inventory:AcquireItemSetWithGradeByUserId" ,"Gs2Inventory:AddReferenceOfByUserId" ,"Gs2Inventory:DeleteReferenceOfByUserId" ,"Gs2Inventory:AcquireSimpleItemsByUserId" ,"Gs2Inventory:SetSimpleItemsByUserId" ,"Gs2Inventory:AcquireBigItemByUserId" ,"Gs2Inventory:SetBigItemByUserId" ,"Gs2JobQueue:PushByUserId" ,"Gs2Limit:CountDownByUserId" ,"Gs2Limit:DeleteCounterByUserId" ,"Gs2LoginReward:DeleteReceiveStatusByUserId" ,"Gs2LoginReward:UnmarkReceivedByUserId" ,"Gs2Lottery:DrawByUserId" ,"Gs2Lottery:ResetBoxByUserId" ,"Gs2Mission:RevertReceiveByUserId" ,"Gs2Mission:IncreaseCounterByUserId" ,"Gs2Mission:SetCounterByUserId" ,"Gs2Money:DepositByUserId" ,"Gs2Money:RevertRecordReceipt" ,"Gs2Money2:DepositByUserId" ,"Gs2Quest:CreateProgressByUserId" ,"Gs2Schedule:TriggerByUserId" ,"Gs2Script:InvokeScript" ,"Gs2SerialKey:RevertUseByUserId" ,"Gs2SerialKey:IssueOnce" ,"Gs2Showcase:DecrementPurchaseCountByUserId" ,"Gs2Showcase:ForceReDrawByUserId" ,"Gs2SkillTree:MarkReleaseByUserId" ,"Gs2Stamina:RecoverStaminaByUserId" ,"Gs2Stamina:RaiseMaxValueByUserId" ,"Gs2Stamina:SetMaxValueByUserId" ,"Gs2Stamina:SetRecoverIntervalByUserId" ,"Gs2Stamina:SetRecoverValueByUserId" ,"Gs2StateMachine:StartStateMachineByUserId" , } ✓ ~ 128 chars Types of actions to be performed in the acquire action request string ✓ ~ 1048576 chars JSON of request
ConsumeAction Consume Action
Type Condition Require Default Limitation Description action enum {"Gs2AdReward:ConsumePointByUserId" ,"Gs2Dictionary:DeleteEntriesByUserId" ,"Gs2Enhance:DeleteProgressByUserId" ,"Gs2Exchange:DeleteAwaitByUserId" ,"Gs2Experience:SubExperienceByUserId" ,"Gs2Experience:SubRankCapByUserId" ,"Gs2Formation:SubMoldCapacityByUserId" ,"Gs2Grade:SubGradeByUserId" ,"Gs2Guild:DecreaseMaximumCurrentMaximumMemberCountByGuildName" ,"Gs2Idle:DecreaseMaximumIdleMinutesByUserId" ,"Gs2Inbox:OpenMessageByUserId" ,"Gs2Inbox:DeleteMessageByUserId" ,"Gs2Inventory:ConsumeItemSetByUserId" ,"Gs2Inventory:ConsumeSimpleItemsByUserId" ,"Gs2Inventory:ConsumeBigItemByUserId" ,"Gs2JobQueue:DeleteJobByUserId" ,"Gs2Limit:CountUpByUserId" ,"Gs2LoginReward:MarkReceivedByUserId" ,"Gs2Mission:ReceiveByUserId" ,"Gs2Mission:BatchReceiveByUserId" ,"Gs2Mission:DecreaseCounterByUserId" ,"Gs2Money:WithdrawByUserId" ,"Gs2Money:RecordReceipt" ,"Gs2Money2:WithdrawByUserId" ,"Gs2Money2:VerifyReceiptByUserId" ,"Gs2Quest:DeleteProgressByUserId" ,"Gs2Ranking2:CreateGlobalRankingReceivedRewardByUserId" ,"Gs2Ranking2:CreateClusterRankingReceivedRewardByUserId" ,"Gs2Schedule:DeleteTriggerByUserId" ,"Gs2SerialKey:UseByUserId" ,"Gs2Showcase:IncrementPurchaseCountByUserId" ,"Gs2SkillTree:MarkRestrainByUserId" ,"Gs2Stamina:DecreaseMaxValueByUserId" ,"Gs2Stamina:ConsumeStaminaByUserId" , } ✓ ~ 128 chars Types of actions to be performed in the consume action request string ✓ ~ 1048576 chars JSON of request
VerifyAction Verify Action
Type Condition Require Default Limitation Description action enum {"Gs2Dictionary:VerifyEntryByUserId" ,"Gs2Distributor:IfExpressionByUserId" ,"Gs2Distributor:AndExpressionByUserId" ,"Gs2Distributor:OrExpressionByUserId" ,"Gs2Enchant:VerifyRarityParameterStatusByUserId" ,"Gs2Experience:VerifyRankByUserId" ,"Gs2Experience:VerifyRankCapByUserId" ,"Gs2Grade:VerifyGradeByUserId" ,"Gs2Grade:VerifyGradeUpMaterialByUserId" ,"Gs2Guild:VerifyCurrentMaximumMemberCountByGuildName" ,"Gs2Guild:VerifyIncludeMemberByUserId" ,"Gs2Inventory:VerifyInventoryCurrentMaxCapacityByUserId" ,"Gs2Inventory:VerifyItemSetByUserId" ,"Gs2Inventory:VerifyReferenceOfByUserId" ,"Gs2Inventory:VerifySimpleItemByUserId" ,"Gs2Inventory:VerifyBigItemByUserId" ,"Gs2Limit:VerifyCounterByUserId" ,"Gs2Matchmaking:VerifyIncludeParticipantByUserId" ,"Gs2Mission:VerifyCompleteByUserId" ,"Gs2Mission:VerifyCounterValueByUserId" ,"Gs2Ranking2:VerifyGlobalRankingScoreByUserId" ,"Gs2Ranking2:VerifyClusterRankingScoreByUserId" ,"Gs2Ranking2:VerifySubscribeRankingScoreByUserId" ,"Gs2Schedule:VerifyTriggerByUserId" ,"Gs2Schedule:VerifyEventByUserId" ,"Gs2SerialKey:VerifyCodeByUserId" , } ✓ ~ 128 chars Types of actions to be performed in the verify task request string ✓ ~ 1048576 chars JSON of request
Config Configration
Set values to be applied to transaction variables
Type Condition Require Default Limitation Description key string ✓ ~ 64 chars Name value string ~ 51200 chars Value
VerifyActionResult Verify action execution result
Type Condition Require Default Limitation Description action enum { } ✓ ~ 128 chars Types of actions to be performed in the verify task verifyRequest string ✓ ~ 1048576 chars JSON of request statusCode int ~ 999 Status code verifyResult string ~ 1048576 chars Result payload
Enumeration type definition to specify as action Enumerator String Definition Description
ConsumeActionResult Consume action execution result
Type Condition Require Default Limitation Description action enum { } ✓ ~ 128 chars Types of actions to be performed in the consume action consumeRequest string ✓ ~ 1048576 chars JSON of request statusCode int ~ 999 Status code consumeResult string ~ 1048576 chars Result payload
Enumeration type definition to specify as action Enumerator String Definition Description
AcquireActionResult Acquire action execution result
Type Condition Require Default Limitation Description action enum { } ✓ ~ 128 chars Types of actions to be performed in the acquire action acquireRequest string ✓ ~ 1048576 chars JSON of request statusCode int ~ 999 Status code acquireResult string ~ 1048576 chars Result payload
Enumeration type definition to specify as action Enumerator String Definition Description
TransactionResult Transaction execution results
Transaction execution results executed using server-side transaction auto-execution functionality
GitHubCheckoutSetting Setup to check out master data from GitHub
Type Condition Require Default Limitation Description apiKeyId string ✓ ~ 1024 chars GitHub API key GRN repositoryName string ✓ ~ 1024 chars Repository Name sourcePath string ✓ ~ 1024 chars Source code file path referenceType enum { “commit_hash”, “branch”, “tag” } ✓ ~ 128 chars Source of code commitHash string {referenceType} == “commit_hash” ✓ ~ 1024 chars Commit hash branchName string {referenceType} == “branch” ✓ ~ 1024 chars Branch Name tagName string {referenceType} == “tag” ✓ ~ 1024 chars Tag Name
Enumeration type definition to specify as referenceType Enumerator String Definition Description commit_hash Commit hash branch Branch tag Tag
ScriptSetting Script settings
In GS2, you can associate custom scripts with microservice events and execute them.
This model holds the settings for triggering script execution.
There are two main ways to execute a script: synchronous execution and asynchronous execution.
Synchronous execution blocks processing until the script has finished executing.
Instead, you can use the script execution result to stop the execution of the API or to tamper with the result of the API.
On the other hand, asynchronous execution does not block processing until the script has finished executing.
Instead, you can use the script execution result to stop the execution of the API or to tamper with the result of the API.
However, asynchronous execution does not block processing until the script has finished executing, so it is generally recommended to use asynchronous execution.
There are two types of asynchronous execution methods: GS2-Script and Amazon EventBridge.
By using Amazon EventBridge, you can write processing in languages other than Lua.
Type Condition Require Default Limitation Description triggerScriptId string ~ 1024 chars Script GRN doneTriggerTargetType enum { “none”, “gs2_script”, “aws” } ✓ “none” ~ 128 chars Notification of Completion doneTriggerScriptId string {doneTriggerTargetType} == “gs2_script” ~ 1024 chars Script GRN doneTriggerQueueNamespaceId string {doneTriggerTargetType} == “gs2_script” ~ 1024 chars Namespace GRN
Enumeration type definition to specify as doneTriggerTargetType Enumerator String Definition Description none None gs2_script GS2-Script aws Amazon EventBridge
LogSetting Log setting
This type manages log output settings.
This type holds the identifier of the log namespace used to output log data.
The log namespace ID specifies the GS2-Log namespace to aggregate and store the log data.
Through this setting, API request and response log data under this namespace will be output to the target GS2-Log.
GS2-Log provides logs in real time, which can be used for system monitoring, analysis, debugging, etc.
Type Condition Require Default Limitation Description loggingNamespaceId string ✓ ~ 1024 chars Namespace GRN
TransactionSetting Transaction settings
Type Condition Require Default Limitation Description enableAutoRun bool ✓ false Whether to automatically execute issued transactions on the server side enableAtomicCommit bool {enableAutoRun} == true ✓ false Whether to commit the execution of transactions atomically transactionUseDistributor bool {enableAtomicCommit} == true ✓ false Whether to execute transactions asynchronously acquireActionUseJobQueue bool {enableAtomicCommit} == true ✓ false Whether to use GS2-JobQueue to execute the acquire action distributorNamespaceId string ✓ “grn:gs2:{region}:{ownerId}:distributor:default” ~ 1024 chars GS2-Distributor namespace used for transaction execution queueNamespaceId string ✓ “grn:gs2:{region}:{ownerId}:queue:default” ~ 1024 chars Namespace in GS2-JobQueue used to run the transaction
Methods describeNamespaces Get list of namespaces
Request Type Condition Require Default Limitation Description pageToken string ~ 1024 chars Token specifying the position from which to start acquiring data limit int ✓ 30 1 ~ 1000 Number of data acquired
Result Type Description items List<Namespace> List of Namespaces nextPageToken string Page token to retrieve the rest of the listing
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.describe_namespaces_async ({
pageToken = nil ,
limit = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
items = result.items ;
nextPageToken = result.nextPageToken ;
createNamespace Create a new namespace
Request Type Condition Require Default Limitation Description name string ✓ ~ 128 chars Namespace name description string ~ 1024 chars Description transactionSetting TransactionSetting ✓ Transaction settings startQuestScript ScriptSetting Script to be executed when the quest is started completeQuestScript ScriptSetting Script to be executed when a quest is completed failedQuestScript ScriptSetting Script to run when a quest fails logSetting LogSetting Log output settings queueNamespaceId string ~ 1024 chars Namespace in GS2-JobQueue used to run the transaction keyId string ~ 1024 chars GS2-Key namespace used to issue transactions
Result Type Description item Namespace Created namespace
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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: \n amespace1:key:key-0001" ))
-> withStartQuestScript ( null )
-> withCompleteQuestScript ( null )
-> withFailedQuestScript ( null )
-> withLogSetting (( new \Gs2\Quest\Model\LogSetting ())
-> withLoggingNamespaceId ( "grn:gs2:ap-northeast-1:YourOwnerId:log: \n amespace1" ))
);
$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 ;
client = gs2 ( 'quest' )
api_result_handler = client.create_namespace_async ({
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" ,
},
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
getNamespaceStatus Get namespace status
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name
Result Type Description status string
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.get_namespace_status_async ({
namespaceName = "namespace1" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
status = result.status ;
getNamespace Get namespace
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.get_namespace_async ({
namespaceName = "namespace1" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
updateNamespace Update namespace
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name description string ~ 1024 chars Description transactionSetting TransactionSetting ✓ Transaction settings startQuestScript ScriptSetting Script to be executed when the quest is started completeQuestScript ScriptSetting Script to be executed when a quest is completed failedQuestScript ScriptSetting Script to run when a quest fails logSetting LogSetting Log output settings queueNamespaceId string ~ 1024 chars Namespace in GS2-JobQueue used to run the transaction keyId string ~ 1024 chars GS2-Key namespace used to issue transactions
Result Type Description item Namespace Updated namespace
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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: \n amespace1:key:key-0002" ))
-> withStartQuestScript ( null )
-> withCompleteQuestScript ( null )
-> withFailedQuestScript ( null )
-> withLogSetting (( new \Gs2\Quest\Model\LogSetting ())
-> withLoggingNamespaceId ( "grn:gs2:ap-northeast-1:YourOwnerId:log: \n amespace1" ))
);
$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 ;
client = gs2 ( 'quest' )
api_result_handler = client.update_namespace_async ({
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" ,
},
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
deleteNamespace Delete namespace
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name
Result Type Description item Namespace Deleted namespace
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.delete_namespace_async ({
namespaceName = "namespace1" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
dumpUserDataByUserId Get dump data of the data associated with the specified user ID
Request Type Condition Require Default Limitation Description userId string ✓ ~ 128 chars User Id timeOffsetToken string ~ 1024 chars Time offset token
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . DumpUserDataByUserId (
& quest . DumpUserDataByUserIdRequest {
UserId : pointy . String ( "user-0001" ),
TimeOffsetToken : nil ,
}
)
if err != nil {
panic ( "error occurred" )
}
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\DumpUserDataByUserIdRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> dumpUserDataByUserId (
( new DumpUserDataByUserIdRequest ())
-> withUserId ( "user-0001" )
-> withTimeOffsetToken ( null )
);
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.DumpUserDataByUserIdRequest ;
import io.gs2.quest.result.DumpUserDataByUserIdResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
DumpUserDataByUserIdResult result = client . dumpUserDataByUserId (
new DumpUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withTimeOffsetToken ( null )
);
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.DumpUserDataByUserIdRequest ;
using Gs2.Gs2Quest.Result.DumpUserDataByUserIdResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . DumpUserDataByUserIdResult > asyncResult = null ;
yield return client . DumpUserDataByUserId (
new Gs2 . Gs2Quest . Request . DumpUserDataByUserIdRequest ()
. WithUserId ( "user-0001" )
. WithTimeOffsetToken ( null ),
r => asyncResult = r
);
if ( asyncResult . Error != null ) {
throw asyncResult . Error ;
}
var result = asyncResult . Result ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . dumpUserDataByUserId (
new Gs2Quest . DumpUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withTimeOffsetToken ( null )
);
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . dump_user_data_by_user_id (
quest . DumpUserDataByUserIdRequest ()
. with_user_id ( 'user-0001' )
. with_time_offset_token ( None )
)
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.dump_user_data_by_user_id ({
userId = "user-0001" ,
timeOffsetToken = nil ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
client = gs2 ( 'quest' )
api_result_handler = client.dump_user_data_by_user_id_async ({
userId = "user-0001" ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
checkDumpUserDataByUserId Check if the dump of the data associated with the specified user ID is complete
Request Type Condition Require Default Limitation Description userId string ✓ ~ 128 chars User Id timeOffsetToken string ~ 1024 chars Time offset token
Result Type Description url string URL of output data
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . CheckDumpUserDataByUserId (
& quest . CheckDumpUserDataByUserIdRequest {
UserId : pointy . String ( "user-0001" ),
TimeOffsetToken : nil ,
}
)
if err != nil {
panic ( "error occurred" )
}
url := result . Url
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\CheckDumpUserDataByUserIdRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> checkDumpUserDataByUserId (
( new CheckDumpUserDataByUserIdRequest ())
-> withUserId ( "user-0001" )
-> withTimeOffsetToken ( null )
);
$url = $result -> getUrl ();
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.CheckDumpUserDataByUserIdRequest ;
import io.gs2.quest.result.CheckDumpUserDataByUserIdResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
CheckDumpUserDataByUserIdResult result = client . checkDumpUserDataByUserId (
new CheckDumpUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withTimeOffsetToken ( null )
);
String url = result . getUrl ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.CheckDumpUserDataByUserIdRequest ;
using Gs2.Gs2Quest.Result.CheckDumpUserDataByUserIdResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . CheckDumpUserDataByUserIdResult > asyncResult = null ;
yield return client . CheckDumpUserDataByUserId (
new Gs2 . Gs2Quest . Request . CheckDumpUserDataByUserIdRequest ()
. WithUserId ( "user-0001" )
. WithTimeOffsetToken ( null ),
r => asyncResult = r
);
if ( asyncResult . Error != null ) {
throw asyncResult . Error ;
}
var result = asyncResult . Result ;
var url = result . Url ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . checkDumpUserDataByUserId (
new Gs2Quest . CheckDumpUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withTimeOffsetToken ( null )
);
const url = result . getUrl ();
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . check_dump_user_data_by_user_id (
quest . CheckDumpUserDataByUserIdRequest ()
. with_user_id ( 'user-0001' )
. with_time_offset_token ( None )
)
url = result . url
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.check_dump_user_data_by_user_id ({
userId = "user-0001" ,
timeOffsetToken = nil ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
url = result.url ;
client = gs2 ( 'quest' )
api_result_handler = client.check_dump_user_data_by_user_id_async ({
userId = "user-0001" ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
url = result.url ;
cleanUserDataByUserId Get clean data of the data associated with the specified user ID
Request Type Condition Require Default Limitation Description userId string ✓ ~ 128 chars User Id timeOffsetToken string ~ 1024 chars Time offset token
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . CleanUserDataByUserId (
& quest . CleanUserDataByUserIdRequest {
UserId : pointy . String ( "user-0001" ),
TimeOffsetToken : nil ,
}
)
if err != nil {
panic ( "error occurred" )
}
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\CleanUserDataByUserIdRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> cleanUserDataByUserId (
( new CleanUserDataByUserIdRequest ())
-> withUserId ( "user-0001" )
-> withTimeOffsetToken ( null )
);
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.CleanUserDataByUserIdRequest ;
import io.gs2.quest.result.CleanUserDataByUserIdResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
CleanUserDataByUserIdResult result = client . cleanUserDataByUserId (
new CleanUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withTimeOffsetToken ( null )
);
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.CleanUserDataByUserIdRequest ;
using Gs2.Gs2Quest.Result.CleanUserDataByUserIdResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . CleanUserDataByUserIdResult > asyncResult = null ;
yield return client . CleanUserDataByUserId (
new Gs2 . Gs2Quest . Request . CleanUserDataByUserIdRequest ()
. WithUserId ( "user-0001" )
. WithTimeOffsetToken ( null ),
r => asyncResult = r
);
if ( asyncResult . Error != null ) {
throw asyncResult . Error ;
}
var result = asyncResult . Result ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . cleanUserDataByUserId (
new Gs2Quest . CleanUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withTimeOffsetToken ( null )
);
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . clean_user_data_by_user_id (
quest . CleanUserDataByUserIdRequest ()
. with_user_id ( 'user-0001' )
. with_time_offset_token ( None )
)
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.clean_user_data_by_user_id ({
userId = "user-0001" ,
timeOffsetToken = nil ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
client = gs2 ( 'quest' )
api_result_handler = client.clean_user_data_by_user_id_async ({
userId = "user-0001" ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
checkCleanUserDataByUserId Check if the clean of the data associated with the specified user ID is complete
Request Type Condition Require Default Limitation Description userId string ✓ ~ 128 chars User Id timeOffsetToken string ~ 1024 chars Time offset token
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . CheckCleanUserDataByUserId (
& quest . CheckCleanUserDataByUserIdRequest {
UserId : pointy . String ( "user-0001" ),
TimeOffsetToken : nil ,
}
)
if err != nil {
panic ( "error occurred" )
}
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\CheckCleanUserDataByUserIdRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> checkCleanUserDataByUserId (
( new CheckCleanUserDataByUserIdRequest ())
-> withUserId ( "user-0001" )
-> withTimeOffsetToken ( null )
);
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.CheckCleanUserDataByUserIdRequest ;
import io.gs2.quest.result.CheckCleanUserDataByUserIdResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
CheckCleanUserDataByUserIdResult result = client . checkCleanUserDataByUserId (
new CheckCleanUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withTimeOffsetToken ( null )
);
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.CheckCleanUserDataByUserIdRequest ;
using Gs2.Gs2Quest.Result.CheckCleanUserDataByUserIdResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . CheckCleanUserDataByUserIdResult > asyncResult = null ;
yield return client . CheckCleanUserDataByUserId (
new Gs2 . Gs2Quest . Request . CheckCleanUserDataByUserIdRequest ()
. WithUserId ( "user-0001" )
. WithTimeOffsetToken ( null ),
r => asyncResult = r
);
if ( asyncResult . Error != null ) {
throw asyncResult . Error ;
}
var result = asyncResult . Result ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . checkCleanUserDataByUserId (
new Gs2Quest . CheckCleanUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withTimeOffsetToken ( null )
);
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . check_clean_user_data_by_user_id (
quest . CheckCleanUserDataByUserIdRequest ()
. with_user_id ( 'user-0001' )
. with_time_offset_token ( None )
)
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.check_clean_user_data_by_user_id ({
userId = "user-0001" ,
timeOffsetToken = nil ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
client = gs2 ( 'quest' )
api_result_handler = client.check_clean_user_data_by_user_id_async ({
userId = "user-0001" ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
prepareImportUserDataByUserId Start importing data associated with the specified user ID
Request Type Condition Require Default Limitation Description userId string ✓ ~ 128 chars User Id timeOffsetToken string ~ 1024 chars Time offset token
Result Type Description uploadToken string Token used to reflect results after upload uploadUrl string URL used to upload user data
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . PrepareImportUserDataByUserId (
& quest . PrepareImportUserDataByUserIdRequest {
UserId : pointy . String ( "user-0001" ),
TimeOffsetToken : nil ,
}
)
if err != nil {
panic ( "error occurred" )
}
uploadToken := result . UploadToken
uploadUrl := result . UploadUrl
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\PrepareImportUserDataByUserIdRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> prepareImportUserDataByUserId (
( new PrepareImportUserDataByUserIdRequest ())
-> withUserId ( "user-0001" )
-> withTimeOffsetToken ( null )
);
$uploadToken = $result -> getUploadToken ();
$uploadUrl = $result -> getUploadUrl ();
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.PrepareImportUserDataByUserIdRequest ;
import io.gs2.quest.result.PrepareImportUserDataByUserIdResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
PrepareImportUserDataByUserIdResult result = client . prepareImportUserDataByUserId (
new PrepareImportUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withTimeOffsetToken ( null )
);
String uploadToken = result . getUploadToken ();
String uploadUrl = result . getUploadUrl ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.PrepareImportUserDataByUserIdRequest ;
using Gs2.Gs2Quest.Result.PrepareImportUserDataByUserIdResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . PrepareImportUserDataByUserIdResult > asyncResult = null ;
yield return client . PrepareImportUserDataByUserId (
new Gs2 . Gs2Quest . Request . PrepareImportUserDataByUserIdRequest ()
. WithUserId ( "user-0001" )
. WithTimeOffsetToken ( null ),
r => asyncResult = r
);
if ( asyncResult . Error != null ) {
throw asyncResult . Error ;
}
var result = asyncResult . Result ;
var uploadToken = result . UploadToken ;
var uploadUrl = result . UploadUrl ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . prepareImportUserDataByUserId (
new Gs2Quest . PrepareImportUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withTimeOffsetToken ( null )
);
const uploadToken = result . getUploadToken ();
const uploadUrl = result . getUploadUrl ();
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . prepare_import_user_data_by_user_id (
quest . PrepareImportUserDataByUserIdRequest ()
. with_user_id ( 'user-0001' )
. with_time_offset_token ( None )
)
upload_token = result . upload_token
upload_url = result . upload_url
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.prepare_import_user_data_by_user_id ({
userId = "user-0001" ,
timeOffsetToken = nil ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
uploadToken = result.uploadToken ;
uploadUrl = result.uploadUrl ;
client = gs2 ( 'quest' )
api_result_handler = client.prepare_import_user_data_by_user_id_async ({
userId = "user-0001" ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
uploadToken = result.uploadToken ;
uploadUrl = result.uploadUrl ;
importUserDataByUserId Start importing data associated with the specified user ID
Request Type Condition Require Default Limitation Description userId string ✓ ~ 128 chars User Id uploadToken string ✓ ~ 1024 chars Token received in preparation for upload timeOffsetToken string ~ 1024 chars Time offset token
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . ImportUserDataByUserId (
& quest . ImportUserDataByUserIdRequest {
UserId : pointy . String ( "user-0001" ),
UploadToken : pointy . String ( "upload-0001" ),
TimeOffsetToken : nil ,
}
)
if err != nil {
panic ( "error occurred" )
}
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\ImportUserDataByUserIdRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> importUserDataByUserId (
( new ImportUserDataByUserIdRequest ())
-> withUserId ( "user-0001" )
-> withUploadToken ( "upload-0001" )
-> withTimeOffsetToken ( null )
);
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.ImportUserDataByUserIdRequest ;
import io.gs2.quest.result.ImportUserDataByUserIdResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
ImportUserDataByUserIdResult result = client . importUserDataByUserId (
new ImportUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withUploadToken ( "upload-0001" )
. withTimeOffsetToken ( null )
);
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.ImportUserDataByUserIdRequest ;
using Gs2.Gs2Quest.Result.ImportUserDataByUserIdResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . ImportUserDataByUserIdResult > asyncResult = null ;
yield return client . ImportUserDataByUserId (
new Gs2 . Gs2Quest . Request . ImportUserDataByUserIdRequest ()
. WithUserId ( "user-0001" )
. WithUploadToken ( "upload-0001" )
. WithTimeOffsetToken ( null ),
r => asyncResult = r
);
if ( asyncResult . Error != null ) {
throw asyncResult . Error ;
}
var result = asyncResult . Result ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . importUserDataByUserId (
new Gs2Quest . ImportUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withUploadToken ( "upload-0001" )
. withTimeOffsetToken ( null )
);
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . import_user_data_by_user_id (
quest . ImportUserDataByUserIdRequest ()
. with_user_id ( 'user-0001' )
. with_upload_token ( 'upload-0001' )
. with_time_offset_token ( None )
)
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.import_user_data_by_user_id ({
userId = "user-0001" ,
uploadToken = "upload-0001" ,
timeOffsetToken = nil ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
client = gs2 ( 'quest' )
api_result_handler = client.import_user_data_by_user_id_async ({
userId = "user-0001" ,
uploadToken = "upload-0001" ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
checkImportUserDataByUserId Check if the import of the data associated with the specified user ID is complete
Request Type Condition Require Default Limitation Description userId string ✓ ~ 128 chars User Id uploadToken string ✓ ~ 1024 chars Token received in preparation for upload timeOffsetToken string ~ 1024 chars Time offset token
Result Type Description url string URL of log data
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . CheckImportUserDataByUserId (
& quest . CheckImportUserDataByUserIdRequest {
UserId : pointy . String ( "user-0001" ),
UploadToken : pointy . String ( "upload-0001" ),
TimeOffsetToken : nil ,
}
)
if err != nil {
panic ( "error occurred" )
}
url := result . Url
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\CheckImportUserDataByUserIdRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> checkImportUserDataByUserId (
( new CheckImportUserDataByUserIdRequest ())
-> withUserId ( "user-0001" )
-> withUploadToken ( "upload-0001" )
-> withTimeOffsetToken ( null )
);
$url = $result -> getUrl ();
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.CheckImportUserDataByUserIdRequest ;
import io.gs2.quest.result.CheckImportUserDataByUserIdResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
CheckImportUserDataByUserIdResult result = client . checkImportUserDataByUserId (
new CheckImportUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withUploadToken ( "upload-0001" )
. withTimeOffsetToken ( null )
);
String url = result . getUrl ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.CheckImportUserDataByUserIdRequest ;
using Gs2.Gs2Quest.Result.CheckImportUserDataByUserIdResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . CheckImportUserDataByUserIdResult > asyncResult = null ;
yield return client . CheckImportUserDataByUserId (
new Gs2 . Gs2Quest . Request . CheckImportUserDataByUserIdRequest ()
. WithUserId ( "user-0001" )
. WithUploadToken ( "upload-0001" )
. WithTimeOffsetToken ( null ),
r => asyncResult = r
);
if ( asyncResult . Error != null ) {
throw asyncResult . Error ;
}
var result = asyncResult . Result ;
var url = result . Url ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . checkImportUserDataByUserId (
new Gs2Quest . CheckImportUserDataByUserIdRequest ()
. withUserId ( "user-0001" )
. withUploadToken ( "upload-0001" )
. withTimeOffsetToken ( null )
);
const url = result . getUrl ();
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . check_import_user_data_by_user_id (
quest . CheckImportUserDataByUserIdRequest ()
. with_user_id ( 'user-0001' )
. with_upload_token ( 'upload-0001' )
. with_time_offset_token ( None )
)
url = result . url
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.check_import_user_data_by_user_id ({
userId = "user-0001" ,
uploadToken = "upload-0001" ,
timeOffsetToken = nil ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
url = result.url ;
client = gs2 ( 'quest' )
api_result_handler = client.check_import_user_data_by_user_id_async ({
userId = "user-0001" ,
uploadToken = "upload-0001" ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
url = result.url ;
describeQuestGroupModelMasters Get list of quest group masters
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name pageToken string ~ 1024 chars Token specifying the position from which to start acquiring data limit int ✓ 30 1 ~ 1000 Number of data acquired
Result Type Description items List<QuestGroupModelMaster> List of Quest Group Masters nextPageToken string Page token to retrieve the rest of the listing
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.describe_quest_group_model_masters_async ({
namespaceName = "namespace1" ,
pageToken = nil ,
limit = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
items = result.items ;
nextPageToken = result.nextPageToken ;
createQuestGroupModelMaster Create a new quest group master
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name name string ✓ ~ 128 chars Quest Group Model Name description string ~ 1024 chars Description metadata string ~ 1024 chars metadata challengePeriodEventId string ~ 1024 chars GS2-Schedule event GRN that sets the time period during which the quest can be attempted.
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.create_quest_group_model_master_async ({
namespaceName = "namespace1" ,
name = "quest-group-0001" ,
description = nil ,
metadata = nil ,
challengePeriodEventId = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
getQuestGroupModelMaster Get Quest Group Master
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Model Name
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.get_quest_group_model_master_async ({
namespaceName = "namespace1" ,
questGroupName = "quest-group-0001" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
updateQuestGroupModelMaster Update Quest Group Master
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Model Name description string ~ 1024 chars Description metadata string ~ 1024 chars metadata challengePeriodEventId string ~ 1024 chars GS2-Schedule event GRN that sets the time period during which the quest can be attempted.
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.update_quest_group_model_master_async ({
namespaceName = "namespace1" ,
questGroupName = "quest-group-0001" ,
description = "description1" ,
metadata = nil ,
challengePeriodEventId = "grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
deleteQuestGroupModelMaster Delete Quest Group Master
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Model Name
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.delete_quest_group_model_master_async ({
namespaceName = "namespace1" ,
questGroupName = "quest-group-0001" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
describeQuestModelMasters Get list of quest model masters
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Model Name pageToken string ~ 1024 chars Token specifying the position from which to start acquiring data limit int ✓ 30 1 ~ 1000 Number of data acquired
Result Type Description items List<QuestModelMaster> List of Quest Model Masters nextPageToken string Page token to retrieve the rest of the listing
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.describe_quest_model_masters_async ({
namespaceName = "namespace1" ,
questGroupName = "quest-group-0001" ,
pageToken = nil ,
limit = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
items = result.items ;
nextPageToken = result.nextPageToken ;
createQuestModelMaster Create a new quest model master
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Model Name name string ✓ ~ 128 chars Quest Name description string ~ 1024 chars Description metadata string ~ 1024 chars metadata contents List<Contents> ✓ 1 ~ 10 items Quest Description challengePeriodEventId string ~ 1024 chars GS2-Schedule event GRN that sets the time period during which the quest can be attempted. firstCompleteAcquireActions List<AcquireAction> [] ~ 10 items List of First Clear Reward Actions verifyActions List<VerifyAction> [] ~ 10 items List of verification actions for quest participation conditions consumeActions List<ConsumeAction> [] ~ 10 items Quest entry fee failedAcquireActions List<AcquireAction> [] ~ 100 items Reward for quest failure premiseQuestNames List<string> [] ~ 10 items Name of the quest that must be completed in order to attempt the quest
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ,
VerifyActions : 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 )
-> withVerifyActions ( 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 )
. withVerifyActions ( null )
. withConsumeActions ( null )
. withFailedAcquireActions ( null )
. withPremiseQuestNames ( null )
);
QuestModelMaster item = result . getItem ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.CreateQuestModelMasterRequest ;
using Gs2.Gs2Quest.Result.CreateQuestModelMasterResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . CreateQuestModelMasterResult > asyncResult = null ;
yield return client . CreateQuestModelMaster (
new Gs2 . Gs2Quest . Request . CreateQuestModelMasterRequest ()
. WithNamespaceName ( "namespace1" )
. WithQuestGroupName ( "quest-group-0001" )
. WithName ( "quest-0001" )
. WithDescription ( null )
. WithMetadata ( null )
. WithContents ( new Gs2 . Gs2Quest . Model . Contents [] {
new Gs2 . Gs2Quest . Model . Contents ()
. WithMetadata ( "normal" )
. WithCompleteAcquireActions ( new Gs2 . Core . Model . AcquireAction [] {
new Gs2 . Core . Model . AcquireAction ()
. WithAction ( "Gs2Experience:AddExperienceByUserId" )
. WithRequest ( "Gs2Experience:AddExperienceByUserId-request1" ),
})
. WithWeight ( 1 ),
})
. WithChallengePeriodEventId ( null )
. WithFirstCompleteAcquireActions ( null )
. WithVerifyActions ( 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 )
. withVerifyActions ( 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_verify_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 ,
verifyActions = 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.create_quest_model_master_async ({
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 ,
verifyActions = nil ,
consumeActions = nil ,
failedAcquireActions = nil ,
premiseQuestNames = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
getQuestModelMaster Get Quest Model Master
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Model Name questName string ✓ ~ 128 chars Quest Name
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.get_quest_model_master_async ({
namespaceName = "namespace1" ,
questGroupName = "quest-group-0001" ,
questName = "quest-0001" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
updateQuestModelMaster Update Quest Model Master
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Model Name questName string ✓ ~ 128 chars Quest Name description string ~ 1024 chars Description metadata string ~ 1024 chars metadata contents List<Contents> ✓ 1 ~ 10 items Quest Description challengePeriodEventId string ~ 1024 chars GS2-Schedule event GRN that sets the time period during which the quest can be attempted. firstCompleteAcquireActions List<AcquireAction> [] ~ 10 items List of First Clear Reward Actions verifyActions List<VerifyAction> [] ~ 10 items List of verification actions for quest participation conditions consumeActions List<ConsumeAction> [] ~ 10 items Quest entry fee failedAcquireActions List<AcquireAction> [] ~ 100 items Reward for quest failure premiseQuestNames List<string> [] ~ 10 items Name of the quest that must be completed in order to attempt the quest
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ,
VerifyActions : 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 )
-> withVerifyActions ( 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 )
. withVerifyActions ( null )
. withConsumeActions ( null )
. withFailedAcquireActions ( null )
. withPremiseQuestNames ( null )
);
QuestModelMaster item = result . getItem ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.UpdateQuestModelMasterRequest ;
using Gs2.Gs2Quest.Result.UpdateQuestModelMasterResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . UpdateQuestModelMasterResult > asyncResult = null ;
yield return client . UpdateQuestModelMaster (
new Gs2 . Gs2Quest . Request . UpdateQuestModelMasterRequest ()
. WithNamespaceName ( "namespace1" )
. WithQuestGroupName ( "quest-group-0001" )
. WithQuestName ( "quest-0001" )
. WithDescription ( "description1" )
. WithMetadata ( null )
. WithContents ( new Gs2 . Gs2Quest . Model . Contents [] {
new Gs2 . Gs2Quest . Model . Contents ()
. WithMetadata ( "normal" )
. WithCompleteAcquireActions ( new Gs2 . Core . Model . AcquireAction [] {
new Gs2 . Core . Model . AcquireAction ()
. WithAction ( "Gs2Experience:AddExperienceByUserId" )
. WithRequest ( "Gs2Experience:AddExperienceByUserId-request1" ),
})
. WithWeight ( 1 ),
})
. WithChallengePeriodEventId ( "grn:gs2:ap-northeast-1:YourOwnerId:schedule:schedule-0001:event:event-0002" )
. WithFirstCompleteAcquireActions ( null )
. WithVerifyActions ( 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 )
. withVerifyActions ( 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_verify_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 ,
verifyActions = 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.update_quest_model_master_async ({
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 ,
verifyActions = nil ,
consumeActions = nil ,
failedAcquireActions = nil ,
premiseQuestNames = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
deleteQuestModelMaster Delete Quest Model Master'
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Model Name questName string ✓ ~ 128 chars Quest Name
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.delete_quest_model_master_async ({
namespaceName = "namespace1" ,
questGroupName = "quest-group-0001" ,
questName = "quest-0001" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
exportMaster Export master data for currently active quest masters
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.export_master_async ({
namespaceName = "namespace1" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
getCurrentQuestMaster Get currently active quest masters
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.get_current_quest_master_async ({
namespaceName = "namespace1" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
updateCurrentQuestMaster Update and currently available quest master
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name settings string ✓ ~ 5242880 chars Master data
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 \"questGroupModels\": [\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 \" questGroupModels \" : [ \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 \"questGroupModels\": [\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 \"questGroupModels\": [\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 \"questGroupModels\": [\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 "questGroupModels": [ \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 " questGroupModels ": [ \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 ;
client = gs2 ( 'quest' )
api_result_handler = client.update_current_quest_master_async ({
namespaceName = "namespace1" ,
settings = "{ \n " version ": " 2019 - 05 - 14 ", \n " questGroupModels ": [ \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 }" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
updateCurrentQuestMasterFromGitHub Update and currently available quest master
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name checkoutSetting GitHubCheckoutSetting ✓ Setup to check out master data from GitHub
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 : & quest . GitHubCheckoutSetting {
ApiKeyId : pointy . String ( "$gitHubApiKey1.apiKeyId" ),
RepositoryName : pointy . String ( "gs2io/master-data" ),
SourcePath : pointy . String ( "path/to/file.json" ),
ReferenceType : pointy . String ( "branch" ),
BranchName : pointy . String ( "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 (( new GitHubCheckoutSetting ())
-> withApiKeyId ( self :: $gitHubApiKey1 . apiKeyId )
-> withRepositoryName ( "gs2io/master-data" )
-> withSourcePath ( "path/to/file.json" )
-> withReferenceType ( "branch" )
-> withBranchName ( "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 ( new GitHubCheckoutSetting ()
. withApiKeyId ( "$gitHubApiKey1.apiKeyId" )
. withRepositoryName ( "gs2io/master-data" )
. withSourcePath ( "path/to/file.json" )
. withReferenceType ( "branch" )
. withBranchName ( "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 ( new Gs2 . Gs2Quest . Model . GitHubCheckoutSetting ()
. WithApiKeyId ( "$gitHubApiKey1.apiKeyId" )
. WithRepositoryName ( "gs2io/master-data" )
. WithSourcePath ( "path/to/file.json" )
. WithReferenceType ( "branch" )
. WithBranchName ( "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 ( new Gs2Quest . model . GitHubCheckoutSetting ()
. withApiKeyId ( "$gitHubApiKey1.apiKeyId" )
. withRepositoryName ( "gs2io/master-data" )
. withSourcePath ( "path/to/file.json" )
. withReferenceType ( "branch" )
. withBranchName ( "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 ( quest . GitHubCheckoutSetting ()
. with_api_key_id ( self . git_hub_api_key1 . api_key_id )
. with_repository_name ( 'gs2io/master-data' )
. with_source_path ( 'path/to/file.json' )
. with_reference_type ( 'branch' )
. with_branch_name ( '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 = {
api_key_id = "$gitHubApiKey1.apiKeyId" ,
repository_name = "gs2io/master-data" ,
source_path = "path/to/file.json" ,
reference_type = "branch" ,
branch_name = "develop" ,
},
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
client = gs2 ( 'quest' )
api_result_handler = client.update_current_quest_master_from_git_hub_async ({
namespaceName = "namespace1" ,
checkoutSetting = {
api_key_id = "$gitHubApiKey1.apiKeyId" ,
repository_name = "gs2io/master-data" ,
source_path = "path/to/file.json" ,
reference_type = "branch" ,
branch_name = "develop" ,
},
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
describeProgressesByUserId Get list of quest progress
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 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 timeOffsetToken string ~ 1024 chars Time offset token
Result Type Description items List<Progress> List of Quest Progresses nextPageToken string Page token to retrieve the rest of the listing
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ,
TimeOffsetToken : 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 )
-> withTimeOffsetToken ( 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 )
. withTimeOffsetToken ( 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 )
. WithTimeOffsetToken ( 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 )
. withTimeOffsetToken ( 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 )
. with_time_offset_token ( 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 ,
timeOffsetToken = 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.describe_progresses_by_user_id_async ({
namespaceName = "namespace1" ,
userId = "user-0001" ,
pageToken = nil ,
limit = nil ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
items = result.items ;
nextPageToken = result.nextPageToken ;
createProgressByUserId Create quest progress by specifying user ID
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name userId string ✓ ~ 128 chars User Id questModelId string ✓ ~ 1024 chars Quest model GRN in progress force bool ✓ false If have a quest already started, you can discard it and start it config List<Config> [] ~ 32 items Set values to be applied to transaction variables timeOffsetToken string ~ 1024 chars Time offset token
Result Type Description item Progress Quest Progress
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ,
TimeOffsetToken : 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: \n amespace1:group:main:quest:1-1" )
-> withForce ( null )
-> withConfig ( null )
-> withTimeOffsetToken ( 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 )
. withTimeOffsetToken ( 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 )
. WithTimeOffsetToken ( 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 )
. withTimeOffsetToken ( 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 )
. with_time_offset_token ( 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 ,
timeOffsetToken = nil ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
client = gs2 ( 'quest' )
api_result_handler = client.create_progress_by_user_id_async ({
namespaceName = "namespace1" ,
userId = "user-0001" ,
questModelId = "grn:gs2:ap-northeast-1:YourOwnerId:quest:namespace1:group:main:quest:1-1" ,
force = nil ,
config = nil ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
getProgress Get quest progress
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name accessToken string ✓ ~ 128 chars User Id
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ( "accessToken-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 ( "accessToken-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 ( "accessToken-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 ( "accessToken-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 = "accessToken-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 ;
client = gs2 ( 'quest' )
api_result_handler = client.get_progress_async ({
namespaceName = "namespace1" ,
accessToken = "accessToken-0001" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
questGroup = result.questGroup ;
quest = result.quest ;
getProgressByUserId Get quest progress by specifying user ID
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name userId string ✓ ~ 128 chars User Id timeOffsetToken string ~ 1024 chars Time offset token
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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" ),
TimeOffsetToken : nil ,
}
)
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" )
-> withTimeOffsetToken ( null )
);
$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" )
. withTimeOffsetToken ( null )
);
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" )
. WithTimeOffsetToken ( null ),
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" )
. withTimeOffsetToken ( null )
);
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' )
. with_time_offset_token ( None )
)
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" ,
timeOffsetToken = nil ,
})
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 ;
client = gs2 ( 'quest' )
api_result_handler = client.get_progress_by_user_id_async ({
namespaceName = "namespace1" ,
userId = "user-0001" ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
questGroup = result.questGroup ;
quest = result.quest ;
start Start Quest
Within the same category, a game player can execute one quest at a time.
If there is already a quest running in the same category, this API will return an error.
By calling the API to retrieve quests in progress, you can get the information you need to resume a quest.
You can force a quest to start by specifying true for the force parameter.
If the quest is successfully started, a Progress object is responded to.
The Progress object responds with some information necessary to execute the quest.
transactionId is the unique ID of the running quest.
This ID must be specified when reporting the completion of a quest.
randomSeed is a random number seed that can be used to determine the contents of the quest.
A different random number is dispensed each time you start a quest, so you can use this value as the seed value to keep the game going.
Even if an application is forcefully terminated during a quest, it can be resumed under the same conditions.
The rewards are the “maximum value” of the rewards and their quantities available for this quest.
You can also pass rewards to the quest completion report, where you specify the quantity of items actually obtained during the quest.
See the Quest Completion Reporting API documentation for more details.
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Name questName string ✓ ~ 128 chars Quest Name accessToken string ✓ ~ 128 chars User Id force bool ✓ false If have a quest already started, you can discard it and start it config List<Config> [] ~ 32 items Set values to be applied to transaction variables
Result Type Description transactionId string Issed transaction ID 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 transaction auto-execution enabled? atomicCommit bool? Transaction to commit atomically transaction string Issued transaction transactionResult TransactionResult Transaction execution result
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ( "accessToken-0001" ),
Force : nil ,
Config : nil ,
}
)
if err != nil {
panic ( "error occurred" )
}
transactionId := result . TransactionId
stampSheet := result . StampSheet
stampSheetEncryptionKeyId := result . StampSheetEncryptionKeyId
autoRunStampSheet := result . AutoRunStampSheet
atomicCommit := result . AtomicCommit
transaction := result . Transaction
transactionResult := result . TransactionResult
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 ();
$atomicCommit = $result -> getAtomicCommit ();
$transaction = $result -> getTransaction ();
$transactionResult = $result -> getTransactionResult ();
} 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 ( "accessToken-0001" )
. withForce ( null )
. withConfig ( null )
);
String transactionId = result . getTransactionId ();
String stampSheet = result . getStampSheet ();
String stampSheetEncryptionKeyId = result . getStampSheetEncryptionKeyId ();
boolean autoRunStampSheet = result . getAutoRunStampSheet ();
boolean atomicCommit = result . getAtomicCommit ();
String transaction = result . getTransaction ();
TransactionResult transactionResult = result . getTransactionResult ();
} 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 ( "accessToken-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 ;
var atomicCommit = result . AtomicCommit ;
var transaction = result . Transaction ;
var transactionResult = result . TransactionResult ;
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 ( "accessToken-0001" )
. withForce ( null )
. withConfig ( null )
);
const transactionId = result . getTransactionId ();
const stampSheet = result . getStampSheet ();
const stampSheetEncryptionKeyId = result . getStampSheetEncryptionKeyId ();
const autoRunStampSheet = result . getAutoRunStampSheet ();
const atomicCommit = result . getAtomicCommit ();
const transaction = result . getTransaction ();
const transactionResult = result . getTransactionResult ();
} 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
atomic_commit = result . atomic_commit
transaction = result . transaction
transaction_result = result . transaction_result
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.start ({
namespaceName = "namespace1" ,
questGroupName = "group-0001" ,
questName = "quest-0001" ,
accessToken = "accessToken-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 ;
atomicCommit = result.atomicCommit ;
transaction = result.transaction ;
transactionResult = result.transactionResult ;
client = gs2 ( 'quest' )
api_result_handler = client.start_async ({
namespaceName = "namespace1" ,
questGroupName = "group-0001" ,
questName = "quest-0001" ,
accessToken = "accessToken-0001" ,
force = nil ,
config = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
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 ;
atomicCommit = result.atomicCommit ;
transaction = result.transaction ;
transactionResult = result.transactionResult ;
startByUserId Start a quest by specifying a user ID
Within the same category, a game player can execute one quest at a time.
If there is already a running quest in the same category, this API will return an error.
By calling the API to retrieve quests in progress, you can get the information you need to resume a quest.
You can force a quest to start by specifying true for the force parameter.
If the quest is successfully started, a Progress object is responded to.
The Progress object responds with some information necessary to execute the quest.
transactionId is the unique ID of the running quest.
This ID must be specified when reporting the completion of a quest.
randomSeed is a random number seed that can be used to determine the contents of the quest.
A different random number is dispensed each time a quest is opened®, so you can use this value as a seed value to keep the game going.
Even if an application is forcefully terminated during a quest, it can be resumed under the same conditions.
The rewards are the “maximum value” of the rewards and their quantities available for this quest.
You can also pass rewards to the quest completion report, where you specify the quantity of items actually obtained during the quest.
See the Quest Completion Reporting API documentation for more details.
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Name questName string ✓ ~ 128 chars Quest Name userId string ✓ ~ 128 chars User Id force bool ✓ false If have a quest already started, you can discard it and start it config List<Config> [] ~ 32 items Set values to be applied to transaction variables timeOffsetToken string ~ 1024 chars Time offset token
Result Type Description transactionId string Issed transaction ID 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 transaction auto-execution enabled? atomicCommit bool? Transaction to commit atomically transaction string Issued transaction transactionResult TransactionResult Transaction execution result
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ,
TimeOffsetToken : nil ,
}
)
if err != nil {
panic ( "error occurred" )
}
transactionId := result . TransactionId
stampSheet := result . StampSheet
stampSheetEncryptionKeyId := result . StampSheetEncryptionKeyId
autoRunStampSheet := result . AutoRunStampSheet
atomicCommit := result . AtomicCommit
transaction := result . Transaction
transactionResult := result . TransactionResult
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 )
-> withTimeOffsetToken ( null )
);
$transactionId = $result -> getTransactionId ();
$stampSheet = $result -> getStampSheet ();
$stampSheetEncryptionKeyId = $result -> getStampSheetEncryptionKeyId ();
$autoRunStampSheet = $result -> getAutoRunStampSheet ();
$atomicCommit = $result -> getAtomicCommit ();
$transaction = $result -> getTransaction ();
$transactionResult = $result -> getTransactionResult ();
} 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 )
. withTimeOffsetToken ( null )
);
String transactionId = result . getTransactionId ();
String stampSheet = result . getStampSheet ();
String stampSheetEncryptionKeyId = result . getStampSheetEncryptionKeyId ();
boolean autoRunStampSheet = result . getAutoRunStampSheet ();
boolean atomicCommit = result . getAtomicCommit ();
String transaction = result . getTransaction ();
TransactionResult transactionResult = result . getTransactionResult ();
} 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 )
. WithTimeOffsetToken ( 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 ;
var atomicCommit = result . AtomicCommit ;
var transaction = result . Transaction ;
var transactionResult = result . TransactionResult ;
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 )
. withTimeOffsetToken ( null )
);
const transactionId = result . getTransactionId ();
const stampSheet = result . getStampSheet ();
const stampSheetEncryptionKeyId = result . getStampSheetEncryptionKeyId ();
const autoRunStampSheet = result . getAutoRunStampSheet ();
const atomicCommit = result . getAtomicCommit ();
const transaction = result . getTransaction ();
const transactionResult = result . getTransactionResult ();
} 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 )
. with_time_offset_token ( 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
atomic_commit = result . atomic_commit
transaction = result . transaction
transaction_result = result . transaction_result
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 ,
timeOffsetToken = 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 ;
atomicCommit = result.atomicCommit ;
transaction = result.transaction ;
transactionResult = result.transactionResult ;
client = gs2 ( 'quest' )
api_result_handler = client.start_by_user_id_async ({
namespaceName = "namespace1" ,
questGroupName = "group-0001" ,
questName = "quest-0001" ,
userId = "user-0001" ,
force = nil ,
config = nil ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
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 ;
atomicCommit = result.atomicCommit ;
transaction = result.transaction ;
transactionResult = result.transactionResult ;
end Completed Quest
Of the “maximum” of available rewards and their quantity in the quest received at the start of the quest, the rewards actually obtained in the quest are reported in rewards.
isComplete reports whether the quest was completed. If the quest is failed, the rewards value is ignored and the reward for failure set for the quest is given.
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name accessToken string ✓ ~ 128 chars User Id rewards List<Reward> [] ~ 1000 items The actual rewards from the quest isComplete bool ✓ Completed the quest config List<Config> [] ~ 32 items Set values to be applied to transaction variables
Result Type Description item Progress Quest Progress transactionId string Issed transaction ID 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 transaction auto-execution enabled? atomicCommit bool? Transaction to commit atomically transaction string Issued transaction transactionResult TransactionResult Transaction execution result
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ( "accessToken-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
atomicCommit := result . AtomicCommit
transaction := result . Transaction
transactionResult := result . TransactionResult
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\EndRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> end (
( new EndRequest ())
-> withNamespaceName ( self :: namespace1 )
-> withAccessToken ( self :: $accessToken0001 )
-> withRewards ([])
-> withIsComplete ( True )
-> withConfig ( null )
);
$item = $result -> getItem ();
$transactionId = $result -> getTransactionId ();
$stampSheet = $result -> getStampSheet ();
$stampSheetEncryptionKeyId = $result -> getStampSheetEncryptionKeyId ();
$autoRunStampSheet = $result -> getAutoRunStampSheet ();
$atomicCommit = $result -> getAtomicCommit ();
$transaction = $result -> getTransaction ();
$transactionResult = $result -> getTransactionResult ();
} 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 ( "accessToken-0001" )
. withRewards ( new ArrayList < Reward > ())
. withIsComplete ( true )
. withConfig ( null )
);
Progress item = result . getItem ();
String transactionId = result . getTransactionId ();
String stampSheet = result . getStampSheet ();
String stampSheetEncryptionKeyId = result . getStampSheetEncryptionKeyId ();
boolean autoRunStampSheet = result . getAutoRunStampSheet ();
boolean atomicCommit = result . getAtomicCommit ();
String transaction = result . getTransaction ();
TransactionResult transactionResult = result . getTransactionResult ();
} 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 ( "accessToken-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 ;
var atomicCommit = result . AtomicCommit ;
var transaction = result . Transaction ;
var transactionResult = result . TransactionResult ;
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 ( "accessToken-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 ();
const atomicCommit = result . getAtomicCommit ();
const transaction = result . getTransaction ();
const transactionResult = result . getTransactionResult ();
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . end (
quest . EndRequest ()
. with_namespace_name ( self . hash1 )
. with_access_token ( self . access_token_0001 )
. with_rewards ([])
. with_is_complete ( True )
. with_config ( None )
)
item = result . item
transaction_id = result . transaction_id
stamp_sheet = result . stamp_sheet
stamp_sheet_encryption_key_id = result . stamp_sheet_encryption_key_id
auto_run_stamp_sheet = result . auto_run_stamp_sheet
atomic_commit = result . atomic_commit
transaction = result . transaction
transaction_result = result . transaction_result
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.end ({
namespaceName = "namespace1" ,
accessToken = "accessToken-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 ;
atomicCommit = result.atomicCommit ;
transaction = result.transaction ;
transactionResult = result.transactionResult ;
client = gs2 ( 'quest' )
api_result_handler = client.end_async ({
namespaceName = "namespace1" ,
accessToken = "accessToken-0001" ,
rewards = {},
isComplete = true ,
config = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
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 ;
atomicCommit = result.atomicCommit ;
transaction = result.transaction ;
transactionResult = result.transactionResult ;
endByUserId Complete quest with user ID
Of the “maximum” of available rewards and their quantity in the quest received at the start of the quest, the rewards actually obtained in the quest are reported in rewards.
isComplete reports whether the quest was completed. If the quest is failed, the rewards value is ignored and the reward for failure set for the quest is given.
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name userId string ✓ ~ 128 chars User Id rewards List<Reward> [] ~ 1000 items The actual rewards from the quest isComplete bool ✓ Completed the quest config List<Config> [] ~ 32 items Set values to be applied to transaction variables timeOffsetToken string ~ 1024 chars Time offset token
Result Type Description item Progress Quest Progress transactionId string Issed transaction ID 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 transaction auto-execution enabled? atomicCommit bool? Transaction to commit atomically transaction string Issued transaction transactionResult TransactionResult Transaction execution result
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . EndByUserId (
& quest . EndByUserIdRequest {
NamespaceName : pointy . String ( "namespace1" ),
UserId : pointy . String ( "user-0001" ),
Rewards : pointy . String ( "$progress1.rewards" ),
IsComplete : pointy . Bool ( true ),
Config : nil ,
TimeOffsetToken : nil ,
}
)
if err != nil {
panic ( "error occurred" )
}
item := result . Item
transactionId := result . TransactionId
stampSheet := result . StampSheet
stampSheetEncryptionKeyId := result . StampSheetEncryptionKeyId
autoRunStampSheet := result . AutoRunStampSheet
atomicCommit := result . AtomicCommit
transaction := result . Transaction
transactionResult := result . TransactionResult
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\EndByUserIdRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> endByUserId (
( new EndByUserIdRequest ())
-> withNamespaceName ( self :: namespace1 )
-> withUserId ( "user-0001" )
-> withRewards ( self :: $progress1 . rewards )
-> withIsComplete ( True )
-> withConfig ( null )
-> withTimeOffsetToken ( null )
);
$item = $result -> getItem ();
$transactionId = $result -> getTransactionId ();
$stampSheet = $result -> getStampSheet ();
$stampSheetEncryptionKeyId = $result -> getStampSheetEncryptionKeyId ();
$autoRunStampSheet = $result -> getAutoRunStampSheet ();
$atomicCommit = $result -> getAtomicCommit ();
$transaction = $result -> getTransaction ();
$transactionResult = $result -> getTransactionResult ();
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.EndByUserIdRequest ;
import io.gs2.quest.result.EndByUserIdResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
EndByUserIdResult result = client . endByUserId (
new EndByUserIdRequest ()
. withNamespaceName ( "namespace1" )
. withUserId ( "user-0001" )
. withRewards ( "$progress1.rewards" )
. withIsComplete ( true )
. withConfig ( null )
. withTimeOffsetToken ( null )
);
Progress item = result . getItem ();
String transactionId = result . getTransactionId ();
String stampSheet = result . getStampSheet ();
String stampSheetEncryptionKeyId = result . getStampSheetEncryptionKeyId ();
boolean autoRunStampSheet = result . getAutoRunStampSheet ();
boolean atomicCommit = result . getAtomicCommit ();
String transaction = result . getTransaction ();
TransactionResult transactionResult = result . getTransactionResult ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.EndByUserIdRequest ;
using Gs2.Gs2Quest.Result.EndByUserIdResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . EndByUserIdResult > asyncResult = null ;
yield return client . EndByUserId (
new Gs2 . Gs2Quest . Request . EndByUserIdRequest ()
. WithNamespaceName ( "namespace1" )
. WithUserId ( "user-0001" )
. WithRewards ( "$progress1.rewards" )
. WithIsComplete ( true )
. WithConfig ( null )
. WithTimeOffsetToken ( 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 ;
var atomicCommit = result . AtomicCommit ;
var transaction = result . Transaction ;
var transactionResult = result . TransactionResult ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . endByUserId (
new Gs2Quest . EndByUserIdRequest ()
. withNamespaceName ( "namespace1" )
. withUserId ( "user-0001" )
. withRewards ( "$progress1.rewards" )
. withIsComplete ( true )
. withConfig ( null )
. withTimeOffsetToken ( null )
);
const item = result . getItem ();
const transactionId = result . getTransactionId ();
const stampSheet = result . getStampSheet ();
const stampSheetEncryptionKeyId = result . getStampSheetEncryptionKeyId ();
const autoRunStampSheet = result . getAutoRunStampSheet ();
const atomicCommit = result . getAtomicCommit ();
const transaction = result . getTransaction ();
const transactionResult = result . getTransactionResult ();
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . end_by_user_id (
quest . EndByUserIdRequest ()
. with_namespace_name ( self . hash1 )
. with_user_id ( 'user-0001' )
. with_rewards ( self . progress1 . rewards )
. with_is_complete ( True )
. with_config ( None )
. with_time_offset_token ( 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
atomic_commit = result . atomic_commit
transaction = result . transaction
transaction_result = result . transaction_result
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.end_by_user_id ({
namespaceName = "namespace1" ,
userId = "user-0001" ,
rewards = "$progress1.rewards" ,
isComplete = true ,
config = nil ,
timeOffsetToken = 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 ;
atomicCommit = result.atomicCommit ;
transaction = result.transaction ;
transactionResult = result.transactionResult ;
client = gs2 ( 'quest' )
api_result_handler = client.end_by_user_id_async ({
namespaceName = "namespace1" ,
userId = "user-0001" ,
rewards = "$progress1.rewards" ,
isComplete = true ,
config = nil ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
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 ;
atomicCommit = result.atomicCommit ;
transaction = result.transaction ;
transactionResult = result.transactionResult ;
deleteProgress Get quest progress
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name accessToken string ✓ ~ 128 chars User Id
Result Type Description item Progress Quest Progress
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ( "accessToken-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 ( "accessToken-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 ( "accessToken-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 ( "accessToken-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 = "accessToken-0001" ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
client = gs2 ( 'quest' )
api_result_handler = client.delete_progress_async ({
namespaceName = "namespace1" ,
accessToken = "accessToken-0001" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
deleteProgressByUserId Delete quest progress by specifying user ID
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name userId string ✓ ~ 128 chars User Id timeOffsetToken string ~ 1024 chars Time offset token
Result Type Description item Progress Quest Progress
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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" ),
TimeOffsetToken : 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\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" )
-> withTimeOffsetToken ( 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.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" )
. withTimeOffsetToken ( 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.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" )
. WithTimeOffsetToken ( 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 . deleteProgressByUserId (
new Gs2Quest . DeleteProgressByUserIdRequest ()
. withNamespaceName ( "namespace1" )
. withUserId ( "user-0001" )
. withTimeOffsetToken ( 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 . delete_progress_by_user_id (
quest . DeleteProgressByUserIdRequest ()
. with_namespace_name ( self . hash1 )
. with_user_id ( 'user-0001' )
. with_time_offset_token ( None )
)
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" ,
timeOffsetToken = nil ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
client = gs2 ( 'quest' )
api_result_handler = client.delete_progress_by_user_id_async ({
namespaceName = "namespace1" ,
userId = "user-0001" ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
createProgressByStampSheet Execute the creation of quest progress as an acquire action
Request Type Condition Require Default Limitation Description stampSheet string ✓ ~ 5242880 chars Transaction keyId string ✓ ~ 1024 chars encryption key GRN
Result Type Description item Progress Created Quest Progress
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ( "key-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\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 :: key - 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.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 ( "key-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.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 ( "key-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 . createProgressByStampSheet (
new Gs2Quest . CreateProgressByStampSheetRequest ()
. withStampSheet ( "stampSheet" )
. withKeyId ( "key-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 . 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 = "key-0001" ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
client = gs2 ( 'quest' )
api_result_handler = client.create_progress_by_stamp_sheet_async ({
stampSheet = "stampSheet" ,
keyId = "key-0001" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
deleteProgressByStampTask Delete Quest Progress in Stamp Tasks
Request Type Condition Require Default Limitation Description stampTask string ✓ ~ 5242880 chars Consume Action keyId string ✓ ~ 1024 chars encryption key GRN
Result Type Description item Progress Deleted Quest Progress newContextStack string Request of context in which consume action execution results are recorded
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ( "key-0001" ),
}
)
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 :: key - 0001 )
);
$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 ( "key-0001" )
);
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 ( "key-0001" ),
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 ( "key-0001" )
);
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 = "key-0001" ,
})
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 ;
client = gs2 ( 'quest' )
api_result_handler = client.delete_progress_by_stamp_task_async ({
stampTask = "stampTask" ,
keyId = "key-0001" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
newContextStack = result.newContextStack ;
describeCompletedQuestLists Get list of quest progress
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name accessToken string ✓ ~ 128 chars User Id pageToken string ~ 1024 chars Token specifying the position from which to start acquiring data limit int ✓ 30 1 ~ 1000 Number of data acquired
Result Type Description items List<CompletedQuestList> List of Quest Progressios nextPageToken string Page token to retrieve the rest of the listing
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ( "accessToken-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 ( "accessToken-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 ( "accessToken-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 ( "accessToken-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 = "accessToken-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 ;
client = gs2 ( 'quest' )
api_result_handler = client.describe_completed_quest_lists_async ({
namespaceName = "namespace1" ,
accessToken = "accessToken-0001" ,
pageToken = nil ,
limit = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
items = result.items ;
nextPageToken = result.nextPageToken ;
describeCompletedQuestListsByUserId Get list of quest progress by specifying user ID
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 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 timeOffsetToken string ~ 1024 chars Time offset token
Result Type Description items List<CompletedQuestList> List of Quest Progressios nextPageToken string Page token to retrieve the rest of the listing
Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) 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 ,
TimeOffsetToken : nil ,
}
)
if err != nil {
panic ( "error occurred" )
}
items := result . Items
nextPageToken := result . NextPageToken
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\DescribeCompletedQuestListsByUserIdRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> describeCompletedQuestListsByUserId (
( new DescribeCompletedQuestListsByUserIdRequest ())
-> withNamespaceName ( self :: namespace1 )
-> withUserId ( "user-0001" )
-> withPageToken ( null )
-> withLimit ( null )
-> withTimeOffsetToken ( null )
);
$items = $result -> getItems ();
$nextPageToken = $result -> getNextPageToken ();
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.DescribeCompletedQuestListsByUserIdRequest ;
import io.gs2.quest.result.DescribeCompletedQuestListsByUserIdResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
DescribeCompletedQuestListsByUserIdResult result = client . describeCompletedQuestListsByUserId (
new DescribeCompletedQuestListsByUserIdRequest ()
. withNamespaceName ( "namespace1" )
. withUserId ( "user-0001" )
. withPageToken ( null )
. withLimit ( null )
. withTimeOffsetToken ( null )
);
List < CompletedQuestList > items = result . getItems ();
String nextPageToken = result . getNextPageToken ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.DescribeCompletedQuestListsByUserIdRequest ;
using Gs2.Gs2Quest.Result.DescribeCompletedQuestListsByUserIdResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . DescribeCompletedQuestListsByUserIdResult > asyncResult = null ;
yield return client . DescribeCompletedQuestListsByUserId (
new Gs2 . Gs2Quest . Request . DescribeCompletedQuestListsByUserIdRequest ()
. WithNamespaceName ( "namespace1" )
. WithUserId ( "user-0001" )
. WithPageToken ( null )
. WithLimit ( null )
. WithTimeOffsetToken ( null ),
r => asyncResult = r
);
if ( asyncResult . Error != null ) {
throw asyncResult . Error ;
}
var result = asyncResult . Result ;
var items = result . Items ;
var nextPageToken = result . NextPageToken ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . describeCompletedQuestListsByUserId (
new Gs2Quest . DescribeCompletedQuestListsByUserIdRequest ()
. withNamespaceName ( "namespace1" )
. withUserId ( "user-0001" )
. withPageToken ( null )
. withLimit ( null )
. withTimeOffsetToken ( null )
);
const items = result . getItems ();
const nextPageToken = result . getNextPageToken ();
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . describe_completed_quest_lists_by_user_id (
quest . DescribeCompletedQuestListsByUserIdRequest ()
. with_namespace_name ( self . hash1 )
. with_user_id ( 'user-0001' )
. with_page_token ( None )
. with_limit ( None )
. with_time_offset_token ( None )
)
items = result . items
next_page_token = result . next_page_token
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.describe_completed_quest_lists_by_user_id ({
namespaceName = "namespace1" ,
userId = "user-0001" ,
pageToken = nil ,
limit = nil ,
timeOffsetToken = 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 ;
client = gs2 ( 'quest' )
api_result_handler = client.describe_completed_quest_lists_by_user_id_async ({
namespaceName = "namespace1" ,
userId = "user-0001" ,
pageToken = nil ,
limit = nil ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
items = result.items ;
nextPageToken = result.nextPageToken ;
getCompletedQuestList Get Quest Progress
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Name accessToken string ✓ ~ 128 chars User Id
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . GetCompletedQuestList (
& quest . GetCompletedQuestListRequest {
NamespaceName : pointy . String ( "namespace1" ),
QuestGroupName : pointy . String ( "main" ),
AccessToken : pointy . String ( "accessToken-0001" ),
}
)
if err != nil {
panic ( "error occurred" )
}
item := result . Item
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\GetCompletedQuestListRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> getCompletedQuestList (
( new GetCompletedQuestListRequest ())
-> withNamespaceName ( self :: namespace1 )
-> withQuestGroupName ( "main" )
-> withAccessToken ( self :: $accessToken0001 )
);
$item = $result -> getItem ();
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.GetCompletedQuestListRequest ;
import io.gs2.quest.result.GetCompletedQuestListResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
GetCompletedQuestListResult result = client . getCompletedQuestList (
new GetCompletedQuestListRequest ()
. withNamespaceName ( "namespace1" )
. withQuestGroupName ( "main" )
. withAccessToken ( "accessToken-0001" )
);
CompletedQuestList item = result . getItem ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.GetCompletedQuestListRequest ;
using Gs2.Gs2Quest.Result.GetCompletedQuestListResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . GetCompletedQuestListResult > asyncResult = null ;
yield return client . GetCompletedQuestList (
new Gs2 . Gs2Quest . Request . GetCompletedQuestListRequest ()
. WithNamespaceName ( "namespace1" )
. WithQuestGroupName ( "main" )
. WithAccessToken ( "accessToken-0001" ),
r => asyncResult = r
);
if ( asyncResult . Error != null ) {
throw asyncResult . Error ;
}
var result = asyncResult . Result ;
var item = result . Item ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . getCompletedQuestList (
new Gs2Quest . GetCompletedQuestListRequest ()
. withNamespaceName ( "namespace1" )
. withQuestGroupName ( "main" )
. withAccessToken ( "accessToken-0001" )
);
const item = result . getItem ();
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . get_completed_quest_list (
quest . GetCompletedQuestListRequest ()
. with_namespace_name ( self . hash1 )
. with_quest_group_name ( 'main' )
. with_access_token ( self . access_token_0001 )
)
item = result . item
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.get_completed_quest_list ({
namespaceName = "namespace1" ,
questGroupName = "main" ,
accessToken = "accessToken-0001" ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
client = gs2 ( 'quest' )
api_result_handler = client.get_completed_quest_list_async ({
namespaceName = "namespace1" ,
questGroupName = "main" ,
accessToken = "accessToken-0001" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
getCompletedQuestListByUserId Get quest progress by specifying user ID
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Name userId string ✓ ~ 128 chars User Id timeOffsetToken string ~ 1024 chars Time offset token
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . GetCompletedQuestListByUserId (
& quest . GetCompletedQuestListByUserIdRequest {
NamespaceName : pointy . String ( "namespace1" ),
QuestGroupName : pointy . String ( "main" ),
UserId : pointy . String ( "user-0001" ),
TimeOffsetToken : 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\GetCompletedQuestListByUserIdRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> getCompletedQuestListByUserId (
( new GetCompletedQuestListByUserIdRequest ())
-> withNamespaceName ( self :: namespace1 )
-> withQuestGroupName ( "main" )
-> withUserId ( "user-0001" )
-> withTimeOffsetToken ( 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.GetCompletedQuestListByUserIdRequest ;
import io.gs2.quest.result.GetCompletedQuestListByUserIdResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
GetCompletedQuestListByUserIdResult result = client . getCompletedQuestListByUserId (
new GetCompletedQuestListByUserIdRequest ()
. withNamespaceName ( "namespace1" )
. withQuestGroupName ( "main" )
. withUserId ( "user-0001" )
. withTimeOffsetToken ( null )
);
CompletedQuestList item = result . getItem ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.GetCompletedQuestListByUserIdRequest ;
using Gs2.Gs2Quest.Result.GetCompletedQuestListByUserIdResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . GetCompletedQuestListByUserIdResult > asyncResult = null ;
yield return client . GetCompletedQuestListByUserId (
new Gs2 . Gs2Quest . Request . GetCompletedQuestListByUserIdRequest ()
. WithNamespaceName ( "namespace1" )
. WithQuestGroupName ( "main" )
. WithUserId ( "user-0001" )
. WithTimeOffsetToken ( 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 . getCompletedQuestListByUserId (
new Gs2Quest . GetCompletedQuestListByUserIdRequest ()
. withNamespaceName ( "namespace1" )
. withQuestGroupName ( "main" )
. withUserId ( "user-0001" )
. withTimeOffsetToken ( 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 . get_completed_quest_list_by_user_id (
quest . GetCompletedQuestListByUserIdRequest ()
. with_namespace_name ( self . hash1 )
. with_quest_group_name ( 'main' )
. with_user_id ( 'user-0001' )
. with_time_offset_token ( None )
)
item = result . item
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.get_completed_quest_list_by_user_id ({
namespaceName = "namespace1" ,
questGroupName = "main" ,
userId = "user-0001" ,
timeOffsetToken = nil ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
client = gs2 ( 'quest' )
api_result_handler = client.get_completed_quest_list_by_user_id_async ({
namespaceName = "namespace1" ,
questGroupName = "main" ,
userId = "user-0001" ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
deleteCompletedQuestListByUserId Delete quest progress by specifying user ID
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Name userId string ✓ ~ 128 chars User Id timeOffsetToken string ~ 1024 chars Time offset token
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . DeleteCompletedQuestListByUserId (
& quest . DeleteCompletedQuestListByUserIdRequest {
NamespaceName : pointy . String ( "namespace1" ),
QuestGroupName : pointy . String ( "main" ),
UserId : pointy . String ( "user-0001" ),
TimeOffsetToken : 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\DeleteCompletedQuestListByUserIdRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> deleteCompletedQuestListByUserId (
( new DeleteCompletedQuestListByUserIdRequest ())
-> withNamespaceName ( self :: namespace1 )
-> withQuestGroupName ( "main" )
-> withUserId ( "user-0001" )
-> withTimeOffsetToken ( 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.DeleteCompletedQuestListByUserIdRequest ;
import io.gs2.quest.result.DeleteCompletedQuestListByUserIdResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
DeleteCompletedQuestListByUserIdResult result = client . deleteCompletedQuestListByUserId (
new DeleteCompletedQuestListByUserIdRequest ()
. withNamespaceName ( "namespace1" )
. withQuestGroupName ( "main" )
. withUserId ( "user-0001" )
. withTimeOffsetToken ( null )
);
CompletedQuestList item = result . getItem ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.DeleteCompletedQuestListByUserIdRequest ;
using Gs2.Gs2Quest.Result.DeleteCompletedQuestListByUserIdResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . DeleteCompletedQuestListByUserIdResult > asyncResult = null ;
yield return client . DeleteCompletedQuestListByUserId (
new Gs2 . Gs2Quest . Request . DeleteCompletedQuestListByUserIdRequest ()
. WithNamespaceName ( "namespace1" )
. WithQuestGroupName ( "main" )
. WithUserId ( "user-0001" )
. WithTimeOffsetToken ( 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 . deleteCompletedQuestListByUserId (
new Gs2Quest . DeleteCompletedQuestListByUserIdRequest ()
. withNamespaceName ( "namespace1" )
. withQuestGroupName ( "main" )
. withUserId ( "user-0001" )
. withTimeOffsetToken ( 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 . delete_completed_quest_list_by_user_id (
quest . DeleteCompletedQuestListByUserIdRequest ()
. with_namespace_name ( self . hash1 )
. with_quest_group_name ( 'main' )
. with_user_id ( 'user-0001' )
. with_time_offset_token ( None )
)
item = result . item
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.delete_completed_quest_list_by_user_id ({
namespaceName = "namespace1" ,
questGroupName = "main" ,
userId = "user-0001" ,
timeOffsetToken = nil ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
client = gs2 ( 'quest' )
api_result_handler = client.delete_completed_quest_list_by_user_id_async ({
namespaceName = "namespace1" ,
questGroupName = "main" ,
userId = "user-0001" ,
timeOffsetToken = nil ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
describeQuestGroupModels Get list of quest groups
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . DescribeQuestGroupModels (
& quest . DescribeQuestGroupModelsRequest {
NamespaceName : pointy . String ( "namespace1" ),
}
)
if err != nil {
panic ( "error occurred" )
}
items := result . Items
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\DescribeQuestGroupModelsRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> describeQuestGroupModels (
( new DescribeQuestGroupModelsRequest ())
-> withNamespaceName ( self :: namespace1 )
);
$items = $result -> getItems ();
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.DescribeQuestGroupModelsRequest ;
import io.gs2.quest.result.DescribeQuestGroupModelsResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
DescribeQuestGroupModelsResult result = client . describeQuestGroupModels (
new DescribeQuestGroupModelsRequest ()
. withNamespaceName ( "namespace1" )
);
List < QuestGroupModel > items = result . getItems ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.DescribeQuestGroupModelsRequest ;
using Gs2.Gs2Quest.Result.DescribeQuestGroupModelsResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . DescribeQuestGroupModelsResult > asyncResult = null ;
yield return client . DescribeQuestGroupModels (
new Gs2 . Gs2Quest . Request . DescribeQuestGroupModelsRequest ()
. WithNamespaceName ( "namespace1" ),
r => asyncResult = r
);
if ( asyncResult . Error != null ) {
throw asyncResult . Error ;
}
var result = asyncResult . Result ;
var items = result . Items ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . describeQuestGroupModels (
new Gs2Quest . DescribeQuestGroupModelsRequest ()
. withNamespaceName ( "namespace1" )
);
const items = result . getItems ();
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . describe_quest_group_models (
quest . DescribeQuestGroupModelsRequest ()
. with_namespace_name ( self . hash1 )
)
items = result . items
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.describe_quest_group_models ({
namespaceName = "namespace1" ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
items = result.items ;
client = gs2 ( 'quest' )
api_result_handler = client.describe_quest_group_models_async ({
namespaceName = "namespace1" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
items = result.items ;
getQuestGroupModel Get Quest Group Model
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Name
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . GetQuestGroupModel (
& quest . GetQuestGroupModelRequest {
NamespaceName : pointy . String ( "namespace1" ),
QuestGroupName : pointy . String ( "quest-group-0001" ),
}
)
if err != nil {
panic ( "error occurred" )
}
item := result . Item
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\GetQuestGroupModelRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> getQuestGroupModel (
( new GetQuestGroupModelRequest ())
-> withNamespaceName ( self :: namespace1 )
-> withQuestGroupName ( "quest-group-0001" )
);
$item = $result -> getItem ();
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.GetQuestGroupModelRequest ;
import io.gs2.quest.result.GetQuestGroupModelResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
GetQuestGroupModelResult result = client . getQuestGroupModel (
new GetQuestGroupModelRequest ()
. withNamespaceName ( "namespace1" )
. withQuestGroupName ( "quest-group-0001" )
);
QuestGroupModel item = result . getItem ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.GetQuestGroupModelRequest ;
using Gs2.Gs2Quest.Result.GetQuestGroupModelResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . GetQuestGroupModelResult > asyncResult = null ;
yield return client . GetQuestGroupModel (
new Gs2 . Gs2Quest . Request . GetQuestGroupModelRequest ()
. WithNamespaceName ( "namespace1" )
. WithQuestGroupName ( "quest-group-0001" ),
r => asyncResult = r
);
if ( asyncResult . Error != null ) {
throw asyncResult . Error ;
}
var result = asyncResult . Result ;
var item = result . Item ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . getQuestGroupModel (
new Gs2Quest . GetQuestGroupModelRequest ()
. withNamespaceName ( "namespace1" )
. withQuestGroupName ( "quest-group-0001" )
);
const item = result . getItem ();
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . get_quest_group_model (
quest . GetQuestGroupModelRequest ()
. with_namespace_name ( self . hash1 )
. with_quest_group_name ( 'quest-group-0001' )
)
item = result . item
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.get_quest_group_model ({
namespaceName = "namespace1" ,
questGroupName = "quest-group-0001" ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
client = gs2 ( 'quest' )
api_result_handler = client.get_quest_group_model_async ({
namespaceName = "namespace1" ,
questGroupName = "quest-group-0001" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
describeQuestModels Get list of quest models
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Name
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . DescribeQuestModels (
& quest . DescribeQuestModelsRequest {
NamespaceName : pointy . String ( "namespace1" ),
QuestGroupName : pointy . String ( "quest-group-0001" ),
}
)
if err != nil {
panic ( "error occurred" )
}
items := result . Items
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\DescribeQuestModelsRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> describeQuestModels (
( new DescribeQuestModelsRequest ())
-> withNamespaceName ( self :: namespace1 )
-> withQuestGroupName ( "quest-group-0001" )
);
$items = $result -> getItems ();
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.DescribeQuestModelsRequest ;
import io.gs2.quest.result.DescribeQuestModelsResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
DescribeQuestModelsResult result = client . describeQuestModels (
new DescribeQuestModelsRequest ()
. withNamespaceName ( "namespace1" )
. withQuestGroupName ( "quest-group-0001" )
);
List < QuestModel > items = result . getItems ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.DescribeQuestModelsRequest ;
using Gs2.Gs2Quest.Result.DescribeQuestModelsResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . DescribeQuestModelsResult > asyncResult = null ;
yield return client . DescribeQuestModels (
new Gs2 . Gs2Quest . Request . DescribeQuestModelsRequest ()
. WithNamespaceName ( "namespace1" )
. WithQuestGroupName ( "quest-group-0001" ),
r => asyncResult = r
);
if ( asyncResult . Error != null ) {
throw asyncResult . Error ;
}
var result = asyncResult . Result ;
var items = result . Items ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . describeQuestModels (
new Gs2Quest . DescribeQuestModelsRequest ()
. withNamespaceName ( "namespace1" )
. withQuestGroupName ( "quest-group-0001" )
);
const items = result . getItems ();
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . describe_quest_models (
quest . DescribeQuestModelsRequest ()
. with_namespace_name ( self . hash1 )
. with_quest_group_name ( 'quest-group-0001' )
)
items = result . items
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.describe_quest_models ({
namespaceName = "namespace1" ,
questGroupName = "quest-group-0001" ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
items = result.items ;
client = gs2 ( 'quest' )
api_result_handler = client.describe_quest_models_async ({
namespaceName = "namespace1" ,
questGroupName = "quest-group-0001" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
items = result.items ;
getQuestModel Get Quest Model
Request Type Condition Require Default Limitation Description namespaceName string ✓ ~ 128 chars Namespace name questGroupName string ✓ ~ 128 chars Quest Group Name questName string ✓ ~ 128 chars Quest Model Name
Result Implementation Example
Language:
Go
PHP
Java
C#
TypeScript
Python
GS2-Script
GS2-Script(Async) import "github.com/gs2io/gs2-golang-sdk/core"
import "github.com/gs2io/gs2-golang-sdk/quest"
import "github.com/openlyinc/pointy"
session := core . Gs2RestSession {
Credential : & core . BasicGs2Credential {
ClientId : "your client id" ,
ClientSecret : "your client secret" ,
},
Region : core . ApNortheast1 ,
}
if err := session . Connect (); err != nil {
panic ( "error occurred" )
}
client := quest . Gs2QuestRestClient {
Session : & session ,
}
result , err := client . GetQuestModel (
& quest . GetQuestModelRequest {
NamespaceName : pointy . String ( "namespace1" ),
QuestGroupName : pointy . String ( "quest-group-0001" ),
QuestName : pointy . String ( "quest-0001" ),
}
)
if err != nil {
panic ( "error occurred" )
}
item := result . Item
use Gs2\Core\Model\BasicGs2Credential ;
use Gs2\Core\Model\Region ;
use Gs2\Core\Net\Gs2RestSession ;
use Gs2\Core\Exception\Gs2Exception ;
use Gs2\Quest\Gs2QuestRestClient ;
use Gs2\Quest\Request\GetQuestModelRequest ;
$session = new Gs2RestSession (
new BasicGs2Credential (
"your client id" ,
"your client secret"
),
Region :: AP_NORTHEAST_1
);
$session -> open ();
$client = new Gs2AccountRestClient (
$session
);
try {
$result = $client -> getQuestModel (
( new GetQuestModelRequest ())
-> withNamespaceName ( self :: namespace1 )
-> withQuestGroupName ( "quest-group-0001" )
-> withQuestName ( "quest-0001" )
);
$item = $result -> getItem ();
} catch ( Gs2Exception $e ) {
exit ( "error occurred" )
}
import io.gs2.core.model.Region ;
import io.gs2.core.model.BasicGs2Credential ;
import io.gs2.core.rest.Gs2RestSession ;
import io.gs2.core.exception.Gs2Exception ;
import io.gs2.quest.rest.Gs2QuestRestClient ;
import io.gs2.quest.request.GetQuestModelRequest ;
import io.gs2.quest.result.GetQuestModelResult ;
Gs2RestSession session = new Gs2RestSession (
Region . AP_NORTHEAST_1 ,
new BasicGs2Credential (
' your client id ' ,
' your client secret '
)
);
session . connect ();
Gs2QuestRestClient client = new Gs2QuestRestClient ( session );
try {
GetQuestModelResult result = client . getQuestModel (
new GetQuestModelRequest ()
. withNamespaceName ( "namespace1" )
. withQuestGroupName ( "quest-group-0001" )
. withQuestName ( "quest-0001" )
);
QuestModel item = result . getItem ();
} catch ( Gs2Exception e ) {
System . exit ( 1 );
}
using Gs2.Core.Model.Region ;
using Gs2.Core.Model.BasicGs2Credential ;
using Gs2.Core.Net.Gs2RestSession ;
using Gs2.Core.Exception.Gs2Exception ;
using Gs2.Core.AsyncResult ;
using Gs2.Gs2Quest.Gs2QuestRestClient ;
using Gs2.Gs2Quest.Request.GetQuestModelRequest ;
using Gs2.Gs2Quest.Result.GetQuestModelResult ;
var session = new Gs2RestSession (
new BasicGs2Credential (
' your client id ' ,
' your client secret '
),
Region . ApNortheast1
);
yield return session . Open ();
var client = new Gs2QuestRestClient ( session );
AsyncResult < Gs2 . Gs2Quest . Result . GetQuestModelResult > asyncResult = null ;
yield return client . GetQuestModel (
new Gs2 . Gs2Quest . Request . GetQuestModelRequest ()
. WithNamespaceName ( "namespace1" )
. WithQuestGroupName ( "quest-group-0001" )
. WithQuestName ( "quest-0001" ),
r => asyncResult = r
);
if ( asyncResult . Error != null ) {
throw asyncResult . Error ;
}
var result = asyncResult . Result ;
var item = result . Item ;
import Gs2Core from '@/gs2/core' ;
import * as Gs2Quest from '@/gs2/quest' ;
const session = new Gs2Core . Gs2RestSession (
"ap-northeast-1" ,
new Gs2Core . BasicGs2Credential (
'your client id' ,
'your client secret'
)
);
await session . connect ();
const client = new Gs2Quest . Gs2QuestRestClient ( session );
try {
const result = await client . getQuestModel (
new Gs2Quest . GetQuestModelRequest ()
. withNamespaceName ( "namespace1" )
. withQuestGroupName ( "quest-group-0001" )
. withQuestName ( "quest-0001" )
);
const item = result . getItem ();
} catch ( e ) {
process . exit ( 1 );
}
from gs2 import core
from gs2 import quest
session = core . Gs2RestSession (
core . BasicGs2Credential (
'your client id' ,
'your client secret'
),
"ap-northeast-1" ,
)
session . connect ()
client = quest . Gs2QuestRestClient ( session )
try :
result = client . get_quest_model (
quest . GetQuestModelRequest ()
. with_namespace_name ( self . hash1 )
. with_quest_group_name ( 'quest-group-0001' )
. with_quest_name ( 'quest-0001' )
)
item = result . item
except core . Gs2Exception as e :
exit ( 1 )
client = gs2 ( 'quest' )
api_result = client.get_quest_model ({
namespaceName = "namespace1" ,
questGroupName = "quest-group-0001" ,
questName = "quest-0001" ,
})
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;
client = gs2 ( 'quest' )
api_result_handler = client.get_quest_model_async ({
namespaceName = "namespace1" ,
questGroupName = "quest-group-0001" ,
questName = "quest-0001" ,
})
api_result = api_result_handler () -- Call the handler to get the result
if ( api_result.isError ) then
-- When error occurs
fail ( api_result [ 'statusCode' ], api_result [ 'message' ])
end
result = api_result.result
item = result.item ;