Getting release channel in app

SDK version: 23.0.0

$exp --version

I’ve built an app using:

exp build:ios --release-channel staging


exp publish --release-channel staging

However, the releaseChannel is not in Expo.Constants.manifest as stated in docs.

I need it to be able to pull out certain configs specifically for each environment. I.e:

import Expo from 'expo';
const { Constants: { manifest } } = Expo;
const releaseChannel = manifest.releaseChannel || 'default';

const config = {
    default: {
        API_BASE_URL: 'my-dev-url',
        [some default configs]
    staging: {
        API_BASE_URL: 'my-stage-url',
        [some staging configs]
    production: {
        API_BASE_URL: 'my-production-url',
        [some production configs]

1 Like

hey @tommyy thanks so much for reporting this. This is a bug and I’m working on this now. Sorry for the inconvenience!


hi @tommyy - this should be fixed now. You may need to republish to trigger a pull from the server in order to see the changes in the manifest.

1 Like

Great! It’s working.

Thank you :slight_smile:

Congratulation! This is a perfect solution :kissing_closed_eyes::kissing_closed_eyes:

Hi, just want to confirm why releaseChannel is not in the manifest object in the docs:

releaseChannel is not in the manifest object in __DEV__ mode, are you seeing this in production?

yes I am

Are you accessing it like Constants.manifest.releaseChannel?

yes I am. I know that in production, releaseChannel will be available. I think it should be part of the manifest object in the Expo docs( . I am using flow to handle types in my codebase. I get an error regarding releaseChannel because the there is no type for it in the expo-constants flow-typed definitions(

I also vote for it being part of the documentation.