ShopEazydevelopers
API referenceMerchant API BetaStore

The shop's web address and where a connected domain is at

Beta
Credentials
  • OAuth access token
Scopes
settings:write
Role
Owners and admins only. Staff get 403 forbidden.
GET
/v1/merchant/stores/{storeId}/web-address

The ShopEazy address, the merchant's own domain if one is connected, and what to create at their registrar until it is live. With name, also answers whether that ShopEazy address is free (same policy and availability as checkWebAddress, and the closest free one when it is not), so a change can be shown before it is made.

Access: OAuth scope settings:write; owner/admin only; not write-gated.

Authorization

merchantOAuth settings:write
headerAuthorizationBearer <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: settings:write

Path Parameters

storeId*string

A store the person can reach. Any other id answers 404, never 403.

Query Parameters

name?string

A ShopEazy address to check, the part before .shopeazy.co.

Length1 <= length <= 63

Response Body

OK

application/json
  1. response
data*
Example Request
curl -X GET 'https://api.shopeazy.co/v1/merchant/stores/<storeId>/web-address' \  -H 'Authorization: Bearer <access_token>'
Example Response
{  "data": {    "address": "jabus-plant-shop.shopeazy.co",    "subdomain": "jabus-plant-shop",    "customDomain": null,    "domainState": null,    "records": [],    "liveUrl": "https://jabus-plant-shop.shopeazy.co"  }}