Skip to main content

Edit appointment

Update fields on an existing appointment — status, notes, the assigned employee, and/or the units associated with it. Appointments in a terminal status (cancelled, completed, or no-show) reject most edits with a 400, except a request that reassigns only the employee, which is always allowed.

PUT
/api/partners/v1/community/:community_id/appointments/:appointment_id/

Request

Example requestPUTapplication/json
curl -X PUT \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -d '{
      "status": "string",
      "notes": "string",
      "message": "Looking forward to my appointment",
      "employee": 123,
      "pms_units": [
        {
          "pms_property_id": "string",
          "pms_unit_id": "string"
        }
      ]
    }' \
    "https://api.funnelleasing.com/api/partners/v1/community/1234/appointments/952/"

Response

Example responseJSON200 · application/json
{
  "success": true
}

Errors

Errors specific to this endpoint

Malformed Request Body (400)

Returned when the request body isn't valid JSON.

Error responseJSON400 · application/json
{
"error_type": "ValidationError",
"message": "Error decoding JSON in request body."
}

Appointment Not Found (404)

Returned when appointment_id doesn't match an appointment belonging to this community's employee group.

Error responseJSON404 · application/json
{
"error_type": "AppointmentNotFound",
"message": "Could not find appointment with corresponding ID."
}

Terminal Status (400)

Returned when the appointment is cancelled, completed, or a no-show, and the request contains more than just employee. The status name shown is the human-readable display value (for example, Cancelled).

Error responseJSON400 · application/json
{
"error_type": "ValidationError",
"message": "Can't edit appointments in status 'Cancelled'"
}

Validation Error (400)

Returned when a submitted field fails validation — for example, an employee id with no access to this community, or a pms_units entry that doesn't match a known unit.

Error responseJSON400 · application/json
{
"error_type": "ValidationError",
"message": "Error validating data.",
"errors": { "...": ["..."] }
}