Developers
The policy library,as an API.
Everything in Prisym is available over REST: policies and their versions, full policy text, redline diffs, coverage by plan, hybrid search, and a change feed since any timestamp. Authenticate with a bearer token and build.
curl https://api.policy9.com/v1/policies \
-H "Authorization: Bearer $PRISYM_TOKEN" \
-G --data-urlencode "payer=anthem" \
--data-urlencode "code=78815" \
--data-urlencode "as_of=2026-03-14"{
"data": [
{
"policy_id": "anthem-rad-00072",
"payer": "Anthem BCBS",
"policy_number": "RAD.00072",
"title": "PSMA PET Imaging",
"category": "medical",
"status": "active",
"version": {
"version_id": "v7",
"effective_date": "2026-02-01",
"revised_date": "2026-01-18",
"superseded_at": null,
"sha256": "9f2c…e41a",
"extraction": {
"confidence": 0.94,
"codes": ["78815", "A9595"]
}
},
"coverage": "covered_with_criteria"
}
],
"as_of": "2026-03-14",
"next_cursor": null
}Endpoints
A small surface that covers the whole product.
Base URL https://api.policy9.com. All responses are JSON, and every version is addressable by a stable identifier.
Policies and versions
- GET
/v1/policies?payer=&state=&lob=&category=&code=&as_of=Filtered catalog. as_of returns the version in effect on that date.
- GET
/v1/policies/{id}Metadata, extracted criteria and codes, and the full version history.
- GET
/v1/policies/{id}/versions/{vid}A single version: full policy text, extracted criteria, and its effective, revised, and superseded dates.
- GET
/v1/policies/{id}/diff?from={vid}&to={vid}Text and code diff between any two versions.
Search and coverage
- GET
/v1/search?q=&filters=&mode=keyword|semantic|hybridFaceted search over the library; hybrid mode combines keyword and vector ranking.
- GET
/v1/plansPlans, lines of business, states, and the policy categories each one carries.
- GET
/v1/plans/{id}/coveragePer-plan coverage status by policy category, including known gaps.
- POST
/v1/askQuestion answering over the library, with the policy passages each answer rests on.
Changes
- GET
/v1/changes?since=Feed of new and revised policies with summaries, materiality scores, and evidence.
- GET
/v1/changes/{id}One change event in full: version ids, structured summary, and the exact old and new text.
Good to know
The details that save a support ticket.
Authentication
Requests carry a bearer token issued per organization. Tokens are scoped to the payers and policy categories in your plan and can be rotated from the app.
Point-in-time by default
Any catalog query accepts as_of. The response is the version whose effective date is on or before that date and that had not yet been superseded.
Versions are immutable
A version id always returns the same policy text and the same checksum. Store policy and version identifiers on your side and you can reproduce any answer later.
Change feed is idempotent
Poll /v1/changes?since= with your last cursor. Each change event carries the version ids, the summary, the score, and the exact old and new text.
Ready to build on the policy library?
Tell us what you are building. We will set up a token and a sandbox scoped to the payers you care about.