# Create Patient Register a new patient in NovaMed under your partner account. Notes: - All required fields must be provided - clinic_id must reference an existing clinic UUID - Address information is required for shipping Endpoint: POST /api/external/patient Version: 1.0.0 Security: ApiKeyAuth ## Request fields (application/json): - `first_name` (string, required) Patient's first name (minimum 2 characters) Example: "John" - `middle_name` (string,null) Patient's middle name (optional) Example: "Michael" - `last_name` (string, required) Patient's last name Example: "Doe" - `gender` (string,null, required) Patient's gender Enum: "male", "female", "other", "unknown" - `dob` (string, required) Patient's date of birth Example: "2025-07-13T18:30:00.000Z" - `species` (string,null) Patient's species (for veterinary use) Enum: "human", "canine", "feline", "equine", "avian", "mammal - other", "reptilian", "swine" - `animal_owner_name` (string,null) Animal owner's name (for veterinary use) Example: "Jane Smith" - `weight` (string,null) Patient's weight Example: "70.5" - `weight_recorded_date` (string,null) Date when weight was recorded Example: "2024-01-15" - `status` (string,null) Patient's status Enum: "active", "inactive" - `practitioner_id` (string, required) ID of the assigned practitioner Example: "550e8400-e29b-41d4-a716-446655440001" - `assigned_clinic` (string, required) ID of the assigned clinic Example: "550e8400-e29b-41d4-a716-446655440002" - `contacts` (array) Array of contact information Example: [{"key":"email","value":"john.doe@example.com"},{"key":"phone","value":"5551234567"}] - `contacts.key` (string) Contact type (email, phone, url, etc.) Enum: "email", "phone", "url", "sms", "fax" - `contacts.value` (string) Contact value (validated based on key type) Example: "john.doe@example.com" - `addresses` (array, required) Array of patient addresses (currently only supports single address) Example: [{"addressLine1":"123 Main Street","addressLine2":"Apt 4B","city":"New York","state":"NY","postalCode":"10001"}] - `addresses.addressLine1` (string,null, required) First line of address Example: "123 Main Street" - `addresses.addressLine2` (string,null) Second line of address Example: "Apt 4B" - `addresses.addressLine3` (string,null) Third line of address Example: "Building C" - `addresses.city` (string,null, required) City name Example: "New York" - `addresses.state` (string,null, required) State or province Example: "NY" - `addresses.postalCode` (string,null, required) Postal/ZIP code Example: "10001" ## Response 200 fields (application/json): - `success` (boolean) Example: true - `data` (object) - `data.patient_id` (string) Unique identifier for the created patient Example: "770e8400-e29b-41d4-a716-446655440002" - `message` (string) Example: "Patient created successfully" ## Response 400 fields (application/json): - `success` (boolean) - `error` (object) - `error.message` (string) Human-readable error message Example: "Validation error" - `error.details` (object) Additional error details Example: {} ## Response 401 fields (application/json): - `success` (boolean) - `error` (object) - `error.message` (string) Human-readable error message Example: "Validation error" - `error.details` (object) Additional error details Example: {}