Shopify
Create one custom app in your Shopify admin, paste its credentials, pick which blog to write to, and articles publish to your store's own domain.
What connecting it does
Hoxigen talks to the Shopify Admin GraphQL API as a custom app you created inside your own store. There is no Hoxigen app to install from the Shopify App Store, no OAuth screen, and no third-party organisation in the middle: the credentials are yours, minted in your admin, and you can revoke them there in one click.
The access token is short-lived and minted on demand from your client credentials, which means a rotated secret takes effect immediately rather than leaving a stale token working for a day.
Articles are created on the blog you pick during setup — most stores have the default News blog, and a store with several gets a choice — and are published immediately rather than left as drafts.
What it needs from you
The same steps the connect screen walks you through, so you can see the whole of it before you sign up for anything.
- 1Create the app
At dev.shopify.com/dashboard, open Apps, click Create app, and name it Hoxigen. It has to be created in the same organization as the store, or the credentials grant will not work.
- 2Give it blog access
Under Access, paste into the Scopes box. Nothing else is needed, and nothing else is asked for — Hoxigen never gets orders, customers or payment data. Set App URL to so the Hoxigen entry in your Shopify admin opens this page instead of Shopify's placeholder example.com. Click either value to copy it.
- 3Release it
Click Release to make that version active.
- 4Install it on your store
On the app's Overview, under Installs, click Install app, choose your store and approve it. Shopify notes the app hasn't been reviewed; private apps never are. Until Installs shows 1, Shopify refuses the credentials.
- 5Copy the store address
The one ending in .myshopify.com, shown under Settings, Domains.
- 6Copy the credentials and pick a blog
From the app's Settings, copy the Client ID and Client Secret. Paste all three into Hoxigen, verify, and choose the blog articles should go to.
What actually gets published
Field by field, so nothing arrives as a surprise.
Created with the article's slug as its handle and published on the spot, dated with the article's publish time.
The article HTML becomes the body, the meta description becomes Shopify's summary field, and article tags become the article's tags.
Attached by URL with the article title as alt text. An article with no image of its own leaves the image already on a Shopify article untouched.
The byline from your app profile, sent as the article's author.
What happens when an article is refreshed
Yes — the same article, the same handle, so the same URL.
Hoxigen looks the live article up by its handle under your blog, re-reads its current title and body straight from Shopify, and compares that against the version the refresh was drafted from.
Different? Somebody edited it in the Shopify admin, and the update is refused as a conflict instead of clobbering their work. Identical? The article is updated in place — handle untouched, so links, shares and any ranking the URL earned survive.
Publishing is also safe against duplicates in the other direction: if an article with that handle already exists on the blog, Hoxigen adopts it rather than creating a near-identical second one.
Refreshing an article rather than writing a new one is how a page that used to rank keeps ranking.
What it cannot do
You would find these out in week two anyway. Here they are in week zero.
Shopify's client-credentials grant only issues tokens when the app and the store share an organization. An app created elsewhere is rejected at verification with that reason spelled out.
Articles go to the blog chosen at setup. Writing to two Shopify blogs at once is not something the connector does.
No product descriptions, no collection copy, no pages. Shopify's blog is the whole surface here.
Everything on this page describes what the connector does today. Found something that does not match what you see in the product? hello@hoxigen.app — we will correct the page.
How publishing works, whichever you pick
Drafts land in your queue with their images, meta description and internal links, plus a short FAQ where readers need one. You can edit, approve or reject each one. Ignore the queue and it publishes on schedule anyway — that is the point of an autopilot. Prefer to sign off first? Set the connector to Approve first.
Connect two blogs and each gets its own article per publishing slot, written for it. Hoxigen does not syndicate one body to several sites and hope search engines pick a winner.
Each connector verifies access against the real API before you save its publishing destination. OAuth sign-in stores the login first; choosing a collection and saving finishes the connection.
A publish that fails keeps the reason on the article and tries again, up to three times. If it still fails, it stops and tells you, so you can reconnect the site and retry it.
Publishing somewhere else
- WordPress
Our own plugin turns your site into a signed receiver. Articles arrive as posts and refresh at the same permalink.
- Wix
Publishes to your Wix blog with an API key you generate, converting each article into Wix's own rich content format.
- Webflow
Publishes live CMS items into the blog collection you choose, mapping your existing fields instead of demanding new ones.
- Ghost
Publishes articles to your Ghost publication with a custom integration, including cover and inline images, and refreshes the same post.
- Framer
Publishes articles into your Framer CMS collection, uploads cover and inline images, and refreshes the same article.
- Notion
Sign in with Notion and publish formatted articles with covers to your public blog collection.
- Any site, by signed webhook
One signed HTTP POST per article to an endpoint you own. Next.js, Rails, Astro, Django, a static build — if it can receive JSON, it can receive articles.
Give it your URL. See what it drafts.
Connect Shopify when you like what you read — nothing publishes before that.