Last Updated: 11/25/2021, 2:01:27 PM

# User Generated Content

# Overview

User Generated Content (UGC) is a service that manages in-game content that has been created by your players. With UGC, players can contribute to the community as a creator by creating game items that can be downloaded by other players. The items can be a custom color for a vehicle, clothing for a character, or a new color for a weapon. Using this service, the creator can upload and then manage their content. Game Admins can upload an official preset to be used by the creator to create their own content, and can also manage user-generated content, channels, and view a list of creators for the game.

# How it Works

Game Admins can select items to be used as presets, which players can then modify. When a player creates a new design for one of the preset items, they can upload their design to be downloaded and used by other players that already own the preset item. Then when a player uses a custom design they’ve downloaded, that design will be visible to other players that interact with them in multiplayer games.

# Configure User Generated Content in the Admin Portal

You can create Types and Tags that can be used to configure and categorize user generated content. For example, a custom design for a car might have Vehicle as the Type and Body or Wheels as the Subtype, depending on the part of the car that’s customized. Tags could also include Car, Vehicle, Body, or other descriptors of the design.

# Create a New Type

  1. In the Admin Portal, click on Game Management, then click UGC Management, and open the Configurations menu.

    ugc

  2. In the Configurations menu, click the New Type button.

    ugc

  3. Input a name for the new type in the Type Name field. When you’re done, click the Add button.

    ugc

  4. The new type is added to the list. You can also add a subtype by clicking View in the type’s Action menu.

    ugc

  5. In the Subtypes section, click the New Subtypes button.

    ugc

  6. Input the Subtype Name. When you’re done, click the Add button.

    ugc

  7. The new Subtype is added to the list.

    ugc

# Create a New Tag

  1. In the Admin Portal, click Game Management, then click UGC Management, and open the Configurations menu.

    ugc

  2. In the Configurations menu, switch to the Tags tab and click New Tag.

    ugc

  3. Input the Tag Name. Then, click the Add button.

    ugc

# Manage User Generated Content and Creators in the Admin Portal

In the Creators menu, you can see a list of community creators along with their followers, and you can also create a new channel for a creator, upload an official preset, and manage a creator’s content.

# Create a New Channel

Each creator can have one or more channels to organize their creations. To create a channel, follow the steps below.

  1. In the Admin Portal, go to UGC Management and click the Creators menu.

    ugc

  2. Click View next to the creator for whom you want to create the new channel.

    ugc

  3. Click the New Channel button to add a new channel.

    ugc

  4. Input the Channel Name. When you’re done, click Add and your channel will be added to the list.

    ugc

# Create New Content

  1. In the Admin Portal, go to UGC Management and click the Creators menu.

    ugc

  2. Click View next to the creator for whom you’d like to create content.

    ugc

  3. Click **View **next to the channel that you have created.

    ugc

  4. On the **Creator Details **page that appears, click the New Content button.

    ugc

  5. Fill in the Add New Content form.

    ugc

    • Input a name for the content in the Content Namefield.
    • Select a type for the content from the Type dropdown menu.
    • Select a subtype for the content in the Subtype field.
    • Select a tag to identify the content from the Tag dropdown menu. This field is optional.
    • Upload the image in the Content field.
    • Upload a preview image of the main image in the Preview field.

    When you’re done, click Add.

# Create a New Content Group

  1. In the Admin Portal, go to UGC Management and click the Creators menu.

    ugc

  2. On the Creator page, switch to the Content Groups tab and click the New Content Group button.

    ugc

  3. The Add New Content Group form appears. Fill in the form with the required information.

    ugc

    • Input a name for the group in the Content Group Name field.
    • Select the content that you want to add to the group in the Content field.

    When you’re done, click the Add button and the Content Group containing the chosen content will be created.

    ugc

# View Content

  1. In the Admin Portal, go to UGC Management and click the Contents menu.

    ugc

  2. On the Contents page, choose the content you want to see and click View under that item’s Action column.

    ugc

  3. On the Content Details Page you can see some basic information about the content, view the content, and see the groups where this content can be found.

    ugc

