Digital Goods

Digital goods are items that can be owned by a user in their inventory. User inventories are independent of applications.

Item Structure

These are the various fields that make up an item.

  • name: This is a string representing the name of your item. It must be unique and have no spaces.
  • tags: You may include a list of tags, as strings. Tags are an easy way to search for groups of items or sort them in your applications.
  • displayName: This is a string representing your item's display name.
  • description: This is a string that serves as a description for your item.
  • metadata: Metadata is optional. It can be any number of named strings or integers. This can have many uses, for example secondary descriptions, asset paths, types, or any arbitrary values assigned to your item.

In the database, the item will also have an _id field. This is automatically generated when the item is created and serves as an internal reference for that item.

Managing Items using the Console

Items are managed in the Digital Goods section of the admin console, which can be accessed from the upper nav bar or in the hamburger menu.

The "Add Item" button will open the new item panel.

Items can be edited by tapping the "Edit" button next to that item, or can be deleted by tapping the "Delete" button. Use the search function to more easily find specific items.

Item Editor

Editing Item Metadata

There are two ways to edit metadata on items.

The first is by adding a key and value then tapping the "+" button. Likewise, metadata can be deleted by tapping the "-" button.

You can also select "Advanced..." to switch to the advanced metadata editor, where you can edit metadata directly in a JSON format.

Item Editor

JSON Structure of Items

This is a sample item represented in JSON.

[{
        "name": "name",
        "tags": ["tag1","tag2"],
        "displayName": "Display Name",
        "description": "This is a description.",
        "metadata": {
            "metadata_string": "This is a string",
            "metadata_int": 1
        }
}]

Note: _id field is not included in the above sample. If you were to use a script to batch upload/update items, your JSON would look like this.