---
title: "POST /api/patient_vaccine_records"
method: POST
path: "/api/patient_vaccine_records"
tags: ["Clinical"]
---

# POST /api/patient_vaccine_records

`POST /api/patient_vaccine_records`

## Request

- Base URL: `https://app.drchrono.com`
- URL: `https://app.drchrono.com/api/patient_vaccine_records`
- Auth: OAuth 2
  - Authorization code: `https://app.drchrono.com/o/authorize/`
  - Token URL: `https://app.drchrono.com/o/token/` scopes: `clinical:read`, `clinical:write`

Create patient vaccine records

## Query parameters

- `cvx_code` string
- `patient` integer
- `since` string
- `doctor` integer

## Response `201`

Created

- PatientVaccineRecord
  - `lot_number` string: Lot/batch number of the vaccine dose
  - `site` string
  - `ordering_doctor` integer
  - `doses` object[]: Vaccine dose IDs received in consent form signed hook
    - `min_age_months` integer
    - `id` integer
    - `max_age_months` integer
    - `title` string
  - `id` integer
  - `next_dose_date` string: Date for next dose of vaccine
  - `cpt_code` string: Vaccine cpt code
  - `completion_status` 'CP' | 'RE' | 'NA' | 'PA': Vaccination status, can be `CP`(Complete), `RE`(Refused), `NA`(Not administered), `PA`(Partially administered)
  - `administered_at` integer: ID of `/api/offices` where the administration happened
  - `comments` string
  - `funding_eligibility` 'V01' | 'V02' | 'V03' | 'V04' | 'V05' | 'V07': The funding program that should pay for a given immunization
  - `units` string
  - `entered_by` string: ID of user who created the record
  - `patient` integer, required
  - `administration_start` string: Datetime when the administration starts
  - `record_source` '00' | '01' | '02' | '03' | '04' | '05' | '06' | '07' | '08'
  - `updated_at` string
  - `consent_form` integer: Consent form related with vaccine record
  - `manufacturer` string: Manufacturer of the vaccine
  - `administered_by` string: ID of `/api/users` who performs the administration
  - `name` string, required
  - `vis` string: Related vaccine information statement
  - `created_at` string
  - `observed_immunity` '398102009' | '409498004' | '397428000' | '18624000' | '91428005' | '271511000' | '240532009' | '6142004' | '52947006' | '14189004' | '23511006' | '36989005' | '27836007' | '16814004' | '14168008' | '36653000' | '76902006' | '66071002' | '4834000' | '111852003' | '38907003' | '40468003' | '16541001'
  - `amount` number: Amount of vaccine administered
  - `vaccine_inventory` integer: ID of `/api/vaccine_inventories` the vaccine is from
  - `route` string
  - `cvx_code` string, required: Vaccine cvx code

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Permission Denied
- `404`: Not Found
- `405`: Method Not Allowed
- `500`: Internal Server Error

## Changes

- **2026-07-13** `1f92de898aec`: 2 info
  - added the optional property `lot_number` to the response with the `201` status
  - added the optional property `manufacturer` to the response with the `201` status

[Operation history](https://skmtc.dev/drchrono/apis/drchrono-api/changes/api/patient_vaccine_records/post.md)

---

[API](https://skmtc.dev/drchrono/apis/drchrono-api.md) - [All operations](https://skmtc.dev/drchrono/apis/drchrono-api/llms.txt) - [OpenAPI document](https://skmtc.dev/drchrono/apis/drchrono-api/revisions/98cabe79d150?raw)
