MedPlus Mart Product
medplus.product.get
Read one MedPlus Mart product: selling price, printed MRP, membership price, pack size, composition, prescription need and stock.
At a glance
- Endpoint ID
medplus.product.get- Price
- 1 credit per call; failed calls are free
- Runs for up to
- 45 seconds
Request
Send the endpoint ID as capability and its fields as input. Set UPSCRAPE_API_KEY to your key first.
curl --request POST \ --url https://data.upscrape.com/execute \ --header "Authorization: Bearer $UPSCRAPE_API_KEY" \ --header "Content-Type: application/json" \ --header "Prefer: wait=30" \ --data '{ "capability": "medplus.product.get", "input": { "product_id": "MAXI0041" }}'
import jsonimport osimport requestspayload = json.loads(r'''{ "capability": "medplus.product.get", "input": { "product_id": "MAXI0041" }}''')response = requests.post( "https://data.upscrape.com/execute", headers={ "Authorization": f"Bearer {os.environ['UPSCRAPE_API_KEY']}", "Content-Type": "application/json", "Prefer": "wait=30", }, json=payload,)response.raise_for_status()print(json.dumps(response.json(), indent=2))
const response = await fetch("https://data.upscrape.com/execute", { method: "POST", headers: { "Authorization": `Bearer ${process.env.UPSCRAPE_API_KEY}`, "Content-Type": "application/json", "Prefer": "wait=30", }, body: JSON.stringify({ "capability": "medplus.product.get", "input": { "product_id": "MAXI0041" }}),});if (!response.ok) { throw new Error(`Upscrape request failed: ${response.status}`);}console.log(JSON.stringify(await response.json(), null, 2));
Input
| Field | Type | Required | What it does | Example |
|---|---|---|---|---|
product_id |
string | one of | MedPlus Mart catalogue id such as KIDD0046. | MAXI0041 |
url |
string | one of | A public medplusmart.com product link such as https://www.medplusmart.com/product/kiddos-premium-diaper-pants-30s_kidd0046. Other hosts, paths and query strings are rejected. |
Response
A finished call answers with HTTP 200; the data is in results[0].data, and billing.credits_charged is what it cost. A call still running after the wait answers 202: see jobs and results.
This is results[0].data from a real run:
{ "name": "MAXILIV INJ", "price": 1529.07, "mrp": 1798.9, "availability": "available", "brand": "ZUVENTUS HEALTHCARE LTD", "composition": "Glutathione 600 MG /INJ", "currency": "INR", "delivery_estimate": "Delivery by Oct 27, 2026 – 11:59 PM", "discount_percent": 15, "form": "INJECTION", "image_url": "https://static2.medplusmart.com/products/_1bd16ca_/MAXI0041_L.jpg", "manufacturer": "ZUVENTUS HEALTHCARE LTD", "membership_price": 1457.11, "pack_size": "1 INJECTION", "prescription_required": true, "url": "https://www.medplusmart.com/product/maxiliv-inj_maxi0041", "drug_schedule": [ "H" ], "images": [ "https://static2.medplusmart.com/products/_1bd16ca_/MAXI0041_L.jpg" ], "molecules": [ "Glutathione" ], "variants": [ { "name": "MAXILIV TAB", "mrp": 140.9, "availability": "available", "composition": "Glutathione 500 MG", "currency": "INR", "pack_size": "10 TABLET", "product_id": "MAXI0050" } ]}
Fields
| Field | Type | Example |
|---|---|---|
name |
string | MAXILIV INJ |
price |
number | 1529.07 |
mrp |
number | 1798.9 |
availability |
string | available |
brand |
string | ZUVENTUS HEALTHCARE LTD |
composition |
string | Glutathione 600 MG /INJ |
currency |
string | INR |
delivery_estimate |
string | Delivery by Oct 27, 2026 – 11:59 PM |
discount_percent |
integer | 15 |
drug_schedule |
array | H |
form |
string | INJECTION |
image_url |
string | https://static2.medplusmart.com/products/_1bd16ca_/MAXI0041_L.j… |
images |
array | https://static2.medplusmart.com/products/_1bd16ca_/MAXI0041_L.j… |
manufacturer |
string | ZUVENTUS HEALTHCARE LTD |
membership_price |
number | 1457.11 |
molecules |
array | Glutathione |
pack_size |
string | 1 INJECTION |
prescription_required |
boolean | true |
url |
string | https://www.medplusmart.com/product/maxiliv-inj_maxi0041 |
variants |
array | 1 records |
variants[].availability |
string | available |
variants[].composition |
string | Glutathione 500 MG |
variants[].currency |
string | INR |
variants[].mrp |
number | 140.9 |
variants[].name |
string | MAXILIV TAB |
variants[].pack_size |
string | 10 TABLET |
variants[].product_id |
string | MAXI0050 |
If a call fails
A failed call costs nothing. The response carries an error.code you can branch on; Errors and retries lists every code and which ones to retry.
Other MedPlus Mart endpoints
Something missing or unclear? Ask the team that builds the MedPlus Mart endpoints.