---
title: "Create a Record"
method: POST
path: "/api/v1/records"
tags: ["Records"]
---

# Create a Record

`POST /api/v1/records`

Permissions needed: CREATE_CHECKUPS
Create a new Record.

## Request body

- object
  - `clinic_id` integer — Clinic Id.
  - `vet_id` integer — Clinic Id.
  - `pet_id` integer — Pet Id.
  - `appointment_id` integer, nullable — Appointment Id.
  - `template_id` integer, nullable — Template Id.
  - `internal_notes` string, nullable — Internal notes visible only to clinic staff members.
  - `diagnosis` string, nullable — Diagnosis.
  - `presumptive_diagnosis` string, nullable — Presumptive Diagnosis.
  - `treatment` string, nullable — Treatment.
  - `recommendations` string, nullable — Recommendations.
  - `template_default` 'general' | 'refill', nullable — Optional category of default record template to apply when `template_id` is not provided. When omitted, the `general` default template (if any) is applied. Pass `null` to skip default-template lookup entirely.

## Response `201`

successful operation

- object
  - `data` object — Record = NewFileCase = Consultation = Soap. Record is the preferred naming.
    - `id` integer
    - `number` string
    - `status` 0 | 1 | 2 | 3 — `0` - Draft `1` - Saved `2` - Closed `3` - Hospitalized
    - `vet_id` integer
    - `responsible_id` integer, nullable
    - `responsible` Items — unresolved $ref
    - `clinic_id` integer
    - `pet_id` integer
    - `sale_id` integer
    - `date` string
    - `reason` string
    - `template_id` integer
    - `comments` string
    - `recommendations` string
    - `rabic_tag_number` string
    - `presumptive_diagnosis` string
    - `diagnosis` string
    - `treatment` string
    - `visit_types` object[], nullable
      - `id` integer
      - `clinic_id` integer
      - `name` string
      - `description` string
      - `category` 'euthanasia' | 'spay_neuter' | 'microchipping' | 'consultation_exams' | 'surgery' | 'vaccines' | 'medical_procedures' | 'imagining_diagnostics' | 'boarding' | 'grooming' | 'admin' | 'other'
      - `category_label` string
      - `duration` integer
      - `is_visible` boolean
      - `color` string
      - `order` integer, nullable
      - `deposit_for_online_booking` number, float
      - `has_intake_enabled` boolean, nullable — only valid for clinics with Tails integration in the Pet Parent App
      - `printable_files` object[], nullable
        - `id` integer
        - `title` string
      - `service_packages` object[], nullable
        - `id` integer
        - `name` string
        - `client_name` string, nullable
        - `description` string
        - `unit_price` string, nullable
        - `price` string, nullable
        - `price_includes_tax` boolean, nullable
        - `tax` unknown
    - `reason_visit_type` Items — unresolved $ref
    - `structure` union
      - object[]
      - object
    - `selectedDiagnoses` object[] — Only present when `selectedDiagnoses` is requested via the `include` query parameter.
      - `id` integer
      - `name` string
      - `description` string, nullable
      - `recommendation` string, nullable
      - `clinic_id` integer
    - `clinical_examination_notes` string, nullable — Only present when `clinical_examination_notes` is requested via the `append` query parameter.

## Other responses

- `400` — unresolved $ref
- `401` — unresolved $ref
- `403` — unresolved $ref
- `429` — unresolved $ref

---

[API](https://skmtc.net/digitail/apis/digitail-api.md) · [All operations](https://skmtc.net/digitail/apis/digitail-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/digitail/digitail-api/revisions/bd9694db5fce/schema)
