Docs / Guides

Search medicines

GET /v1/drugs searches every record of every source in one country by name, active ingredient or identifier.

How matching works

  • Names match anywhere in the text, so part of a brand name finds it.
  • Identifiers match from their first character, so the beginning of a code finds every record whose code starts with it.
  • Accents and case are ignored.
  • The query is literal text, without wildcards or operators, and needs 3 to 120 characters.

Ranking

Exact matches come first, then records whose name starts with the query, then other matches; ties are ordered by record name.

๐Ÿ‡ฌ๐Ÿ‡ง Searchable identifiers

These are the identifier schemes of each source of this country (United Kingdom):

Source Publisher Records Identifiers
gb.mhra.products
MHRA product licences
Medicines and Healthcare products Regulatory Agency 79,563 licence
gb.nhsbsa.bnf-snomed
dm+d products with BNF codes
NHS Business Services Authority 406,290 dmd bnf vtm
gb.vmd.product-information
Veterinary medicines
Veterinary Medicines Directorate 6,385 vmd-product vmd-vm-number

Filter by record kind

A source can publish several kinds of records, such as packages, active ingredients or ATC classes. Pass kinds to keep only the ones your application uses. The filter applies before paging, so other kinds cannot push them off a page.

cURL
curl -G https://api.medifontis.com/v1/drugs \
  -H "Authorization: Bearer $MEDIFONTIS_API_KEY" \
  --data-urlencode "country=gb" \
  --data-urlencode "q=amoxicillin" \
  --data-urlencode "kinds=gb.nhsbsa.bnf-snomed:amp"

kinds takes up to 12 comma-separated sourceId:kind pairs, all of the requested country. A malformed pair, or one of another country, answers 400.

Filter by use and species

useDomain and species keep only human or veterinary medicines, or only those for a target species. Human and veterinary medicines.

Pagination

limit sets the page size, from 1 to 50 (default 20), and offset skips results, up to 10000. Each response carries nextOffset, the offset of the next page, or null on the last one.

Example

GET /v1/drugs
curl -G https://api.medifontis.com/v1/drugs \
  -H "Authorization: Bearer $MEDIFONTIS_API_KEY" \
  --data-urlencode "country=gb" \
  --data-urlencode "q=amoxicillin"
Response
{
  "country": "gb",
  "results": [
    {
      "country": "gb",
      "sourceId": "gb.nhsbsa.bnf-snomed",
      "id": "gb:nhsbsa:dmd:196111000001109",
      "kind": "amp",
      "name": "Almodan 125mg/5ml syrup (Teva UK Ltd)",
      "names": [
        "Almodan 125mg/5ml syrup (Teva UK Ltd)",
        "Almodan 125mg/5ml syrup",
        "Amoxicillin"
      ],
      "identifiers": [
        {
          "value": "196111000001109",
          "scheme": "dmd"
        },
        {
          "value": "0501013B0BDABAJ",
          "scheme": "bnf"
        },
        {
          "value": "774586009",
          "scheme": "vtm"
        }
      ],
      "data": {
        "name": "Almodan 125mg/5ml syrup (Teva UK Ltd)",
        "level": "AMP",
        "bnfCode": "0501013B0BDABAJ",
        "bnfName": "Almodan 125mg/5ml syrup",
        "vtmCode": "774586009",
        "vtmName": "Amoxicillin"
      },
      "retrievedAt": "2026-10-20T02:32:49.259Z",
      "sourceUrl": "https://www.nhsbsa.nhs.uk/prescription-data/understanding-our-data/bnf-snomed-mapping",
      "licence": {
        "id": "OGL-UK-3.0",
        "attribution": "BNF SNOMED Mapping data, NHSBSA Copyright 2026. This information is licenced under the terms of the Open Government Licence."
      }
    },
    {
      "country": "gb",
      "sourceId": "gb.nhsbsa.bnf-snomed",
      "id": "gb:nhsbsa:dmd:774011000001100",
      "kind": "amp",
      "name": "Amix 125 oral suspension (Ashbourne Pharmaceuticals Ltd)",
      "names": [
        "Amix 125 oral suspension (Ashbourne Pharmaceuticals Ltd)",
        "Amix 125 oral suspension",
        "Amoxicillin"
      ],
      "identifiers": [
        {
          "value": "774011000001100",
          "scheme": "dmd"
        },
        {
          "value": "0501013B0BFAGAS",
          "scheme": "bnf"
        },
        {
          "value": "774586009",
          "scheme": "vtm"
        }
      ],
      "data": {
        "name": "Amix 125 oral suspension (Ashbourne Pharmaceuticals Ltd)",
        "level": "AMP",
        "bnfCode": "0501013B0BFAGAS",
        "bnfName": "Amix 125 oral suspension",
        "vtmCode": "774586009",
        "vtmName": "Amoxicillin"
      },
      "retrievedAt": "2026-10-20T02:32:49.259Z",
      "sourceUrl": "https://www.nhsbsa.nhs.uk/prescription-data/understanding-our-data/bnf-snomed-mapping",
      "licence": {
        "id": "OGL-UK-3.0",
        "attribution": "BNF SNOMED Mapping data, NHSBSA Copyright 2026. This information is licenced under the terms of the Open Government Licence."
      }
    }
  ],
  "nextOffset": 2
}