Is this shop web address free?
- Credentials
- OAuth access token
- Scopes
store:read
The same policy and availability provisioning uses. When it is not free, the closest address that is.
Access: OAuth scope store:read; not write-gated.
merchantOAuth store:readAuthorizationBearer <token>OAuth 2.1 (authorization code + PKCE S256, public clients, dynamic registration) for connected AI apps. Effective power is scopes granted AND the person's role today AND the plan. orders:refund, billing:write and team:write are opt-in on the consent screen. Write implies read for marketing:read and messages:read, so a grant holding marketing:write passes a marketing:read check, and messages:send passes messages:read.
Scope: store:read
storeId*stringA store the person can reach. Any other id answers 404, never 403.
name*stringThe part before .shopeazy.co.
1 <= length <= 63OK
application/json- response
data*curl -X GET 'https://api.shopeazy.co/v1/merchant/stores/<storeId>/web-address/check?name=%3Cname%3E' \ -H 'Authorization: Bearer <access_token>'{ "data": { "address": "jabus-plant-shop.shopeazy.co", "free": true, "reason": null, "suggestion": null, "current": "https://jabus-plant-shop.shopeazy.co" }}Write or hide the shop's policies PUT
For each policy, the words (plain paragraphs or html), or `fromTemplate` to write it fresh from the shop's details, and whether it is shown. A policy not sent is left alone. Live at once. Access: OAuth scope `settings:write`; owner/admin only; write-gated by the subscription.
Design the home page with AI, into the draft POST
One model call reads the shop (logo, listings and their photos, categories, live codes, the merchant's own words) and composes a Look, colours, hero words and 6 to 10 sections. It lands in the design DRAFT only: show `previewUrl`, then `publishStorefront`. `heroPhoto` also makes a wide hero photo, for more credits. Credits are checked for the whole job first and charged only once each part worked (403 `insufficient_credits`). Storage: refused with 403 `plan_limit` when it would take the Library over the plan's storage. What is already stored stays. Access: OAuth scope `ai:spend`; owner/admin only; write-gated by the subscription.