Merran documentation API & integrations
The Walmart cart to look over
const url = 'http://localhost:3000/api/stores/walmart/basket?items=0199e8b0-5a10-7a01-8b00-00000000001d%2C0199e8b0-5a10-7a01-8b00-00000000001e';const options = { method: 'GET', headers: {cookie: 'merran.session_token=<merran.session_token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'http://localhost:3000/api/stores/walmart/basket?items=0199e8b0-5a10-7a01-8b00-00000000001d%2C0199e8b0-5a10-7a01-8b00-00000000001e' \ --cookie merran.session_token=<merran.session_token>Experimental, when the server admin has turned Walmart on. Each thing left to get (the ones asked for, which Send has going to Walmart; or without them, everything left on every list) with its product, the household’s own pick or Merran’s, how many and what it cost when last seen; and what’s still to find at Walmart, which Merran’s browser extension looks for in the person’s own Walmart tab. Merran never reaches Walmart itself. With an API key, it needs the list: read permission.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”Just these things on the list, by id, separated by commas: the ones Send has going to this store. Without it, everything left on every list.
Example
0199e8b0-5a10-7a01-8b00-00000000001d,0199e8b0-5a10-7a01-8b00-00000000001eJust these things on the list, by id, separated by commas: the ones Send has going to this store. Without it, everything left on every list.
Responses
Section titled “Responses”The cart to look over.
object
Walmart.
Walmart’s cart, to check out.
object
object
In the currency’s smallest unit: cents.
The sale’s last day.
Merran’s pick, not one the household chose.
How many is worked out from the product’s size, not a guess.
Sent to the cart last time.
Its sale today, if it’s on one.
object
How good a sale is, against what the product usually costs: the lowest in a while, a normal sale, or barely off (under a tenth).
What it usually costs, in cents: its most common price over 90 days, else its regular price.
Things without a product yet, one for each food, for the extension to look for at Walmart.
object
What to search Walmart for: the food as it’s bought.
Example
{ "store": "Walmart", "cartUrl": "https://www.walmart.com/cart", "sentAt": null, "lines": [ { "itemId": "0199e8b0-5a10-7a01-8b00-00000000001d", "name": "milk", "amount": "1 gallon", "product": { "id": "10450114", "upc": null, "name": "Great Value 2% Reduced Fat Milk, Gallon, 128 fl oz", "brand": "Great Value", "size": "128 fl oz", "image": "https://i5.walmartimages.com/seo/milk.jpeg", "price": 327, "salePrice": null, "saleEnds": null, "currency": "USD", "aisle": null, "inStock": true, "url": "https://www.walmart.com/ip/10450114" }, "suggested": true, "packages": 1, "sure": true, "sent": false, "sale": null }, { "itemId": "0199e8b0-5a10-7a01-8b00-00000000001e", "name": "eggs", "amount": "12", "product": null, "suggested": true, "packages": 1, "sure": true, "sent": false, "sale": null } ], "toFind": [ { "itemId": "0199e8b0-5a10-7a01-8b00-00000000001e", "words": "eggs" } ]}Not signed in.
object
object
object
Example
{ "error": { "code": "not_found", "message": "There's nothing here.", "fields": { "name": "Give it a name." } }}Not allowed.
object
object
object
Example
{ "error": { "code": "not_found", "message": "There's nothing here.", "fields": { "name": "Give it a name." } }}Walmart isn’t turned on on this server.
object
object
object
Example
{ "error": { "code": "not_found", "message": "There's nothing here.", "fields": { "name": "Give it a name." } }}© 2026 Kyle Johnson. Documentation: CC BY 4.0. Merran: AGPL-3.0-or-later.