InPlan docs
InPlan answers one question for your product: does this plan's network directory list this provider? These pages show how to ask it and how to read the answer.
Start here
The basics
Every request goes to https://api.inplan.io over HTTPS, with your key in the Authorization header. Every response is JSON with the same envelope: request_id, data_as_of, data, sources and, on most endpoints, notes.
curl https://api.inplan.io/v1/check \ -H "Authorization: Bearer $INPLAN_KEY" \ -G -d npi=1184617268 -d plan_id=29276OH0970001
The answer is listed when the plan's network directory lists the provider, with evidence that names the plan year, the source type and the date we read it. It is not_found when we find no listing. That is never a statement that the provider is out of network. Read Answers and evidence before you show answers to users.
Endpoints
| ENDPOINT | WHAT IT ANSWERS |
|---|---|
GET /v1/providers/{npi} | Who the provider is, and how many plans list them. |
GET /v1/providers/{npi}/plans | Every plan that lists the provider. |
GET /v1/check | Does this plan list this provider? |
POST /v1/check/batch | The same question for up to 100 pairs in one call. |
GET /v1/plans/{plan_id} | Plan details and plan years. |
GET /v1/plans/{plan_id}/providers | Providers a marketplace plan lists, with filters. |
GET /v1/coverage | Markets, states, insurers and plans with listings. |
GET /v1/status | Health and data dates. No key needed. |
Concepts and guides
For tools and agents
Every docs page is also plain Markdown: add .md to its address, or use Copy page. These files describe the whole API:
/openapi.json: the OpenAPI 3.1 description, with real response examples.- Postman collection: every endpoint with sample values. Set
INPLAN_KEYin the collection variables. /llms.txt: an index of these docs for language models./llms-full.txtholds every page in one file./pricing.md: plans, limits and prices as Markdown.- The changelog lists every change to the API.