[network_access] Declare the hosts you link to, and customers can skip the warning when leaving the store. Declare the servers your app talks to, and Shopify can use them to spot suspicious traffic and protect your app.
shopify.app.toml A new [network_access] sectionhas been added toWhen a customer tries to navigate to a URL outside the store, Shopify normally shows a warning. This happened even for trusted destinations like the app's own site, adding friction to the customer journey.
Links to declared external hosts skip the warning. If you also declare the servers your app communicates with, Shopify uses them to detect suspicious activity and protect your app.
| Item | allowed_navigation_hosts | allowed_sources |
|---|---|---|
| What to list | External sites your app links to from the storefront (e.g., your own domain) | Servers your app's code loads from or sends requests to (e.g., APIs, CDNs) |
| Format | Hostname Exactly as it appears in the link | HTTPS origin https:// included |
| Limit | 20 | 20 |
| Applies to | Storefront | Storefront / checkout / Shopify admin (including extension, app home, and app proxy pages) |
| Effect | UX Skips the warning when navigating to external sites | Security App protection & malicious request monitoring |
| Wildcards | Not specified | Not specified |
[network_access]
allowed_navigation_hosts = ["app.example.com"]
allowed_sources = ["https://api.app.example.com"]
app.example.com Write the host in this form, matching exactly how it appears in the link.
https://api.app.example.com — write them as HTTPS origins like this.
Add the hosts you send customers to via links, such as your app's own site, to allowed_navigation_hosts .
Add the destinations your code loads from or sends requests to, such as APIs and CDNs, to allowed_sources .
shopify app deploy — run it, then release the new version.
navigation takeshosts(e.g. app.example.com), while sources takes HTTPS origins(e.g. https://api.app.example.com). Add this to your review checklist so the two don't get mixed up.
Apps with many external domains will need to audit and consolidate them. Whether wildcards are supported is not stated.
It covers not only the storefront but also checkout and the admin, plus requests fromextension / app home / app proxypages.
Writing the TOML alone isn't enough.shopify app deploy to create and release a new version — both steps are required.
There's no mention of undeclared traffic being blocked or of this becoming mandatory later. For now, it's "strongly recommended." However, the sources areused to monitor for malicious requests, so any omissions leave less to go on when telling legitimate traffic from suspicious traffic. Listing every host is the safe choice.
allowed_navigation_hosts , then deploy + release.allowed_sources .[network_access] " to your PR template or review checklist, and pair it withshopify app deploy .shopify.app.toml 's [network_access] — just list your external destinations and network hosts there, and