Shopify integration
Approved work lands in Shopify, without copy-paste.
Create blog articles in Shopify through the GraphQL Admin API with draft, scheduled, and published states.
How it works
SearchHandled writes to your Shopify store's blog through the GraphQL Admin API using the articleCreate mutation, available from API version 2024-10 onward, with the write_content scope. Articles arrive with title, body HTML, author, tags, featured image, and SEO fields, targeted at whichever blog handle you choose. The legacy REST Article API exists, but we built on GraphQL from the start because that is where Shopify is investing.
Shopify articles support draft, scheduled, and published states, and we use them directly. New content defaults to draft so it appears in your Shopify admin for review, scheduled articles use Shopify's own scheduling so they go live even if our systems never touch them again, and published means live immediately. How each article renders depends on your theme's article template, which is why we preview after the first publish.
Best forStores that want buyer guides and product-connected articles flowing into the Shopify blog without manual copy-paste.
Setup, step by step
- In your Shopify admin, create a custom app (or install the SearchHandled app) and grant it the write_content access scope.
- Connect the store in SearchHandled with the resulting credentials.
- Choose the target blog, or let us create one; the blog handle determines your URL structure, so pick it deliberately.
- Run the connection check, which creates and deletes a draft article to confirm scope and blog access.
- Publish one test article and review it on your live theme before turning on regular delivery.
What lands in Shopify
| Element | How it lands |
|---|---|
| Title and body | Converted to the native format, then verified by reading the entry back. |
| SEO metadata | Mapped to the platform's own fields, and flagged where it has none. |
| Images | Uploaded to your media storage with alt text. Never hotlinked. |
| Internal links | Rewritten to your live URLs and checked against redirects. |
| Publish state | Draft, scheduled, and published. |
Field mapping is confirmed against your own content model during setup. Connectors are on every plan; the number of connected sites is what varies.
Best practices
Choose your blog handle carefully up front
Shopify blog URLs always follow shop.example/blogs/{handle}/{article}. The handle is the one part you control, and changing it later breaks existing URLs, so settle it before content starts shipping.
Review the first article in your actual theme
Article rendering is entirely determined by your theme's article template. Check headings, images, and width on the first published piece; if the template is bare, a small theme edit fixes every future article at once.
Use tags consistently for merchandising
Shopify article tags are the main hook for surfacing articles on collection pages or related-content blocks. Agree on a tag scheme early and we will apply it consistently.
Keep the connection on a pinned API version
Shopify releases API versions quarterly and retires old ones. We pin and migrate versions on our side; on yours, avoid installing store apps that mutate blog content on conflicting assumptions.
Use it in the full SEO workflow
The connector is the last mile, not the strategy. Read the Shopify SEO automation workflow for the evidence gates, draft state, review rules, publish checks, and measurement loop that surround this integration.
Known issues
What practitioners actually report, from official docs, issue trackers, and community forums.
REST deprecation and GraphQL gaps
Shopify is deprecating the REST Admin API for new development, forcing migrations, and some features have no GraphQL equivalent yet, such as mutations for article comments. Quarterly API versioning adds ongoing churn.
How we handle itWe built on GraphQL from day one, pin a tested API version, and track Shopify's deprecation notices so version migrations happen on our side, not yours.
community.shopify.com, github.com/Shopify/shopify-api-js
Fixed shop.example/blogs/{handle}/ URL structure
Shopify blog URLs cannot be restructured; every article lives under shop.example/blogs/{handle}/, and there is no way around it short of going headless.
How we handle itWe set that expectation honestly up front, help you choose the handle since that is the controllable part, and generate canonical URLs that match the real structure so your SEO signals stay consistent.
community.shopify.com, logeix.com
Rendering depends on the theme's article template
The same article HTML can look great in one theme and broken in another, because presentation is entirely up to the theme's article template.
How we handle itWe target the standard article template by default and preview the first published article on your live theme, flagging template issues before regular delivery starts.
shopify.dev
Questions teams ask
- Can articles be scheduled?
Yes. Shopify supports scheduled publication natively, and we set the publish date through the API. Once scheduled, Shopify handles going live on time without any further involvement from us.
- Can you change my blog URLs away from shop.example/blogs/... ?
No, and neither can anyone else on standard Shopify. That URL structure is fixed by the platform unless you move to a headless storefront. We control the handle portion and make sure canonicals match reality.
- Do you use the old REST blog API?
No. We use the GraphQL Admin API's articleCreate and related mutations, which is Shopify's current path. The REST Article API is legacy and being deprecated, so building on it now would just create a migration later.
Connect Shopify
One tested path from approval to publish.
Bring your content model to setup. We will map the destination and validate a draft before anything goes live.

