Configuring EAS Submit with eas.json
is your go-to place for configuring EAS Submit (and EAS Build
). It is located at the root of your project next to your package.json
. Even though eas.json
is not mandatory for using EAS Submit, it makes your life easier if you'll need to switch between different configurations.
eas.json looks something like this:
"version": ">= 0.34.0"
The JSON object under the
submit key can contain multiple submit profiles. Every submit profile can have an arbitrary name. If you run
eas submit without a profile name specified and you have the
production profile defined in eas.json, it'll be used to configure your submission. If you'd like EAS CLI to pick up another submit profile, you need to specify it with a parameter, e.g.
eas submit --platform ios --profile foobar.
The schema of this file looks like this:
Submit profiles can extend another submit profile using the
"extends" key. For example, in the
preview profile you may have
"extends": "production"; this would make the
preview profile inherit configuration of the
|(string) - Path to the JSON file with service account key used to authenticate with Google Play. See how to create one.|
|(enum: production, beta, alpha, internal) - The track of the application to use.|
|(enum: completed, draft, halted, inProgress) - The status of a release. Learn more.|
|(boolean) - Indicates that the changes sent with this submission will not be reviewed until they are explicitly sent for review from the Google Play Console UI. Defaults to false.|
|(string) - The application id that will be used when accessing Service Account Keys managed by Expo, it does not have any effect if you are using local credentials. In most cases this value will be autodetected, but if you have multiple product flavors, this value might be necessary.|
|(string) - Your Apple ID username (you can also set the |
EXPO_APPLE_ID env variable).
|(string) - App Store Connect unique application Apple ID number. When set, results in skipping the app creation step.
Learn more on this.|
|(string) - Your Apple Developer Team ID.|
|(string) - An unique ID for your app that is not visible on the App Store, will be generated unless provided.|
|(string) - Primary language. Defaults to "en-US".|
|(string) - The name of your company, needed only for the first submission of any app to the App Store.|
|(string) - The name of your app as it will appear on the App Store. Defaults to |
expo.name from the app config.
|(string) - The path to your App Store Connect Api Key .p8 file. Learn more.|
|(string) - The Issuer ID of your App Store Connect Api Key. Learn more.|
|(string) - The Key ID of your App Store Connect Api Key. Learn more.|
|(string) - The Bundle identifier that will be used when accessing submit credentials managed by Expo, it does not have any effect if you are using local credentials. In most cases this value will be autodetected, but if you have multiple Xcode schemes and targets, this value might be necessary.|
|(string) - The path to your store configuration file. Learn more.|