# ParcelAPI > Pay-per-record HTTP API for public US property parcel records and building permit records, built for AI agents and developers. 1 credit = 1 record returned. Prepaid credit packs or monthly plans, no accounts. Free trial: 1,000 credits (one per IP per 30 days). Privacy-first: ParcelAPI returns property and permit facts only. No owner names, mailing addresses or personal contact data, so there's less personal data for your app to store, secure or answer for. API base: https://api.parcelapi.net Auth (REST): header `X-API-Key: ` MCP: https://api.parcelapi.net/mcp (Streamable HTTP, header `Authorization: Bearer `) MCP server card: https://api.parcelapi.net/.well-known/mcp.json OpenAPI spec: https://api.parcelapi.net/openapi.json Interactive docs: https://api.parcelapi.net/docs Contact: support@parcelapi.net ## Get started - Free trial key (1,000 credits, shown once): `POST /v1/keys/trial` - Query parcels: `POST /v1/parcels/query` {state (required), county, city, address (prefix), limit 1-1000, offset 0-10000} - Query permits: `POST /v1/permits/query` {state (required), city, county, address, permit_type, issued_after, issued_before (YYYY-MM-DD), limit, offset} - Balance: `GET /v1/credits` - Packs: `GET /v1/credits/packs` - Top up: `POST /v1/credits/topup` {pack} -> checkout_url - New key purchase: `POST /v1/credits/purchase` {pack} -> checkout_url; then `POST /v1/keys/claim?session_id=cs_...` - Monthly plans: `GET /v1/subscriptions/plans`; subscribe `POST /v1/subscriptions/subscribe` {plan} -> checkout_url (without a key, then `POST /v1/keys/claim?session_id=cs_...`); `GET /v1/subscriptions/status`; cancel `POST /v1/subscriptions/cancel` (at period end) - Area not loaded: 202 fetch_queued (free); poll `GET /v1/fetch/{job_id}` ## MCP tools query_parcels, query_permits, get_credit_balance, list_credit_packs, buy_credits, claim_api_key, get_fetch_job, list_subscription_plans, subscribe, get_subscription_status, cancel_subscription. Same billing and limits as REST. Setup: https://parcelapi.net/mcp ## Pricing (USD via Stripe) Credit packs (one-time; pack credits never expire): - starter: 10,000 credits, $5 - growth: 100,000 credits, $40 - scale: 1,000,000 credits, $300 - enterprise: 10,000,000 credits, $2,000 Monthly plans (billed monthly; credits reset each renewal, no rollover; cancel anytime, effective at period end): - starter: 60,000 credits/month, $19/mo - pro: 175,000 credits/month, $49/mo - business: 600,000 credits/month, $149/mo Searches spend monthly credits first, then pack credits. An empty search costs 1 credit; a timed-out search costs 0. ## Coverage Over 100 million parcel records. Parcel data for parts or all of 29 states: AL, AR, CA, CT, FL, IL, IN, MA, MD, ME, MI, MN, MO, MS, MT, NC, ND, NJ, NV, NY, OH, OR, PA, SC, TX, UT, WA, WI, WV. Coverage varies by county. No owner names or personal contact data. Some areas are restricted (403). - Permits: 26 cleared open-data feeds, loaded on demand (first query for an area returns 202 fetch_queued): Arlington TX, Austin TX, Baton Rouge (East Baton Rouge Parish) LA, Birmingham AL, Boston MA, Buffalo NY, Cincinnati OH, Columbus OH, Hartford CT, Jersey City NJ, Miami FL, Milwaukee WI, Minneapolis MN, New Orleans LA, New York City NY, Newark NJ, Pittsburgh PA, Providence RI, San Antonio TX, Seattle WA, Spokane County WA, St. Paul MN, Tacoma WA, Wake County NC, Washington DC, Worcester MA. Applicant/contractor personal data is stripped; attribution is returned per source. - Rate limits: 120 requests/min per IP; per key 120/min (paid keys) or 60/min (trial keys); trial key requests 3/hour per IP. Over the limit: 429. ## Errors 401 invalid key, 402 insufficient_credits, 403 restricted/disabled, 422 bad input, 429 rate limit, 503 query_timeout (not charged). ## Policies - Terms: https://parcelapi.net/terms - Privacy: https://parcelapi.net/privacy - Refunds (14 days): https://parcelapi.net/refund