Healthgrades API endpoint
Returns one page of Healthgrades facility search results near a location for one facility type (hospital, pharmacy, group practice, or urgent care), with name, address, phone, distance, profile URL, affiliated provider and rating counts, hospital awards, and the filters available for the search. Requests use US egress because Healthgrades restricts content by region.
/healthgrades/facilities/searchQuery parameters:
type (required): hospital, pharmacy, group_practice, or urgent_care.query (optional): facility name or keyword; maximum 120 characters.where (required): city and state (for example Boston, MA) or ZIP code.page (optional): 1-500; 20 results per page.sort (optional): bestmatch, distance, or patientsatisfaction. patientsatisfaction is hospital-only; group_practice supports only distance; other combinations return 400.distance (optional): 0.5, 1, 5, 10, 25, 50, 100, or national. Healthgrades widens the radius when a search would be empty.rating (optional, type=hospital only): a hospital specialty-rating value from the rating filter of /api/v1/healthgrades/facilities/filters (for example Bowel Obstruction|BLO).award (optional, type=hospital only): a hospital award value from the award filter of /api/v1/healthgrades/facilities/filters (for example Critical Care Excellence Award|CCU).Each facility has its ID, name, type, type code, profile URL, phone, address and coordinates, distance, description, affiliated-provider count, rating counts, and award names (hospitals). filters lists the distance filter and, for hospitals, the specialty rating and award filters. Requests use US egress because Healthgrades restricts content by region.
| Field | Filled in, of 20 checked | Values in the sample |
|---|---|---|
| id | 20 | |
| name | 20 | |
| type | 20 | |
| type_code | 20 | |
| url | 20 | healthgrades.com |
| phone | 20 | |
| street | 20 | |
| city | 20 | |
| state | 20 | |
| postal_code | 20 | |
| latitude | 20 | |
| longitude | 20 | |
| distance_miles | 20 | 0.4 to 5.33, median 2.82 |
| about | 20 | median 202 characters |
| affiliated_provider_count | 16 | 1 to 5,342, median 821 |
| five_star_ratings_count | 10 | 2 to 26, median 4 |
| awards | 9 | median 5 entries |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| type | string | Yes | Facility type Allowed values: hospital, pharmacy, group_practice, urgent_care. | hospital | |
| query | string | No | Optional facility name or keyword | Mass General | |
| where | string | Yes | City and state, or ZIP code | Boston, MA | |
| page | integer | No | Result page (1-500, 20 results per page) | ||
| sort | string | No | Result order; patientsatisfaction is hospital-only and group_practice supports only distance Allowed values: bestmatch, distance, patientsatisfaction. | ||
| distance | string | No | Search radius in miles Allowed values: 0.5, 1, 5, 10, 25, 50, 100, national. | ||
| rating | string | No | Hospital specialty-rating value from /healthgrades/facilities/filters (type=hospital only) | Bowel Obstruction|BLO | |
| award | string | No | Hospital award value from /healthgrades/facilities/filters (type=hospital only) | Critical Care Excellence Award|CCU | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/healthgrades/facilities/search?type=hospital&query=coffee&where=Boston%2C+MA&page=1&sort=bestmatch&distance=0.5" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 0,
"message": "success",
"data": {
"type": "hospital",
"query": "Mass General",
"where": "Boston, MA",
"page": 1,
"page_size": 20,
"total_results": 7,
"total_pages": 1,
"sort": "bestmatch",
"facilities": [
{
"id": "60C282",
"name": "Massachusetts General Hospital",
"type": "hospital",
"type_code": "STAC",
"url": "https://www.healthgrades.com/hospital/massachusetts-general-hospital-60c282",
"city": "Boston",
"state": "MA",
"awards": [
"America's 250 Best Hospitals Award"
]
}
],
"filters": [
{
"param": "distance",
"label": "Distance",
"values": [
{
"value": "0.5",
"label": "0.5 miles"
}
]
}
]
}
}Request schema
No body schema
Response schema
#/definitions/healthgrades.facilitySearchResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| data | healthgrades.FacilitySearchResponse | No | ||||
| data.facilities | array | No | ||||
| data.facilities[].about | string | No | ||||
| data.facilities[].affiliated_provider_count | integer | No | ||||
| data.facilities[].awards | array | No | ||||
| data.facilities[].city | string | No | ||||
| data.facilities[].distance_miles | number | No | ||||
| data.facilities[].five_star_ratings_count | integer | No | ||||
| data.facilities[].id | string | No | ||||
| data.facilities[].latitude | number | No | ||||
| data.facilities[].longitude | number | No | ||||
| data.facilities[].name | string | No | ||||
| data.facilities[].phone | string | No | ||||
| data.facilities[].postal_code | string | No | ||||
| data.facilities[].ratings_count | integer | No | ||||
| data.facilities[].state | string | No | ||||
| data.facilities[].street | string | No | ||||
| data.facilities[].type | string | No | ||||
| data.facilities[].type_code | string | No | ||||
| data.facilities[].url | string | No | ||||
| data.filters | array | No | ||||
| data.filters[].label | string | No | ||||
| data.filters[].param | string | No | ||||
| data.filters[].values | array | No | ||||
| data.filters[].values[].count | integer | No | ||||
| data.filters[].values[].label | string | No | ||||
| data.filters[].values[].plans | array | No | ||||
| data.filters[].values[].plans[].id | string | No | ||||
| data.filters[].values[].plans[].name | string | No | ||||
| data.filters[].values[].selected | boolean | No | ||||
| data.filters[].values[].value | string | No | ||||
| data.page | integer | No | ||||
| data.page_size | integer | No | ||||
| data.query | string | No | ||||
| data.sort | string | No | ||||
| data.sorts | array | No | ||||
| data.sorts[].key | string | No | ||||
| data.sorts[].label | string | No | ||||
| data.total_pages | integer | No | ||||
| data.total_results | integer | No | ||||
| data.type | string | No | ||||
| data.where | string | No |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 429 | Too Many Requests | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/healthgrades/facilities/search?type=hospital&query=coffee&where=Boston%2C+MA&page=1&sort=bestmatch&distance=0.5" \
-H "x-api-key: $CRAWLORA_API_KEY"