Look an item up by barcode
- Credentials, one of
- Station token
- OAuth access token
- Scopes
listings:read
No match is { data: null } with 200, not a 404.
Access: OAuth scope listings:read; not write-gated.
AuthorizationBearer <token>It may call only the operations whose x-stations lists its kind, on its own store, and acts through the access of the owner or admin who paired it. Unpairing it, or that person leaving the business, ends it (401 station_revoked).
storeId*stringA store the person can reach. Any other id answers 404, never 403.
barcode*stringSpaces and dashes are ignored; variant barcodes win.
OK
application/json- response
data*|nullcurl -X GET 'https://api.shopeazy.co/v1/merchant/stores/<storeId>/products/by-barcode?barcode=%3Cbarcode%3E' \ -H 'Authorization: Bearer <access_token>'{ "data": { "product": { "id": "65myAK8IFZKwZBG84Gmw", "kitId": "cbzXdyoC08TecFtCKeTn", "title": "Monstera deliciosa, 20 cm pot", "slug": "monstera-deliciosa-20-cm-pot", "kind": "physical", "price": { "amount": 32900, "currency": "ZAR" }, "imageUrl": "https://images.example.com/plants/monstera.jpg", "active": true, "stock": 30 }, "variantId": null, "variantTitle": null, "barcode": "6001000000017" }}Create an item in a kit POST
Access: OAuth scope `listings:write`; write-gated by the subscription.
Set the shipping weight and box on several products POST
The bulk "Set shipping" of the products list: one weight and/or one box for up to 200 physical products. A box that is no longer in the store's list is 422 `validation_error` and nothing is written. The answer is one `{ id, ok, error? }` per product (`BulkResult`); an id that is not a physical product, is gone, or is in a kit the merchant has archived (`kit_archived`), is left alone. A retry is safe: writing the same weight and box twice changes nothing, and the same `Idempotency-Key` replays the first answer. Access: OAuth scope `listings:write`; write-gated by the subscription.