REWALTO / DEVELOPERS / API / MYNTRA
Myntra product data API
GET /v1/data/listings with retailer=myntra returns each Myntra product Rewalto holds: title, brand, pack size, images, product link and its latest price, MRP and stock reading. For Myntra, Rewalto holds price readings: 200 pins held and national · 81,036 readings on 4 Nov 2026 (measured 4 Nov 2026). It needs an API key and costs 1 credit per 10 listings; the sample record below is free.
Last updated 5 Nov 2026.
Key facts
| Endpoint | GET /v1/data/listings |
|---|---|
| App filter | retailer=myntra |
| Cost | 1 credit per 10 listingsOnly delivered records use credits |
| Key | API key needed |
A real Myntra record
The free samples route did not answer with a Myntra record just now, so none is shown. Try GET /v1/data/samples?dataset=listings yourself; it needs no key.
Call the Myntra endpoint
Set REWALTO_API_KEY to a key from your account, then run any of these.
cURL
curl -H "Authorization: Bearer $REWALTO_API_KEY" \
"https://api.rewalto.com/v1/data/listings?retailer=myntra&limit=20"Python
import os
import requests
r = requests.get(
"https://api.rewalto.com/v1/data/listings",
params={"retailer": "myntra", "limit": 20},
headers={"Authorization": f"Bearer {os.environ['REWALTO_API_KEY']}"},
timeout=30,
)
r.raise_for_status()
for record in r.json()["data"]:
print(record["title"], record["brand"])Node
const res = await fetch("https://api.rewalto.com/v1/data/listings?retailer=myntra&limit=20", {
headers: { Authorization: `Bearer ${process.env.REWALTO_API_KEY}` },
});
if (!res.ok) throw new Error(`Rewalto API ${res.status}`);
const { data } = await res.json();
for (const record of data) console.log(record.title, record.brand);Search Myntra products by brand
Add brand to read one brand, or retailerSku for one product. Each listing carries its latest reading, with the pin code it was read at.
Fields in each record
From API contract 0.157.0.
| Field | Type | What it means | Example |
|---|---|---|---|
id | string | Stable identifier of the listing. | "7c1e5f0a-2f55-4d2b-8c36-0f3f1d9c2b77" |
retailer | string | The retailer key. | "nykaa" |
retailerSku | string | The retailer own product identifier. | "1234567" |
title | null or string | The product title as the retailer showed it. | "Maybelline Superstay Matte Ink" |
brand | null or string | The brand as the retailer attributed it. | "Maybelline" |
packSizeRaw | null or string | The pack size exactly as printed. | "5 ml" |
imageUrl | null or string | The primary product image address (not the image itself): the first of images. | "https://images.example/lipstick-1.jpg" |
images | array of object | Every image address the source showed, in its order, primary first. Empty when it showed none. | |
url | null or string | The retailer product page. | "https://www.nykaa.com/p/1234567" |
productId | null or string | The matched Rewalto product, when matched. | "0d6b4a52-4b6e-4c1a-9a7e-5b0d2f8f1a11" |
firstSeen | string (date-time) | When the listing was first observed. | "2026-08-27T08:00:00Z" |
lastSeen | string (date-time) | When the listing was last observed. | "2026-10-14T09:00:00Z" |
observations | integer | How many times the listing has been observed. | 37 |
brandTag | null or object | Rewalto's model reading of the brand from the title (plan 13 T8), given only when the retailer attributed no brand. It never replaces brand. Null when the title is not tagged yet. | |
categoryTag | null or object | Rewalto's model reading of the GS1 GPC segment and family from the title (D-1498). Null when the title is not tagged yet. | |
similarity | number | Listing search with mode=semantic only: the cosine similarity of the listing and the query embeddings (OpenAI text-embedding-3-small, 512 dimensions), -1 to 1, higher is closer in meaning, to 6 decimal places. Absent everywhere else. | 0.71234 |
match | object | How this listing matched the search, only on search results. kind: exact_id (the query is the retailer product id), phrase (the name holds the words in order, next to each other), words (every word, spread out), brand (only the brand the query names), near (an approximate match, a likely misspelling). wholeWords of queryWords are whole words of the listing ("butter" in "Amul Butter", not in "Buttermilk"); allWords is true when every word is. When any listing holds every word as a whole word, the search returns only such listings. | |
latest | object | The listing's newest kept reading in the last 30 days, at the pin code asked for, else at any pin. Never a guess. |
Full reference
Every parameter and error code for this endpoint is in the reference.
Not Myntra's own API
Rewalto is not affiliated with, endorsed by or partnered with Myntra. It reads Myntra's public pages, the way a shopper sees them.
Questions people ask
- Is this the official Myntra API?
- No. Rewalto is not affiliated with, endorsed by or partnered with Myntra. It reads Myntra's public pages, the way a shopper sees them.
- What does a read cost?
- 1 credit per 10 listings. Every account gets 1,000 free credits a month, and a read that delivers nothing costs nothing.
- Do I need an API key?
- Yes, for this endpoint. The sample on this page comes from GET /v1/data/samples, which is free and needs no key.
- Does the Myntra product data include stock?
- Yes. Each listing carries its latest reading, with the price, MRP and the in-stock flag Myntra showed.
- Can an AI agent read it?
- AI agents can read the same records through Rewalto's MCP server, which is in preview.