BYTETOOLS

ClinicalTrials.gov API

Free ClinicalTrials.gov API with no key: 500,000+ clinical studies worldwide with conditions, interventions, eligibility, locations and results. Tested example.

No API key requiredHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-19

What is the ClinicalTrials.gov API?

The ClinicalTrials.gov API is a free, key-free API from the US National Library of Medicine providing data on more than 500,000 clinical studies worldwide — conditions, interventions, eligibility criteria, sites and posted results.

This is the definitive registry of clinical research. Every study has a structured record covering the condition studied, the intervention, phase, recruitment status, eligibility criteria and participating sites, plus results where they have been posted.

The v2 API is a substantial redesign from the retired v1 — the paths, parameter names and response structure all changed. A great deal of older tutorial code targets v1 and will not work, so check you are reading current documentation.

Quick facts

Base URL
https://clinicaltrials.gov/api/v2
Authentication
No API key required.
Rate limit
No published hard limit; large paged queries should be throttled.
Pricing
Free public domain US government data.
CORS
Not enabled — call it from your server
Official docs
Read the docs

How to use the ClinicalTrials.gov API

Every request below was executed against the live API on 2026-08-19, and the response shown is the real body it returned — not an illustration.

1. Fetch a clinical study record

GET https://clinicaltrials.gov/api/v2/studies?pageSize=1

curl
curl 'https://clinicaltrials.gov/api/v2/studies?pageSize=1'
JavaScript (fetch)
const res = await fetch("https://clinicaltrials.gov/api/v2/studies?pageSize=1");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://clinicaltrials.gov/api/v2/studies?pageSize=1", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200 (truncated)
{
  "studies": [
    {
      "protocolSection": {
        "identificationModule": {
          "nctId": "NCT05823935",
          "orgStudyIdInfo": {
            "id": "MD.22.10.703"
          },
          "organization": {
            "fullName": "Mansoura University",
            "class": "OTHER"
          },
          "briefTitle": "Laparoscopic Versus Vaginal Cuff Closure During LH in Benign Gynecological Lesions",
          "officialTitle": "Laparoscopic Versus Vaginal Cuff Closure During Laparoscopic Hysterectomy in Benign Gynecological Lesions"
        },
        "statusModule": {
          "statusVerifiedDate": "2023-04",
          "overallStatus": "UNKNOWN",
          "lastKnownStatus": "RECRUITING",
          "expandedAccessInfo": {
            "hasExpandedAccess": false
          },
          "startDateStruct": {
            "date": "2022-11-05",
            "type": "ACTUAL"
          },
          "primaryCompletionDateStruct": {
            "date": "2023-11",
            "type": "ESTIMATED"
          },
          "completionDateStruct": {
            "date": "2023-11",
            "type": "ESTIMATED"
          },
          "studyFirstSubmitDate": "2023-04-09",
          "studyFirstSubmitQcDate": "2023-04-09",
          "studyFirstPostDateStruct": {
            "date": "2023-04-21",
            "type": "ACTUAL"
          },
          "lastUpdateSubmitDate": "2023-04-09",
          "lastUpdatePostDateStruct": {
            "date": "2023-04-21",
            "type": "ACTUAL"
          }
        },
        "sponsorCollaboratorsModule": {
          "responsibleParty": {

Parameters

ParameterTypeRequiredDescription
pageSizeintegerOptionalResults per page, max 1000. 10
pageTokenstringOptionalToken from the previous response for the next page. abc123
query.condstringOptionalSearch by condition or disease. diabetes
query.intrstringOptionalSearch by intervention or treatment. metformin
filter.overallStatusstringOptionalRECRUITING, COMPLETED, TERMINATED and others. RECRUITING
fieldsstringOptionalRestrict returned fields to shrink the payload. NCTId,BriefTitle

Response fields

studies[].protocolSection.identificationModule.nctIdstring
The NCT registry number identifying the study.
...identificationModule.briefTitlestring
Study title.
...statusModule.overallStatusstring
Recruitment status.
...conditionsModule.conditionsarray
Conditions being studied.
...armsInterventionsModule.interventionsarray
Treatments or interventions tested.
...eligibilityModuleobject
Inclusion and exclusion criteria, age and sex.
nextPageTokenstring
Cursor for the next page of results.

What you can build with the ClinicalTrials.gov API

  • Help patients find clinical trials recruiting for their condition
  • Research the treatment landscape for a disease area
  • Monitor competitor pipelines in pharmaceutical research
  • Analyse trial design and outcome trends

Common errors and how to fix them

v1 URLs return 404

The v1 API was retired.

Fix: Use /api/v2 paths and the new parameter names; older tutorials target the removed v1.

Deeply nested fields

Records are organised into protocolSection modules.

Fix: Use the `fields` parameter to flatten what you need rather than traversing the whole structure.

Enormous responses

Full study records are very large.

Fix: Always set `fields` and a modest pageSize.

ClinicalTrials.gov API — frequently asked questions

Is the ClinicalTrials.gov API free?

Yes, completely free with no API key. It is US government public domain data.

Why do my old ClinicalTrials.gov API calls fail?

The v1 API was retired and replaced by v2, which changed paths, parameter names and the response structure. Older tutorials will not work — use /api/v2.

How do I find trials recruiting for a condition?

Combine query.cond with filter.overallStatus=RECRUITING, then read the location module to find nearby sites.

Are trial results included?

Where sponsors have posted them, yes — in the resultsSection. Many studies have no posted results, particularly older or terminated ones.

Tools that pair with this API

ClinicalTrials.gov is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-19; always check the official documentation before relying on this API in production, as terms and limits can change.