# Add an Screenshot to Content

  1. In the Admin Portal, go to UGC Management and click the Contents menu.

    ugc

  2. On the Contents page, choose content you want to see and click View under that item’s Action column.

    ugc

  3. On the Content Details Page, click the New Screenshot button.

    ugc

  4. The Upload Image form appears. Select the screenshot you want to upload from your computer and type a description of the image in the **Description **field. When you’re done, click Upload.

    ugc

  5. The new screenshot will be uploaded.

    ugc

# Managing Reporting in the Admin Portal

Your players can report offensive or otherwise offensive content. To enable this, you’ll first need to create the reasons items can be reported, and then create reason groups to sort those reasons into.

# Create a Reason

  1. In the Admin Portal, choose the game namespace where you want to create a reason.

    ugc

  2. Go to the Game Management section, open the Reporting and Management section, then click Configuration.

    ugc

  3. In the Reason tab, click the Add Reason button.

    ugc

  4. The Add New Reason form appears. Fill in the fields as required.

    • Input a name for the reason in the Reason Name field.
    • Input the category the reason belongs to from the Reason Group dropdown. You can add a reason to more than one group. This field is optional.
    • Input a description of the reason in the Description field. This field is optional.

    ugc

  5. When you’re done, click Add. The new reason will be created.

# Edit a Reason

  1. In the Admin Portal, choose the game namespace that contains the reason you want to edit.

    ugc

  2. Go to the Game Management section, open the Reporting and Management section, then click Configuration.

    ugc

  3. In the Reason tab, click Edit next to the desired reason.

    ugc

  4. The Edit Reason form appears. Fill in the fields as required.

    • Input a new name for the reason in the Reason Name field.
    • Input a new category for the reason to be in from the Reason Group dropdown. You can add a reason to more than one group. This field is optional.
    • Input a new description of the reason in the Description field. This field is optional.

    ugc

  5. Click Add to save your edits.

# Delete a Reason

  1. In the Admin Portal, choose the game namespace that contains the reason you want to delete.

    ugc

  2. Go to the Game Management section, open the Reporting and Management section, then click Configuration.

    ugc

  3. In the Reason tab, click Delete next to the desired reason.

    ugc

  4. The Delete Reason confirmation box appears. Click the Delete button.

    ugc

# Create a Reason Group

  1. In the Admin Portal, choose the game namespace where you want to create a reason group.

    ugc

  2. Go to the Game Management section, open the Reporting and Management section, then click Configuration.

    ugc

  3. In the Reason Group tab, click the Add Reason Group button.

    ugc

  4. The Add Reason Group form appears. Fill in the fields as required.

    • Input a name for the reason group in the Reason Group Name field.
    • Input the reasons you’ve already created that you’d like to add to this reason group in the Reason List field. This field is optional.

    ugc

  5. Click Add. The new reason group will be created.

# Edit a Reason Group

  1. In the Admin Portal, choose the game namespace that contains the reason group you want to edit.

    ugc

  2. Go to the Game Management section, open the Reporting and Management section, then click Configuration.

    ugc

  3. In the Reason Group tab, click View next to the desired reason group.

    ugc

  4. The Reason Group Detail page appears. Here you can edit the reason group name, add a reason to this group, edit a reason in this group, or remove a reason from this group.

    ugc

  5. Add a Reason to the Group

    1. Click the Add Reason button.

      ugc

    2. Input the reason or reasons you want to add to the group in the Reason List field.

      ugc

    3. Click Add to add the reason to the group.

  6. Edit a Reason in the Group

    1. Click Edit next to the desired reason.

      ugc

    2. Follow the steps from the Edit a Reason section starting from step number 4.

  7. Remove a Reason From The Group

    1. Click Remove next to the desired reason.

      ugc

    2. The Remove Reason confirmation box will appear. Click the Remove button.

      ugc

    NOTE

    This will only remove the reason from the reason group, not delete it. You will still be able to find the reason in the Reason tab.

