{
  "openapi": "3.0.1",
  "info": {
    "title": "Healthgrades Scraper - Doctors, Ratings & Reviews",
    "description": "Healthgrades scraper & API: find US doctors by specialty & location and export name, NPI, specialty, patient rating & review count, phone, practice address, hospital affiliations and accepting-new-patients. Healthcare provider data and medical lead generation — fast, no login.",
    "version": "0.1",
    "x-build-id": "k5gCdIxQdtuONtUfE"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/haketa~healthgrades-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-haketa-healthgrades-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/haketa~healthgrades-scraper/runs": {
      "post": {
        "operationId": "runs-sync-haketa-healthgrades-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/haketa~healthgrades-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-haketa-healthgrades-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "specialty": {
            "title": "Specialty",
            "enum": [
              "Cardiology",
              "Dermatology",
              "Family Medicine",
              "Internal Medicine",
              "Pediatrics",
              "OB-GYN",
              "Orthopedic Surgery",
              "Neurology",
              "Psychiatry",
              "Dentistry",
              "Ophthalmology",
              "Gastroenterology",
              "Urology",
              "Endocrinology",
              "Oncology",
              "Rheumatology",
              "Pulmonology",
              "Nephrology",
              "Allergy & Immunology",
              "Physical Therapy",
              "Chiropractic",
              "Podiatry",
              "Plastic Surgery",
              "General Surgery"
            ],
            "type": "string",
            "description": "Pick the medical specialty to search for. This is combined with the Locations you choose below. Need something not in the list? Use the 'Custom specialty or condition' box."
          },
          "specialtyCustom": {
            "title": "Custom specialty or condition (optional)",
            "type": "string",
            "description": "Optional. Type any specialty, condition or doctor name (e.g. 'Sports Medicine', 'Diabetes', 'Sleep Medicine'). When filled, this overrides the Specialty dropdown above."
          },
          "locations": {
            "title": "Locations",
            "type": "array",
            "description": "Choose one or more US cities to search in. The selected specialty is searched in each location. Add more places with the 'Custom locations' box below.",
            "items": {
              "type": "string",
              "enum": [
                "New York, NY",
                "Los Angeles, CA",
                "Chicago, IL",
                "Houston, TX",
                "Phoenix, AZ",
                "Philadelphia, PA",
                "San Antonio, TX",
                "San Diego, CA",
                "Dallas, TX",
                "Austin, TX",
                "San Jose, CA",
                "Miami, FL",
                "Jacksonville, FL",
                "Fort Worth, TX",
                "Columbus, OH",
                "Charlotte, NC",
                "San Francisco, CA",
                "Indianapolis, IN",
                "Seattle, WA",
                "Denver, CO",
                "Boston, MA",
                "Nashville, TN",
                "Atlanta, GA",
                "Las Vegas, NV",
                "Portland, OR",
                "Detroit, MI",
                "Minneapolis, MN",
                "Tampa, FL",
                "Orlando, FL",
                "Washington, DC"
              ],
              "enumTitles": [
                "New York, NY",
                "Los Angeles, CA",
                "Chicago, IL",
                "Houston, TX",
                "Phoenix, AZ",
                "Philadelphia, PA",
                "San Antonio, TX",
                "San Diego, CA",
                "Dallas, TX",
                "Austin, TX",
                "San Jose, CA",
                "Miami, FL",
                "Jacksonville, FL",
                "Fort Worth, TX",
                "Columbus, OH",
                "Charlotte, NC",
                "San Francisco, CA",
                "Indianapolis, IN",
                "Seattle, WA",
                "Denver, CO",
                "Boston, MA",
                "Nashville, TN",
                "Atlanta, GA",
                "Las Vegas, NV",
                "Portland, OR",
                "Detroit, MI",
                "Minneapolis, MN",
                "Tampa, FL",
                "Orlando, FL",
                "Washington, DC"
              ]
            }
          },
          "locationsCustom": {
            "title": "Custom locations (optional)",
            "type": "array",
            "description": "Optional. Add any other US locations as 'City, ST' (e.g. 'Boise, ID', 'Buffalo, NY'). These are searched in addition to the Locations selected above.",
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "Search URLs (advanced)",
            "type": "array",
            "description": "Advanced & optional. Paste Healthgrades search page links directly. When provided, the Specialty and Locations fields above are ignored.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "maxItems": {
            "title": "Max providers",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum number of providers to collect across all searches. Use 0 for no limit.",
            "default": 0
          },
          "maxPagesPerSearch": {
            "title": "Max pages per search",
            "minimum": 1,
            "type": "integer",
            "description": "How many result pages to fetch per specialty + location (about 20 providers per page).",
            "default": 20
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Healthgrades serves US visitors only. US residential proxies are required for reliable results — please keep this default.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ],
              "apifyProxyCountry": "US"
            }
          },
          "maxConcurrency": {
            "title": "Max concurrency",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "Maximum parallel requests.",
            "default": 3
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}