Creates either a Task or an Appointment for the target lead, selected by the ‘type’ field (case-insensitive TASK / APPOINTMENT).
Notes:
Caller must have manage permission on the lead; otherwise 400 PERMISSION_DENIED (20017).
type, leadId, content, startAt and endAt are required. taskWay is additionally required when type = TASK.
startAt and endAt must be later than the current server time.
The returned data.id is a composite string (‘<numericId>-task’ or ‘<numericId>-appointment’) and must be used as-is when updating, finishing or deleting this entry.
When startAt and endAt are both exactly midnight (00:00:00) in their declared offsets, an appointment is automatically marked as all-day.
POST
/
v2.0
/
calendar
Create Calendar Event
curl --request POST \
--url https://api.lofty.com/v2.0/calendar \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>' \
--data '
{
"type": "TASK",
"content": "Follow up with client about property",
"leadId": 563172647619608,
"timeZoneCode": "America/Los_Angeles",
"startAt": "2026-03-01T14:00:00-08:00",
"endAt": "2026-03-01T15:00:00-08:00",
"startAtMs": 1740866400000,
"endAtMs": 1740870000000,
"taskWay": "Call",
"assignedRole": "Agent",
"address": "123 Main St, Los Angeles, CA"
}
'
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"Lofty Developer API","colors":{"primary":"#3c5cdc","light":"#ffffff"},"logo":{"light":"https://mintcdn.com/lofty-23bfa97a/472dpA6Ra28Z7egx/logo-dark.svg?fit=max\u0026auto=format\u0026n=472dpA6Ra28Z7egx\u0026q=85\u0026s=12c76c72f76b3c04e325c3922c833c12","dark":"https://mintcdn.com/lofty-23bfa97a/472dpA6Ra28Z7egx/logo-light.svg?fit=max\u0026auto=format\u0026n=472dpA6Ra28Z7egx\u0026q=85\u0026s=b12d6cdd0e6fae7d831727e7248232d2"},"favicon":"https://media.brand.dev/0aeb1ee4-c521-4fbe-b536-f1df81215cbc.png","navbar":{"primary":{"type":"github","href":"https://github.com/lofty"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"lofty-23bfa97a","hasAudioNarration":false,"actualSubdomain":"lofty-23bfa97a","customDomains":["developer.lofty.com"],"gitSource":{"type":"gitlab","owner":"homethy-crm","repo":"openapi-docs","hostUrl":"https://gitpub.d.chime.me","projectId":1443,"deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6adb206fbc8f385cbd3092b4","collectionId":"c1279157-8ee2-4d40-b2f9-2aeae69a70b1","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adb206fbc8f385cbd3092b4"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6adb206fbc8f385cbd3092b4","clientVersion":"0.0.3964","searchFilterCounts":[{"language":"default","tag":"API Reference","count":132},{"language":"default","tag":"Documentation","count":48},{"language":"default","tag":"MCP","count":34},{"language":"default","tag":"Lofty CLI","count":31},{"language":"default","tag":"Team","count":29},{"language":"default","tag":"Leads","count":29},{"language":"default","tag":"Command Reference","count":25},{"language":"default","tag":"Task \u0026 Calendar","count":22},{"language":"default","tag":"Communication","count":19},{"language":"default","tag":"AI Copilot","count":17}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"@media (min-width:1024px){#sidebar-content{width:18rem}#body-content{padding-left:18rem}#content-area{margin-left:max(0px,calc(50vw - 348px - 18rem))}}"}],"page":{"pagePath":"api-reference/calendar/v2/create-event","slug":"/api-reference/calendar/v2/create-event","pageMetadata":{"title":"Create Calendar Event","openapi":"openapi/openapi.json POST /v2.0/calendar","description":"Creates either a Task or an Appointment for the target lead, selected by the 'type' field (case-insensitive TASK / APPOINTMENT).\n\nNotes:\n- Caller must have manage permission on the lead; otherwise 400 PERMISSION_DENIED (20017).\n- type, leadId, content, startAt and endAt are required. taskWay is additionally required when type = TASK.\n- startAt and endAt must be later than the current server time.\n- The returned data.id is a composite string ('`\u003cnumericId>`-task' or '`\u003cnumericId>`-appointment') and must be used as-is when updating, finishing or deleting this entry.\n- When startAt and endAt are both exactly midnight (00:00:00) in their declared offsets, an appointment is automatically marked as all-day.","href":"/api-reference/calendar/v2/create-event"},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n li: \"li\",\n p: \"p\",\n ul: \"ul\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Creates either a Task or an Appointment for the target lead, selected by the ‘type’ field (case-insensitive TASK / APPOINTMENT).\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"Notes:\"\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsx(_components.li, {\n children: \"Caller must have manage permission on the lead; otherwise 400 PERMISSION_DENIED (20017).\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"type, leadId, content, startAt and endAt are required. taskWay is additionally required when type = TASK.\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"startAt and endAt must be later than the current server time.\"\n }), \"\\n\", _jsxs(_components.li, {\n children: [\"The returned data.id is a composite string (‘\", _jsx(_components.code, {\n children: \"\u003cnumericId>\"\n }), \"-task’ or ‘\", _jsx(_components.code, {\n children: \"\u003cnumericId>\"\n }), \"-appointment’) and must be used as-is when updating, finishing or deleting this entry.\"]\n }), \"\\n\", _jsx(_components.li, {\n children: \"When startAt and endAt are both exactly midnight (00:00:00) in their declared offsets, an appointment is automatically marked as all-day.\"\n }), \"\\n\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Create Calendar Event","openapi":"openapi/openapi.json POST /v2.0/calendar","description":"Creates either a Task or an Appointment for the target lead, selected by the 'type' field (case-insensitive TASK / APPOINTMENT).\n\nNotes:\n- Caller must have manage permission on the lead; otherwise 400 PERMISSION_DENIED (20017).\n- type, leadId, content, startAt and endAt are required. taskWay is additionally required when type = TASK.\n- startAt and endAt must be later than the current server time.\n- The returned data.id is a composite string ('`\u003cnumericId>`-task' or '`\u003cnumericId>`-appointment') and must be used as-is when updating, finishing or deleting this entry.\n- When startAt and endAt are both exactly midnight (00:00:00) in their declared offsets, an appointment is automatically marked as all-day.","href":"/api-reference/calendar/v2/create-event"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Calendar V2 API"],"summary":"Create Calendar Event","description":"Creates either a Task or an Appointment for the target lead, selected by the 'type' field (case-insensitive TASK / APPOINTMENT).\n\nNotes:\n- Caller must have manage permission on the lead; otherwise 400 PERMISSION_DENIED (20017).\n- type, leadId, content, startAt and endAt are required. taskWay is additionally required when type = TASK.\n- startAt and endAt must be later than the current server time.\n- The returned data.id is a composite string ('`\u003cnumericId>`-task' or '`\u003cnumericId>`-appointment') and must be used as-is when updating, finishing or deleting this entry.\n- When startAt and endAt are both exactly midnight (00:00:00) in their declared offsets, an appointment is automatically marked as all-day.","operationId":"createCalendar","parameters":["29b1eb45-d140-4b1f-9d6e-35e344372333","97e60289-21a4-4760-a34f-746785ff4917"],"requestBody":"41a4e530-3650-4d6d-beda-bff7fd664bcc","responses":{"200":"e18d866a-74d8-4fcd-9c53-3dcac42ee744","400":"52383b6a-949a-4c63-a793-62cb64846df3","401":"42b9ccfd-3238-4e2c-b966-fa33d8ecdbe9","500":"b5b460f8-ffdd-4d87-aa79-b08dc06ab272"},"method":"post","type":"path","servers":["5fee05a5-5cbb-475b-9058-26ced27eca18"],"security":[],"path":"/v2.0/calendar","baseUrlOptions":["https://api.lofty.com"],"title":"Create Calendar Event","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"29b1eb45-d140-4b1f-9d6e-35e344372333":{"name":"Authorization","in":"header","description":"Bearer [access_token]","required":true,"schema":{"type":"string","isRequired":true,"description":"Bearer [access_token]","uniqueKey":"","typeLabel":"string"}},"97e60289-21a4-4760-a34f-746785ff4917":{"name":"Content-Type","in":"header","description":"application/json","required":true,"schema":{"type":"string","isRequired":true,"description":"application/json","uniqueKey":"","typeLabel":"string"},"example":"application/json"}},"requestBody":{"content":{"application/json":{"schema":{"required":["content","leadId","timeZoneCode","type"],"type":"object","properties":{"type":{"type":"string","description":"Calendar type: TASK or APPOINTMENT","example":"TASK","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"content":{"type":"string","description":"Content/Description of the calendar event","example":"Follow up with client about property","isRequired":true,"uniqueKey":"content","typeLabel":"string"},"leadId":{"type":"integer","description":"Lead ID associated with this calendar event","format":"int64","example":563172647619608,"isRequired":true,"uniqueKey":"leadId","typeLabel":"integer\u003cint64>"},"timeZoneCode":{"type":"string","description":"Timezone code","example":"America/Los_Angeles","isRequired":true,"uniqueKey":"timeZoneCode","typeLabel":"string"},"startAt":{"type":"string","description":"Start time in ISO8601 format with timezone. Preferred over startAtMs when both are provided.","example":"2026-03-01T14:00:00-08:00","uniqueKey":"startAt","typeLabel":"string"},"endAt":{"type":"string","description":"End time in ISO8601 format. Preferred over endAtMs when both are provided.","example":"2026-03-01T15:00:00-08:00","uniqueKey":"endAt","typeLabel":"string"},"startAtMs":{"type":"integer","description":"Start time as Unix timestamp in milliseconds. Used when startAt is not provided.","format":"int64","example":1740866400000,"uniqueKey":"startAtMs","typeLabel":"integer\u003cint64>"},"endAtMs":{"type":"integer","description":"End time as Unix timestamp in milliseconds. Used when endAt is not provided.","format":"int64","example":1740870000000,"uniqueKey":"endAtMs","typeLabel":"integer\u003cint64>"},"taskWay":{"type":"string","description":"Task way type: Call, Email, Text, Other (only for TASK)","example":"Call","uniqueKey":"taskWay","typeLabel":"string"},"assignedRole":{"type":"string","description":"Assigned role: Agent or Assistant (only for TASK)","example":"Agent","uniqueKey":"assignedRole","typeLabel":"string"},"address":{"type":"string","description":"Location/Address (only for APPOINTMENT)","example":"123 Main St, Los Angeles, CA","uniqueKey":"address","typeLabel":"string"}},"description":"Calendar payload. type decides whether a Task or Appointment is created.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"type":"TASK","content":"Follow up with client about property","leadId":563172647619608,"timeZoneCode":"America/Los_Angeles","startAt":"2026-03-01T14:00:00-08:00","endAt":"2026-03-01T15:00:00-08:00","startAtMs":1740866400000,"endAtMs":1740870000000,"taskWay":"Call","assignedRole":"Agent","address":"123 Main St, Los Angeles, CA"}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"e18d866a-74d8-4fcd-9c53-3dcac42ee744":{"description":"Calendar created. The response wraps CalendarCreateResult under the 'data' key.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"string","description":"Calendar ID with type suffix","example":"12345-task","uniqueKey":"data.id","typeLabel":"string"},"type":{"type":"string","description":"Calendar type","example":"TASK","uniqueKey":"data.type","typeLabel":"string"},"message":{"type":"string","description":"Success message","uniqueKey":"data.message","typeLabel":"string"}},"description":"Calendar creation result","uniqueKey":"data","typeLabel":"object"}},"description":"Calendar creation response envelope","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"data":{"id":"12345-task","type":"TASK","message":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"52383b6a-949a-4c63-a793-62cb64846df3":{"description":"Validation failure or permission denied. Includes: missing required field, invalid type or taskWay, startAt/endAt not later than now (20012 INVALID_PARAMETER); caller is not the manager of the specified lead (20017 PERMISSION_DENIED).","content":{"*/*":{"schema":{"type":"string","uniqueKey":"","typeLabel":"string"},"examples":{"Example":{"title":"Example","value":"\u003cstring>"}},"exampleType":"generated"}},"exampleType":"generated"},"42b9ccfd-3238-4e2c-b966-fa33d8ecdbe9":{"description":"Missing or invalid authentication token.","content":{"*/*":{"schema":{"type":"string","uniqueKey":"","typeLabel":"string"},"examples":{"Example":{"title":"Example","value":"\u003cstring>"}},"exampleType":"generated"}},"exampleType":"generated"},"b5b460f8-ffdd-4d87-aa79-b08dc06ab272":{"description":"Internal server error.","content":{"*/*":{"schema":{"type":"string","uniqueKey":"","typeLabel":"string"},"examples":{"Example":{"title":"Example","value":"\u003cstring>"}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{},"servers":{"5fee05a5-5cbb-475b-9058-26ced27eca18":{"url":"https://api.lofty.com"}}},"originalFileLocation":"openapi/openapi.json"},"subdomain":"lofty-23bfa97a","siteName":"Lofty Developer API","title":"Create Calendar Event - Lofty Developer API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-08-03T08:42:51.736Z","originalFileLocation":"api-reference/calendar/v2/create-event.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Creates either a Task or an Appointment for the target lead, selected by the \u0026#x27;type\u0026#x27; field (case-insensitive TASK / APPOINTMENT). Notes: - Caller must have manage permission on the lead; otherwise 400 PERMISSION_DENIED (20017). - type, leadId, content, startAt and endAt are required. taskWay is additionally required when type = TASK. - startAt and endAt must be later than the current server time. - The returned data.id is a composite string (\u0026#x27;-task\u0026#x27; or \u0026#x27;-appointment\u0026#x27;) and must be used as-is when updating, finishing or deleting this entry. - When startAt and endAt are both exactly midnight (00:00:00) in their declared offsets, an appointment is automatically marked as all-day.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Lofty Developer API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"https://media.brand.dev/0aeb1ee4-c521-4fbe-b536-f1df81215cbc.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"https://media.brand.dev/0aeb1ee4-c521-4fbe-b536-f1df81215cbc.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"https://media.brand.dev/0aeb1ee4-c521-4fbe-b536-f1df81215cbc.png\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/png\" href=\"https://media.brand.dev/0aeb1ee4-c521-4fbe-b536-f1df81215cbc.png\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create Calendar Event - Lofty Developer API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Creates either a Task or an Appointment for the target lead, selected by the \u0026#x27;type\u0026#x27; field (case-insensitive TASK / APPOINTMENT). Notes: - Caller must have manage permission on the lead; otherwise 400 PERMISSION_DENIED (20017). - type, leadId, content, startAt and endAt are required. taskWay is additionally required when type = TASK. - startAt and endAt must be later than the current server time. - The returned data.id is a composite string (\u0026#x27;-task\u0026#x27; or \u0026#x27;-appointment\u0026#x27;) and must be used as-is when updating, finishing or deleting this entry. - When startAt and endAt are both exactly midnight (00:00:00) in their declared offsets, an appointment is automatically marked as all-day.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Lofty Developer API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://developer.lofty.com/api-reference/calendar/v2/create-event\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://lofty-23bfa97a.mintlify.app/_mintlify/api/og/v2?division=Calendar\u0026amp;title=Create+Calendar+Event\u0026amp;description=Creates+either+a+Task+or+an+Appointment+for+the+target+lead%2C+selected+by+the+%27type%27+field+%28case-insensitive+TASK+%2F+APPOINTMENT%29.%0A%0ANotes%3A%0A-+Caller+must+have+mana\u0026amp;theme=cf5308eab30ae100a5b55002\u0026amp;signature=4eec89460cee90795bb9b4333c55fd5ffc12aa8351f75c399cc1286be89a309c\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Create Calendar Event - Lofty Developer API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Creates either a Task or an Appointment for the target lead, selected by the \u0026#x27;type\u0026#x27; field (case-insensitive TASK / APPOINTMENT). Notes: - Caller must have manage permission on the lead; otherwise 400 PERMISSION_DENIED (20017). - type, leadId, content, startAt and endAt are required. taskWay is additionally required when type = TASK. - startAt and endAt must be later than the current server time. - The returned data.id is a composite string (\u0026#x27;-task\u0026#x27; or \u0026#x27;-appointment\u0026#x27;) and must be used as-is when updating, finishing or deleting this entry. - When startAt and endAt are both exactly midnight (00:00:00) in their declared offsets, an appointment is automatically marked as all-day.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://lofty-23bfa97a.mintlify.app/_mintlify/api/og/v2?division=Calendar\u0026amp;title=Create+Calendar+Event\u0026amp;description=Creates+either+a+Task+or+an+Appointment+for+the+target+lead%2C+selected+by+the+%27type%27+field+%28case-insensitive+TASK+%2F+APPOINTMENT%29.%0A%0ANotes%3A%0A-+Caller+must+have+mana\u0026amp;theme=cf5308eab30ae100a5b55002\u0026amp;signature=4eec89460cee90795bb9b4333c55fd5ffc12aa8351f75c399cc1286be89a309c\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"https://mintlify.s3.us-west-1.amazonaws.com/lofty-23bfa97a/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Lofty Developer API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3c5cdc\">\u003clink data-mint-head rel=\"canonical\" href=\"https://developer.lofty.com/api-reference/calendar/v2/create-event\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/calendar/v2/create-event.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://developer.lofty.com/#organization\",\"name\":\"Lofty Developer API\",\"url\":\"https://developer.lofty.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/lofty-23bfa97a/472dpA6Ra28Z7egx/logo-dark.svg?fit=max\u0026auto=format\u0026n=472dpA6Ra28Z7egx\u0026q=85\u0026s=12c76c72f76b3c04e325c3922c833c12\"}},{\"@type\":\"WebSite\",\"@id\":\"https://developer.lofty.com#website\",\"name\":\"Lofty Developer API\",\"url\":\"https://developer.lofty.com\",\"publisher\":{\"@id\":\"https://developer.lofty.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://developer.lofty.com/api-reference/calendar/v2/create-event#webpage\",\"url\":\"https://developer.lofty.com/api-reference/calendar/v2/create-event\",\"name\":\"Create Calendar Event\",\"description\":\"Creates either a Task or an Appointment for the target lead, selected by the 'type' field (case-insensitive TASK / APPOINTMENT). Notes: - Caller must have manage permission on the lead; otherwise 400 PERMISSION_DENIED (20017). - type, leadId, content, startAt and endAt are required. taskWay is additionally required when type = TASK. - startAt and endAt must be later than the current server time. - The returned data.id is a composite string ('-task' or '-appointment') and must be used as-is when updating, finishing or deleting this entry. - When startAt and endAt are both exactly midnight (00:00:00) in their declared offsets, an appointment is automatically marked as all-day.\",\"dateModified\":\"2026-08-03T08:42:51.736Z\",\"isPartOf\":{\"@id\":\"https://developer.lofty.com#website\"},\"breadcrumb\":{\"@id\":\"https://developer.lofty.com/api-reference/calendar/v2/create-event#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://developer.lofty.com/api-reference/calendar/v2/create-event#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Task \u0026 Calendar\",\"item\":\"https://developer.lofty.com/api-reference/tasks/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Calendar\",\"item\":\"https://developer.lofty.com/api-reference/calendar/v2/list-events\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Create Calendar Event\",\"item\":\"https://developer.lofty.com/api-reference/calendar/v2/create-event\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://developer.lofty.com/api-reference/calendar/v2/create-event#apireference\",\"headline\":\"Create Calendar Event\",\"name\":\"Create Calendar Event\",\"description\":\"Creates either a Task or an Appointment for the target lead, selected by the 'type' field (case-insensitive TASK / APPOINTMENT). Notes: - Caller must have manage permission on the lead; otherwise 400 PERMISSION_DENIED (20017). - type, leadId, content, startAt and endAt are required. taskWay is additionally required when type = TASK. - startAt and endAt must be later than the current server time. - The returned data.id is a composite string ('-task' or '-appointment') and must be used as-is when updating, finishing or deleting this entry. - When startAt and endAt are both exactly midnight (00:00:00) in their declared offsets, an appointment is automatically marked as all-day.\",\"url\":\"https://developer.lofty.com/api-reference/calendar/v2/create-event\",\"mainEntityOfPage\":{\"@id\":\"https://developer.lofty.com/api-reference/calendar/v2/create-event#webpage\"},\"dateModified\":\"2026-08-03T08:42:51.736Z\",\"publisher\":{\"@id\":\"https://developer.lofty.com/#organization\"},\"isPartOf\":{\"@id\":\"https://developer.lofty.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Lofty Developer API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Lofty Developer API","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"API Reference","groups":[{"group":"Leads","pages":[{"title":"Overview","href":"/api-reference/leads/overview"},{"group":"Core","pages":[{"title":"List Leads","openapi":"openapi/openapi.json GET /v1.0/leads","href":"/api-reference/leads/list-leads"},{"title":"Create Lead","openapi":"openapi/openapi.json POST /v1.0/leads","href":"/api-reference/leads/create-lead"},{"title":"Get Lead","openapi":"openapi/openapi.json GET /v1.0/leads/{leadId}","href":"/api-reference/leads/get-lead"},{"title":"Update Lead","openapi":"openapi/openapi.json PUT /v1.0/leads/{leadId}","href":"/api-reference/leads/update-lead"},{"title":"Delete Lead","openapi":"openapi/openapi.json DELETE /v1.0/leads/{leadId}","href":"/api-reference/leads/delete-lead"}]},{"group":"Activities","pages":[{"title":"Lead Activities","openapi":"openapi/openapi.json GET /v1.0/leads/{leadId}/activities","href":"/api-reference/leads/activities"},{"title":"List lead activities","openapi":"openapi/openapi.json GET /v2.0/leads/{leadId}/activities","href":"/api-reference/leads/list-lead-activities"},{"title":"Add activity","openapi":"openapi/openapi.json POST /v1.0/leads/{leadId}/activity","href":"/api-reference/leads/add-activity"}]},{"group":"Saved Searches","pages":[{"title":"List saved searches","openapi":"openapi/openapi.json GET /v1.0/leads/{leadId}/savedSearches","href":"/api-reference/leads/list-saved-searches"},{"title":"Create saved search","openapi":"openapi/openapi.json POST /v1.0/leads/{leadId}/savedSearches","href":"/api-reference/leads/create-saved-search"},{"title":"Update saved search","openapi":"openapi/openapi.json PUT /v1.0/leads/{leadId}/savedSearches/{savedSearchId}","href":"/api-reference/leads/update-saved-search"},{"title":"Delete saved search","openapi":"openapi/openapi.json DELETE /v1.0/leads/{leadId}/savedSearches/{savedSearchId}","href":"/api-reference/leads/delete-saved-search"},{"title":"Pause saved search alerts","openapi":"openapi/openapi.json POST /v1.0/leads/{leadId}/savedSearches/pause","href":"/api-reference/leads/pause-saved-searches"},{"title":"Resume saved search alerts","openapi":"openapi/openapi.json POST /v1.0/leads/{leadId}/savedSearches/resume","href":"/api-reference/leads/resume-saved-searches"}]},{"group":"Notes","pages":[{"title":"List Notes","openapi":"openapi/openapi.json GET /v1.0/notes","href":"/api-reference/communication/list-notes"},{"title":"Get a note by ID","openapi":"openapi/openapi.json GET /v1.0/notes/{noteId}","href":"/api-reference/communication/get-a-note-by-id"},{"title":"Create Note","openapi":"openapi/openapi.json POST /v1.0/notes","href":"/api-reference/communication/create-note"},{"title":"Update Note","openapi":"openapi/openapi.json PUT /v1.0/notes/{noteId}","href":"/api-reference/communication/update-note"},{"title":"Delete Note","openapi":"openapi/openapi.json DELETE /v1.0/notes/{noteId}","href":"/api-reference/communication/delete-note"}]},{"group":"Manual Logs","pages":[{"title":"List manual logs of a lead","openapi":"openapi/openapi.json GET /v1.0/logType","href":"/api-reference/manual-logs/list-manual-logs-of-a-lead"},{"title":"Add a manual log entry","openapi":"openapi/openapi.json POST /v1.0/logType","href":"/api-reference/manual-logs/add-a-manual-log-entry"},{"title":"Get a manual log entry by ID","openapi":"openapi/openapi.json GET /v1.0/logType/{logTypeId}","href":"/api-reference/manual-logs/get-a-manual-log-entry-by-id"},{"title":"Delete a manual log entry","openapi":"openapi/openapi.json DELETE /v1.0/logType/{logTypeId}","href":"/api-reference/manual-logs/delete-a-manual-log-entry"}]},{"group":"Other Operations","pages":[{"title":"Assign Lead","openapi":"openapi/openapi.json POST /v1.0/leads/{leadId}/assignment","href":"/api-reference/leads/assign-lead"},{"title":"Preview Routing","openapi":"openapi/openapi.json POST /v1.0/leads/assignee","href":"/api-reference/leads/resolve-assignees-by-lead-info"},{"title":"Update Property Info","openapi":"openapi/openapi.json POST /v1.0/leads/{leadId}/property","href":"/api-reference/leads/place-a-property"},{"title":"Add Inquiry","openapi":"openapi/openapi.json POST /v1.0/leads/{leadId}/inquiry","href":"/api-reference/leads/place-an-inquiry"},{"title":"System Logs","openapi":"openapi/openapi.json GET /v1.0/systemLogs","href":"/api-reference/leads/system-logs"}]}]},{"group":"Task \u0026 Calendar","pages":[{"title":"Overview","href":"/api-reference/tasks/overview"},{"group":"Tasks","pages":[{"title":"List Tasks","openapi":"openapi/openapi.json GET /v2.0/tasks","href":"/api-reference/tasks/v2/list-tasks"},{"title":"Create Task","openapi":"openapi/openapi.json POST /v2.0/tasks","href":"/api-reference/tasks/v2/create-task"},{"title":"Get Task","openapi":"openapi/openapi.json GET /v2.0/tasks/{taskId}","href":"/api-reference/tasks/v2/get-task"},{"title":"Update Task","openapi":"openapi/openapi.json PUT /v2.0/tasks/{taskId}","href":"/api-reference/tasks/v2/update-task"},{"title":"Delete Task","openapi":"openapi/openapi.json DELETE /v2.0/tasks/{taskId}","href":"/api-reference/tasks/v2/delete-task"},{"title":"Finish Task","openapi":"openapi/openapi.json POST /v2.0/tasks/{taskId}/finish","href":"/api-reference/tasks/v2/finish-task"},{"title":"Unfinish Task","openapi":"openapi/openapi.json POST /v2.0/tasks/{taskId}/unfinish","href":"/api-reference/tasks/v2/unfinish-task"},{"title":"My Tasks","openapi":"openapi/openapi.json GET /v2.0/tasks/my-tasks","href":"/api-reference/tasks/v2/my-tasks"}]},{"group":"Calendar","pages":[{"title":"List Calendar Events","openapi":"openapi/openapi.json GET /v2.0/calendar","description":"Returns a page of calendar entries (Tasks and Appointments) for the caller, optionally filtered by leadId, type and completion status.\n\nNotes:\n- At least one of startTime or endTime is required; requests missing both return 400 INVALID_PARAMETER.\n- includeFinished=true returns both finished and unfinished entries; includeFinished=false returns only unfinished.\n- Results are wrapped under the 'data' key, which also carries pagination metadata.","href":"/api-reference/calendar/v2/list-events"},{"title":"Create Calendar Event","openapi":"openapi/openapi.json POST /v2.0/calendar","href":"/api-reference/calendar/v2/create-event"},{"title":"Update Calendar Event","openapi":"openapi/openapi.json PUT /v2.0/calendar/{calendarId}","description":"Partially updates a Task or Appointment. Only non-empty fields in the request body are applied; omitted fields keep their current values.\n\nNotes:\n- calendarId must be the composite string returned by POST /v2.0/calendar (e.g. '12345-task' or '12345-appointment'). Invalid format returns 400.\n- When startAt or endAt is supplied, it must be later than the current server time.","href":"/api-reference/calendar/v2/update-event"},{"title":"Delete Calendar Event","openapi":"openapi/openapi.json DELETE /v2.0/calendar/{calendarId}","href":"/api-reference/calendar/v2/delete-event"},{"title":"Finish Calendar Event","openapi":"openapi/openapi.json POST /v2.0/calendar/{calendarId}/finish","href":"/api-reference/calendar/v2/finish-event"},{"title":"Unfinish Calendar Event","openapi":"openapi/openapi.json POST /v2.0/calendar/{calendarId}/unfinish","href":"/api-reference/calendar/v2/unfinish-event"},{"title":"Available Meetings","openapi":"openapi/openapi.json GET /v2.0/calendar/meetings/available","href":"/api-reference/calendar/v2/available-meetings"}]},{"group":"Legacy","pages":[{"title":"List Tasks (V1)","openapi":"openapi/openapi.json GET /v1.0/tasks","href":"/api-reference/tasks/v1/list-tasks"},{"title":"Create Task (V1)","openapi":"openapi/openapi.json POST /v1.0/tasks","href":"/api-reference/tasks/v1/create-task"},{"title":"Get Task (V1)","openapi":"openapi/openapi.json GET /v1.0/tasks/{taskId}","href":"/api-reference/tasks/v1/get-task"},{"title":"Update Task (V1)","openapi":"openapi/openapi.json PUT /v1.0/tasks/{taskId}","href":"/api-reference/tasks/v1/update-task"},{"title":"Delete Task (V1)","openapi":"openapi/openapi.json DELETE /v1.0/tasks/{taskId}","href":"/api-reference/tasks/v1/delete-task"},{"title":"List Appointments","openapi":"openapi/openapi.json GET /v1.0/appts","href":"/api-reference/tasks/v1/list-appointments"}]}]},{"group":"Transactions","pages":[{"group":"Core","pages":[{"title":"List Transactions","openapi":"openapi/openapi.json GET /v2.0/transactions","href":"/api-reference/transactions/list-transactions"},{"title":"Create Transaction","openapi":"openapi/openapi.json POST /v1.0/leads/{leadId}/transaction","href":"/api-reference/transactions/create-transaction"},{"title":"Get Transaction","openapi":"openapi/openapi.json GET /v1.0/leads/{leadId}/transaction/{transactionId}","href":"/api-reference/transactions/get-transaction"},{"title":"Update Transaction","openapi":"openapi/openapi.json PUT /v1.0/leads/{leadId}/transaction/{transactionId}","href":"/api-reference/transactions/partially-update-a-transaction"},{"title":"List by Lead","openapi":"openapi/openapi.json GET /v1.0/leads/{leadId}/transactions","href":"/api-reference/transactions/list-transactions-for-a-lead"},{"title":"List Transaction Pipelines","openapi":"openapi/openapi.json GET /v2.0/transactions/pipelines","href":"/api-reference/transactions/list-transaction-pipelines"}]},{"group":"Property Address","pages":[{"title":"Update Property Address","openapi":"openapi/openapi.json POST /v1.0/leads/{leadId}/transaction/property/address","href":"/api-reference/transactions/update-transaction-property-address"},{"title":"Get Property Address","openapi":"openapi/openapi.json GET /v1.0/leads/{leadId}/transaction/{transactionId}/property/address","href":"/api-reference/transactions/get-transaction-property-address"}]}]},{"group":"Listings","pages":[{"title":"Overview","href":"/api-reference/listings/overview"},{"title":"Search by Agent / Office","openapi":"openapi/openapi.json GET /v1.0/listing","href":"/api-reference/listings/search-listings-by-agent-office-or-mls-id"},{"title":"Get Published Listings","openapi":"openapi/openapi.json GET /v1.0/getPublishedListings","href":"/api-reference/listings/get-published"}]},{"group":"Communication","pages":[{"title":"Search by Agent","openapi":"openapi/openapi.json POST /v1.0/agent/communication","href":"/api-reference/communication/search-communications-by-agent"},{"title":"Search by Agent (cursor paged)","openapi":"openapi/openapi.json GET /v2.0/communication/agent","href":"/api-reference/communication/search-communications-by-agent-v2"},{"group":"Calls","pages":[{"title":"Calls Overview","href":"/api-reference/communication/calls-overview"},{"title":"Call History","openapi":"openapi/openapi.json GET /v1.0/communication/call","href":"/api-reference/communication/call-history"},{"title":"List call history of a lead (v2)","openapi":"openapi/openapi.json GET /v1.0/communication/call/v2","href":"/api-reference/communication/list-call-history-of-a-lead-v2"},{"title":"List calls of a lead","openapi":"openapi/openapi.json GET /v1.0/calls","href":"/api-reference/calls/list-calls-of-a-lead"},{"title":"Get a call by ID","openapi":"openapi/openapi.json GET /v1.0/calls/{callId}","href":"/api-reference/calls/get-a-call-by-id"},{"title":"Get Call","openapi":"openapi/openapi.json GET /v2.0/communication/call/{communicationId}","href":"/api-reference/communication/get-call"},{"title":"Get a call recording URL","openapi":"openapi/openapi.json GET /v1.0/call/url/{callId}","href":"/api-reference/calls/get-a-call-recording-url"}]},{"group":"Email \u0026 SMS","pages":[{"title":"Email History","openapi":"openapi/openapi.json GET /v1.0/communication/email","href":"/api-reference/communication/list-emails"},{"title":"Send Email","openapi":"openapi/openapi.json POST /v1.0/message/email/send","href":"/api-reference/communication/send-email"},{"title":"Get Email","openapi":"openapi/openapi.json GET /v2.0/communication/email/{communicationId}","href":"/api-reference/communication/get-email"},{"title":"SMS History","openapi":"openapi/openapi.json GET /v1.0/communication/text","href":"/api-reference/communication/list-sms"},{"title":"Send SMS","openapi":"openapi/openapi.json POST /v1.0/message/sms/send","href":"/api-reference/communication/send-sms"},{"title":"Get Text","openapi":"openapi/openapi.json GET /v2.0/communication/text/{communicationId}","href":"/api-reference/communication/get-text"}]},{"group":"Notifications","pages":[{"title":"Send Opportunity Alert","openapi":"openapi/openapi.json POST /v1.0/agent/send-notification","href":"/api-reference/opportunity/send-an-opportunity-notification-to-the-leads-assi"},{"title":"Send Task Reminder Push","openapi":"openapi/openapi.json POST /v2.0/sales-agent/notification/app-push/send-task-reminder","href":"/api-reference/notifications/send-app-push-for-taskappointment-reminder"},{"title":"Send SMS to Agent","openapi":"openapi/openapi.json POST /v2.0/sales-agent/message/sms/send-to-agent","href":"/api-reference/notifications/send-system-sms-to-agent"},{"title":"Send Email to Agent","openapi":"openapi/openapi.json POST /v2.0/sales-agent/message/email/send-to-agent","href":"/api-reference/notifications/send-system-email-to-agent"}]}]},{"group":"Team","pages":[{"group":"Members","pages":[{"title":"Team Members","openapi":"openapi/openapi.json GET /v1.0/members","href":"/api-reference/team/members"},{"title":"Get a team member by account (email)","openapi":"openapi/openapi.json GET /v1.0/members/{account}","href":"/api-reference/team/get-a-team-member-by-account-email"},{"title":"Get a team member by user ID (deprecated)","openapi":"openapi/openapi.json GET /v1.0/users/{userId}","href":"/api-reference/team/get-a-team-member-by-user-id-deprecated"},{"title":"Get the current user's profile","openapi":"openapi/openapi.json GET /v1.0/me","href":"/api-reference/team/get-the-current-users-profile"},{"title":"List Vendors","openapi":"openapi/openapi.json GET /v1.0/vendor/list","href":"/api-reference/vendor/list-vendors-of-the-callers-team"}]},{"group":"Settings","pages":[{"title":"List Tags","openapi":"openapi/openapi.json GET /v1.0/teamFeatures/listTag","href":"/api-reference/team-features/list-lead-tags-visible-to-the-caller"},{"title":"List Custom Fields","openapi":"openapi/openapi.json GET /v1.0/teamFeatures/listCustomField","href":"/api-reference/team-features/list-lead-custom-field-definitions"},{"title":"List Transaction Custom Fields","openapi":"openapi/openapi.json GET /v1.0/transaction/customfields","href":"/api-reference/transactions/list-transaction-custom-field-definitions"},{"title":"List Transaction Field Groups","openapi":"openapi/openapi.json GET /v1.0/transaction/forms","href":"/api-reference/transactions/list-transaction-field-groups"},{"title":"Add Custom Field","openapi":"openapi/openapi.json POST /v1.0/teamFeatures/custom-field","href":"/api-reference/team-features/add-a-lead-custom-field"},{"title":"Create Transaction Custom Field","openapi":"openapi/openapi.json POST /v1.0/transaction/customfields","href":"/api-reference/transactions/create-transaction-custom-field"},{"title":"List Lead Ponds","openapi":"openapi/openapi.json GET /v1.0/team-features/lead-ponds","href":"/api-reference/team-features/list-lead-ponds-visible-to-the-caller"},{"title":"Get Lead Pond","openapi":"openapi/openapi.json GET /v1.0/team-features/lead-pond/{id}","href":"/api-reference/team-features/get-a-lead-pond-by-id"},{"title":"List Lead Pipelines","openapi":"openapi/openapi.json GET /v1.0/teamFeatures/lead-pipelines","href":"/api-reference/team-features/list-lead-pipelines"}]},{"group":"Agents","pages":[{"title":"Create a new agent","openapi":"openapi/openapi.json POST /v1.0/agent/profile/add","href":"/api-reference/agents/create-a-new-agent"},{"title":"Add tags to an agent","openapi":"openapi/openapi.json POST /v1.0/agent/{agentId}/tag/add","href":"/api-reference/agents/add-tags-to-an-agent"},{"title":"Deactivate an agent","openapi":"openapi/openapi.json POST /v2.0/agents/{agentId}/deactivate","href":"/api-reference/agents/deactivate-an-agent"},{"title":"Reactivate an agent","openapi":"openapi/openapi.json POST /v2.0/agents/{agentId}/reactivate","href":"/api-reference/agents/reactivate-an-agent"}]},{"group":"Organization","pages":[{"title":"Get Organization","openapi":"openapi/openapi.json GET /v1.0/org","href":"/api-reference/org/get-the-callers-organization-info"},{"title":"Add Office","openapi":"openapi/openapi.json PUT /v1.0/org/office","href":"/api-reference/org/add-an-office-to-the-team"},{"title":"Update Office","openapi":"openapi/openapi.json POST /v1.0/org/office","href":"/api-reference/org/update-an-office"},{"title":"Update Company","openapi":"openapi/openapi.json POST /v1.0/org/company","href":"/api-reference/org/update-the-teams-company-info"},{"title":"List Permission Profiles","openapi":"openapi/openapi.json GET /v1.0/org/permission/profiles","href":"/api-reference/org/list-permission-profiles-available-to-the-team"}]},{"group":"Lead Routing","pages":[{"title":"Lead Routing Rules","openapi":"openapi/openapi.json GET /v1.0/routing/rule/list/{type}","href":"/api-reference/team/routing"},{"title":"Update a routing rule","openapi":"openapi/openapi.json PUT /v1.0/routing/rule/{type}","href":"/api-reference/routing/update-a-routing-rule"},{"title":"Get default (supplement) routing rule","openapi":"openapi/openapi.json GET /v1.0/routing/rule/supplement/{type}","href":"/api-reference/routing/get-default-supplement-routing-rule"},{"title":"Update default (supplement) routing rule","openapi":"openapi/openapi.json PUT /v1.0/routing/rule/supplement/{type}","href":"/api-reference/routing/update-default-supplement-routing-rule"},{"title":"List assign roles","openapi":"openapi/openapi.json GET /v1.0/routing/role/list","href":"/api-reference/routing/list-assign-roles"},{"title":"List members available for assignment","openapi":"openapi/openapi.json GET /v1.0/routing/member/list/{type}","href":"/api-reference/routing/list-members-available-for-assignment"}]}]},{"group":"AI Copilot","pages":[{"group":"Agent \u0026 Settings","pages":[{"title":"Get current user's Sales Agent","openapi":"openapi/openapi.json GET /v2.0/sales-agents/current","href":"/api-reference/sales-agents/get-current-users-sales-agent"},{"title":"Get current user's Sales Agent quota","openapi":"openapi/openapi.json GET /v2.0/sales-agents/quota","href":"/api-reference/sales-agents/get-current-users-sales-agent-quota"},{"title":"Get Sales Agent by lead ID","openapi":"openapi/openapi.json GET /v2.0/sales-agents/by-lead","href":"/api-reference/sales-agents/get-sales-agent-by-lead-id"},{"title":"Query Sales Agent settings","openapi":"openapi/openapi.json GET /v2.0/sales-agent/settings","href":"/api-reference/sales-agents/query-sales-agent-settings"}]},{"group":"Working Leads","pages":[{"title":"Query working leads (paginated)","openapi":"openapi/openapi.json GET /v2.0/working-leads","href":"/api-reference/sales-agents/query-working-leads-paginated"},{"title":"Check if lead is a working lead","openapi":"openapi/openapi.json GET /v2.0/sales-agents/working-lead/{leadId}","href":"/api-reference/sales-agents/check-if-lead-is-a-working-lead"},{"title":"Batch add leads to Sales Agent working pool","openapi":"openapi/openapi.json POST /v2.0/working-leads/add","href":"/api-reference/sales-agents/batch-add-leads-to-sales-agent-working-pool"},{"title":"Mute a working lead","openapi":"openapi/openapi.json PUT /v2.0/sales-agents/working-lead/{leadId}/mute","href":"/api-reference/sales-agents/mute-a-working-lead"},{"title":"Get Sales Agent lead mute status","openapi":"openapi/openapi.json GET /v2.0/sales-agent/lead/mute-status","href":"/api-reference/sales-agents/get-sales-agent-lead-mute-status"}]},{"group":"Plan Tasks \u0026 Messaging","pages":[{"title":"Get plan tasks by lead ID","openapi":"openapi/openapi.json GET /v2.0/plan-tasks/lead/{leadId}","href":"/api-reference/sales-agents/get-plan-tasks-by-lead-id"},{"title":"Send SMS to agent via AI number","openapi":"openapi/openapi.json POST /v2.0/sales-agent/ai-number/send-sms-to-agent","href":"/api-reference/sales-agents/send-sms-to-agent-via-ai-number"}]},{"group":"Intelligent Features","pages":[{"title":"Generate Call Script","openapi":"openapi/openapi.json POST /v2.0/ai/call-script","href":"/api-reference/ai/generate-call-script"},{"title":"Get Call Summary","openapi":"openapi/openapi.json GET /v2.0/ai/call-summary","href":"/api-reference/ai/get-call-summary"},{"title":"Generate Call Summary","openapi":"openapi/openapi.json POST /v2.0/ai/call-summary/generate","href":"/api-reference/ai/trigger-call-summary-generation"},{"title":"Prepare Insight","openapi":"openapi/openapi.json POST /v2.0/ai/prepare-insight","href":"/api-reference/ai/generate-prepare-insight"},{"title":"List Lead Analysis Tasks","openapi":"openapi/openapi.json GET /v2.0/ai/lead-analysis","href":"/api-reference/ai/query-leadanalysis-task-list"},{"title":"Create Lead Analysis Task","openapi":"openapi/openapi.json POST /v2.0/ai/lead-analysis","href":"/api-reference/ai/create-leadanalysis-task"}]}]},{"group":"Webhooks","pages":[{"title":"List Webhooks","openapi":"openapi/openapi.json GET /v1.0/webhooks","href":"/api-reference/webhooks/list-webhooks"},{"title":"Create Webhook","openapi":"openapi/openapi.json POST /v1.0/webhook","href":"/api-reference/webhooks/create-webhook"},{"title":"Delete Webhook","openapi":"openapi/openapi.json DELETE /v1.0/webhook/{subscribeId}","href":"/api-reference/webhooks/delete-webhook"}]},{"group":"Integrations","pages":[{"title":"Brokermint — Sync Lead","openapi":"openapi/openapi.json PUT /v1.0/brokermint/lead","href":"/api-reference/leads/brokermint-webhook-update-a-synced-lead"},{"title":"Brokermint — Sync Transaction","openapi":"openapi/openapi.json PUT /v1.0/brokermint/transaction","href":"/api-reference/transactions/brokermint-webhook-update-a-synced-transaction"}]}]},{"tab":"MCP","pages":[{"title":"MCP","href":"/mcp/overview"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog/2026"}]}]},"title":"Create Calendar Event - Lofty Developer API","buildId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","deploymentId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-BRm_l__d.js","utils-f1l1Oc-G.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BlhqDhJO.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DHCB7rsC.js","snippetPresets-CYXLx6Hv.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-kQh739Uz.js","ApiExamples-B78P2dEq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C4YLPVAh.js","shallow-vlLnTDkQ.js","getApiPlaygroundDisplay-D_98hhvf.js","CodeSnippet-DtnZHGqq.js","CodeSnippets-CLFb8KJt.js","getPastedJson-Cq-zlbnU.js","icon-sN3t983t.js","MethodPill-P_YQ2s09.js","DuplicateIcon-BVzyNsGJ.js","createIcon-B3jqgqC6.js","DynamicMarkdown-Crwq6WG_.js","SectionHeading-C7pGS2Bb.js","axios-vUo_bRtp.js","Markdown-BuPH8yuW.js","clsx-CCOYKgaU.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BnkC_6oA.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BM4S31-f.js"]}