# Profile Records

Profile Records store structured profile data (PDTs) for patients. Unlike CDTs which can have multiple records, each PDT has a single record instance per patient.

**Base path:** `/{tenantName}/{instanceName}/patients/{patientId}/pdts`

***

## Endpoints

### POST Create PDT Record

**POST** `/{tenantName}/{instanceName}/patients/{patientId}/pdts/{pdtName}`

Creates or initializes a profile data record for a patient.

#### Path Parameters

| Parameter   | Type   | Required | Description                     |
| ----------- | ------ | -------- | ------------------------------- |
| `patientId` | string | Yes      | Welkin patient UUID             |
| `pdtName`   | string | Yes      | PDT name as defined in Designer |

#### Example Request

```http
POST /acme-health/live/patients/a1b2c3d4/pdts/insurance
Authorization: Bearer <token>
Content-Type: application/json

{
  "provider": "Blue Cross Blue Shield",
  "memberId": "XYZ123456",
  "groupNumber": "GRP789",
  "effectiveDate": "2026-01-01"
}
```

***

### GET Get PDT by ID

**GET** `/{tenantName}/{instanceName}/patients/{patientId}/pdts/{pdtName}/{recordId}`

Returns a specific PDT record by its UUID.

***

### GET Get All PDTs by Name

**GET** `/{tenantName}/{instanceName}/patients/{patientId}/pdts/{pdtName}`

Returns the profile data record of a given PDT type for a patient.

***

### PATCH Update PDT

**PATCH** `/{tenantName}/{instanceName}/patients/{patientId}/pdts/{pdtName}/{recordId}`

Partially updates a profile data record.

***

### DELETE Delete PDT

**DELETE** `/{tenantName}/{instanceName}/patients/{patientId}/pdts/{pdtName}/{recordId}`

Permanently deletes a profile data record.

#### Response `204 No Content`

***

### GET Get Patients List by PDT

**GET** `/{tenantName}/{instanceName}/pdts/{pdtName}/patients`

Returns a paginated list of all patients who have a record for a given PDT type.

#### Query Parameters

| Parameter | Type    | Description      |
| --------- | ------- | ---------------- |
| `page`    | integer | Page number      |
| `size`    | integer | Results per page |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.welkinhealth.com/developer-and-integration-guide/api-reference/profile-records.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
