HomeGuidesReferenceLearn
ArchiveExpo SnackDiscord and ForumsNewsletter

Get started with EAS Metadata

Learn how to automate and maintain your app store presence from the command line with EAS Metadata.


EAS Metadata is in beta and subject to breaking changes.

EAS Metadata enables you to automate and maintain your app store presence from the command line. It uses a store.config.json file containing all required app information instead of going through multiple different forms. It also tries to find common pitfalls that could cause app rejections with built-in validation.

Prerequisites

EAS Metadata is available starting from EAS CLI >= 0.54.0, and currently only supports the Apple App Store.

Using VS Code? Install the Expo Tools extension for auto-complete, suggestions, and warnings in your store.config.json files.

Create the store config

Let's start by creating our store.config.json file in the root directory of your project. This file holds all the information you want to upload to the app stores.

If you already have an app in the stores, you can pull the information into a store config by running:

Terminal
eas metadata:pull

If you don't have an app in the stores yet, EAS Metadata can't generate the store config for you. Instead, create a new store config file.

store.config.json
{
  "configVersion": 0,
  "apple": {
    "info": {
      "en-US": {
        "title": "Awesome App",
        "subtitle": "Your self-made awesome app",
        "description": "The most awesome app you have ever seen",
        "keywords": ["awesome", "app"],
        "marketingUrl": "https://example.com/en/promo",
        "supportUrl": "https://example.com/en/support",
        "privacyPolicyUrl": "https://example.com/en/privacy"
      }
    }
  }
}

By default, EAS Metadata uses the store.config.json file at the root of your project. You can change the name and location of this file by setting the eas.json metadataPath property.

Update the store config

Now it's time to edit the store.config.json file and customize it to your app needs. You can find all available options in the store config schema.

Upload a new app version

Before pushing the store.config.json to the app stores, you must upload a new binary of your app. For more information, see uploading new binaries to stores.

After the binary is submitted and processed, we can push the store config to the app stores.

Upload the store config

When you are happy with the store.config.json settings, we can send it to the app stores. You can push the store config to the app stores by running:

Terminal
eas metadata:push

If EAS Metadata runs into any issues with your store config, it will warn you when running this command. When there are no errors, or you confirm to push it with possible issues, it will try to upload as much as possible.

When the store config partially fails, you can change the store config and retry. eas metadata:push can be used to retry pushing the missing items.

Next steps

Customize the store config

Customize the store config to adapt EAS Metadata to your preferred workflow.

Store config schema

Explore all configurable options EAS Metadata has to offer.