Developer Docs
ProcedureFinder Cost API v1
REST API for procedure cost data, metro-adjusted pricing, and provider directory. Designed for HR teams, insurance brokers, financial advisors, and fintech apps.
Quick start
# Get cost for dental implant nationally
curl -H "X-API-Key: YOUR_KEY" \
https://procedurefinder.com/api/v1/cost/single-tooth-implant
# Get cost for dental implant in Houston
curl -H "X-API-Key: YOUR_KEY" \
"https://procedurefinder.com/api/v1/cost/single-tooth-implant?metro=houston-tx"
# List all available procedures
curl -H "X-API-Key: YOUR_KEY" \
https://procedurefinder.com/api/v1/procedures
# List metros (optionally filter by state)
curl -H "X-API-Key: YOUR_KEY" \
"https://procedurefinder.com/api/v1/metros?state=TX" Authentication
All API requests require an API key. Pass via X-API-Key header (recommended) or ?api_key= query parameter.
Rate Limits
| Tier | Daily requests | Best for |
|---|---|---|
| Starter ($2,500/yr) | 1,000/day | Single-app integration, small employer |
| Pro ($8,500/yr) | 10,000/day | Insurance broker member portal, mid-size HR |
| Enterprise (custom) | Unlimited | Large insurance broker, fintech, research firm |
Endpoints
GET
/api/v1/cost/{procedure} Returns cost data for a specific procedure. Query param ?metro= adjusts pricing by metro cost index.
{
"procedure": {
"slug": "single-tooth-implant",
"name": "Single Tooth Dental Implant",
"vertical": "dental",
"cost_unit": "per implant",
"duration_days": 1,
"recovery_days": 7
},
"cost": {
"currency": "USD",
"low": 5940,
"median": 8910,
"high": 12870,
"adjustment": {
"metro": "houston-tx",
"name": "Houston",
"state": "TX",
"cost_index": 0.99
}
},
"cost_factors": [ ... ],
"international_comparison": [ ... ],
"insurance": { ... },
"meta": { "api_version": "v1", "data_updated": "2026-05-18", ... }
} GET
/api/v1/procedures Returns full procedure catalog. Filter by ?vertical=dental to scope to a category.
GET
/api/v1/metros Returns metro list with cost indices. Filter by state code ?state=TX.
Response Headers
| Header | Description |
|---|---|
X-RateLimit-Tier | Your account tier (starter, pro, enterprise) |
X-RateLimit-Limit | Your daily request limit |
X-RateLimit-Remaining | Requests remaining today |
Cache-Control | public, max-age=3600 (1 hour) for cost endpoints, 86400 (24h) for metros |
Status Codes
| Code | Meaning |
|---|---|
| 200 OK | Successful response |
| 401 Unauthorized | Missing or invalid API key |
| 404 Not Found | Procedure or metro slug not in catalog |
| 429 Too Many Requests | Daily rate limit exceeded |
| 503 Service Unavailable | Backend temporarily unavailable |
Need higher limits or custom data?
Enterprise customers get unlimited requests, custom procedure additions, white-label data, and SLA. Contact sales →