Guides / Sending and managing data / Manage indices and apps

Manage your Algolia apps

You can create multiple Algolia applications to have different environments for development, testing, and production. You can also use different indices within the same application for different environments.

One or multiple applications

Depending on the level of isolation needed between your different environments, you can:

  • Separate your environments into different indices on the same Algolia application
  • Create separate Algolia apps, one for each environment.

You may want to use different datasets in other environments than production. For example, to reduce indexing operations you can use a small subset of your production index.

Separate indices for each environment on the same application

If you’re using a single Algolia application, you can separate your production from your development and testing environments by creating separate indices.

To distinguish the different environments, make sure to name your indices consistently, for example, by using prefixes or suffixes that indicate the environment to which the index belongs: dev_index, staging_index, prod_index.

Controlling access to your indices

Indices on the same application share the same application ID. To control the access level to the index, you can create an Algolia user for each environment with different search and admin API keys.

Your plan must include the Advanced Team Permissions add-on to create a dedicated user per environment. See the pricing page for more details.

To create a new team member with access to all indices of a single environment:

  1. Go to the Team page in the Algolia dashboard and click Add Team Member.
  2. Add your prefix in the indices box followed by an "*" (asterisk) character. For example, use staging_* for your staging environment.

Create an Algolia user with limited index access

You can find the admin and search-only API keys for this user in the API Keys page of the Algolia dashboard. These keys only give them access to indices matching "staging_*". You can use those keys in your code to ensure isolation between environments.

You can repeat the same operation for all your environments. The only shared elements between your environments are the number of records and operations since they belong to the same application.

Separate applications for each environment

To provide complete isolation between your environments, you can create separate Algolia applications for each environment.

Separate applications each have their own plan.

You can create new applications in the Algolia dashboard.

Create a new Algolia application

You can create a new application on the Applications page in the Algolia dashboard, or by clicking the Settings icon > Applications, and then clicking New application.

Unless your plan includes a dedicated cluster of servers, having multiple applications generates an invoice per application. For example, if you have two applications and both use more units than the free tier provides, Algolia charges you for both plans.

Did you find this page helpful?