↑ ↓ to move ↵ to open
NPPA API · Endpoint

NPPA Brands Search API

Read every pack of one medicine brand: MRP, MRP per unit, the applicable ceiling price and price-control status.

  • 1 credit per call
  • Failed calls are free
  • Updated
  • nppa.search.brands
Response completed
{  "has_more": false,  "matched_brand": "DOLO",  "page": 1,  "total": 1,  "items": [    {      "mrp": 14.17,      "brand": "DOLO",      "ceiling_price": 0.93,      "company": "MICRO LABS LTD",      "composition": "PARACETAMOL TABLET 500 MG",      "currency": "INR",      "dosage_form": "TABLET",      "mrp_per_unit": 0.94,      "pack_size": "15 TABLET",      "price_controlled": true,      "price_month": "Aug-2026",      "sku": "DOLO 500 MG TABLET 15",      "sku_id": "1521018101@84705@101124596@3755@101006@202166",      "source_url": "https://nppaipdms.gov.in/NPPA/rest/brandDataTableNew?brandId=101124596&dosageId=0&strengthId=0"    }  ]}
Try it live, free
Input

What you send

The input object of the request, with every field the endpoint accepts.

FieldTypeRequiredWhat it doesExample
query string yes Brand name as NPPA lists it, for example "DOLO". An exact name ranks first, then a prefix, then any containment. DOLO
dosage_form string no Optional dosage form to keep, for example "TABLET". Pass "all" for no filter.
limit integer no Rows per page. From 1 to 100. Default: 20. 5
page integer no Page of matching rows to return, starting at 1. At least 1. Default: 1.
strength string no Optional strength to keep, for example "500 MG". Must match one of the strengths NPPA lists for the brand. Pass "all" for no filter. 500 MG
Response

Fields it returns

What each record in the response holds, with the values from the sample above.

FieldTypeExample
items[].mrp number 14.17
items[].brand string DOLO
items[].ceiling_price number 0.93
items[].company string MICRO LABS LTD
items[].composition string PARACETAMOL TABLET 500 MG
items[].currency string INR
items[].dosage_form string TABLET
items[].mrp_per_unit number 0.94
items[].pack_size string 15 TABLET
items[].price_controlled boolean true
items[].price_month string Aug-2026
items[].sku string DOLO 500 MG TABLET 15
items[].sku_id string 1521018101@84705@101124596@3755@101006@202166
items[].source_url string https://nppaipdms.gov.in/NPPA/rest/brandDataTableNew?brandId=10…
has_more boolean false
items array 1 records
matched_brand string DOLO
page integer 1
total integer 1
REST API · MCP server

Call it from your code, or ask your agent

Set UPSCRAPE_API_KEY to your key and copy a working request.

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": "nppa.search.brands",  "input": {    "limit": 5,    "query": "DOLO",    "strength": "500 MG"  }}'
In your AI agent Claude · Cursor · any MCP client
1Add the Upscrape MCP server
https://data.upscrape.com/mcp
2Ask for the data in plain words

With Upscrape, get the NPPA brands search for query "DOLO" and strength "500 MG". Tell me what it costs before you run it, then show the results as a table.

The agent finds the endpoint, shows you the price, and runs it with your credits.
NPPA

More from the NPPA API

Same data, other platforms

The same data from other platforms

Questions

NPPA Brands Search API FAQ

The short answers. The docs have the long ones.

Still have a question? Talk to the people who build the endpoints.
How much does the NPPA Brands Search API cost?

1 credit per successful call, shown before it runs. You buy credits once, and paid credits never expire.

What do I send?

Send query. The input fields below list every option with its type and limits.

Do I need a NPPA login?

No. It reads public NPPA data; nothing runs on your account.

Can my AI agent call it?

Yes, over MCP: the agent finds nppa.search.brands, checks its price and runs it with the same credits as the REST API.

Get started

Your first NPPA call is free.

Up to 100 free credits to start, no card needed.