Search medicines
GET/v1/drugs
Searches every record of every source in one country by name, active ingredient or identifier. Names match anywhere in the text; identifiers such as AIC, CN, NDC or DIN codes match from their first character. Matching ignores accents and case. Results rank exact matches first, then prefix matches, then other matches, each by record name.
Parameters
-
countrystring Required - Two-letter ISO 3166-1 country code, lowercase. Every search is scoped to one country.
-
qstring Required - The text to search for: a name, an active ingredient or an identifier. 3 to 120 characters, matched literally.
-
limitinteger - Number of results to return, from 1 to 50. Defaults to 20.
-
offsetinteger - Number of results to skip, from 0 to 10000. Use the nextOffset of the previous page.
-
kindsstring - Keep only these record kinds, as comma-separated sourceId:kind pairs of the requested country, at most 12. Applied before pagination.
-
useDomainenum -
Keep only records whose source classifies them for this use. human and veterinary also include products the source marks for both. Applied before pagination.
Possible values:
humanveterinarybothunknownnot-applicable -
speciesstring - Keep only records with this reviewed target species, such as dog, cat, horse or cattle. Records with unknown or unmapped species are excluded. Applied before pagination.
Returns
-
countrystring - The country searched.
-
resultsRecord[] - The matching records, best matches first.
-
nextOffsetinteger | null - The offset of the next page, or null on the last page.
Errors
400 401
403
429 503 ·
Errors and rate limits
curl -G https://api.medifontis.com/v1/drugs \
-H "Authorization: Bearer $MEDIFONTIS_API_KEY" \
--data-urlencode "country=fr" \
--data-urlencode "q=doliprane"const params = new URLSearchParams({ country: 'fr', q: 'doliprane' })
const response = await fetch(`https://api.medifontis.com/v1/drugs?${params}`, {
headers: { Authorization: `Bearer ${process.env.MEDIFONTIS_API_KEY}` },
})
if (!response.ok) throw new Error(`Medifontis ${response.status}`)
const { results, nextOffset } = await response.json()import os
import requests
response = requests.get(
"https://api.medifontis.com/v1/drugs",
params={"country": "fr", "q": "doliprane"},
headers={"Authorization": f"Bearer {os.environ['MEDIFONTIS_API_KEY']}"},
timeout=10,
)
response.raise_for_status()
results = response.json()["results"]
{
"country": "fr",
"results": [
{
"country": "fr",
"sourceId": "fr.ansm.bdpm",
"id": "fr:ansm:registrations:60234100",
"kind": "registrations",
"name": "DOLIPRANE 1000 mg, comprimé",
"data": {
"cis": "60234100",
"form": "comprimé",
"name": "DOLIPRANE 1000 mg, comprimé",
"holder": "OPELLA HEALTHCARE FRANCE",
"routes": [
"orale"
],
"holders": [
"OPELLA HEALTHCARE FRANCE"
],
"marketed": true,
"bdmStatus": null,
"useDomain": "unknown",
"authorisedOn": "2002-07-09",
"compositions": [
{
"name": "PARACÉTAMOL",
"nature": "SA",
"strength": "1000 mg",
"linkageNumber": "1",
"substanceCode": "02202",
"dosageReference": "un comprimé",
"pharmaceuticalElement": "comprimé"
}
],
"sourceStatus": "Autorisation active",
"supplyRegime": null,
"regionalRules": "not-collected",
"targetSpecies": [],
"specialityName": "DOLIPRANE 1000 mg, comprimé",
"marketingStatus": "Commercialisée",
"publicationDates": {
"CIS_bdpm": "2026-09-29",
"CIS_CIP_bdpm": "2026-10-19",
"CIS_CPD_bdpm": "2026-09-29",
"CIS_COMPO_bdpm": "2026-09-29"
},
"specialityListed": true,
"useDomainEvidence": {
"basis": "unreviewed",
"field": null,
"value": null,
"version": 1,
"sourceId": "fr.ansm.bdpm"
},
"patientEligibility": "not-assessed",
"targetSpeciesStatus": "not-reported",
"additionalMonitoring": false,
"administrativeStatus": "authorised",
"prescriptionCategory": "unknown",
"activeIngredientNames": [
"PARACÉTAMOL"
],
"authorisationProcedure": "Procédure nationale",
"prescriptionConditions": [],
"europeanAuthorisationNumber": null
},
"region": null,
"retrievedAt": "2026-10-19T23:00:39.006Z",
"sourceUrl": "https://base-donnees-publique.medicaments.gouv.fr/telechargement",
"licence": {
"id": "etalab-1.0",
"url": "https://base-donnees-publique.medicaments.gouv.fr/docs/telechargement/licence_bdpm.pdf",
"scope": "the four freely downloadable BDPM data tables; no medicine document contents",
"termsUrl": "https://base-donnees-publique.medicaments.gouv.fr/telechargement",
"reviewedAt": "2026-09-30",
"attribution": "Source : Base de données publique des médicaments (BDPM), ANSM, HAS et Assurance Maladie — dates de mise à jour dans publicationDates ; https://base-donnees-publique.medicaments.gouv.fr",
"documentsIncluded": false
},
"limitations": [
"Complete BDPM export, not a history of every French authorisation: the help page describes currently marketed medicines and those discontinued within five years, while the reviewed v4/v5 file specifications still say two years.",
"CIS identifies the specialty, CIP13 and CIP7 its presentation. All specialties remain searchable; prescriptions use named CIP13 presentations, and the four current presentations without a matching specialty are flagged, never matched by name or given invented parent data.",
"CIS_CPD publishes explicit dispensing conditions, not an OTC flag: list I, list II, narcotics and explicit prescribing or dispensing restrictions are prescription-or-restricted; absence of a condition stays unknown. No patient eligibility is assessed.",
"The effective pack administrative status preserves explicit licence suspension, withdrawal or cancellation over an active presentation. An archived or missing parent licence cannot establish authorisation; an explicitly cancelled presentation remains cancelled. Marketing declarations do not establish pharmacy stock.",
"The headerless files have the same strict positional schemas in the reviewed v4/v5 specifications. CIS, COMPO and CPD are Windows-1252, CIP is UTF-8; therapeutic fractions are FT in the export but ST in the specification, and three CPD CR-only blank lines are counted without dropping any condition.",
"The linked October 2011 Licence Ouverte v1.0 permits commercial redistribution and derived information with source and update-date attribution. BDPM’s download terms also require preservation of meaning, freshness checks and no suggestion of ANSM/HAS/Assurance Maladie endorsement.",
"SmPCs and patient leaflets are not in these bulk files: no document contents or guessed document URLs are collected. Safety information, shortages, HAS assessments and generic-group overlays are not collected."
],
"names": [
"DOLIPRANE 1000 mg, comprimé",
"PARACÉTAMOL"
],
"identifiers": [
{
"value": "60234100",
"scheme": "cis"
}
]
}
],
"nextOffset": 2
}