# Mortar — Drug Interaction API — for AI agents and LLMs > Educational drug-drug interaction lookup and a drop-in replacement for the > discontinued NLM RxNav interaction API. Send a list of drug names; get pairwise > interactions in the NLM-mirrored shape, with severity, description, and source. > RxNorm normalization handles brand names and typos. Informational only — NOT > clinical decision support, NOT a safe/unsafe verdict. Distributed via RapidAPI. ## Authentication Sold on RapidAPI. Subscribe to a plan, then call through the RapidAPI gateway: X-RapidAPI-Key: X-RapidAPI-Host: RapidAPI authenticates, meters, and proxies the request. No separate API keys. ## Base URL https://mortar.rgtz.dev (or your RapidAPI host) ## Endpoints - POST /interactions — Pairwise interactions for a list of drug names. - GET /v1/manifest — Machine-readable capabilities (no auth). - GET /openapi.yaml — OpenAPI 3.0 spec (no auth). - GET /health — Health check (no auth). ## Request POST /interactions { "drugs": ["warfarin", "aspirin", "simvastatin"], // 2-50 names, generic or brand "explain": false // optional plain-language explanations } ## Response (NLM-mirrored, trimmed) { "disclaimer": "Educational, informational drug-interaction data only ...", "resolved": [ { "input": "warfarin", "found": true, "rxcui": "11289", "name": "warfarin", "tty": "IN", "match": "exact" } ], "unresolved": [], "fullInteractionTypeGroup": [ { "sourceName": "ONCHigh", "fullInteractionType": [ { "minConcept": [ { "rxcui": "11289", "name": "warfarin", "tty": "IN" }, { "rxcui": "1191", "name": "aspirin", "tty": "IN" } ], "interactionPair": [ { "interactionConcept": [ { "minConceptItem": {...}, "sourceConceptItem": {...} }, {...} ], "severity": "high", "description": "Anticoagulants combined with antiplatelet agents increase the risk of serious bleeding." } ] } ] } ] } ## Notes - severity is "high" (ONCHigh) or "N/A" (openFDA labels carry no severity). - With explain:true each interactionPair gains an "explanation" string. - Names that cannot be resolved appear in "unresolved"; the request still succeeds. - Data: public ONCHigh DDI list + openFDA labeling, normalized via NLM RxNorm. No DrugBank/DDInter. ## Errors Envelope: { "error": { "code", "message", "hint", "request_id" } } Codes: forbidden, invalid_request, upstream_failed, internal_error