↑ ↓ to move ↵ to open
NPPA API · Endpoint

NPPA Brand API

Read one pack's price record: MRP, company, pack, price-control status and the notified ceiling rows with tax and SO.

  • 1 credit per call
  • Failed calls are free
  • Updated
  • nppa.brand.get
Response completed
{  "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",  "source_url": "https://nppaipdms.gov.in/NPPA/rest/brandDataTableNew?brandId=101124596&dosageId=0&strengthId=0",  "ceiling_prices": [    {      "amount": 0.93,      "so_date": "2026-03-25",      "so_number": "1575(E)",      "tax_percent": 12,      "unit": "1 Tablet"    }  ]}
Try it live, free
Input

What you send

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

FieldTypeRequiredWhat it doesExample
brand string one of Brand name, used when no sku_id is known. NPPA has no name lookup, so this also reads the brand index.
sku_id string one of The sku_id from nppa.search.brands or nppa.formulation.brands. 1521018101@84705@101124596@3755@101006@202166
sku string no Exact sku name from a search. Required when the brand has more than one pack.
Response

Fields it returns

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

FieldTypeExample
mrp number 14.17
brand string DOLO
ceiling_price number 0.93
ceiling_prices array 1 records
ceiling_prices[].amount number 0.93
ceiling_prices[].so_date string 2026-03-25
ceiling_prices[].so_number string 1575(E)
ceiling_prices[].tax_percent integer 12
ceiling_prices[].unit string 1 Tablet
company string MICRO LABS LTD
composition string PARACETAMOL TABLET 500 MG
currency string INR
dosage_form string TABLET
mrp_per_unit number 0.94
pack_size string 15 TABLET
price_controlled boolean true
price_month string Aug-2026
sku string DOLO 500 MG TABLET 15
source_url string https://nppaipdms.gov.in/NPPA/rest/brandDataTableNew?brandId=10…
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.brand.get",  "input": {    "sku_id": "1521018101@84705@101124596@3755@101006@202166"  }}'
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 brand for sku id "1521018101@84705@101124596@3755@101006@202166". 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

Questions

NPPA Brand 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 Brand API cost?

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

What do I send?

Every input is optional; the input fields below list what each one does.

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.brand.get, 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.