Skip to main content

Documentation Index

Fetch the complete documentation index at: https://developers.leadwaycrm.com/llms.txt

Use this file to discover all available pages before exploring further.

Update calendar by ID.
PUT https://services.leadconnectorhq.com/calendars/{calendarId}

Autorizacion

Authorization
string
required
Bearer token generado desde el portal Leadway. Ver Autenticacion.
Version
string
default:"2021-07-28"
required
Version de la API.

Path parameters

calendarId
string
default:"ocQHyuzHvysMo5N5VsXc"
required
Calendar Id

Body

notifications
object[]
🚨 Deprecated! Please use ‘Calendar Notifications APIs’ instead.
groupId
string
default:"BqTwX8QFwXzpegMve9EQ"
Group Id
teamMembers
object[]
Team members are required for calendars of type: Round Robin, Collective, Class, Service. Personal calendar must have exactly one team member.
eventType
string
Posibles valores: ‘RoundRobin_OptimizeForAvailability’, ‘RoundRobin_OptimizeForEqualDistribution’
name
string
default:"test calendar"
description
string
default:"this is used for testing"
slug
string
default:"test1"
widgetSlug
string
default:"test1"
widgetType
string
default:"classic"
Calendar widget type. Choose “default” for “neo” and “classic” for “classic” layout. Posibles valores: ‘default’, ‘classic’
eventTitle
string
eventColor
string
locationConfigurations
object[]
Meeting account configuration for event calendar
meetingLocation
string
🚨 Deprecated! Use locationConfigurations.account or teamMembers[].locationConfigurations.account instead.
slotDuration
number
This controls the duration of the meeting
slotDurationUnit
string
Unit for slot duration. Posibles valores: ‘mins’, ‘hours’
preBufferUnit
string
Unit for pre-buffer. Posibles valores: ‘mins’, ‘hours’
slotInterval
number
Slot interval reflects the amount of time the between booking slots that will be shown in the calendar.
slotIntervalUnit
string
Unit for slot interval. Posibles valores: ‘mins’, ‘hours’
slotBuffer
number
Slot-Buffer is additional time that can be added after an appointment, allowing for extra time to wrap up
preBuffer
number
Pre-Buffer is additional time that can be added before an appointment, allowing for extra time to get ready
appoinmentPerSlot
number
appoinmentPerDay
number
Number of appointments that can be booked for a given day
allowBookingAfter
number
Minimum scheduling notice for events
allowBookingAfterUnit
string
default:"days"
Unit for minimum scheduling notice Posibles valores: ‘hours’, ‘days’, ‘weeks’, ‘months’
allowBookingFor
number
Minimum number of days/weeks/months for which to allow booking events
allowBookingForUnit
string
default:"days"
Unit for controlling the duration for which booking would be allowed for Posibles valores: ‘days’, ‘weeks’, ‘months’
openHours
object[]
enableRecurring
boolean
Enable recurring appointments for the calendars. Please note that only one member should be added in the calendar to enable this
recurring
object
formId
string
stickyContact
boolean
isLivePaymentMode
boolean
autoConfirm
boolean
shouldSendAlertEmailsToAssignedMember
boolean
alertEmail
string
googleInvitationEmails
boolean
allowReschedule
boolean
allowCancellation
boolean
shouldAssignContactToTeamMember
boolean
shouldSkipAssigningContactForExisting
boolean
notes
string
pixelId
string
formSubmitType
string
Posibles valores: ‘RedirectURL’, ‘ThankYouMessage’
formSubmitRedirectURL
string
formSubmitThanksMessage
string
availabilityType
number
Determines which availability type to consider:
  • 1: Only custom availabilities will be used.
  • 0: Only open hours will be used.
  • null: Both the custom availabilities and open hours will be considered. Posibles valores: 0, 1
availabilities
object[]
This is only to set the custom availability. For standard availability, use the openHours property
guestType
string
Posibles valores: ‘count_only’, ‘collect_detail’
calendarCoverImage
string
lookBusyConfig
object
Look Busy Configuration
isActive
boolean

Respuestas

