Médicaments en France
French medicines (ANSM + BDPM): boxes and prices, prescription conditions, safety info, shortages.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"medicaments-france": {
"url": "https://medicaments-france.a3e.dev/mcp"
}
}
}원격 엔드포인트
https://medicaments-france.a3e.dev/mcpstreamable-http할 수 있는 일
도구 목록
도구 (6)
🟢search_medicine(query, only_in_shortage, limit)
Search French medicines (BDPM) by name or active substance and show the ANSM shortage linked to each, plus listed shortages not linked to any medicine that match the query. Medicines in rupture or tension come first. Information only: never use this to recommend a substitute, an alternative or an equivalent medicine, a dosage change or stopping a treatment. Other medicines in the results are not alternatives.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 100,
"description": "Medicine name (brand) or active substance, e.g. \"doliprane\" or \"amoxicilline\"."
},
"only_in_shortage": {
"default": false,
"description": "Keep only medicines whose current shortage status is rupture or tension.",
"type": "boolean"
},
"limit": {
"default": 10,
"type": "integer",
"minimum": 1,
"maximum": 25
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "results"
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"cis": {
"type": "string",
"pattern": "^\\d{8}$"
},
"name": {
"type": "string"
},
"form": {
"type": [
"string",
"null"
]
},
"substances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"dosage": {
"type": [
"string",
"null"
]
}
},
"required": [
"name",
"dosage"
],
"additionalProperties": false
}
},
"is_mitm": {
"type": "boolean"
},
"shortage": {
"anyOf": [
{
"type": "object",
"properties": {
"shortage_id": {
"type": "string"
},
"name": {
"type": "string"
},
"dci": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
},
"status_label_fr": {
"type": "string"
},
"scope": {
"type": "string",
"enum": [
"ville",
"hopital",
"ville_hopital",
"inconnu"
]
},
"scope_raw": {
"type": [
"string",
"null"
]
},
"expected_return": {
"type": "object",
"properties": {
"earliest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"latest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"precision": {
"anyOf": [
{
"type": "string",
"enum": [
"day",
"month",
"quarter",
"year"
]
},
{
"type": "null"
}
]
},
"part": {
"anyOf": [
{
"type": "string",
"enum": [
"debut",
"mi",
"fin"
]
},
{
"type": "null"
}
]
},
"raw": {
"type": [
"string",
"null"
]
},
"passed": {
"type": "boolean"
}
},
"required": [
"earliest",
"latest",
"precision",
"part",
"raw",
"passed"
],
"additionalProperties": false
},
"returned_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_updated_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_url": {
"type": "string",
"format": "uri"
},
"match_confidence": {
"type": [
"number",
"null"
]
},
"match_note": {
"type": "string",
"const": "probable match"
}
},
"required": [
"shortage_id",
"name",
"dci",
"status",
"status_label_fr",
"scope",
"scope_raw",
"expected_return",
"returned_at",
"ansm_updated_at",
"ansm_url",
"match_confidence"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"shortage_note": {
"type": "string",
"const": "No shortage linked to this medicine. Not listed does not mean available."
}
},
"required": [
"cis",
"name",
"form",
"substances",
"is_mitm",
"shortage"
],
"additionalProperties": false
}
},
"unmatched_shortages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"shortage_id": {
"type": "string"
},
"name": {
"type": "string"
},
"dci": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
},
"status_label_fr": {
"type": "string"
},
"scope": {
"type": "string",
"enum": [
"ville",
"hopital",
"ville_hopital",
"inconnu"
]
},
"scope_raw": {
"type": [
"string",
"null"
]
},
"expected_return": {
"type": "object",
"properties": {
"earliest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"latest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"precision": {
"anyOf": [
{
"type": "string",
"enum": [
"day",
"month",
"quarter",
"year"
]
},
{
"type": "null"
}
]
},
"part": {
"anyOf": [
{
"type": "string",
"enum": [
"debut",
"mi",
"fin"
]
},
{
"type": "null"
}
]
},
"raw": {
"type": [
"string",
"null"
]
},
"passed": {
"type": "boolean"
}
},
"required": [
"earliest",
"latest",
"precision",
"part",
"raw",
"passed"
],
"additionalProperties": false
},
"returned_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_updated_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_url": {
"type": "string",
"format": "uri"
},
"match_confidence": {
"type": [
"number",
"null"
]
},
"match_note": {
"type": "string",
"const": "probable match"
}
},
"required": [
"shortage_id",
"name",
"dci",
"status",
"status_label_fr",
"scope",
"scope_raw",
"expected_return",
"returned_at",
"ansm_updated_at",
"ansm_url",
"match_confidence"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"results",
"unmatched_shortages"
],
"additionalProperties": false
}
]
},
"source": {
"type": "object",
"properties": {
"ansm": {
"type": "string",
"const": "https://ansm.sante.fr/disponibilites-des-produits-de-sante/medicaments"
},
"bdpm": {
"type": "string",
"const": "https://base-donnees-publique.medicaments.gouv.fr"
},
"ansm_last_ingest": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
},
"bdpm_release": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"bdpm_imported_at": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
}
},
"required": [
"ansm",
"bdpm",
"ansm_last_ingest",
"bdpm_release",
"bdpm_imported_at"
],
"additionalProperties": false
},
"coverage_note": {
"type": "string",
"const": "ANSM lists mainly shortages of medicines of major therapeutic interest declared by manufacturers. Shortages already compensated by alternatives are not published. Not listed does not mean available."
},
"disclaimer": {
"type": "string",
"const": "Information only. Ask your pharmacist or doctor. No substitution or dosage advice."
},
"safety": {
"type": "string",
"const": "Do not use this data to suggest a substitute, an alternative or an equivalent medicine, a dosage change or stopping a treatment. Other medicines in these results are not alternatives. Refer the user to a pharmacist or doctor."
},
"warning": {
"type": "string"
}
},
"required": [
"data",
"source",
"coverage_note",
"disclaimer",
"safety"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_availability(cis, shortage_id, name)
Current ANSM shortage status of one medicine, given exactly one of: its CIS code, an ANSM shortage id or a name. Returns the status, the expected return in ANSM's wording, the change history and possibly related unlinked entries. Information only: never use this to recommend a substitute, an alternative or an equivalent medicine, a dosage change or stopping a treatment. Other medicines in the results are not alternatives.
입력 스키마
{
"type": "object",
"properties": {
"cis": {
"description": "8-digit BDPM medicine code (CIS).",
"type": "string",
"pattern": "^\\d{8}$"
},
"shortage_id": {
"description": "ANSM shortage id, as returned by the other tools.",
"type": "string",
"minLength": 1,
"maxLength": 20
},
"name": {
"description": "Medicine name; resolved to one CIS or a list of candidates.",
"type": "string",
"minLength": 2,
"maxLength": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "availability"
},
"medicine": {
"anyOf": [
{
"type": "object",
"properties": {
"cis": {
"type": "string",
"pattern": "^\\d{8}$"
},
"name": {
"type": "string"
},
"is_mitm": {
"type": "boolean"
}
},
"required": [
"cis",
"name",
"is_mitm"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"linked_medicines": {
"type": "array",
"items": {
"type": "object",
"properties": {
"cis": {
"type": "string",
"pattern": "^\\d{8}$"
},
"name": {
"type": "string"
},
"match_confidence": {
"type": "number"
}
},
"required": [
"cis",
"name",
"match_confidence"
],
"additionalProperties": false
}
},
"listed": {
"type": "boolean"
},
"shortage": {
"anyOf": [
{
"type": "object",
"properties": {
"shortage_id": {
"type": "string"
},
"name": {
"type": "string"
},
"dci": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
},
"status_label_fr": {
"type": "string"
},
"scope": {
"type": "string",
"enum": [
"ville",
"hopital",
"ville_hopital",
"inconnu"
]
},
"scope_raw": {
"type": [
"string",
"null"
]
},
"expected_return": {
"type": "object",
"properties": {
"earliest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"latest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"precision": {
"anyOf": [
{
"type": "string",
"enum": [
"day",
"month",
"quarter",
"year"
]
},
{
"type": "null"
}
]
},
"part": {
"anyOf": [
{
"type": "string",
"enum": [
"debut",
"mi",
"fin"
]
},
{
"type": "null"
}
]
},
"raw": {
"type": [
"string",
"null"
]
},
"passed": {
"type": "boolean"
}
},
"required": [
"earliest",
"latest",
"precision",
"part",
"raw",
"passed"
],
"additionalProperties": false
},
"returned_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_updated_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_url": {
"type": "string",
"format": "uri"
},
"match_confidence": {
"type": [
"number",
"null"
]
},
"match_note": {
"type": "string",
"const": "probable match"
}
},
"required": [
"shortage_id",
"name",
"dci",
"status",
"status_label_fr",
"scope",
"scope_raw",
"expected_return",
"returned_at",
"ansm_updated_at",
"ansm_url",
"match_confidence"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"first_seen_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"days_in_current_status": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"history": {
"type": "array",
"items": {
"oneOf": [
{
"type": "object",
"properties": {
"date": {
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
"change": {
"type": "string",
"const": "new"
},
"status": {
"anyOf": [
{
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
},
{
"type": "null"
}
]
}
},
"required": [
"date",
"change",
"status"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"date": {
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
"change": {
"type": "string",
"const": "status_change"
},
"from": {
"anyOf": [
{
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
},
{
"type": "null"
}
]
},
"to": {
"anyOf": [
{
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
},
{
"type": "null"
}
]
}
},
"required": [
"date",
"change",
"from",
"to"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"date": {
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
"change": {
"type": "string",
"const": "return_date_change"
},
"from_raw": {
"type": [
"string",
"null"
]
},
"to_raw": {
"type": [
"string",
"null"
]
}
},
"required": [
"date",
"change",
"from_raw",
"to_raw"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"date": {
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
"change": {
"type": "string",
"const": "delisted"
}
},
"required": [
"date",
"change"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"date": {
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
"change": {
"type": "string",
"const": "relisted"
}
},
"required": [
"date",
"change"
],
"additionalProperties": false
}
]
}
},
"other_shortage_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"possibly_related_shortages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"shortage_id": {
"type": "string"
},
"name": {
"type": "string"
},
"dci": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
},
"status_label_fr": {
"type": "string"
},
"scope": {
"type": "string",
"enum": [
"ville",
"hopital",
"ville_hopital",
"inconnu"
]
},
"scope_raw": {
"type": [
"string",
"null"
]
},
"expected_return": {
"type": "object",
"properties": {
"earliest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"latest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"precision": {
"anyOf": [
{
"type": "string",
"enum": [
"day",
"month",
"quarter",
"year"
]
},
{
"type": "null"
}
]
},
"part": {
"anyOf": [
{
"type": "string",
"enum": [
"debut",
"mi",
"fin"
]
},
{
"type": "null"
}
]
},
"raw": {
"type": [
"string",
"null"
]
},
"passed": {
"type": "boolean"
}
},
"required": [
"earliest",
"latest",
"precision",
"part",
"raw",
"passed"
],
"additionalProperties": false
},
"returned_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_updated_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_url": {
"type": "string",
"format": "uri"
},
"match_confidence": {
"type": [
"number",
"null"
]
},
"match_note": {
"type": "string",
"const": "probable match"
}
},
"required": [
"shortage_id",
"name",
"dci",
"status",
"status_label_fr",
"scope",
"scope_raw",
"expected_return",
"returned_at",
"ansm_updated_at",
"ansm_url",
"match_confidence"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"medicine",
"linked_medicines",
"listed",
"shortage",
"first_seen_at",
"days_in_current_status",
"history",
"other_shortage_ids",
"possibly_related_shortages"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "candidates"
},
"candidates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"cis": {
"type": "string",
"pattern": "^\\d{8}$"
},
"name": {
"type": "string"
}
},
"required": [
"cis",
"name"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"candidates"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "not_found"
},
"possibly_related_shortages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"shortage_id": {
"type": "string"
},
"name": {
"type": "string"
},
"dci": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
},
"status_label_fr": {
"type": "string"
},
"scope": {
"type": "string",
"enum": [
"ville",
"hopital",
"ville_hopital",
"inconnu"
]
},
"scope_raw": {
"type": [
"string",
"null"
]
},
"expected_return": {
"type": "object",
"properties": {
"earliest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"latest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"precision": {
"anyOf": [
{
"type": "string",
"enum": [
"day",
"month",
"quarter",
"year"
]
},
{
"type": "null"
}
]
},
"part": {
"anyOf": [
{
"type": "string",
"enum": [
"debut",
"mi",
"fin"
]
},
{
"type": "null"
}
]
},
"raw": {
"type": [
"string",
"null"
]
},
"passed": {
"type": "boolean"
}
},
"required": [
"earliest",
"latest",
"precision",
"part",
"raw",
"passed"
],
"additionalProperties": false
},
"returned_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_updated_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_url": {
"type": "string",
"format": "uri"
},
"match_confidence": {
"type": [
"number",
"null"
]
},
"match_note": {
"type": "string",
"const": "probable match"
}
},
"required": [
"shortage_id",
"name",
"dci",
"status",
"status_label_fr",
"scope",
"scope_raw",
"expected_return",
"returned_at",
"ansm_updated_at",
"ansm_url",
"match_confidence"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"possibly_related_shortages"
],
"additionalProperties": false
}
]
},
"source": {
"type": "object",
"properties": {
"ansm": {
"type": "string",
"const": "https://ansm.sante.fr/disponibilites-des-produits-de-sante/medicaments"
},
"bdpm": {
"type": "string",
"const": "https://base-donnees-publique.medicaments.gouv.fr"
},
"ansm_last_ingest": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
},
"bdpm_release": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"bdpm_imported_at": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
}
},
"required": [
"ansm",
"bdpm",
"ansm_last_ingest",
"bdpm_release",
"bdpm_imported_at"
],
"additionalProperties": false
},
"coverage_note": {
"type": "string",
"const": "ANSM lists mainly shortages of medicines of major therapeutic interest declared by manufacturers. Shortages already compensated by alternatives are not published. Not listed does not mean available."
},
"disclaimer": {
"type": "string",
"const": "Information only. Ask your pharmacist or doctor. No substitution or dosage advice."
},
"safety": {
"type": "string",
"const": "Do not use this data to suggest a substitute, an alternative or an equivalent medicine, a dosage change or stopping a treatment. Other medicines in these results are not alternatives. Refer the user to a pharmacist or doctor."
},
"warning": {
"type": "string"
}
},
"required": [
"data",
"source",
"coverage_note",
"disclaimer",
"safety"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_current_shortages(status, scope, therapeutic_area, updated_since, limit, ...)
List medicine shortages currently published by ANSM, latest update first, filtered by status, scope, therapeutic area and update date, with the CIS codes of the matched medicines. Information only: never use this to recommend a substitute, an alternative or an equivalent medicine, a dosage change or stopping a treatment. Other medicines in the results are not alternatives.
입력 스키마
{
"type": "object",
"properties": {
"status": {
"default": [
"rupture",
"tension"
],
"type": "array",
"items": {
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
}
},
"scope": {
"description": "ville (city pharmacies), hopital (hospitals), ville_hopital or inconnu.",
"type": "string",
"enum": [
"ville",
"hopital",
"ville_hopital",
"inconnu"
]
},
"therapeutic_area": {
"description": "Therapeutic area as written by ANSM, e.g. \"cardiologie\".",
"type": "string",
"minLength": 2,
"maxLength": 60
},
"updated_since": {
"description": "Only entries updated by ANSM on or after this date (YYYY-MM-DD).",
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
"limit": {
"default": 25,
"type": "integer",
"minimum": 1,
"maximum": 50
},
"offset": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 10000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "list"
},
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"shortage_id": {
"type": "string"
},
"name": {
"type": "string"
},
"dci": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
},
"status_label_fr": {
"type": "string"
},
"scope": {
"type": "string",
"enum": [
"ville",
"hopital",
"ville_hopital",
"inconnu"
]
},
"scope_raw": {
"type": [
"string",
"null"
]
},
"expected_return": {
"type": "object",
"properties": {
"earliest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"latest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"precision": {
"anyOf": [
{
"type": "string",
"enum": [
"day",
"month",
"quarter",
"year"
]
},
{
"type": "null"
}
]
},
"part": {
"anyOf": [
{
"type": "string",
"enum": [
"debut",
"mi",
"fin"
]
},
{
"type": "null"
}
]
},
"raw": {
"type": [
"string",
"null"
]
},
"passed": {
"type": "boolean"
}
},
"required": [
"earliest",
"latest",
"precision",
"part",
"raw",
"passed"
],
"additionalProperties": false
},
"returned_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_updated_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_url": {
"type": "string",
"format": "uri"
},
"match_confidence": {
"type": [
"number",
"null"
]
},
"match_note": {
"type": "string",
"const": "probable match"
},
"cis": {
"type": "array",
"items": {
"type": "string",
"pattern": "^\\d{8}$"
}
}
},
"required": [
"shortage_id",
"name",
"dci",
"status",
"status_label_fr",
"scope",
"scope_raw",
"expected_return",
"returned_at",
"ansm_updated_at",
"ansm_url",
"match_confidence",
"cis"
],
"additionalProperties": false
}
},
"next_offset": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
}
},
"required": [
"kind",
"total",
"items",
"next_offset"
],
"additionalProperties": false
}
]
},
"source": {
"type": "object",
"properties": {
"ansm": {
"type": "string",
"const": "https://ansm.sante.fr/disponibilites-des-produits-de-sante/medicaments"
},
"bdpm": {
"type": "string",
"const": "https://base-donnees-publique.medicaments.gouv.fr"
},
"ansm_last_ingest": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
},
"bdpm_release": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"bdpm_imported_at": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
}
},
"required": [
"ansm",
"bdpm",
"ansm_last_ingest",
"bdpm_release",
"bdpm_imported_at"
],
"additionalProperties": false
},
"coverage_note": {
"type": "string",
"const": "ANSM lists mainly shortages of medicines of major therapeutic interest declared by manufacturers. Shortages already compensated by alternatives are not published. Not listed does not mean available."
},
"disclaimer": {
"type": "string",
"const": "Information only. Ask your pharmacist or doctor. No substitution or dosage advice."
},
"safety": {
"type": "string",
"const": "Do not use this data to suggest a substitute, an alternative or an equivalent medicine, a dosage change or stopping a treatment. Other medicines in these results are not alternatives. Refer the user to a pharmacist or doctor."
},
"warning": {
"type": "string"
}
},
"required": [
"data",
"source",
"coverage_note",
"disclaimer",
"safety"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢recent_changes(days, change_types, limit)
Shortage changes detected in the last days (new entries, status changes, expected-return changes, delisted and relisted entries), latest first, with counts per change type. Information only: never use this to recommend a substitute, an alternative or an equivalent medicine, a dosage change or stopping a treatment. Other medicines in the results are not alternatives.
입력 스키마
{
"type": "object",
"properties": {
"days": {
"default": 7,
"type": "integer",
"minimum": 1,
"maximum": 90
},
"change_types": {
"default": [
"new",
"status_change",
"return_date_change",
"delisted",
"relisted"
],
"type": "array",
"items": {
"type": "string",
"enum": [
"new",
"status_change",
"return_date_change",
"delisted",
"relisted"
]
}
},
"limit": {
"default": 50,
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "changes"
},
"since": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
"counts": {
"type": "object",
"propertyNames": {
"type": "string",
"enum": [
"new",
"status_change",
"return_date_change",
"delisted",
"relisted"
]
},
"additionalProperties": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"required": [
"new",
"status_change",
"return_date_change",
"delisted",
"relisted"
]
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"date": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
"change": {
"type": "string",
"enum": [
"new",
"status_change",
"return_date_change",
"delisted",
"relisted"
]
},
"shortage_id": {
"type": "string"
},
"name": {
"type": "string"
},
"ansm_url": {
"type": "string",
"format": "uri"
},
"old_status": {
"anyOf": [
{
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
},
{
"type": "null"
}
]
},
"new_status": {
"anyOf": [
{
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
},
{
"type": "null"
}
]
},
"old_expected_return": {
"type": [
"string",
"null"
]
},
"new_expected_return": {
"type": [
"string",
"null"
]
}
},
"required": [
"date",
"change",
"shortage_id",
"name",
"ansm_url",
"old_status",
"new_status",
"old_expected_return",
"new_expected_return"
],
"additionalProperties": false
}
},
"note": {
"type": "string",
"const": "Dates are detection dates by this service (daily cadence), not official ANSM decision dates."
}
},
"required": [
"kind",
"since",
"counts",
"items",
"note"
],
"additionalProperties": false
}
]
},
"source": {
"type": "object",
"properties": {
"ansm": {
"type": "string",
"const": "https://ansm.sante.fr/disponibilites-des-produits-de-sante/medicaments"
},
"bdpm": {
"type": "string",
"const": "https://base-donnees-publique.medicaments.gouv.fr"
},
"ansm_last_ingest": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
},
"bdpm_release": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"bdpm_imported_at": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
}
},
"required": [
"ansm",
"bdpm",
"ansm_last_ingest",
"bdpm_release",
"bdpm_imported_at"
],
"additionalProperties": false
},
"coverage_note": {
"type": "string",
"const": "ANSM lists mainly shortages of medicines of major therapeutic interest declared by manufacturers. Shortages already compensated by alternatives are not published. Not listed does not mean available."
},
"disclaimer": {
"type": "string",
"const": "Information only. Ask your pharmacist or doctor. No substitution or dosage advice."
},
"safety": {
"type": "string",
"const": "Do not use this data to suggest a substitute, an alternative or an equivalent medicine, a dosage change or stopping a treatment. Other medicines in these results are not alternatives. Refer the user to a pharmacist or doctor."
},
"warning": {
"type": "string"
}
},
"required": [
"data",
"source",
"coverage_note",
"disclaimer",
"safety"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢is_major_therapeutic_interest(cis, name)
Whether a medicine, given exactly one of its CIS code or its name, is on the BDPM list of medicines of major therapeutic interest (MITM), with its ATC code. Information only: never use this to recommend a substitute, an alternative or an equivalent medicine, a dosage change or stopping a treatment. Other medicines in the results are not alternatives.
입력 스키마
{
"type": "object",
"properties": {
"cis": {
"description": "8-digit BDPM medicine code (CIS).",
"type": "string",
"pattern": "^\\d{8}$"
},
"name": {
"description": "Medicine name; resolved to one CIS or a list of candidates.",
"type": "string",
"minLength": 2,
"maxLength": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "mitm"
},
"cis": {
"type": "string",
"pattern": "^\\d{8}$"
},
"name": {
"type": "string"
},
"is_mitm": {
"type": "boolean"
},
"atc_code": {
"type": [
"string",
"null"
]
},
"source": {
"type": "string"
}
},
"required": [
"kind",
"cis",
"name",
"is_mitm",
"atc_code",
"source"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "candidates"
},
"candidates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"cis": {
"type": "string",
"pattern": "^\\d{8}$"
},
"name": {
"type": "string"
}
},
"required": [
"cis",
"name"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"candidates"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "not_found"
},
"possibly_related_shortages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"shortage_id": {
"type": "string"
},
"name": {
"type": "string"
},
"dci": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
},
"status_label_fr": {
"type": "string"
},
"scope": {
"type": "string",
"enum": [
"ville",
"hopital",
"ville_hopital",
"inconnu"
]
},
"scope_raw": {
"type": [
"string",
"null"
]
},
"expected_return": {
"type": "object",
"properties": {
"earliest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"latest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"precision": {
"anyOf": [
{
"type": "string",
"enum": [
"day",
"month",
"quarter",
"year"
]
},
{
"type": "null"
}
]
},
"part": {
"anyOf": [
{
"type": "string",
"enum": [
"debut",
"mi",
"fin"
]
},
{
"type": "null"
}
]
},
"raw": {
"type": [
"string",
"null"
]
},
"passed": {
"type": "boolean"
}
},
"required": [
"earliest",
"latest",
"precision",
"part",
"raw",
"passed"
],
"additionalProperties": false
},
"returned_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_updated_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_url": {
"type": "string",
"format": "uri"
},
"match_confidence": {
"type": [
"number",
"null"
]
},
"match_note": {
"type": "string",
"const": "probable match"
}
},
"required": [
"shortage_id",
"name",
"dci",
"status",
"status_label_fr",
"scope",
"scope_raw",
"expected_return",
"returned_at",
"ansm_updated_at",
"ansm_url",
"match_confidence"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"possibly_related_shortages"
],
"additionalProperties": false
}
]
},
"source": {
"type": "object",
"properties": {
"ansm": {
"type": "string",
"const": "https://ansm.sante.fr/disponibilites-des-produits-de-sante/medicaments"
},
"bdpm": {
"type": "string",
"const": "https://base-donnees-publique.medicaments.gouv.fr"
},
"ansm_last_ingest": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
},
"bdpm_release": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"bdpm_imported_at": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
}
},
"required": [
"ansm",
"bdpm",
"ansm_last_ingest",
"bdpm_release",
"bdpm_imported_at"
],
"additionalProperties": false
},
"coverage_note": {
"type": "string",
"const": "ANSM lists mainly shortages of medicines of major therapeutic interest declared by manufacturers. Shortages already compensated by alternatives are not published. Not listed does not mean available."
},
"disclaimer": {
"type": "string",
"const": "Information only. Ask your pharmacist or doctor. No substitution or dosage advice."
},
"safety": {
"type": "string",
"const": "Do not use this data to suggest a substitute, an alternative or an equivalent medicine, a dosage change or stopping a treatment. Other medicines in these results are not alternatives. Refer the user to a pharmacist or doctor."
},
"warning": {
"type": "string"
}
},
"required": [
"data",
"source",
"coverage_note",
"disclaimer",
"safety"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_medicine_info(cis, cip13, name)
Boxes of a medicine in the French public medicines database (BDPM), its prescription and dispensing conditions and its current ANSM safety information, given exactly one of its CIS code, a CIP13 barcode or its name. Each box has its CIP13, marketing status, price and reimbursement rate. Information only: never use this to recommend a substitute, an alternative or an equivalent medicine, a dosage change or stopping a treatment. Other medicines in the results are not alternatives.
입력 스키마
{
"type": "object",
"properties": {
"cis": {
"description": "8-digit BDPM medicine code (CIS).",
"type": "string",
"pattern": "^\\d{8}$"
},
"cip13": {
"description": "13-digit CIP13 code of a box (presentation), as printed on its barcode.",
"type": "string",
"pattern": "^\\d{13}$"
},
"name": {
"description": "Medicine name; resolved to one CIS or a list of candidates.",
"type": "string",
"minLength": 2,
"maxLength": 100
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}출력 스키마
{
"type": "object",
"properties": {
"data": {
"oneOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "info"
},
"medicine": {
"type": "object",
"properties": {
"cis": {
"type": "string",
"pattern": "^\\d{8}$"
},
"name": {
"type": "string"
},
"form": {
"type": [
"string",
"null"
]
},
"routes": {
"type": [
"string",
"null"
]
},
"holder": {
"type": [
"string",
"null"
]
},
"marketing_status": {
"type": [
"string",
"null"
]
},
"is_mitm": {
"type": "boolean"
}
},
"required": [
"cis",
"name",
"form",
"routes",
"holder",
"marketing_status",
"is_mitm"
],
"additionalProperties": false
},
"presentations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"cip13": {
"type": "string",
"pattern": "^\\d{13}$"
},
"cip7": {
"type": [
"string",
"null"
]
},
"label": {
"type": "string"
},
"admin_status": {
"type": [
"string",
"null"
]
},
"marketing_status": {
"type": [
"string",
"null"
]
},
"declared_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"hospital_approval": {
"type": [
"boolean",
"null"
]
},
"reimbursement_rates": {
"type": "array",
"items": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"price_eur": {
"type": [
"number",
"null"
]
},
"public_price_eur": {
"type": [
"number",
"null"
]
},
"dispensing_fee_eur": {
"type": [
"number",
"null"
]
},
"reimbursement_indications": {
"type": [
"string",
"null"
]
}
},
"required": [
"cip13",
"cip7",
"label",
"admin_status",
"marketing_status",
"declared_at",
"hospital_approval",
"reimbursement_rates",
"price_eur",
"public_price_eur",
"dispensing_fee_eur",
"reimbursement_indications"
],
"additionalProperties": false
}
},
"prescription_conditions": {
"type": "array",
"items": {
"type": "string"
}
},
"safety_information": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
},
"starts_on": {
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
"ends_on": {
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
}
},
"required": [
"title",
"url",
"starts_on",
"ends_on"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"medicine",
"presentations",
"prescription_conditions",
"safety_information"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "candidates"
},
"candidates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"cis": {
"type": "string",
"pattern": "^\\d{8}$"
},
"name": {
"type": "string"
}
},
"required": [
"cis",
"name"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"candidates"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"const": "not_found"
},
"possibly_related_shortages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"shortage_id": {
"type": "string"
},
"name": {
"type": "string"
},
"dci": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string",
"enum": [
"rupture",
"tension",
"arret_commercialisation",
"remise_a_disposition",
"autre"
]
},
"status_label_fr": {
"type": "string"
},
"scope": {
"type": "string",
"enum": [
"ville",
"hopital",
"ville_hopital",
"inconnu"
]
},
"scope_raw": {
"type": [
"string",
"null"
]
},
"expected_return": {
"type": "object",
"properties": {
"earliest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"latest": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"precision": {
"anyOf": [
{
"type": "string",
"enum": [
"day",
"month",
"quarter",
"year"
]
},
{
"type": "null"
}
]
},
"part": {
"anyOf": [
{
"type": "string",
"enum": [
"debut",
"mi",
"fin"
]
},
{
"type": "null"
}
]
},
"raw": {
"type": [
"string",
"null"
]
},
"passed": {
"type": "boolean"
}
},
"required": [
"earliest",
"latest",
"precision",
"part",
"raw",
"passed"
],
"additionalProperties": false
},
"returned_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_updated_at": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"ansm_url": {
"type": "string",
"format": "uri"
},
"match_confidence": {
"type": [
"number",
"null"
]
},
"match_note": {
"type": "string",
"const": "probable match"
}
},
"required": [
"shortage_id",
"name",
"dci",
"status",
"status_label_fr",
"scope",
"scope_raw",
"expected_return",
"returned_at",
"ansm_updated_at",
"ansm_url",
"match_confidence"
],
"additionalProperties": false
}
}
},
"required": [
"kind",
"possibly_related_shortages"
],
"additionalProperties": false
}
]
},
"source": {
"type": "object",
"properties": {
"ansm": {
"type": "string",
"const": "https://ansm.sante.fr/disponibilites-des-produits-de-sante/medicaments"
},
"bdpm": {
"type": "string",
"const": "https://base-donnees-publique.medicaments.gouv.fr"
},
"ansm_last_ingest": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
},
"bdpm_release": {
"anyOf": [
{
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
},
{
"type": "null"
}
]
},
"bdpm_imported_at": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
},
{
"type": "null"
}
]
}
},
"required": [
"ansm",
"bdpm",
"ansm_last_ingest",
"bdpm_release",
"bdpm_imported_at"
],
"additionalProperties": false
},
"coverage_note": {
"type": "string",
"const": "ANSM lists mainly shortages of medicines of major therapeutic interest declared by manufacturers. Shortages already compensated by alternatives are not published. Not listed does not mean available."
},
"disclaimer": {
"type": "string",
"const": "Information only. Ask your pharmacist or doctor. No substitution or dosage advice."
},
"safety": {
"type": "string",
"const": "Do not use this data to suggest a substitute, an alternative or an equivalent medicine, a dosage change or stopping a treatment. Other medicines in these results are not alternatives. Refer the user to a pharmacist or doctor."
},
"warning": {
"type": "string"
}
},
"required": [
"data",
"source",
"coverage_note",
"disclaimer",
"safety"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}커뮤니티
증거