Platform

Custom Parse Options

Introduction

In this guide, you will learn how to add and edit your Custom Parse Options.

Goal

  • Configure the Parse Server Options.

Prerequisites

There are no pre-requisites to read or edit this page.

Parse Server Options

When you create a new application at Back4App, we will create all your application backend structure and it builds your database structure, your application layer, and your APIs. We do it all, thinking about scalability and security.

While your app is being created, a file called config.json will be generated with the options which contain the configuration like keys to starting the app in the JSON format.

This block looks like:

How to use it?

Now, we will show you some examples of properties that can be easily changed at this section.

Note that this is a DANGER ZONE. Your app can stop working if you do something wrong. If you are not sure, ask for support.

Please, check the following topics about how to use it each property below:

Property: allowCustomObjectId

Enable (or disable) custom objectId.

Example:

1
2
3
{
   "allowCustomObjectId": true
}

Property: customPages

With this property, you will be able to add custom pages for password validation and reset.

Step 1 - Enable your Webhosting

The first step that you need to take is enable your webhosting following this guide.

Step 2 - Upload the HTML files

At this step, You only need to deploy these static HTML pages in your “public” folder on cloud code. Please, download the following templates to you edit them:

Before uploadind these files, please make sure that your file name doesn’t have spaces.

Step 3 - Configuring the custom pages

The configuration will look like something below:

Example:

1
2
3
4
5
6
7
8
9
10
11
{
   "customPages": {
      "invalidLink":"https://<subdomain>.b4a.app/invalid_link.html",
      "verifyEmailSuccess":"https://<subdomain>.b4a.app/verify_email_success.html",
      "choosePassword":"https://<subdomain>.b4a.app/choose_password.html", 
      "passwordResetSuccess":"https://<subdomain>.b4a.app/password_reset_success.html",
      "invalidVerificationLink":"https://<subdomain>.b4a.app/invalid_verification_link.html",
      "linkSendFail":"https://<subdomain>.b4a.app/link_send_fail.html",
      "linkSendSuccess":"https://<subdomain>.b4a.app/link_send_success.html"
   }
}

Check how to create your subdomain here

Property: sessionLength

This property configures the expiration date of your sessions, in seconds (defaults to 1 year).

Example:

1
2
3
{
   "sessionLength": 31622400 
}

Property: emailVerifyTokenValidityDuration

This property configures the email verification token validity duration, in seconds.

Example:

1
2
3
{
   "emailVerifyTokenValidityDuration": Number
}

Property: enableAnonymousUsers

With this property, you will be able to enable (or disable) anon users, defaults to true.

Example:

1
2
3
{
   "enableAnonymousUsers": false
}

Property: enableSingleSchemaCache

Use a single schema cache shared across requests. Reduces number of queries made to _SCHEMA, defaults to false, i.e. unique schema cache per request.

Example:

1
2
3
{
   "enableSingleSchemaCache": true
}

Property: expireInactiveSessions

Sets whether we should expire the inactive sessions, defaults to true.

Example:

1
2
3
{
   "expireInactiveSessions": false
}

Property: objectIdSize

Sets the number of characters in generated object id’s, default 10.

Example:

1
2
3
{
   "objectIdSize": Number
}

Property: preserveFileName

Enable (or disable) the addition of a unique hash to the file names.

Note that it is recommended to keep it as false to prevent errors while trying to delete the unused files!

Example:

1
2
3
{
   "preserveFileName": Boolean
}

Conclusion

At this point, you have learned how to customize your Parse Server Options.