# Delete a Reason Group

  1. In the Admin Portal, choose the game namespace that contains the reason group you want to delete.

    ugc

  2. Go to the Game Management section, open the Reporting and Management section, then click Configuration.

    ugc

  3. In the Reason Group tab, click Delete next to the desired group.

    ugc

  4. The Delete Reason Group confirmation box will appear. Click the Delete button.

    ugc

# Moderating Reported Content in the Admin Portal

You can view reports, remove reported content, and discipline reported players.

# View Reported Content

  1. In the Admin Portal, choose the game namespace where you want to manage reported content.

    ugc

  2. Go to the Game Management section, open the Reporting and Management section, then click Report List.

    ugc

  3. On the Report List page, you can see the list of reported content. Click View next to the report you want to open.

    ugc

  4. On the Report Details page, click View Content next to the Content ID field.

    ugc

# View a Reported Player

  1. In the Admin Portal, choose the game namespace where you want to manage reported content.

    ugc

  2. Go to the Game Management section, open the Reporting and Management section, then click Report List.

    ugc

  3. On the Report List page, click View next to the report you want to open.

    ugc

  4. On the Report Detail page, click View Profile next to the User ID field to view the player that posted the reported content.

    ugc

# Hide or Unhide Reported Content

Hiding content prevents players from seeing it, without deleting it. This allows you to unhide it, which will make the content visible again to players.

  1. In the Admin Portal, choose the game namespace where you want to manage reported content.

    ugc

  2. Go to the Game Management section, open the Reporting and Management section, then click Report List.

    ugc

  3. On the Report List page, click View next to the report you want to open.

    ugc

  4. On the Report Detail page, click the Hide Content button in the Action field.

    ugc

  5. The Hide Content confirmation box appears. Click the Hide button.

    ugc

  6. The reported content is successfully hidden. To unhide the reported content, click the Unhide button in the Action field.

    ugc

  7. The Unhide Content confirmation box appears. Click the Unhide button.

    ugc

# Delete Reported Content

  1. In the Admin Portal, choose the game namespace where you want to manage reported content.

    ugc

  2. Go to the Game Management section, open the Reporting and Management section, then click Report List.

    ugc

  3. On the Report List page, click View next to the report you want to open.

    ugc

  4. On the Report Detail page, click the Delete Content button in the Action field.

    ugc

  5. The Delete Content confirmation box appears. Click the Delete button.

    ugc

    IMPORTANT

    Once the content is deleted, it will be unable to be retrieved.

    ugc

# Ban or Unban a Reported Content Uploader

This feature allows you to quickly ban an offending player from uploading content, without banning them from your game completely. For more robust ban options, see the User Bans documentation.

  1. In the Admin Portal, choose the game namespace where you want to manage reported content.

    ugc

  2. Go to the Game Management section, open the Reporting and Management section, then click Report List.

    ugc

  3. On the Report List page, click View next to the report you want to open.

    ugc

  4. On the Report Detail page, click the Ban User button in the Action field.

    ugc

  5. The UGC Ban form appears. Fill in the following fields:

    • Define when the ban will expire in the Ban Expiration field:
      • If you want the ban to expire after a certain amount of time, select Set by duration. Then enter the number of minutes, hours, or days you want the player to be banned for. After this amount of time passes, the ban will expire.
      • If you want the ban to expire on a certain day and time, select Set by expiration date. Then enter the date and time you want the ban to expire.
    • Choose Never if you want the ban to be permanent. Permanent bans can be disabled manually.
    • Choose the reason for banning the player in the Reason field.
    • Input a comment on the ban in the Comment field.
    • Select the Notify user via email option to send a ban notification to the banned player.

    IMPORTANT

    Players that log into your game using 3rd party credentials may only have a headless account in the Admin Portal, which means that their account will have no email address associated with it. Only players that have registered an account in your game or platform, or have upgraded their headless account by registering an email address in your game, will be able to receive an email notification if they’re banned. For more information about headless accounts, see the 3rd Party Login Integration documentation.

    ugc

  6. When you’re done, click the Bans button. The reported user will be banned from uploading content until their ban expires or they are unbanned.

  7. To unban the banned user, click the Unban User button in the Action field.

    ugc

  8. The Disable Ban confirmation box appears. Click the Disable button.

    ugc

