Skip to main content
POST
/
api
/
v1
/
appointment-requests
Create a new appointment request
curl --request POST \
  --url https://{subdomain}.mindhunters.ai/api/v1/appointment-requests \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "schedule_uuid": "550e8400-e29b-41d4-a716-446655440000",
  "title": "Medical Consultation",
  "start_time": "2025-11-25 10:00:00",
  "contact_uuid": "660e8400-e29b-41d4-a716-446655440001",
  "contact_name": "John",
  "contact_surname": "Doe",
  "contact_email": "[email protected]",
  "contact_phone": "+1-555-0100",
  "description": "Annual checkup",
  "end_time": "2025-11-25 10:30:00",
  "notes": "Patient prefers morning appointments"
}
'
{
  "success": true,
  "message": "Appointment request created successfully",
  "data": {
    "id": 1,
    "uuid": "550e8400-e29b-41d4-a716-446655440000",
    "title": "Medical Consultation",
    "status": "pending",
    "start_time": "2025-11-25T10:00:00.000000Z",
    "end_time": "2025-11-25T10:30:00.000000Z"
  }
}

Authorizations

Authorization
string
header
required

Use a Bearer token to access these API endpoints. Example: "Bearer {your-token}"

Body

application/json
schedule_uuid
string<uuid>
required

UUID of the schedule

Example:

"550e8400-e29b-41d4-a716-446655440000"

title
string
required

Appointment title

Example:

"Medical Consultation"

start_time
string<date-time>
required

Start time (must be in the future)

Example:

"2025-11-25 10:00:00"

contact_uuid
string<uuid>

UUID of existing contact (optional if contact details provided)

Example:

"660e8400-e29b-41d4-a716-446655440001"

contact_name
string

Contact name (required if contact_uuid not provided)

Example:

"John"

contact_surname
string

Contact surname (optional)

Example:

"Doe"

contact_email
string<email>

Contact email (required if contact_uuid not provided)

contact_phone
string

Contact phone (optional)

Example:

"+1-555-0100"

description
string

Appointment description (optional)

Example:

"Annual checkup"

end_time
string<date-time>

End time (optional - if not provided, will use schedule's default duration from availability type)

Example:

"2025-11-25 10:30:00"

notes
string

Additional notes (optional)

Example:

"Patient prefers morning appointments"

Response

Appointment request created successfully

success
boolean
Example:

true

message
string
Example:

"Appointment request created successfully"

data
object