# Create Practitioner Creates a new practitioner (doctor or veterinarian) in the system. This endpoint is used to onboard practitioners by collecting their personal, professional, and contact information. Notes: - All required fields must be provided and valid - assigned_clinic must reference an existing clinic UUID - Validation errors will return descriptive messages for each field Endpoint: POST /api/external/practitioner Version: 1.0.0 Security: ApiKeyAuth ## Request fields (application/json): - `first_name` (string, required) Practitioner's first name (minimum 2 characters) Example: "John" - `last_name` (string, required) Practitioner's last name (minimum 2 characters) Example: "Doe" - `email` (string, required) Practitioner's email Example: "john.doe@example.com" - `npi` (string, required) Practitioner's NPI number Example: "1234567890" - `is_veterinarian` (boolean, required) Whether the practitioner is a veterinarian Example: true - `assigned_clinic` (string, required) ID of the assigned clinic Example: "550e8400-e29b-41d4-a716-446655440001" - `phone` (string) Practitioner's phone number Example: "1234567890" - `address_line_1` (string, required) Practitioner's address line 1 Example: "123 Main St" - `address_line_2` (string) Practitioner's address line 2 Example: "Apt 1" - `city` (string, required) Practitioner's city Example: "San Antonio" - `state_code` (string, required) Practitioner's state code Example: "TX" - `zip_code` (string, required) Practitioner's zip code Example: "78201" ## Response 200 fields (application/json): - `success` (boolean) Example: true - `data` (object) - `data.practitioner_id` (string) Unique identifier for the created practitioner Example: "660e8400-e29b-41d4-a716-446655440001" - `message` (string) Example: "Practitioner 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: {}