Returns the lead’s manual-log entries for a single channel (logCall, logEmail or logText), paginated via offset+limit or cursor (currentId).
Notes:
Only entries whose logType equals logCall, logEmail or logText are returned. Auto-captured communications are not included.
Caller must have access to the lead; otherwise 404 LEAD_NOT_EXIST.
Default mode (currentId=0): offset + limit pagination, ordered by sort and order.
Cursor mode (currentId > 0): the sort parameter is ignored; entries are ordered by id, with timelineTime as secondary key, matching the direction in order.
limit outside [1, 1000] is silently reset to 10; offset < 0 is silently reset to 0; offset + limit > 20000 returns 400 OFFSET_EXCEED_LIMIT.
sort=createTime (default) orders by the entry time as logged by the agent (usually equal to the record’s creation time). sort=id orders by the entry’s ID.
order=asc (default) returns oldest first; pass order=desc for newest first.
GET
/
v1.0
/
logType
List manual logs of a lead
curl --request GET \ --url https://api.lofty.com/v1.0/logType \ --header 'Authorization: <authorization>'
This parameter is used for page turning. When searching by ID is invoked, the interface would starts from this ID, and retrieve data sequentially. It is recommended to use this parameter as a replacement for offset to turn the page within the limit.
{"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/manual-logs/list-manual-logs-of-a-lead","slug":"/api-reference/manual-logs/list-manual-logs-of-a-lead","pageMetadata":{"title":"List manual logs of a lead","openapi":"openapi/openapi.json GET /v1.0/logType","description":"Returns the lead's manual-log entries for a single channel (logCall, logEmail or logText), paginated via offset+limit or cursor (currentId).\n\nNotes:\n- Only entries whose logType equals logCall, logEmail or logText are returned. Auto-captured communications are not included.\n- Caller must have access to the lead; otherwise 404 LEAD_NOT_EXIST.\n- Default mode (currentId=0): offset + limit pagination, ordered by sort and order.\n- Cursor mode (currentId > 0): the sort parameter is ignored; entries are ordered by id, with timelineTime as secondary key, matching the direction in order.\n- limit outside [1, 1000] is silently reset to 10; offset \u003c 0 is silently reset to 0; offset + limit > 20000 returns 400 OFFSET_EXCEED_LIMIT.\n- sort=createTime (default) orders by the entry time as logged by the agent (usually equal to the record's creation time). sort=id orders by the entry's ID.\n- order=asc (default) returns oldest first; pass order=desc for newest first.","href":"/api-reference/manual-logs/list-manual-logs-of-a-lead"},"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 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: \"Returns the lead’s manual-log entries for a single channel (logCall, logEmail or logText), paginated via offset+limit or cursor (currentId).\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"Notes:\"\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsx(_components.li, {\n children: \"Only entries whose logType equals logCall, logEmail or logText are returned. Auto-captured communications are not included.\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Caller must have access to the lead; otherwise 404 LEAD_NOT_EXIST.\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Default mode (currentId=0): offset + limit pagination, ordered by sort and order.\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Cursor mode (currentId > 0): the sort parameter is ignored; entries are ordered by id, with timelineTime as secondary key, matching the direction in order.\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"limit outside [1, 1000] is silently reset to 10; offset \u003c 0 is silently reset to 0; offset + limit > 20000 returns 400 OFFSET_EXCEED_LIMIT.\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"sort=createTime (default) orders by the entry time as logged by the agent (usually equal to the record’s creation time). sort=id orders by the entry’s ID.\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"order=asc (default) returns oldest first; pass order=desc for newest first.\"\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":"List manual logs of a lead","openapi":"openapi/openapi.json GET /v1.0/logType","description":"Returns the lead's manual-log entries for a single channel (logCall, logEmail or logText), paginated via offset+limit or cursor (currentId).\n\nNotes:\n- Only entries whose logType equals logCall, logEmail or logText are returned. Auto-captured communications are not included.\n- Caller must have access to the lead; otherwise 404 LEAD_NOT_EXIST.\n- Default mode (currentId=0): offset + limit pagination, ordered by sort and order.\n- Cursor mode (currentId > 0): the sort parameter is ignored; entries are ordered by id, with timelineTime as secondary key, matching the direction in order.\n- limit outside [1, 1000] is silently reset to 10; offset \u003c 0 is silently reset to 0; offset + limit > 20000 returns 400 OFFSET_EXCEED_LIMIT.\n- sort=createTime (default) orders by the entry time as logged by the agent (usually equal to the record's creation time). sort=id orders by the entry's ID.\n- order=asc (default) returns oldest first; pass order=desc for newest first.","href":"/api-reference/manual-logs/list-manual-logs-of-a-lead"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Lead Manual Log"],"summary":"List manual logs of a lead","description":"Returns the lead's manual-log entries for a single channel (logCall, logEmail or logText), paginated via offset+limit or cursor (currentId).\n\nNotes:\n- Only entries whose logType equals logCall, logEmail or logText are returned. Auto-captured communications are not included.\n- Caller must have access to the lead; otherwise 404 LEAD_NOT_EXIST.\n- Default mode (currentId=0): offset + limit pagination, ordered by sort and order.\n- Cursor mode (currentId > 0): the sort parameter is ignored; entries are ordered by id, with timelineTime as secondary key, matching the direction in order.\n- limit outside [1, 1000] is silently reset to 10; offset \u003c 0 is silently reset to 0; offset + limit > 20000 returns 400 OFFSET_EXCEED_LIMIT.\n- sort=createTime (default) orders by the entry time as logged by the agent (usually equal to the record's creation time). sort=id orders by the entry's ID.\n- order=asc (default) returns oldest first; pass order=desc for newest first.","operationId":"list_3","parameters":["7a8b265f-16f5-419d-92b9-2b53408c0128","fe034121-05d5-4488-9ef6-affff20733ba","005f56ec-149d-4742-9654-b0a86cf38bf6","4a1dda33-a9c5-4419-aa4b-f7eabdfa77aa","23a88f68-26dd-4751-bfdd-8f94b524f330","17fd8e13-a8fc-4ef2-865e-bfe53cdb9bd9","c1c0e66f-ba7d-4b3c-8a09-b480feef511e","7f4897f8-262e-4d28-b378-69a145aa16ca"],"responses":{"200":"9b6bfbdf-893b-4a71-9a7a-276aff47959f","400":"b832ce16-e1e4-418d-85c7-bc0f13de7fe5","401":"9ba08f46-fb20-4d73-b959-3af9d598c8fb","404":"b623dc34-011d-4840-ad59-2a2739fcb9f8","500":"5e8c3c70-4ecc-4291-881e-5da2e7fdb24e"},"method":"get","type":"path","servers":["5fee05a5-5cbb-475b-9058-26ced27eca18"],"security":[],"path":"/v1.0/logType","baseUrlOptions":["https://api.lofty.com"],"title":"List manual logs of a lead","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"7a8b265f-16f5-419d-92b9-2b53408c0128":{"name":"leadId","in":"query","description":"ID of the lead whose manual logs to return.","required":true,"schema":{"minimum":1,"type":"integer","format":"int64","isRequired":true,"description":"ID of the lead whose manual logs to return.","uniqueKey":"","typeLabel":"integer\u003cint64>"},"example":100001},"fe034121-05d5-4488-9ef6-affff20733ba":{"name":"logType","in":"query","description":"Channel filter. Case-sensitive.","required":true,"schema":{"type":"string","enum":["logCall","logEmail","logText"],"isRequired":true,"description":"Channel filter. Case-sensitive.","uniqueKey":"","typeLabel":"enum\u003cstring>"},"example":"logCall"},"005f56ec-149d-4742-9654-b0a86cf38bf6":{"name":"offset","in":"query","description":"Zero-based index of the first entry to return. Values \u003c 0 are silently reset to 0. Ignored when currentId > 0.","required":false,"schema":{"minimum":0,"type":"integer","format":"int32","default":0,"isRequired":false,"description":"Zero-based index of the first entry to return. Values \u003c 0 are silently reset to 0. Ignored when currentId > 0.","uniqueKey":"","typeLabel":"integer\u003cint32>"},"example":0},"4a1dda33-a9c5-4419-aa4b-f7eabdfa77aa":{"name":"limit","in":"query","description":"Number of entries to return per page. Values outside [1, 1000] are silently reset to 10. offset + limit must not exceed 20000.","required":false,"schema":{"maximum":1000,"minimum":1,"type":"integer","format":"int32","default":10,"isRequired":false,"description":"Number of entries to return per page. Values outside [1, 1000] are silently reset to 10. offset + limit must not exceed 20000.","uniqueKey":"","typeLabel":"integer\u003cint32>"},"example":10},"23a88f68-26dd-4751-bfdd-8f94b524f330":{"name":"currentId","in":"query","description":"This parameter is used for page turning. When searching by ID is invoked, the interface would starts from this ID, and retrieve data sequentially. It is recommended to use this parameter as a replacement for offset to turn the page within the limit.","required":false,"schema":{"type":"integer","format":"int64","isRequired":false,"description":"This parameter is used for page turning. When searching by ID is invoked, the interface would starts from this ID, and retrieve data sequentially. It is recommended to use this parameter as a replacement for offset to turn the page within the limit.","uniqueKey":"","typeLabel":"integer\u003cint64>"}},"17fd8e13-a8fc-4ef2-865e-bfe53cdb9bd9":{"name":"sort","in":"query","description":"Sort field. 'createTime' orders by the entry's logged time; 'id' orders by the entry's ID. Ignored in cursor mode.","required":false,"schema":{"type":"string","default":"createTime","enum":["createTime","id"],"isRequired":false,"description":"Sort field. 'createTime' orders by the entry's logged time; 'id' orders by the entry's ID. Ignored in cursor mode.","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"c1c0e66f-ba7d-4b3c-8a09-b480feef511e":{"name":"order","in":"query","description":"Sort direction. 'asc' returns oldest first; 'desc' returns newest first.","required":false,"schema":{"type":"string","default":"asc","enum":["asc","desc"],"isRequired":false,"description":"Sort direction. 'asc' returns oldest first; 'desc' returns newest first.","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"7f4897f8-262e-4d28-b378-69a145aa16ca":{"name":"Authorization","in":"header","description":"Bearer [access_token]","required":true,"schema":{"type":"string","isRequired":true,"description":"Bearer [access_token]","uniqueKey":"","typeLabel":"string"}}},"responses":{"9b6bfbdf-893b-4a71-9a7a-276aff47959f":{"description":"Page of manual log entries for the requested channel.","content":{"application/json":{"schema":{"type":"object","properties":{"logType":{"type":"array","description":"Manual log entries on this page, ordered by the request's sort and order parameters.","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the manual log entry.","format":"int64","example":563172647619608,"uniqueKey":"logType.items.[INDEX].id","typeLabel":"integer\u003cint64>"},"leadId":{"type":"integer","description":"ID of the lead this entry belongs to.","format":"int64","example":100001,"uniqueKey":"logType.items.[INDEX].leadId","typeLabel":"integer\u003cint64>"},"leadPhoneNumber":{"type":"string","description":"Phone number associated with the call. Only populated for logCall entries.","example":"5865865860","uniqueKey":"logType.items.[INDEX].leadPhoneNumber","typeLabel":"string"},"callingOutcome":{"type":"string","description":"Outcome of the call. Only populated for logCall entries.","example":"VoiceMessage","enum":["Talked","VoiceMessage","NoAnswer","BadNumber","DNCNumber","DNCContact"],"uniqueKey":"logType.items.[INDEX].callingOutcome","typeLabel":"enum\u003cstring>"},"content":{"type":"string","description":"Body of the log entry: call notes, email body, or SMS content.","example":"Discussed Austin inventory, will send pre-approval doc tomorrow.","uniqueKey":"logType.items.[INDEX].content","typeLabel":"string"},"createTime":{"type":"string","description":"Time the entry was logged, formatted as 'yyyy-MM-dd HH:mm:ss' in UTC.","example":"2026-04-22 10:15:30","uniqueKey":"logType.items.[INDEX].createTime","typeLabel":"string"},"outboundOrInbound":{"type":"string","description":"Direction of the communication from the agent's point of view. 'outbound' = agent -> lead; 'inbound' = lead -> agent.","example":"outbound","enum":["outbound","inbound"],"uniqueKey":"logType.items.[INDEX].outboundOrInbound","typeLabel":"enum\u003cstring>"},"isPin":{"type":"boolean","description":"Whether this entry is pinned to the top of the lead's timeline.","example":false,"uniqueKey":"logType.items.[INDEX].isPin","typeLabel":"boolean"},"agentId":{"type":"integer","description":"User ID of the agent who created the entry.","format":"int64","example":100234,"uniqueKey":"logType.items.[INDEX].agentId","typeLabel":"integer\u003cint64>"},"emailSubject":{"type":"string","description":"Email subject. Only populated for logEmail entries.","example":"Follow-up on Austin listings","uniqueKey":"logType.items.[INDEX].emailSubject","typeLabel":"string"},"toEmail":{"type":"string","description":"Recipient email address. Only populated for logEmail entries.","example":"sarah.johnson@example.com","uniqueKey":"logType.items.[INDEX].toEmail","typeLabel":"string"},"fromEmail":{"type":"string","description":"Sender email address. Only populated for logEmail entries.","example":"agent@lofty.com","uniqueKey":"logType.items.[INDEX].fromEmail","typeLabel":"string"}},"description":"Manual log entry.","uniqueKey":"logType.items.[INDEX]","typeLabel":"object"},"uniqueKey":"logType","typeLabel":"object[]"}},"description":"Wrapped response for GET /v1.0/logType. The manual log entries are returned under the 'logType' key.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"logType":[{"id":563172647619608,"leadId":100001,"leadPhoneNumber":"5865865860","callingOutcome":"VoiceMessage","content":"Discussed Austin inventory, will send pre-approval doc tomorrow.","createTime":"2026-04-22 10:15:30","outboundOrInbound":"outbound","isPin":false,"agentId":100234,"emailSubject":"Follow-up on Austin listings","toEmail":"sarah.johnson@example.com","fromEmail":"agent@lofty.com"}]}}},"exampleType":"generated"}},"exampleType":"generated"},"b832ce16-e1e4-418d-85c7-bc0f13de7fe5":{"description":"Invalid logType (not one of logCall/logEmail/logText — business code 20012), or offset+limit exceeds 20000 (business code 200104).","content":{"application/json":{"schema":{"type":"string","uniqueKey":"","typeLabel":"string"},"examples":{"Example":{"title":"Example","value":"\u003cstring>"}},"exampleType":"generated"}},"exampleType":"generated"},"9ba08f46-fb20-4d73-b959-3af9d598c8fb":{"description":"Missing or invalid authentication token.","content":{"application/json":{"schema":{"type":"string","uniqueKey":"","typeLabel":"string"},"examples":{"Example":{"title":"Example","value":"\u003cstring>"}},"exampleType":"generated"}},"exampleType":"generated"},"b623dc34-011d-4840-ad59-2a2739fcb9f8":{"description":"Lead does not exist, is trashed, or is not accessible to the caller (business code 20006 LEAD_NOT_EXIST).","content":{"application/json":{"schema":{"type":"string","uniqueKey":"","typeLabel":"string"},"examples":{"Example":{"title":"Example","value":"\u003cstring>"}},"exampleType":"generated"}},"exampleType":"generated"},"5e8c3c70-4ecc-4291-881e-5da2e7fdb24e":{"description":"Internal server error.","content":{"application/json":{"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":"List manual logs of a lead - Lofty Developer API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-05-12T03:08:23.297Z","originalFileLocation":"api-reference/manual-logs/list-manual-logs-of-a-lead.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=\"Returns the lead\u0026#x27;s manual-log entries for a single channel (logCall, logEmail or logText), paginated via offset+limit or cursor (currentId). Notes: - Only entries whose logType equals logCall, logEmail or logText are returned. Auto-captured communications are not included. - Caller must have access to the lead; otherwise 404 LEAD_NOT_EXIST. - Default mode (currentId=0): offset + limit pagination, ordered by sort and order. - Cursor mode (currentId \u0026gt; 0): the sort parameter is ignored; entries are ordered by id, with timelineTime as secondary key, matching the direction in order. - limit outside [1, 1000] is silently reset to 10; offset \u0026lt; 0 is silently reset to 0; offset + limit \u0026gt; 20000 returns 400 OFFSET_EXCEED_LIMIT. - sort=createTime (default) orders by the entry time as logged by the agent (usually equal to the record\u0026#x27;s creation time). sort=id orders by the entry\u0026#x27;s ID. - order=asc (default) returns oldest first; pass order=desc for newest first.\">\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=\"List manual logs of a lead - Lofty Developer API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Returns the lead\u0026#x27;s manual-log entries for a single channel (logCall, logEmail or logText), paginated via offset+limit or cursor (currentId). Notes: - Only entries whose logType equals logCall, logEmail or logText are returned. Auto-captured communications are not included. - Caller must have access to the lead; otherwise 404 LEAD_NOT_EXIST. - Default mode (currentId=0): offset + limit pagination, ordered by sort and order. - Cursor mode (currentId \u0026gt; 0): the sort parameter is ignored; entries are ordered by id, with timelineTime as secondary key, matching the direction in order. - limit outside [1, 1000] is silently reset to 10; offset \u0026lt; 0 is silently reset to 0; offset + limit \u0026gt; 20000 returns 400 OFFSET_EXCEED_LIMIT. - sort=createTime (default) orders by the entry time as logged by the agent (usually equal to the record\u0026#x27;s creation time). sort=id orders by the entry\u0026#x27;s ID. - order=asc (default) returns oldest first; pass order=desc for newest first.\">\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/manual-logs/list-manual-logs-of-a-lead\">\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=Manual+Logs\u0026amp;title=List+manual+logs+of+a+lead\u0026amp;description=Returns+the+lead%27s+manual-log+entries+for+a+single+channel+%28logCall%2C+logEmail+or+logText%29%2C+paginated+via+offset%2Blimit+or+cursor+%28currentId%29.%0A%0ANotes%3A%0A-+Only+entr\u0026amp;theme=cf5308eab30ae100a5b55002\u0026amp;signature=fe9bac928af6817f3a0ece360e1690f6e17512f4f4be73870fc0f17ffa2ef41d\">\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=\"List manual logs of a lead - Lofty Developer API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Returns the lead\u0026#x27;s manual-log entries for a single channel (logCall, logEmail or logText), paginated via offset+limit or cursor (currentId). Notes: - Only entries whose logType equals logCall, logEmail or logText are returned. Auto-captured communications are not included. - Caller must have access to the lead; otherwise 404 LEAD_NOT_EXIST. - Default mode (currentId=0): offset + limit pagination, ordered by sort and order. - Cursor mode (currentId \u0026gt; 0): the sort parameter is ignored; entries are ordered by id, with timelineTime as secondary key, matching the direction in order. - limit outside [1, 1000] is silently reset to 10; offset \u0026lt; 0 is silently reset to 0; offset + limit \u0026gt; 20000 returns 400 OFFSET_EXCEED_LIMIT. - sort=createTime (default) orders by the entry time as logged by the agent (usually equal to the record\u0026#x27;s creation time). sort=id orders by the entry\u0026#x27;s ID. - order=asc (default) returns oldest first; pass order=desc for newest first.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://lofty-23bfa97a.mintlify.app/_mintlify/api/og/v2?division=Manual+Logs\u0026amp;title=List+manual+logs+of+a+lead\u0026amp;description=Returns+the+lead%27s+manual-log+entries+for+a+single+channel+%28logCall%2C+logEmail+or+logText%29%2C+paginated+via+offset%2Blimit+or+cursor+%28currentId%29.%0A%0ANotes%3A%0A-+Only+entr\u0026amp;theme=cf5308eab30ae100a5b55002\u0026amp;signature=fe9bac928af6817f3a0ece360e1690f6e17512f4f4be73870fc0f17ffa2ef41d\">\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/manual-logs/list-manual-logs-of-a-lead\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/manual-logs/list-manual-logs-of-a-lead.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/manual-logs/list-manual-logs-of-a-lead#webpage\",\"url\":\"https://developer.lofty.com/api-reference/manual-logs/list-manual-logs-of-a-lead\",\"name\":\"List manual logs of a lead\",\"description\":\"Returns the lead's manual-log entries for a single channel (logCall, logEmail or logText), paginated via offset+limit or cursor (currentId). Notes: - Only entries whose logType equals logCall, logEmail or logText are returned. Auto-captured communications are not included. - Caller must have access to the lead; otherwise 404 LEAD_NOT_EXIST. - Default mode (currentId=0): offset + limit pagination, ordered by sort and order. - Cursor mode (currentId > 0): the sort parameter is ignored; entries are ordered by id, with timelineTime as secondary key, matching the direction in order. - limit outside [1, 1000] is silently reset to 10; offset \\u003c 0 is silently reset to 0; offset + limit > 20000 returns 400 OFFSET_EXCEED_LIMIT. - sort=createTime (default) orders by the entry time as logged by the agent (usually equal to the record's creation time). sort=id orders by the entry's ID. - order=asc (default) returns oldest first; pass order=desc for newest first.\",\"dateModified\":\"2026-05-12T03:08:23.297Z\",\"isPartOf\":{\"@id\":\"https://developer.lofty.com#website\"},\"breadcrumb\":{\"@id\":\"https://developer.lofty.com/api-reference/manual-logs/list-manual-logs-of-a-lead#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://developer.lofty.com/api-reference/manual-logs/list-manual-logs-of-a-lead#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Leads\",\"item\":\"https://developer.lofty.com/api-reference/leads/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"List manual logs of a lead\",\"item\":\"https://developer.lofty.com/api-reference/manual-logs/list-manual-logs-of-a-lead\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://developer.lofty.com/api-reference/manual-logs/list-manual-logs-of-a-lead#apireference\",\"headline\":\"List manual logs of a lead\",\"name\":\"List manual logs of a lead\",\"description\":\"Returns the lead's manual-log entries for a single channel (logCall, logEmail or logText), paginated via offset+limit or cursor (currentId). Notes: - Only entries whose logType equals logCall, logEmail or logText are returned. Auto-captured communications are not included. - Caller must have access to the lead; otherwise 404 LEAD_NOT_EXIST. - Default mode (currentId=0): offset + limit pagination, ordered by sort and order. - Cursor mode (currentId > 0): the sort parameter is ignored; entries are ordered by id, with timelineTime as secondary key, matching the direction in order. - limit outside [1, 1000] is silently reset to 10; offset \\u003c 0 is silently reset to 0; offset + limit > 20000 returns 400 OFFSET_EXCEED_LIMIT. - sort=createTime (default) orders by the entry time as logged by the agent (usually equal to the record's creation time). sort=id orders by the entry's ID. - order=asc (default) returns oldest first; pass order=desc for newest first.\",\"url\":\"https://developer.lofty.com/api-reference/manual-logs/list-manual-logs-of-a-lead\",\"mainEntityOfPage\":{\"@id\":\"https://developer.lofty.com/api-reference/manual-logs/list-manual-logs-of-a-lead#webpage\"},\"dateModified\":\"2026-05-12T03:08:23.297Z\",\"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}","description":"Deletes a note by ID. Caller must have manage permission on the lead that owns the note. The response body is empty.","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","description":"Creates a manual log entry (logCall, logEmail or logText) for the target lead.\n\nNotes:\n- Persistence is asynchronous. The response returns the new entry's ID once the write is enqueued; the entry becomes readable after a short delay.\n- Caller must have access to the lead (owner, shared agent, or assigned lender), and the lead must not be trashed. Otherwise 404 LEAD_NOT_EXIST.\n- leadId, logType and content are required for all channels.\n- content is silently truncated to 5000 characters.\n- outboundOrInbound must be exactly 'outbound' or 'inbound' when supplied; omitted values default to 'outbound'.\n- For logCall: leadPhoneNumber is required (max 20 characters). callingOutcome is optional (max 20 characters); values outside the known set are silently normalized to 'Talked' during persistence.\n- For logEmail: emailSubject / toEmail / fromEmail are optional and accepted as-is.","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","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}","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":"List manual logs of a lead - 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"]}