# Get a policy document

Operation ID: `graph.getPolicyDocument`

Get one policy document by id, including its full extracted content. Authoritative from Neo4j — id doubles as the Algolia objectID, so a search hit's id maps directly to this lookup.

## Public method

`getPolicyDocument`

Signature: `graph.getPolicyDocument(docId)`

Return type: `Promise<PolicyDocument>`

## Authentication

Classification: **AUTHENTICATED**

Schemes: `bearerAuth`

## Prerequisites

None documented.

## HTTP

`GET /documents/{doc_id}`

## Path parameters

| Name | Type | Required | Format | Allowed values | Default | Nullable | Description |
|---|---|---:|---|---|---|---:|---|
| `doc_id` | `string` | Yes |  |  |  | No |  |

## Query parameters

None.

## Body parameters

None.

Request model: None.

## Request example

None declared in canonical OpenAPI.

## Success responses

| Status | Shape | Content type | Description |
|---|---|---|---|
| `200` | [`GetPolicyDocumentResponse`](../models/GetPolicyDocumentResponse.md) | application/json | Successful Response |

## Success response examples

### 200

```json
{
  "bytes": 37881,
  "char_count": 4068,
  "content": "Changes to your health plan\nEffective Ja...<truncated 4068 chars>",
  "content_excerpt": "Synthetic policy excerpt",
  "content_type": "application/pdf",
  "extract_error": null,
  "extracted_at": "2026-07-20T20:04:39+00:00",
  "filename": "a5cff76f-0-Cost-Share-AI-AN-PPO.pdf",
  "id": "648678760beaeaf7f5782a1985103ab1d90ace4f",
  "network_id": "100935",
  "page_count": 2,
  "parent": "Blue Shield of California",
  "payer": "Blue Shield of California",
  "payer_key": "blueshieldca",
  "policy_number": "POLICY-EXAMPLE-001",
  "policy_type": "Medical Policies, Pharmacy Policies",
  "score": 1,
  "sha256": "ea29f2496db1bf3b0b3d39841e970d1045e5b8ba18b28b9371f9c45837315904",
  "source_page": "https://www.blueshieldca.com/en/broker/ifp/member-notifications",
  "source_url": "https://www.blueshieldca.com/content/dam/bsca/en/broker/docs/2026/ifp/$0-Cost-Share-AI-AN-PPO.pdf",
  "title": "$0 Cost Share AI AN PPO",
  "truncated": false,
  "type": "medical policy",
  "wasabi_key": "medpolicy/100935/blueshieldca/a5cff76f-0-Cost-Share-AI-AN-PPO.pdf"
}
```

## Common errors

| Status | Shape | Content type | Description |
|---|---|---|---|
| `401` | [`graph.ErrorResponse`](../models/graph.ErrorResponse.md) | application/json | Authorization required — missing or invalid Bearer JWT |
| `404` | [`graph.ErrorResponse`](../models/graph.ErrorResponse.md) | application/json | No record exists for the supplied id |
| `500` | [`graph.ErrorResponse`](../models/graph.ErrorResponse.md) | application/json | Internal server error |

## Error examples

### 401 — Missing or invalid access token

```json
{
  "error": "Authorization required"
}
```

### 404 — No record matches the supplied id

```json
{
  "error": "Not found"
}
```

### 500 — Unexpected service failure (sanitized example)

```json
{
  "error": "Internal server error"
}
```

## NodeJS / TypeScript implementation

```ts
import { HCSDK } from "@healthcloudai/hc-sdk";
```

```ts
const docId = "<DOC_ID>";

const result = await graph.getPolicyDocument(docId);
```

## cURL

```bash
curl -X GET \
  -H 'Authorization: Bearer <ACCESS_TOKEN>' \
  'https://dev-api-graph.health.cloud/documents/%3CDOC_ID%3E'
```

## Notes

None.

## Prepared Test Console scenario

No canonical scenario is currently associated.

## Real response

No approved real integration response is currently published. Unapproved candidates are never rendered as examples.
