Verify theme support
Before you start integrating your app, determine the method required for integrating an app with an online store by verifying whether its published theme supports app blocks.
If a theme doesn't currently support app blocks, and you maintain the theme or a store where the theme is used, then you can also consider migrating the theme to support app blocks.
Anchor to Verification criteriaVerification criteria
To verify whether a theme supports app blocks, you need to determine the following:
-
Whether the template where your app is injected supports JSON.
-
The main section in the template.
-
Whether the section where your app is injected has a block of type
@app
in its schema.For an example, refer to Shopify's sample product reviews app.
Anchor to RequirementsRequirements
You've requested the read_themes
GraphQL Admin API access scope.
Anchor to Verify support for app blocksVerify support for app blocks
You can use the following code to verify that a theme supports app blocks. The code uses Shopify's Node library, which provides support for JavaScript apps to access the GraphQL Admin API.
Anchor to Specify the method for integrating the appSpecify the method for integrating the app
App block support | Integration method |
---|---|
Yes | Skip requests made to the ScriptTag object. |
No | Make requests to the |
Anchor to Provide onboarding instructionsProvide onboarding instructions
You need to provide merchants with post-installation instructions about onboarding your app.
To learn more about writing effective help documentation, refer to Help documentation in Shopify Polaris and to the theme app extension onboarding instruction guidelines.
App block support | Onboarding |
---|---|
Yes | Provide merchants with instructions about using the app block. For example, document instructions for adding the app block to the theme. |
No | Provide merchants with instructions about any configurations required to integrate the app. For example, document instructions for copying and pasting a code snippet to a page. |