GS2-Dictionary Transaction Actions

Specification of verify/consume/acquire transaction actions

VerifyAction

Gs2Dictionary:VerifyEntryByUserId

Verify Entry by specifying a user ID

Verifies whether the specified user has or has not collected a specific entry. The verify type specifies the condition: ‘have’ checks that the user has the entry, ‘havent’ checks that the user does not have it. If the verification fails, an error is returned.

Whether the action allows quantity specification: NO

TypeConditionRequiredDefaultValue LimitsDescription
namespaceNamestring
~ 128 charsNamespace name
Namespace-specific name. Specified using alphanumeric characters, hyphens (-), underscores (_), and periods (.).
userIdstring
~ 128 charsUser ID
Set #{userId} to replace the currently logged in user ID.
entryModelNamestring
~ 128 charsEntry Model name
Entry Model-specific name. Specified using alphanumeric characters, hyphen (-), underscore (_), and period (.).
verifyTypeString Enum
enum {
  “havent”,
  “have”
}
Type of verification
DefinitionDescription
“havent”The specified entry must not be held
“have”The specified entry must be held
timeOffsetTokenstring~ 1024 charsTime offset token
{
    "action": "Gs2Dictionary:VerifyEntryByUserId",
    "request": {
        "namespaceName": "[string]Namespace name",
        "userId": "[string]User ID",
        "entryModelName": "[string]Entry Model name",
        "verifyType": "[string]Type of verification",
        "timeOffsetToken": "[string]Time offset token"
    }
}
action: Gs2Dictionary:VerifyEntryByUserId
request:
  namespaceName: "[string]Namespace name"
  userId: "[string]User ID"
  entryModelName: "[string]Entry Model name"
  verifyType: "[string]Type of verification"
  timeOffsetToken: "[string]Time offset token"
transaction.service("dictionary").verify.verify_entry_by_user_id({
    namespaceName="[string]Namespace name",
    userId="[string]User ID",
    entryModelName="[string]Entry Model name",
    verifyType="[string]Type of verification",
    timeOffsetToken="[string]Time offset token",
})

ConsumeAction

Gs2Dictionary:DeleteEntriesByUserId

Delete entries by specifying a user ID

Removes specific entries from the specified user’s dictionary by specifying a list of entry model names. Multiple entries can be deleted at once in a batch operation. The returned list contains the entries that were actually deleted.

Whether the action allows quantity specification: NO

Whether the action is reversible: YES

TypeConditionRequiredDefaultValue LimitsDescription
namespaceNamestring
~ 128 charsNamespace name
Namespace-specific name. Specified using alphanumeric characters, hyphens (-), underscores (_), and periods (.).
userIdstring
~ 128 charsUser ID
Set #{userId} to replace the currently logged in user ID.
entryModelNamesList<string>[]0 ~ 100 itemsList of Entry Model names
timeOffsetTokenstring~ 1024 charsTime offset token
{
    "action": "Gs2Dictionary:DeleteEntriesByUserId",
    "request": {
        "namespaceName": "[string]Namespace name",
        "userId": "[string]User ID",
        "entryModelNames": [
            "[string]Entry Model name"
        ],
        "timeOffsetToken": "[string]Time offset token"
    }
}
action: Gs2Dictionary:DeleteEntriesByUserId
request:
  namespaceName: "[string]Namespace name"
  userId: "[string]User ID"
  entryModelNames: 
  - "[string]Entry Model name"
  timeOffsetToken: "[string]Time offset token"
transaction.service("dictionary").consume.delete_entries_by_user_id({
    namespaceName="[string]Namespace name",
    userId="[string]User ID",
    entryModelNames={
        "[string]Entry Model name"
    },
    timeOffsetToken="[string]Time offset token",
})

AcquireAction

Gs2Dictionary:AddEntriesByUserId

Add entries by specifying a user ID

Registers one or more entry model names to the specified user’s dictionary. Multiple entry model names can be specified at once in a batch operation. If an entry has already been registered, it is silently skipped without causing an error. The returned list contains only the entries that were newly added.

Whether the action allows quantity specification: NO

Whether the action is reversible: YES

TypeConditionRequiredDefaultValue LimitsDescription
namespaceNamestring
~ 128 charsNamespace name
Namespace-specific name. Specified using alphanumeric characters, hyphens (-), underscores (_), and periods (.).
userIdstring
~ 128 charsUser ID
Set #{userId} to replace the currently logged in user ID.
entryModelNamesList<string>[]0 ~ 100 itemsList of Entry Model names
timeOffsetTokenstring~ 1024 charsTime offset token
{
    "action": "Gs2Dictionary:AddEntriesByUserId",
    "request": {
        "namespaceName": "[string]Namespace name",
        "userId": "[string]User ID",
        "entryModelNames": [
            "[string]Entry Model name"
        ],
        "timeOffsetToken": "[string]Time offset token"
    }
}
action: Gs2Dictionary:AddEntriesByUserId
request:
  namespaceName: "[string]Namespace name"
  userId: "[string]User ID"
  entryModelNames: 
    - "[string]Entry Model name"
  timeOffsetToken: "[string]Time offset token"
transaction.service("dictionary").acquire.add_entries_by_user_id({
    namespaceName="[string]Namespace name",
    userId="[string]User ID",
    entryModelNames={
        "[string]Entry Model name"
    },
    timeOffsetToken="[string]Time offset token",
})