Last Updated: 7/19/2022, 3:34:17 AM

# Legal Agreements

AccelByte Cloud’s Legal Agreements service has the power to manage legal documents, such as Terms of Service, Privacy Policy, End User License Agreement (EULA). It can even manage 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.

# Permissions

Permissions are used to grant access to specific resources within our services. Make sure your account has the following permissions before you attempt to manage legal agreements in the Admin Portal. For a full list of permissions that impact legal agreement management, see the Legal tab of the permissions reference (opens new window).

Usage Permission Tag Action
Create a Legal Document ADMIN:NAMESPACE:*:LEGAL Create
Update a Legal Document ADMIN:NAMESPACE:*:LEGAL Update
Create a Country-Specific Policy ADMIN:NAMESPACE:*:LEGAL Update
Create a New Version of a Document ADMIN:NAMESPACE:*:LEGAL Create
Edit Document Version Details ADMIN:NAMESPACE:*:LEGAL Update
Publish a Document Version ADMIN:NAMESPACE:*:LEGAL Update
Retrieving Policies by Country ADMIN:NAMESPACE:*:LEGAL Read
Retrieving a Document Content ADMIN:NAMESPACE:*:LEGAL Read

Permissions work slightly differently depending on whether they are assigned to IAM Clients or Roles assigned to users. For more information, read the Authentication and Authorization documentation.

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 Admin Portal, go to Platform Configurations and click Legal Documents.

    legal

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

    legal

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

    • Input a name for the legal document in the Document Name field. Only letters and spaces are allowed.

    • Choose the type of document you’re creating from the Document Type dropdown menu. Choose Legal Document for legal documents such as Privacy Policies or Terms and Conditions. Choose Marketing Preference for marketing preferences such as the option for players to sign up for a newsletter.

    • Select the namespace where the document will be created from the Namespace dropdown menu. 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 countries that you want to create country-specific policies for later from the Country dropdown menu. The first country that you input will be the default country, and the documents uploaded later for this country will also apply to all countries that do not have their own country-specific policies.

      IMPORTANT

      You won’t be able to delete countries later, so make sure your selections are correct before submitting this form.

    • Input a tag for the document in the Tag field. This field is optional. Tags can be used to further classify documents.

    • Select an IAM Client to assign this legal document to a specific IAM Clients only from the Client dropdown menu. In the publisher namespace, this could be Player Portal or Launcher, whereas in the game namespace this could be game client. If left blank, the legal document will not appear on any client. You can select multiple clients.

      Note

      If the legal document is created on publisher namespace, there is no rule which game client can be affected.

      If the legal document is created for a game namespace, you can only add game clients in the respective game namespace to the affected clients.

    • Input a description of the document in the Description field.

    legal

  4. When you’re finished, click the Create button. The new document is added to the list.

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

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

    legal

  2. On the Legal Documents page you can see a list of all existing Legal Documents. Choose the document you want to update and click Update in that document’s Action column.

    legal

  3. The Update Document form appears. Make the desired edits to the fields below:

    • Input a new name for the document in the Document Name field. Only letters and spaces are allowed.
    • Select a new type for the document from the Document Type dropdown menu. Choose Legal Document for legal documents such as Privacy Policies or Terms and Conditions. Choose Marketing Preference for marketing preferences such as the option for players to sign up for a newsletter.
    • Select a new country for the document to apply to from the Country dropdown menu.
    • Input a new tag in the Tag field. This field is optional. Tags can be used to classify documents.
    • Select a new client for this legal document to apply to from the Client dropdown menu. 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 on any platform. You can select multiple clients.
    • Input a new description of the document in the Description field.

    legal

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

# Create a Country-Specific Policy

After creating a legal document, you can create a country-specific policy to hold versions of that document that are for specific countries. The countries that were entered when a legal document was created or edited will be listed as countries that require a specific version of that document. To add a new country-specific policy to that list, follow the steps below:

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

    legal

  2. On the Legal Documents page you can see a list of all existing Legal Documents. Choose the document to which you want to add a new country-specific policy and click View next to that document.

    legal

  3. On the Legal Document Details page, you can see the details of the selected Legal Document and the list of country-specific versions of that document. To create a new country-specific policy, click Add Policy.

    legal

  4. The Add Policy form appears. Choose a country from the dropdown and click Create.

    legal

  5. The country-specific policy is successfully created. You’ll be redirected to the country-specific policy page that you just created.

    legal

    To set this country as the default country for country-specific policies, click the Set as Default button.

    legal

    If you want to require players to accept this policy before continuing to use the platform, select the Mandatory Update checkbox.

    legal

