How does the legacy V3 Diary API work?
The V3 Diary API is a legacy tier maintained for existing integrations only. New integrations should use the V4 Appointments API instead. Key limitations include a 30-day historical query limit and legacy pagination patterns. All endpoints are at https://live-api.letmc.com/v3/diary/.
⚠️ Legacy API — existing integrations only. The V3 Diary API will not receive new features. For new integrations, use the V4 Appointments API, which provides improved functionality, no historical date restrictions, and modern API patterns.
Key differences from V4
- Appointment queries are restricted to the last 30 days only
- Pagination uses query parameters (
?offset=0&count=10) rather than URL path parameters - A boolean flag (
lettings) distinguishes lettings vs sales appointments instead of separate endpoints - Guest/contact creation happens inline within the appointment creation request
- Complex nested submission models are required
Company structure
- All branches (legacy pagination):
GET /v3/diary/{shortName}/company/branchesParameters:offsetandcountas query parameters. - Specific branch:
GET /company/branches/{branchID}
Appointment retrieval
- Appointments between dates:
GET /appointmentsbetweendatesParameters:branchID,startDate,endDate,appointmentTypesToSearch[],offset,count. 30-day limit applies — requests for older data will return an error. - Recurring appointments:
GET /recurringappointment - Specific appointment:
GET /appointment(parameter:appointmentID) - Appointment types:
GET /appointmenttypes
Appointment scheduling
- Available allocations:
GET /allocationsParameters:preferredDate,appointmentType,lettings(boolean),propertyIdentifierorbranchID.
Appointment creation and management
- Create appointment:
POST /appointmentRequiresDiaryAppointmentDetailswith nested guest and allocation details. Creates prospects/buyers automatically based on thelettingsflag. - Update appointment:
PUT /appointmentParameters:appointmentID,lettings,AllowMarketingCorrespondence. - Cancel appointment:
PATCH /appointment/{appointmentID}/cancel - Delete appointment:
DELETE /appointment(parameter:appointmentID)
Feedback and guest management
- Submit feedback:
POST /appointment/feedbackusingFeedbackSubmissionModel - Search for existing guests:
GET /{branchID}/guest/searchParameters:branchID,forename,surname,emailaddress. Use before creation to avoid duplicates.
Migrating to V4 Appointments
The V4 Appointments API offers:
- No 30-day historical restriction
- Modern URL path pagination
- Separate endpoints for lettings and sales
- Improved contact management and deduplication
- Better error handling and active feature development
Test with Swagger: Select "V3.Diary" from the tier dropdown. Remember the 30-day limit when testing retrieval endpoints.