Last Updated: 9/22/2021, 7:52:24 AM

# Legal Agreements

The AccelByte Legal Agreement service has the power to manage legal documents such as Terms of Service, Privacy Policy, End User License Agreement (EULA), and even Marketing Preferences, such as whether a player would like to receive updates via email. You can create and manage documents with different versions and locales, then store them in the Admin Portal.

Legal Agreements can be uploaded to either a game namespace or to your publisher namespace. Any agreements uploaded to your publisher namespace will be applied to all of your games in Player Portal or Launcher, and players will only need to agree to them once, when creating their account for your platform.

# Tutorials

To use the AccelByte Legal Agreements service, first you must create a legal document in the Admin Portal. This document acts as a container that you can upload the actual contents of the document into. To create this document, follow the steps below:

  1. In the AccelByte Admin Portal, go to Platform Configurations and select Legal Documents.

legal

  1. On the Legal Documents page you can see a list of all existing Legal Documents. To create a new document, click Create Document.

legal

  1. The Create Document form appears. Fill in the required fields:

    • Input the Document Name. Only letters and spaces are allowed.

    • Select the Document Type. Choose the Legal Document type for legal documents such as a Privacy Policy or Terms and Conditions. Choose the Marketing Preference type for marketing preferences such as the option for players to sign up for a newsletter.

    • Select the Namespace where the document will be created. To apply the document to a single game select that game’s namespace, or to apply a document to all of your games select the publisher namespace.

    • Select the Country the document will be displayed in.

    • Input the Tag. This field is optional. Tags can be used to further classify documents.

    • Select the Client this legal document will be applied to. In the publisher namespace, this could be Player Portal or Launcher, whereas in the game namespace this could be Steam, PSN, or other platforms. If left blank, the legal document will not appear in any platform.

      NOTE

      You can add additional clients to the legal document after it’s created by opening the document and clicking Add More… next to Client.

    • Input a Description of the document.

    legal

  2. When you’re finished, click the Create button. The new document will be added to the list.

You can edit a existing legal document by following the steps below:

  1. In the Admin Portal open the Legal Documents page. Choose the document you want to update and click Update.

legal

  1. Make the desired edits to the fields below:

    • Input a new Document Name. Only letters and spaces are allowed.
    • Select a new Document Type. Choose the Legal Document type for legal documents such as a Privacy Policy or Terms and Conditions. Choose the Marketing Preference type for marketing preferences such as the option for players to sign up for a newsletter.
    • Select a new Country.
    • Input the Tag. This field is optional. Tags can be used to classify documents.
    • Select the Client this legal document will be applied to. In the publisher namespace, this could be Player Portal or Launcher, whereas in the game namespace this could be Steam, PSN, or other platforms. If left blank, the legal document will not appear in any platform. You can select multiple clients.
    • Input a new Description of the document.

    legal

  2. When you’re finished, click the Edit button. The document will be updated.

# Create a New Version of a Document

After creating a legal document, you can add a new version of that document anytime it’s revised. To create a new version of a document, follow the steps below:

  1. Open the Legal Documents page in the Admin Portal. Choose the document of which you want to add a new version and click View.

legal

  1. On the Legal Document Details page, you can see the details of the selected Legal Document. To create a new document version, click Create Version.

legal

  1. Enter a Version Name. You can also mark this update as important by selecting the Yes, it is checkbox. If you select this box, all player sessions will be revoked when the version is created, so that players will have to agree to the new version before accessing your game.

legal

  1. When you’re finished, click the Create button. The new document version will be created.

legal

  1. Choose the version you want to add version detail information to and click View.

legal

  1. On the Version Details page, you can see the details of the selected document version. To add version detail information to this version, click Create New.

legal

  1. Choose the language of the version by selecting Locale. Then click Browse to find the version details saved on your computer. The file should be in .md format.

legal

  1. When you’re finished, click the Create button. The new version details will be created.

legal

# Edit Document Version Details

You can add content to your legal document by adding version details. To do so, follow the steps below:

  1. In the Admin Portal, open the Version Details page of the version you want to edit.

legal

  1. You can edit the version details using the text editor on the left side of the page. The text box on the right side shows you how your changes will look after they’re published.

legal

  1. When you’re done editing, click Save.

legal

# Publish a Document Version

After you create a legal document, add a version, and upload the version details, you can publish the legal document for all players in the affected namespace. To do so, follow the steps below:

  1. Open the Legal Documents Details page. Choose the version you want to publish and click Publish.

legal

  1. A confirmation window will appear. Type PUBLISH in all caps and select the checkbox to notify players about the policy update via email.

legal

  1. When you’re done, click Publish. The new version will be published.

# Schedule a Version for Publishing

You can also schedule a document to be published later. To do so, follow the steps below:

  1. Open the Legal Documents Details page and click Schedule a Version.

legal

  1. Select the version you want to publish in the Version Name field, and select the publishing date.

legal

  1. When you’re done, click Set. The selected document version will be published on the selected date.

The Legal Agreement API can be called by using the functions in AccelByte::FRegistry::Agreement. The diagram below gives a basic overview of how the Legal Agreement API works:

legal

  1. The Game Client checks the eligible legal documents for the player by sending a request to the Agreement service.
  2. The Agreement service gives a response by sending back a list of eligible legal documents for the player and their status, i.e. whether the player has already accepted the eligible legal documents or not.
  3. If all of the legal documents have already been accepted by the player, the Game Client will continue to the game. If there are any legal documents that have not yet been accepted by the player, the Game Client will fetch these documents so that the player can accept them.
  4. To do so, the Game Client needs to retrieve the country information based on the player's IP address from the API Gateway, to determine the player's country.
  5. Using the player's IP information, the Game Client will receive a list of eligible legal documents by country from the Agreement service. Each document has multiple localized versions for different countries.
  6. Once the player accepts all of the eligible legal documents, the player will continue to the game. If the player does not accept the eligible legal documents, the Game Client will exit the game.

# Checking Player Eligibilities

Check all players’ legal eligibility from a specified namespace. Use this function to check whether the logged in player has already agreed to the legal agreement.

# Retrieving Policies

Retrieve all latest active policies based on the namespace from the game configuration and country code from the user’s profile.

# Retrieve List of Policies by Namespace

Retrieve all latest active policies from a specified namespace and country code from the user’s profile.

# Retrieve List of Policies by Tag

Retrieve all latest active policies that have specified tags based on the namespace from game configuration and country code from the user’s profile.

# Retrieve List of Policies by Country

Retrieve all latest active policies based on a specified country and the namespace from game configuration.

# Retrieve List of Policies by Country and Tag

Retrieve all latest active policies that have specified tags based on a specified country and the namespace from game configuration.

# Retrieving a Document’s Content

Use this function to retrieve the content of the specified document.

# Accepting Policies

# Accept a Policy

Use this function to accept a localized policy document by providing the localized policy version ID.

# Accept Policies in Bulk

Use this function to accept many localized policy documents at once.