# View a Reporting Player

  1. In the Admin Portal, choose the game namespace where you want to manage reported content.

    ugc

  2. Go to the Game Management section, open the Reporting and Management section, then click Report List.

    ugc

  3. On the Report List page, click View next to the report you want to open.

    ugc

  4. On the Report Detail page, click View in the Reporter column.

    ugc

  5. The Reporter Details window appears. Here you can view information about the reporting player.

    ugc

# Resolve or Unresolve Reported Content

Resolving a report allows you to indicate to your colleagues that the report has been addressed and requires no further action. You can also unresolve a previously resolved report if it turns out further action needs to be taken.

  1. In the Admin Portal, choose the game namespace where you want to manage reported content.

    ugc

  2. Go to the Game Management section, open the Reporting and Management section, then click Report List.

    ugc

  3. On the Report List page, click View next to the report you want to open.

    ugc

  4. On the Report Detail page, click the Resolve Ticket button to resolve the report.

    ugc

  5. The Resolve Ticket confirmation box appears. Fill in the Note field with the reason you’re resolving the report, then click the Resolve button.

    ugc

  6. The reported content is successfully resolved. To unresolve the reported content, click the Unresolve Ticket button.

    ugc

  7. The Unresolve Ticket confirmation box appears. Fill in the Note field with the reason you’re unresolving the report, then click the Unresolve button.

    ugc

# Implementing Reporting using the SDK

# Retrieve the List of Reason Groups

This function returns the list of reason group IDs and titles under a given namespace.

# Retrieve a List of Reasons

This function returns the list of reasons, optionally filtered by reason group

# Report Content

This function sends a report.

# Upload UGC to Cloud Storage

Uploading an image or other resource to cloud storage requires two steps. First, you must get the pre-signed URL you need to upload the resource, and then with that URL you perform the upload. The URL can only be used once, so it must be retrieved every time you want to upload.

NOTE

The resource you upload will be saved to a storage stack of your choosing, such as an S3 Bucket or MinIO. To find out how these resources can be accessed publicly, contact AccelByte.

# Prerequisites

# Get a Pre-Signed URL

The pre-signed URL is generated by this API endpoint.

IMPORTANT

Remember that this URL can only be used once.

curl -X POST   "<<base_url>>/basic/v1/public/namespaces/<<namespace_name>>/folders/<<folder_name>>/files?fileType=<<file_type>>" -H "Authorization: Bearer <<access_token>>"

Type the above code into the command prompt:

  • Replace <<base_url>> with the base URL of the environment or service. For example, the base URL of the AccelByte demo is https://demo.accelbyte.net.
  • Replace <<namespace_name>> with the namespace that the resource will be uploaded to.
  • Replace <<folder_name>> with the folder that the resource will be uploaded to.
  • Replace <<file_type>> with the file type of the resource you want to upload.

NOTE

Only .jpeg, .jpg, .png, .bmp, .gif, .mp3, and .bin file types can be uploaded.

  • Replace <<access_token>> with the access token you received when you were authenticated.

Then hit Enter.

# Response

{
    "url": "<<upload_url>>",
    "accessUrl": "<<access_url>>",
    "method": "PUT",
    "contentType": "<<content_type>>"
}
  • <<upload_url>> contains the one-time only pre-signed URL to upload a resource.
  • <<access_url>> contains the URL to access the resource after it’s uploaded.
  • <<content_type>> contains the media type that the uploaded resource must conform to.

# Upload the Resource

curl -X PUT "<<upload_url>>" -H "Content-Type: <<content_type>>" --data-binary "@<<resource_path>>"

Type the above code into the command prompt:

  • Replace <<upload_url>> with the upload URL returned by step 1.
  • Replace <<content_type>> with the resource content type returned by step 1.
  • Replace <<resource_path>> with the file path of the resource to be uploaded.

Then hit Enter.

# Response

If the upload is successful, status code 200 will be returned.