ShopEazydevelopers
API referenceMerchant API BetaStudio

The Library, newest first

Beta
Credentials
  • OAuth access token
Scopes
store:read
GET
/v1/merchant/stores/{storeId}/library

With where each is in use. AI edits are new versions (versionOf).

Access: OAuth scope store:read; not write-gated.

Paged: { items, nextCursor }, limit (default 30, at most 100) and an opaque cursor. It pages through the newest 500.

Authorization

merchantOAuth store:read
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: store:read

Path Parameters

storeId*string

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

Query Parameters

media?string
Value in"image""video""audio"
category?string
Value in"product""brand""social""upload"
shoot?string

Only the takes of one product shoot (shootId from runProductShoot), so a result grid can be rebuilt after a reload.

cursor?string

The nextCursor of the previous page, unchanged. A cursor that is not one we gave you is 400 bad_request.

limit?integer

Page size: default 30, at most 100 (more is 100; a missing or unusable value is 30).

Range1 <= value <= 100
Default30

Response Body

OK

application/json
  1. response
data*
Example Request
curl -X GET 'https://api.shopeazy.co/v1/merchant/stores/<storeId>/library' \  -H 'Authorization: Bearer <access_token>'
Example Response
{  "data": {    "items": [      {        "id": "u_66bbe5d6b790cb6426d06e7c",        "kind": "upload",        "media": "image",        "category": "product",        "url": "https://images.example.com/plants/ceramic-pot.jpg",        "posterUrl": null,        "about": "Glazed ceramic pot",        "versionOf": null,        "usedIn": [          {            "kind": "product",            "id": "Lt4HUbN7ScpvnxPHUARR"          }        ],        "uses": 1,        "createdAt": 1792924383046      },      {        "id": "u_5f5425bcfbd1fbe1bab56139",        "kind": "upload",        "media": "image",        "category": "product",        "url": "https://images.example.com/plants/monstera.jpg",        "posterUrl": null,        "about": "Monstera deliciosa, 20 cm pot",        "versionOf": null,        "usedIn": [          {            "kind": "product",            "id": "65myAK8IFZKwZBG84Gmw"          }        ],        "uses": 1,        "createdAt": 1792924382581      }    ],    "nextCursor": null,    "total": 2  }}