# Create a New Version of a Document

After creating a country-specific policy, 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. In the Admin Portal, go to Platform Configurations and click Legal Documents.

    legal

  2. On the Legal Documents page you can see a list of all existing Legal Documents. Choose the document to which you want to add a new version and click View next to that document.

    legal

  3. On the Legal Document Details page, you can see detailed information about the selected Legal Document and the list of country-specific policies related to that document. To create a new version of a country-specific policy, click View in the Action column of the country-specific policy you want to add a version to.

    legal

  4. On the Country-Specific Policy page, you can see information about the policy and its existing versions. To create a new version of the document, click Create Version.

    legal

  5. Enter a name for the new version in the Version Name field.

    legal

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

    legal

  7. To add content to your new document version, click View in the Action column of that version.

    legal

  8. On the Version Details page, you can see detailed information about the selected document version. To add content to this version, click Create New.

    legal

  9. Select the language the document is in from the Locale dropdown menu. Then click Browse to find the document on your computer. The file should be in .md format.

    legal

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

    legal

# Edit Document Version Details

You can edit the content of a legal document. To do so, follow the steps below:

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

    legal

  2. On the Legal Documents page you can see a list of all existing Legal Documents. Choose the document to which you want to add a new version and click View next to that document.

    legal

  3. On the Legal Document Details page, you can see detailed information about the selected Legal Document and the list of country-specific versions of that document. To open one of these country-specific policies, click View next to it.

    legal

  4. On the Country-Specific Policy page, you can see detailed information about the policy and existing versions of it. To edit a version, click View next to the version you want to edit.

    legal

  5. On the Version Details page, use the text editor on the left side of the page to make your edits. The text box on the right side shows you how your changes will look after they’re published.

    legal

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

    legal

# Publish a Document Version

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

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

    legal

  2. On the Legal Documents page you can see a list of all existing Legal Documents. Choose the document to which you want to add a new version and click View next to that document.

    legal

  3. On the Legal Document Details page, you can see detailed information about the selected Legal Document and the list of country-specific versions of that document. To open one of these country-specific policies, click View next to it.

    legal

  4. On the Country-Specific Policy page, you can see detailed information about the policy and existing versions of it. To publish a version, click Publish next to that version.

    legal

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

    legal

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

The Legal Agreement API can be called by using the functions in AccelByte::FRegistry::Agreement.

# 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.

# SDK Initialization

Before using the Legal service from the SDK, you will need to initialize your server-side SDK to ensure you are authorized and able to perform create, read, update, and delete actions.

# Golang SDK Initialization

Before using the Legal service from the Golang SDK, you will need to initialize the SDK by following the steps below:

Once completed, you can use the Golang SDK to create, read, update, or delete the Legal (opens new window) service from your serverless app.

Golang test case files (opens new window)

# Python SDK Initialization

Before using the Legal service from the Python SDK, you need to initialize the SDK by making sure that you’ve done the following requirements.

On a successful initialization, you can use the Python SDK to create, read, update and delete Legal (opens new window) from your serverless app.

To use the Legal Service, make sure you have the necessary permissions.

Python test case files (opens new window)

# .NET (C#) SDK Initialization

Before using the Legal service, you will need to set some permissions. Use the following .NET namespaces:

    using AccelByte.Sdk.Api.Legal.Model;
    using AccelByte.Sdk.Api.Legal.Operation;
    using AccelByte.Sdk.Api.Legal.Wrapper;

.NET (C#) test case files (opens new window)

# Java SDK Initialization

Before using the Legal service, you will need to set some permissions. Initialize the Agreement wrapper from the Legal service using the following code:

Agreement wLegalAgreement = new Agreement(sdk);

Once completed, you can use the SDK to create, read, update, or delete agreements.

Java test case files (opens new window)

# Bulk Accept Policy Versions

Use the following function to bulk accept policy versions (opens new window):

# Retrieve Agreements

Use the following function to retrieve agreements (opens new window):

Use the following function to update marketing preference consent (opens new window):

  • To learn more about GDPR and CCPA compliance, see the GDPR documentation.
  • Players are shown legal documents based on their country as defined in their player profile. To learn more about profiles, see the Profile documentation.