In coming weeks Shopify will release a new feature: the Pre-launch page. This feature is a static “coming soon” style page that covers a merchant’s store and acts as an interactive placeholder while they work on their store and prepare for launch.
Similar to the password page, the Pre-launch page will operate as an alternative to a merchant’s existing themes and blocks all access to storefront .json endpoints. This state will be exposed through the Admin API Shop properties as a unique field ‘pre_launch_enabled’ (*subject to change). Unlike the password page, no applications will run when the Pre-launch page is enabled. We, therefore, suggest that apps consider relevant error handling and changes to documentation.
For beta access to test this feature, log in to your partner account and append this onto the URL from home: https://partners.shopify.com/current/development_stores/pre_launch_beta You will be prompted to create a new Dev store which will provide access to the feature under “Themes” > “Pre-launch page”.
We welcome feedback, comments and questions below.
Can you please clarify the purpose of this behaviour?
... no applications will run when the Pre-launch page is enabled
We have a specific use cases where our applications bring value to merchants that are pre-launch; seems that enabling this feature will prohibit them from using our apps and create confusion.
This might be a stupid question, but what exactly does "no applications will run when the Pre-launch page is enabled" mean? Does this only apply to apps using the Storefront API? Or does that mean that requests to the Admin API will fail? If so, how should an app query the pre_launch_enabled Shop property on a shop that's in pre-launch mode? And what happens when a merchant launches an app in the admin? Does that just fail then?
This looks great, and I guess solves problems where a theme does not contain a password page, or all themes are removed from the account :)
One small request. Most themes will add a class or id to the body tag to help identify which template is being used. For example a themes homepage usually has:
However, the pre-launch page does not have this. Can I suggest adding the class of template-pre-launch to the body tag of the page?
Use case is that my app will try and extract styling from a merchants site, to match up email and print designs (logo, colors and fonts) automatically. Being able to identify this as a pre-launch page will help me to use a bare-bones extraction of styling instead of going looking for other pages with more content.
James and Thomas,
no applications will run when the Pre-launch page is enabled
Means specifically that all access to storefront .JSON endpoints will be blocked. This is only the public urls like /products.json. Admin API endpoints are unaffected and we encourage app partners to leverage them for querying a shop’s data
We do agree that there are apps which compliment this feature and the "pre-launch" state in general. This is a limitation, for now. We may have open storefront access for a future version, but this is not certain. We'll be making changes where possible based on partner and merchant betas so, please send any other comments or thoughts you have.
@Bjorn, thanks for the feedback, we will look into this! Ill update the thread if any changes are made here.
Major flaw... a store that has pre-launch enabled, but wants to work on their store cannot until they enable the password page and disable the pre-launch. Please allow the password page to continue to exist as there is no way for an expert to assist customers without requesting access to their store etc.