calendar
object
required
{
  "calendar": {
    "isActive": true,
    "notifications": [
      {
        "type": "email",
        "shouldSendToContact": true,
        "shouldSendToGuest": true,
        "shouldSendToUser": true,
        "shouldSendToSelectedUsers": true,
        "selectedUsers": "user1@testemail.com,user2@testemail.com"
      }
    ],
    "locationId": "ocQHyuzHvysMo5N5VsXc",
    "groupId": "BqTwX8QFwXzpegMve9EQ",
    "teamMembers": [
      {
        "userId": "ocQHyuzHvysMo5N5VsXc",
        "priority": 0.5,
        "meetingLocationType": "custom",
        "meetingLocation": "string",
        "isPrimary": true,
        "locationConfigurations": []
      }
    ],
    "eventType": "RoundRobin_OptimizeForAvailability",
    "name": "test calendar",
    "description": "this is used for testing",
    "slug": "test1",
    "widgetSlug": "test1",
    "calendarType": "round_robin",
    "widgetType": "classic",
    "eventTitle": "{{contact.name}}",
    "eventColor": "#039be5",
    "meetingLocation": "string",
    "locationConfigurations": [
      {
        "kind": "custom",
        "location": "string",
  // truncado: 60 lineas mas
}
{}
{}

Ejemplo

curl -X PUT 'https://services.leadconnectorhq.com/calendars/YOUR_calendarId' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Version: 2021-07-28' \
  -H 'Content-Type: application/json' \
  -d '{
  "notifications": [
    {
      "type": "email",
      "shouldSendToContact": true,
      "shouldSendToGuest": true,
      "shouldSendToUser": true,
      "shouldSendToSelectedUsers": true,
      "selectedUsers": "user1@testemail.com,user2@testemail.com"
    }
  ],
  "groupId": "BqTwX8QFwXzpegMve9EQ",
  "teamMembers": [
    {
      "userId": "ocQHyuzHvysMo5N5VsXc",
      "priority": 0.5,
      "meetingLocationType": "custom",
      "meetingLocation": "string",
      "isPrimary": true,
      "locationConfigurations": [
        {}
      ]
    }
  ],
  "eventType": "RoundRobin_OptimizeForAvailability",
  "name": "test calendar",
  "description": "this is used for testing",
  "slug": "test1",
  "widgetSlug": "test1",
  "widgetType": "classic",
  "eventTitle": "string",
  "eventColor": "#039be5",
  "locationConfigurations": [
    {
      "kind": "custom",
      "location": "string"
    }
  ],
  "meetingLocation": "string",
  "slotDuration": 30,
  "slotDurationUnit": "mins",
  "preBufferUnit": "mins",
  "slotInterval": 30,
  "slotIntervalUnit": "mins",
  "slotBuffer": 0,
  "preBuffer": 0,
  "appoinmentPerSlot": 0,
  "appoinmentPerDay": 0,
  "allowBookingAfter": 0,
  "allowBookingAfterUnit": "days",
  "allowBookingFor": 0,
  "allowBookingForUnit": "days",
  "openHours": [
    {
      "daysOfTheWeek": [
        0
      ],
      "hours": [
        {}
      ]
    }
  ],
  "enableRecurring": false,
  "recurring": {
    "freq": "DAILY",
    "count": 0,
    "bookingOption": "skip",
    "bookingOverlapDefaultStatus": "confirmed"
  },
  "formId": "string",
  "stickyContact": true,
  "isLivePaymentMode": true,
  "autoConfirm": true,
  "shouldSendAlertEmailsToAssignedMember": true,
  "alertEmail": "string",
  "googleInvitationEmails": true,
  "allowReschedule": true,
  "allowCancellation": true,
  "shouldAssignContactToTeamMember": true,
  "shouldSkipAssigningContactForExisting": true,
  "notes": "string",
  "pixelId": "string",
  "formSubmitType": "ThankYouMessage",
  "formSubmitRedirectURL": "string",
  "formSubmitThanksMessage": "string",
  "availabilityType": 0,
  "availabilities": [
    {
      "date": "2023-09-24T00:00:00.000Z",
      "hours": [
        {}
      ],
      "deleted": false,
      "id": "string"
    }
  ],
  "guestType": "count_only",
  "consentLabel": "string",
  "calendarCoverImage": "string",
  "isActive": true
}'