Update Appointment Type
Update an existing appointment type
PUT
/calendar/appointment-typesRequires
Bearer authenticationUpdate an existing appointment type. Only include fields you want to change.
Request Body
idstringrequiredThe appointment type ID to update.
namestringUpdate the name.
durationMinutesintegerUpdate the duration.
descriptionstringUpdate the description.
colorstringUpdate the color.
bufferBeforeMinutesintegerUpdate buffer before.
bufferAfterMinutesintegerUpdate buffer after.
maxPerDayintegerUpdate daily limit.
maxPerWeekintegerUpdate weekly limit.
maxPerMonthintegerUpdate monthly limit.
minNoticeHoursintegerUpdate minimum notice hours.
maxDaysAheadintegerUpdate booking window.
requiresConfirmationbooleanUpdate confirmation requirement.
bookingQuestionsarrayReplace booking questions.
scheduleIdstringUpdate linked schedule.
isActivebooleanEnable or disable the type.
PUT
/calendar/appointment-typescurl -X PUT "https://api.vastal.agency/v1/calendar/appointment-types" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "id": "type_abc123", "durationMinutes": 45, "maxPerDay": 6, "isActive": true }'
const response = await fetch( 'https://api.vastal.agency/v1/calendar/appointment-types', { method: 'PUT', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Content-Type': 'application/json' }, body: JSON.stringify({ id: 'type_abc123', durationMinutes: 45, maxPerDay: 6, isActive: true }) } ); const data = await response.json();
import requests response = requests.put( 'https://api.vastal.agency/v1/calendar/appointment-types', headers={ 'Authorization': 'Bearer YOUR_API_KEY', 'Content-Type': 'application/json' }, json={ 'id': 'type_abc123', 'durationMinutes': 45, 'maxPerDay': 6, 'isActive': True } ) data = response.json()
200Success
{ "appointmentType": { "id": "type_abc123", "name": "Tax Consultation", "durationMinutes": 45, "maxPerDay": 6, "isActive": true, "updatedAt": "2024-01-20T14:30:00Z" } }