Shared taskId namespace
Tasks and appointments in Lofty share the sametaskId namespace. This means a task and an appointment can never have the same numeric ID, and when you reference an item by ID on any V2 endpoint, the API resolves it correctly regardless of whether it is a task or an appointment.
The V2 endpoints (
/v2.0/tasks/... and /v2.0/calendar/...) operate on the same underlying ID space. A taskId returned from a task creation endpoint is the same identifier you would use to fetch or update that record through the calendar endpoints.Tasks
A task is a to-do item assigned to an agent or assistant, linked to a specific lead. Use tasks to represent the action an agent needs to take next — scheduling a call, sending a listing, or following up after a showing.Key task fields
Creating a task (V2)
Appointments
An appointment is a scheduled event with a defined start time, end time, and optional location. Unlike tasks, appointments represent a meeting or showing rather than a generic action item.Key appointment fields
To list appointments for a lead, use
GET /v1.0/appts.
V1 vs V2 API
Lofty exposes tasks through both V1 and V2 endpoints. The V2 API adds support forAppointment as a task type, uses ISO 8601 timestamps with timezone, and is the recommended path for new integrations.
Finish and unfinish workflow
When an agent completes a task or appointment, you mark it finished. If needed, you can revert that status. The V2 API provides dedicated endpoints for this rather than requiring a full update:Calendar API vs tasks API
The V2 Calendar API (/v2.0/calendar) is an alternative surface for managing the same tasks and appointments, with additional capabilities:
- Available meeting slots —
GET /v2.0/calendar/meetings/availablereturns open time slots for scheduling. - Composite calendar IDs — Calendar entries have IDs of the form
<numericId>-taskor<numericId>-appointment. You must pass this full composite string to per-entry calendar endpoints.