Skip to main content

Book an appointment (for existing renter)

Create an appointment(tour) in Funnel for the specified renter for the specified community

POST
/api/partners/v1/community/:community_id/renters/:funnel_renter_id/appointment

Request

Example requestPOSTapplication/json
curl -X POST \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -d '{
      "start": "2024-01-15T10:00:00",
      "message": "Looking forward to the tour",
      "tour_type": "guided",
      "pms_unit_ids": [
        "123",
        "5678"
      ]
    }' \
    "https://api.funnelleasing.com/api/partners/v1/community/1234/renters/:funnel_renter_id/appointment"

Response

Example responseJSON200 · application/json
{
  "prospect": {
    "id": 456
  },
  "appointment": {
    "id": 789
  }
}

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."
}

Renter Not Found (404)

Returned when funnel_renter_id doesn't match an existing client.

Error responseJSON404 · application/json
{
"error_type": "DoesNotExist",
"errors": { "error": "Client does not exist" }
}

Renter in Another Company (400)

Returned when the renter belongs to a different company than the community.

Error responseJSON400 · application/json
{
"error_type": "ValidationError",
"errors": { "error": "Client must be in same company as community" }
}

Renter Not in Community's Group (400)

Returned when the renter isn't assigned to the community's employee group and your company doesn't have prospect-centrism enabled (which would otherwise auto-assign them).

Error responseJSON400 · application/json
{
"error_type": "ValidationError",
"errors": { "error": "Client must be in same group as community" }
}

Invalid origin_source (400)

Returned when origin_source doesn't match any recognized value. The errors object includes the full list of accepted forms.

Error responseJSON400 · application/json
{
"error_type": "ValidationError",
"message": "Invalid origin_source.",
"errors": {
  "origin_source": ["Unrecognized value 'xyz'. Expected integer ID, enum constant name, short name, or one of: [...]"]
}
}

Community Not Set Up for Tour Scheduling (400)

Returned when the community has no employee group configured.

Error responseJSON400 · application/json
{
"error_type": "CommunitySchedulingInactive",
"message": "Community does not have tour scheduling enabled."
}

Validation Error (400)

Returned when the submitted appointment data fails validation (for example, an invalid or unavailable start time). The errors object is keyed by the specific fields that failed.

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