curl --request GET \
--url https://api.pav.bio/v1/fda/warning-letters \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.pav.bio/v1/fda/warning-letters"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.pav.bio/v1/fda/warning-letters', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.pav.bio/v1/fda/warning-letters"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"data": [
{
"record_key": "purple_book_product:761508:001",
"record_type": "purple_book_product",
"source": "purple_book",
"title": "GENGLYCOS",
"source_version": "2026-08",
"fda_organization_name": "Regeneron Pharmaceuticals, Inc.",
"company": {
"company_id": 5093,
"short_name": "regeneron",
"name": "Regeneron Pharmaceuticals"
},
"application_key": "BLA:761508",
"product_key": "BLA:761508:001",
"designation_id": "1186826",
"patent_number": "10022461",
"description": "<string>",
"document_date": "2023-12-25",
"event_date": "2023-12-25",
"event_date_type": "patent_expiry",
"status": "RX",
"source_url": "<string>",
"details": {
"ingredient": "SEMAGLUTIDE",
"strength": "300MG/5ML (60MG/ML)",
"dosage_route": "TABLET;ORAL",
"dosage_form": "Injection",
"route": "Intravenous",
"therapeutic_equivalence_code": "AB1",
"reference_listed_drug": true,
"reference_standard": true,
"patent_use_code": "U-4597",
"pediatric_extension": true,
"drug_substance_claim": true,
"drug_product_claim": true,
"license_type": "351(a)",
"licensure": "Licensed",
"license_number": "1760",
"orphan_exclusivity_expiry": "2023-12-25",
"reference_product_exclusivity_expiry": "2023-12-25",
"approval_date_raw": "Approved Prior to Jan 1, 1982",
"generic_name": "inosine pranobex",
"designation_withdrawn_date": "2023-12-25",
"approvals": [
{
"marketing_approval_date": "2023-12-25",
"exclusivity_end_date": "2023-12-25",
"trade_name": "Darzalex",
"generic_name": "daratumumab",
"approved_labeled_indication": "<string>",
"protected_indication": "<string>"
}
],
"brand": "Baxter",
"reason": "Mislabeling",
"reason_description": "<string>",
"product_types": [
"Drugs"
],
"issuing_office": "Center for Drug Evaluation and Research (CDER)",
"fda_reference_id": "738238",
"closeout_date": "2023-12-25",
"application_type": "NDA",
"products": "NUBEQA",
"submission_count": 123,
"latest_submission": {
"submission_type": "SUPPL",
"submission_number": "16",
"status": "AP",
"status_date": "2023-12-25",
"submission_class": "Labeling",
"review_priority": "PRIORITY",
"notes": "<string>"
},
"letter_type": "COMPLETE RESPONSE",
"application_numbers": [
"NDA 218705"
],
"category": "cancer",
"current_status": "Traditional Approval Granted (12/16/2022)",
"confirmatory_requirements": [
{
"requirement": "<string>",
"projected_completion": "2023-12-25"
}
],
"center": "Center for Drug Evaluation and Research",
"meeting_start": "2023-11-07T05:31:56Z",
"meeting_end": "2023-11-07T05:31:56Z",
"documents": [
{
"title": "<string>",
"url": "<string>",
"document_type": "<string>",
"document_date": "2023-12-25"
}
]
}
}
],
"next_cursor": "eyJyIjoicHJvZ3JhbXMiLCJzIjoiY29tcGFueSJ9",
"total": 1284
}{
"error": {
"code": "not_found",
"message": "program 999999 not found",
"request_id": "3f2b9c1d8a7e4f6b9c0d1e2f3a4b5c6d"
}
}{
"error": {
"code": "not_found",
"message": "program 999999 not found",
"request_id": "3f2b9c1d8a7e4f6b9c0d1e2f3a4b5c6d"
}
}{
"error": {
"code": "not_found",
"message": "program 999999 not found",
"request_id": "3f2b9c1d8a7e4f6b9c0d1e2f3a4b5c6d"
}
}{
"error": {
"code": "not_found",
"message": "program 999999 not found",
"request_id": "3f2b9c1d8a7e4f6b9c0d1e2f3a4b5c6d"
}
}List warning letters
Warning letters from FDA’s drug, biologic and device offices. from/to filter on the letter date.
curl --request GET \
--url https://api.pav.bio/v1/fda/warning-letters \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.pav.bio/v1/fda/warning-letters"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.pav.bio/v1/fda/warning-letters', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.pav.bio/v1/fda/warning-letters"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"data": [
{
"record_key": "purple_book_product:761508:001",
"record_type": "purple_book_product",
"source": "purple_book",
"title": "GENGLYCOS",
"source_version": "2026-08",
"fda_organization_name": "Regeneron Pharmaceuticals, Inc.",
"company": {
"company_id": 5093,
"short_name": "regeneron",
"name": "Regeneron Pharmaceuticals"
},
"application_key": "BLA:761508",
"product_key": "BLA:761508:001",
"designation_id": "1186826",
"patent_number": "10022461",
"description": "<string>",
"document_date": "2023-12-25",
"event_date": "2023-12-25",
"event_date_type": "patent_expiry",
"status": "RX",
"source_url": "<string>",
"details": {
"ingredient": "SEMAGLUTIDE",
"strength": "300MG/5ML (60MG/ML)",
"dosage_route": "TABLET;ORAL",
"dosage_form": "Injection",
"route": "Intravenous",
"therapeutic_equivalence_code": "AB1",
"reference_listed_drug": true,
"reference_standard": true,
"patent_use_code": "U-4597",
"pediatric_extension": true,
"drug_substance_claim": true,
"drug_product_claim": true,
"license_type": "351(a)",
"licensure": "Licensed",
"license_number": "1760",
"orphan_exclusivity_expiry": "2023-12-25",
"reference_product_exclusivity_expiry": "2023-12-25",
"approval_date_raw": "Approved Prior to Jan 1, 1982",
"generic_name": "inosine pranobex",
"designation_withdrawn_date": "2023-12-25",
"approvals": [
{
"marketing_approval_date": "2023-12-25",
"exclusivity_end_date": "2023-12-25",
"trade_name": "Darzalex",
"generic_name": "daratumumab",
"approved_labeled_indication": "<string>",
"protected_indication": "<string>"
}
],
"brand": "Baxter",
"reason": "Mislabeling",
"reason_description": "<string>",
"product_types": [
"Drugs"
],
"issuing_office": "Center for Drug Evaluation and Research (CDER)",
"fda_reference_id": "738238",
"closeout_date": "2023-12-25",
"application_type": "NDA",
"products": "NUBEQA",
"submission_count": 123,
"latest_submission": {
"submission_type": "SUPPL",
"submission_number": "16",
"status": "AP",
"status_date": "2023-12-25",
"submission_class": "Labeling",
"review_priority": "PRIORITY",
"notes": "<string>"
},
"letter_type": "COMPLETE RESPONSE",
"application_numbers": [
"NDA 218705"
],
"category": "cancer",
"current_status": "Traditional Approval Granted (12/16/2022)",
"confirmatory_requirements": [
{
"requirement": "<string>",
"projected_completion": "2023-12-25"
}
],
"center": "Center for Drug Evaluation and Research",
"meeting_start": "2023-11-07T05:31:56Z",
"meeting_end": "2023-11-07T05:31:56Z",
"documents": [
{
"title": "<string>",
"url": "<string>",
"document_type": "<string>",
"document_date": "2023-12-25"
}
]
}
}
],
"next_cursor": "eyJyIjoicHJvZ3JhbXMiLCJzIjoiY29tcGFueSJ9",
"total": 1284
}{
"error": {
"code": "not_found",
"message": "program 999999 not found",
"request_id": "3f2b9c1d8a7e4f6b9c0d1e2f3a4b5c6d"
}
}{
"error": {
"code": "not_found",
"message": "program 999999 not found",
"request_id": "3f2b9c1d8a7e4f6b9c0d1e2f3a4b5c6d"
}
}{
"error": {
"code": "not_found",
"message": "program 999999 not found",
"request_id": "3f2b9c1d8a7e4f6b9c0d1e2f3a4b5c6d"
}
}{
"error": {
"code": "not_found",
"message": "program 999999 not found",
"request_id": "3f2b9c1d8a7e4f6b9c0d1e2f3a4b5c6d"
}
}Authorizations
Use a personal or organization Pav API key from Pav developer settings. Send it as Authorization: Bearer <api_key>.
Query Parameters
Part of the title, description, company or FDA id.
200Company ids, comma-separated. Includes the companies each one owns.
"412"
FDA application, e.g. N:209637 or BLA:761508.
32Statuses, comma-separated (case-insensitive).
On or after this date.
On or before this date.
document_date or event_date; prefix - to descend.
Rows per page (1-200).
1 <= x <= 20050
next_cursor from the previous page.
2000Response
Successful Response
Page of FDA records.
Show child attributes
Show child attributes
Pass as cursor to get the next page. Null on the last page. See Conventions.
"eyJyIjoicHJvZ3JhbXMiLCJzIjoiY29tcGFueSJ9"
Rows matching the filters. Null for relevance-ranked q results.
1284