# ClinicalTrials.gov Scraper - Studies, Sites & Contacts $1/1K (`plotpointtech/clinicaltrials-gov-scraper`) Actor

Export clinical trials from the official ClinicalTrials.gov API by condition, drug, sponsor, phase, status and location: sponsors, dates, enrollment, eligibility, sites and published contacts. One row per study or per site. $1 per 1,000.

- **URL**: https://apify.com/plotpointtech/clinicaltrials-gov-scraper.md
- **Developed by:** [Plot Point Technologies](https://apify.com/plotpointtech) (community)
- **Categories:** Lead generation, Automation, Developer tools
- **Security:** Limited permissions
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.62 / 1,000 study or site records

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## ClinicalTrials.gov Scraper: Studies, Sponsors, Sites & Contacts

**Export clinical trials from the official ClinicalTrials.gov API as clean spreadsheet rows.** Search by condition, drug, sponsor, phase, status, study type, dates and site location (city, state, country or a radius around a point), and get titles, phases, conditions, interventions, sponsors and collaborators, key dates, enrollment, eligibility, every site and the contacts sponsors publish for recruitment. **One row per study, or one row per study site.** **$1 per 1,000 records.**

### What does this ClinicalTrials.gov scraper do?

- **Uses the official ClinicalTrials.gov API v2** run by the US National Library of Medicine. No API key, no login, no browser.
- **Covers the whole registry:** more than 600,000 studies from over 200 countries, refreshed by ClinicalTrials.gov every weekday.
- **Filters the way buyers search:** condition, intervention or drug, sponsor (lead only or including collaborators), free-text keywords, overall status, phase, study type, results posted, start date range and last-updated date range, NCT IDs.
- **Finds trials near a place:** site city, state and country, a free-text location, or a geo search (latitude, longitude, radius in miles).
- **Sites mode:** one row per study site with facility, city, state, ZIP, country, coordinates, site recruitment status and site contacts. Only the sites that match your location and site-status filters are returned, so a search for Boston gives you Boston sites, not all 300 sites of a global trial.
- **Pages through any number of results** with the API's page tokens and requests only the fields it needs, so runs are fast: the default 50-study run takes about 3 seconds.

### Who uses it?

- **Pharma, biotech and CRO business development:** build lists of active sites, investigators and sponsors by therapeutic area and region for site selection, feasibility and partnership outreach.
- **Competitive intelligence:** track every trial of a competitor, a drug class or an indication, with phases, timelines and enrollment targets; schedule a weekly run on records updated in the last 7 days.
- **Patient recruitment and advocacy:** find recruiting trials near a city for a condition, with the published recruitment contacts.
- **Investors, analysts and researchers:** pipeline mapping, landscape reports and datasets for analysis or AI tools.

### How to use it

1. Click **Try for free** (or **Start**).
2. Enter a **condition** (for example `Melanoma`), and optionally an **intervention / drug**, a **sponsor** or **keywords**.
3. Choose **status**, **phase**, **study type** and dates, and a **site location** if you need one.
4. Pick **One row per study** or **One row per study site**, set **Maximum results**, and run.
5. Download the results as Excel, CSV or JSON, or send them to your CRM or BI tool.

### Input

| Field | What it does |
|---|---|
| `condition` | Disease or condition. Synonyms are matched by ClinicalTrials.gov. |
| `intervention` | Drug, device, biologic or procedure name. |
| `sponsor`, `leadSponsorOnly` | Sponsor or collaborator name; optionally the lead sponsor only. |
| `keywords` | Free text across the whole record. |
| `nctIds` | Specific studies by NCT number. |
| `status` | Overall status: recruiting, not yet recruiting, active, completed, terminated and so on. Empty = all. |
| `phase` | Early Phase 1, Phase 1 to 4, not applicable. |
| `studyType` | Interventional, observational, expanded access. |
| `hasResults` | Any, with results posted, or without. |
| `startDateFrom`, `startDateTo` | Study start date range (YYYY-MM-DD). |
| `updatedFrom`, `updatedTo` | Last update posted date range, for monitoring changes. |
| `country`, `state`, `city` | Keep studies with a site there (US state codes such as `CA` work). |
| `locationText` | Free-text location such as a hospital name. |
| `latitude`, `longitude`, `distanceMiles` | Studies with a site within this radius. |
| `outputMode` | `studies` (one row per study) or `sites` (one row per study site). |
| `sitesMatchFiltersOnly`, `siteStatus` | Sites mode: only sites matching your location filters, and only sites with these recruitment statuses. |
| `includeContacts` | Central and site contacts as published (default on). |
| `includeEligibilityCriteria` | Add the full inclusion/exclusion text. |
| `sortBy` | Relevance, last updated, start date, enrollment or first posted. |
| `maxResults` | Stop after this many records (0 = no limit). |

With empty input the tool runs the example search: 50 recruiting melanoma trials.

### Input example

Recruiting Phase 2 and Phase 3 breast cancer trials, one row per recruiting site in Boston, MA:

```json
{
  "condition": "Breast Cancer",
  "status": [
    "RECRUITING"
  ],
  "phase": [
    "PHASE2",
    "PHASE3"
  ],
  "studyType": [
    "INTERVENTIONAL"
  ],
  "city": "Boston",
  "state": "MA",
  "outputMode": "sites",
  "siteStatus": [
    "RECRUITING"
  ],
  "maxResults": 200
}
```

### Output example

A real record from the default run (one row per study; the list of 86 sites shortened to 2 and countries to 4):

```json
{
  "nctId": "NCT07221734",
  "briefTitle": "Study to Compare Pharmacokinetics, Efficacy, Safety, and Immunogenicity of MB11 Versus EU-/US-Opdivo® in Subjects With Previously Untreated Advanced [Unresectable or Metastatic] Melanoma",
  "officialTitle": "Randomised, Multicentre, Multinational, Double-Blind Integrated Study to Compare the Pharmacokinetics, Efficacy, Safety, and Immunogenicity of MB11 (Proposed Nivolumab Biosimilar) Versus EU-/US-Opdivo® in Subjects With Previously Untreated Advanced (Unresectable or Metastatic) Melanoma (LEON Study)",
  "acronym": null,
  "orgStudyId": "MB11-C-01-25",
  "overallStatus": "RECRUITING",
  "whyStopped": null,
  "studyType": "INTERVENTIONAL",
  "phases": [
    "PHASE3"
  ],
  "phase": "PHASE3",
  "conditions": [
    "Advanced (Unresectable or Metastatic) Melanoma"
  ],
  "keywords": [],
  "interventions": [
    {
      "type": "DRUG",
      "name": "MB11 (Proposed Nivolumab Biosimilar)",
      "otherNames": []
    },
    {
      "type": "DRUG",
      "name": "EU-Opdivo®",
      "otherNames": []
    },
    {
      "type": "DRUG",
      "name": "US- sourced Opdivo®",
      "otherNames": []
    }
  ],
  "interventionNames": "Drug: MB11 (Proposed Nivolumab Biosimilar); Drug: EU-Opdivo®; Drug: US- sourced Opdivo®",
  "leadSponsor": "mAbxience Research S.L.",
  "leadSponsorClass": "INDUSTRY",
  "collaborators": [],
  "responsibleParty": {
    "type": "SPONSOR",
    "name": null,
    "title": null,
    "affiliation": null
  },
  "startDate": "2025-12-29",
  "startDateType": "ACTUAL",
  "primaryCompletionDate": "2027-04",
  "completionDate": "2029-02",
  "completionDateType": "ESTIMATED",
  "firstPostedDate": "2025-10-28",
  "lastUpdatePostedDate": "2026-10-29",
  "enrollment": 632,
  "enrollmentType": "ESTIMATED",
  "sex": "ALL",
  "minimumAge": "18 Years",
  "maximumAge": null,
  "ageGroups": [
    "ADULT",
    "OLDER_ADULT"
  ],
  "healthyVolunteers": false,
  "hasResults": false,
  "briefSummary": "This is a randomised, multicentre, multinational, double-blind, integrated study to sompare the pharmacokinetics, efficacy, safety, and immunogenicity of MB11 versus Opdivo® in subjects with previously untreated advanced (unresectable or Metastatic) Melanoma",
  "locationCount": 86,
  "countries": [
    "Bosnia and Herzegovina",
    "Brazil",
    "Chile",
    "Georgia",
    "..."
  ],
  "url": "https://clinicaltrials.gov/study/NCT07221734",
  "centralContactName": "Susana Millán, PhD",
  "centralContactPhone": "+34917711500",
  "centralContactEmail": "Susana.Millan@mabxience.com",
  "centralContacts": [
    {
      "name": "Susana Millán, PhD",
      "role": "CONTACT",
      "phone": "+34917711500",
      "phoneExt": null,
      "email": "Susana.Millan@mabxience.com"
    },
    {
      "name": "Camino Huerga",
      "role": "CONTACT",
      "phone": "+34917711500",
      "phoneExt": null,
      "email": "Camino.Huerga@mabxience.com"
    }
  ],
  "overallOfficials": [],
  "locations": [
    {
      "facility": "Site 102002",
      "status": "RECRUITING",
      "city": "Banja Luka",
      "state": null,
      "zip": null,
      "country": "Bosnia and Herzegovina",
      "latitude": 44.77879,
      "longitude": 17.20629,
      "contacts": []
    },
    {
      "facility": "Site 102001",
      "status": "RECRUITING",
      "city": "Sarajevo",
      "state": null,
      "zip": null,
      "country": "Bosnia and Herzegovina",
      "latitude": 43.84864,
      "longitude": 18.35644,
      "contacts": []
    }
  ]
}
```

A real record in sites mode, from the input example above:

```json
{
  "siteId": "NCT05879926-507",
  "nctId": "NCT05879926",
  "briefTitle": "Evaluating the Addition of Adjuvant Chemotherapy to Ovarian Function Suppression Plus Endocrine Therapy in Premenopausal Patients With pN0-1, ER-Positive/HER2-Negative Breast Cancer and an Oncotype Recurrence Score Less Than or Equal to 25",
  "acronym": "OFSET",
  "overallStatus": "RECRUITING",
  "studyType": "INTERVENTIONAL",
  "phase": "PHASE3",
  "conditions": [
    "Breast Cancer"
  ],
  "interventionNames": "Drug: Ovarian Function Suppression + Aromatase Inhibitor; Drug: Adjuvant Chemotherapy + Ovarian Function Suppression",
  "leadSponsor": "NRG Oncology",
  "leadSponsorClass": "OTHER",
  "collaborators": [
    "National Cancer Institute (NCI)"
  ],
  "startDate": "2023-10-18",
  "primaryCompletionDate": "2032-01",
  "enrollment": 3960,
  "sex": "FEMALE",
  "minimumAge": "18 Years",
  "maximumAge": "60 Years",
  "hasResults": false,
  "lastUpdatePostedDate": "2026-09-02",
  "locationCount": 1261,
  "facility": "Tufts Medical Center",
  "siteStatus": "RECRUITING",
  "city": "Boston",
  "state": "Massachusetts",
  "zip": "02111",
  "country": "United States",
  "latitude": 42.35843,
  "longitude": -71.05977,
  "siteContactName": "Site Public Contact",
  "siteContactPhone": "617-636-5000",
  "siteContactEmail": "ContactUsCancerCenter@TuftsMedicalCenter.org",
  "siteContacts": [
    {
      "name": "Site Public Contact",
      "role": "CONTACT",
      "phone": "617-636-5000",
      "phoneExt": null,
      "email": "ContactUsCancerCenter@TuftsMedicalCenter.org"
    },
    {
      "name": "Don S. Dizon",
      "role": "PRINCIPAL_INVESTIGATOR",
      "phone": null,
      "phoneExt": null,
      "email": null
    }
  ],
  "centralContactName": "Director Regulatory Affairs",
  "centralContactPhone": "412-339-5300",
  "centralContactEmail": "langerj@nrgoncology.org",
  "url": "https://clinicaltrials.gov/study/NCT05879926"
}
```

Main fields: `nctId`, `briefTitle`, `officialTitle`, `acronym`, `overallStatus`, `studyType`, `phases`, `conditions`, `keywords`, `interventions`, `interventionNames`, `leadSponsor`, `leadSponsorClass` (INDUSTRY, NIH, OTHER...), `collaborators`, `responsibleParty`, `startDate`, `primaryCompletionDate`, `completionDate`, `firstPostedDate`, `lastUpdatePostedDate`, `enrollment`, `sex`, `minimumAge`, `maximumAge`, `ageGroups`, `healthyVolunteers`, `hasResults`, `briefSummary`, `locationCount`, `countries`, `centralContact*`, `overallOfficials`, `locations` (facility, status, city, state, ZIP, country, coordinates, contacts) and `url`.

### How much does it cost?

**$1 per 1,000 records** ($0.001 per study, or per site in sites mode), plus a $0.00005 start fee per run. You set the maximum, and the run stops when your spending limit is reached.

| You collect | You pay |
|---|---|
| 50 recruiting trials for one condition (default run) | $0.05 |
| 2,000 recruiting cancer trials worldwide | $2.00 |
| 3,000 US cancer trial sites for a site-selection list | $3.00 |
| Weekly update of 500 changed trials in your therapeutic area | about $2 a month |

**Volume discounts on higher Apify plans.** The prices above are for the Apify Free plan. On paid plans the per-record price drops automatically: about 15% lower on Bronze, 25% lower on Silver and 38% lower on Gold and above.

### Use it via API, Make, Zapier, n8n or an AI agent

**Apify API.** Start a run and get the results back in one HTTP request (replace `YOUR_API_TOKEN` with the token from Apify Console > Settings > Integrations):

```bash
curl -X POST "https://api.apify.com/v2/acts/plotpointtech~clinicaltrials-gov-scraper/run-sync-get-dataset-items?token=YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"condition": "Melanoma", "status": ["RECRUITING"], "maxResults": 50}'
```

For longer jobs, start the run asynchronously and read the dataset when it finishes. Official `apify-client` libraries exist for Python and JavaScript; the **API** tab on this page has ready-made code.

**No-code automation.** Connect the tool to **Make, Zapier, n8n, Google Sheets, Slack, Airtable** or any webhook with Apify integrations, and use **Schedules** in Apify Console to run it daily or weekly (for example with `updatedFrom` set to last week).

**AI agents (MCP).** Give Claude, ChatGPT, Cursor, VS Code or any MCP-compatible agent direct access to this tool through the hosted Apify MCP server. Add this server URL to your client:

```
https://mcp.apify.com?tools=plotpointtech/clinicaltrials-gov-scraper
```

The agent can then call the tool with the same input fields shown above and read the results.

### FAQ

**Is it legal to use ClinicalTrials.gov data?**
ClinicalTrials.gov is a public US government registry, and the National Library of Medicine offers this API so that anyone can search and download study records. The tool only reads that public API. ClinicalTrials.gov asks users to cite it as the source and to note when the data was retrieved; records are written by the sponsors and investigators, so check important details on the study page (`url`).

**What about the contact names, phones and emails?**
They are published by sponsors and sites so that patients and referring doctors can ask about enrollment. Use them for that kind of purpose: questions about a study, site feasibility or professional business contact relevant to the trial. Do not use them for unrelated mass marketing, and follow the rules that apply to you, such as GDPR for contacts in the EU and UK, CAN-SPAM for email and TCPA rules for calls and texts in the US. Turn off **Include published contacts** if you do not need them.

**Why does a study appear with only some sites in my city?**
In studies mode you get the whole study with all its sites. In sites mode you get only the sites that match your city, state, country, radius and site-status filters.

**What do the status and phase values mean?**
They are ClinicalTrials.gov's own codes, for example `RECRUITING`, `ACTIVE_NOT_RECRUITING`, `PHASE2`, `NA` (not applicable, used for device and behavioral studies). A study can have two phases, such as `PHASE1, PHASE2`.

**Does it include results data?**
It tells you whether results are posted (`hasResults`). The detailed results tables are not exported.

**How fresh is the data?**
Every run queries the live API. `lastUpdatePostedDate` shows when the record last changed.

### Related tools from Plot Point Technologies

- [NPI Registry Scraper - US Healthcare Providers, $1/1K](https://apify.com/plotpointtech/npi-registry-healthcare-providers): US doctors, clinics and pharmacies from the official NPI Registry, with specialties, licenses, addresses and phones.
- [Email & Contact Scraper - Website Emails, Phones & Socials](https://apify.com/plotpointtech/website-contact-finder): emails, phones and social links from any list of company websites.
- [News Scraper - Worldwide News Search by Keyword](https://apify.com/plotpointtech/worldwide-news-search): news articles about a drug, sponsor or indication in 65+ languages.
- [SEC Form D Scraper - New Startup Funding Leads Daily](https://apify.com/plotpointtech/sec-form-d-fundraise-feed): companies that just raised money, including biotech startups.

Plot Point Technologies is not affiliated with ClinicalTrials.gov, the US National Library of Medicine or the National Institutes of Health. Data source: ClinicalTrials.gov, retrieved through its public API at run time.

***

If this tool saved you time, we would be grateful for a short review on this page; it helps other people find it. If something did not work as expected, please open an issue on the **Issues** tab and we will look into it quickly.

# Actor input Schema

## `condition` (type: `string`):

Disease or condition, e.g. Melanoma, Type 2 Diabetes, Alzheimer Disease. ClinicalTrials.gov also matches synonyms.

## `intervention` (type: `string`):

Drug, device, biologic or procedure name, e.g. pembrolizumab, semaglutide, CAR-T.

## `sponsor` (type: `string`):

Company or institution name, e.g. Pfizer, Novartis, National Cancer Institute. Matches lead sponsors and collaborators unless 'Lead sponsor only' is on.

## `leadSponsorOnly` (type: `boolean`):

Match the sponsor name against the lead sponsor only (not collaborators).

## `keywords` (type: `string`):

Free-text search across the whole record (titles, summaries, keywords, outcomes), e.g. biosimilar, "decentralized".

## `nctIds` (type: `array`):

Look up specific studies by NCT number, e.g. NCT04280705. Combine with no other filters (or clear Status) to get exactly these studies.

## `status` (type: `array`):

Keep studies with these statuses. Leave empty for all statuses.

## `phase` (type: `array`):

Keep studies in any of these phases. Leave empty for all.

## `studyType` (type: `array`):

Interventional (clinical trials), observational studies or expanded access. Leave empty for all.

## `hasResults` (type: `string`):

Filter by whether results have been posted on ClinicalTrials.gov.

## `startDateFrom` (type: `string`):

Study start date on or after (YYYY-MM-DD).

## `startDateTo` (type: `string`):

Study start date on or before (YYYY-MM-DD).

## `updatedFrom` (type: `string`):

Record last updated (posted) on or after (YYYY-MM-DD). Useful for weekly monitoring.

## `updatedTo` (type: `string`):

Record last updated (posted) on or before (YYYY-MM-DD).

## `country` (type: `string`):

Keep studies with at least one site in this country, e.g. United States, Germany, Japan (US, USA and UK are understood).

## `state` (type: `string`):

State or region of a site, e.g. California or CA, Ontario, Bavaria.

## `city` (type: `string`):

City of a site, e.g. Boston. Combine with state or country to avoid same-named cities.

## `locationText` (type: `string`):

Free-text location search (facility, city, state, country), e.g. "Mayo Clinic" or "Houston, Texas".

## `latitude` (type: `string`):

Find studies with a site within a distance of this point, e.g. 42.3601. Requires longitude.

## `longitude` (type: `string`):

e.g. -71.0589

## `distanceMiles` (type: `integer`):

Radius around the point.

## `outputMode` (type: `string`):

'One row per study' (sites nested in a list), or 'One row per study site' for site-selection and CRO lead lists.

## `sitesMatchFiltersOnly` (type: `boolean`):

In sites mode, output only the sites that match your city/state/country/geo and site-status filters (not every site of a matching study).

## `siteStatus` (type: `array`):

In sites mode, keep only sites with these statuses, e.g. Recruiting. Leave empty for all.

## `includeContacts` (type: `boolean`):

Central and site contacts (names, phones, emails) as the sponsor published them for recruitment. See the README on appropriate use.

## `includeEligibilityCriteria` (type: `boolean`):

Add the full inclusion/exclusion criteria text (long).

## `sortBy` (type: `string`):

Order of results.

## `maxResults` (type: `integer`):

Stop after this many records (studies, or sites in sites mode). You pay per record. 0 = no limit.

## Actor input object example

```json
{
  "condition": "Melanoma",
  "leadSponsorOnly": false,
  "status": [
    "RECRUITING"
  ],
  "hasResults": "any",
  "distanceMiles": 50,
  "outputMode": "studies",
  "sitesMatchFiltersOnly": true,
  "includeContacts": true,
  "includeEligibilityCriteria": false,
  "sortBy": "relevance",
  "maxResults": 50
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "condition": "Melanoma",
    "status": [
        "RECRUITING"
    ],
    "maxResults": 50
};

// Run the Actor and wait for it to finish
const run = await client.actor("plotpointtech/clinicaltrials-gov-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "condition": "Melanoma",
    "status": ["RECRUITING"],
    "maxResults": 50,
}

# Run the Actor and wait for it to finish
run = client.actor("plotpointtech/clinicaltrials-gov-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "condition": "Melanoma",
  "status": [
    "RECRUITING"
  ],
  "maxResults": 50
}' |
apify call plotpointtech/clinicaltrials-gov-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,plotpointtech/clinicaltrials-gov-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/ShIEz3shayn3dcl1M/builds/iZKwmRUPOQPJXTq2s/openapi.json
