Less Annoying CRM logo Less Annoying CRM LACRM
Core API Functions

Tasks

Tasks remind you what you need to take care of each day. Each task is assigned to a user, and they'll show up in that user's daily agenda email and Workspace task list. Tasks stay on the task list until they're complete, so they won't slip through the cracks if you don't have time to deal with them on the day they're due.

If you're trying to schedule something at a specific time (e.g. a meeting, phone call, etc.) you should use an event, not a task. Tasks don't have time information (just dates).

Tasks are often attached to contacts, but they don't have to be, so you can use this is a general-purpose task list even for things unrelated to the contacts in your CRM.

Create a task

This function creates a new task which will show up on the task list once it's due. It can be attached to a contact, but it doesn't have to be.

How to call this function
Function name
CreateTask
Parameters
Name Text Required

The name of the task. This is what will show up on the task list.

DueDate Date

The date a task should start appearing on the Workspace and in the daily agenda email. It will stay in the task list until it is marked as complete.

AssignedTo Uid

Which user this task is assigned to. If you don't pass this value, it will be assigned to you by default.

CalendarId Uid

Which calendar this task will be categorized under. We will add the task to your default calendar if you don't set a value.

Description Text

Additional details you want to remember about the task that don't fit in the task name. This is displayed as a multi-line text fields, so newline characters will be honored.

ContactId Uid

The Id for the contact or company you want to attach this task to. If you don't pass this, the task won't be attached to a contact record.

Response
{
"TaskId": "4000139775485908547277855725380"
}

Edit a task

This function edits an existing task, including marking it as completed or incomplete.

How to call this function
Function name
EditTask
Parameters
TaskId Uid Required

The Id of the task you want to edit.

Name Text

The name of the task. This is what will show up on the task list.

DueDate Date

The date a task should start appearing on the Workspace and in the daily agenda email. It will stay in the task list until it is marked as complete.

AssignedTo Uid

Which user this task is assigned to.

CalendarId Uid

Which calendar this task will be categorized under.

Description Text

Additional details you want to remember about the task that don't fit in the task name. This is displayed as a multi-line text fields, so newline characters will be honored.

ContactId Uid

The Id for the contact or company you want to attach this task to. Pass null if the task is currently attached to a contact and you'd like to detach it.

IsComplete Bool

Mark the task as complete (true) or incomplete (false).

Response
This function doesn't return anything. If there's no error message returned, that means the call was completed successfully.

Delete a task

This function deletes a task. NOTE: This is not what you should call if you want to mark a task as completed. For that, you should use the EditTask function.

How to call this function
Function name
DeleteTask
Parameters
TaskId Uid Required

The Id of the task you want to delete.

Response
This function doesn't return anything. If there's no error message returned, that means the call was completed successfully.

Get a task

This function retrieves a single task based on the Id of the task. If you don't already know the TaskId you can find tasks using GetTasks or GetTasksAttachedToContact.

How to call this function
Function name
GetTask
Parameters
TaskId Uid Required

The Id of the task you want to get.

Response
{
"TaskId": "4000139775490520233296283200902",
"Name": "Follow-up with John",
"DueDate": "2024-12-28",
"AssignedTo": "4000139775490520233296283271485",
"Description": "We talked yesterday but they were busy and said to touch base next week.",
"ContactId": "4000139775492826076305497715240",
"IsCompleted": false,
"DateCompleted": "2024-12-20T12:28:13-08:00",
"CalendarId": "4000139775492826076305495993546",
"DateCreated": "2024-12-21T04:28:13-08:00",
"AssignedToMetaData": {
"FirstName": "Your",
"LastName": "Name"
}
"ContactMetaData": {
"Name": "John Doe",
"AssignedTo": "123456"
}
}

List all tasks

This function will get all tasks between a date range; will return all visible tasks by default, but can be filtered by contact or user.

How to call this function
Function name
GetTasks
Parameters
StartDate Text Required

The lower bound of dates to fetch.

EndDate Text Required

The upper bound of dates to fetch.

UserFilter Array of Uids

If you'd like to only see tasks assigned to specific users, pass their UserIds into this field and we'll filter the results to only show those users' tasks.

ContactId Uid Default: NULL

If you specify this parameter, all past and future tasks will be returned for the corresponding Contact regardless of CompletionStatus. Only tasks attached to this contact will be returned. Alternatively, you can call GetTasksAttachedToContact to get the same results.

CompletionStatus Enum Default: Both
Valid options: Both, Incomplete, Complete

Get tasks based on task complete status

SortDirection Enum Default: Ascending
Valid options: Ascending, Descending

Whether the results should be sorted in ascending or descending order.

MaxNumberOfResults Number Default: 500

How many results should be returned from a single API call? The max value is 10,000. If you need to return more results, call this API function again, but increment the Page parameter.

Page Number Default: 1

If there are more results than MaxNumberOfResults, you can call this function again with an incremented Page value to get the next page of results. For example, if there are 700 results, but you're only requesting 500 at a time, you could call this function with Page=2 to get the remaining 200 results.

Response
{
"HasMoreResults": false,
"Results": [
{
"TaskId": "4000139775499743605333137846376",
"Name": "Follow-up with John",
"DueDate": "2024-12-28",
"AssignedTo": "4000139775499743605333137853396",
"Description": "We talked yesterday but they were busy and said to touch base next week.",
"ContactId": "4000139775499743605333138355390",
"IsCompleted": false,
"DateCompleted": "2024-12-20T12:28:13-08:00",
"CalendarId": "4000139775499743605333137506890",
"DateCreated": "2024-12-21T04:28:13-08:00",
"AssignedToMetaData": {
"FirstName": "Your",
"LastName": "Name"
}
"ContactMetaData": {
"Name": "John Doe",
"AssignedTo": "123456"
}
},
{...},
{...}
]
}

Get contact tasks

Returns all tasks for a contact.

How to call this function
Function name
GetTasksAttachedToContact
Parameters
ContactId Uid Required

The contact to get tasks for.

MaxNumberOfResults Number Default: 500

How many results should be returned from a single API call? The max value is 10,000. If you need to return more results, call this API function again, but increment the Page parameter.

Page Number Default: 1

If there are more results than MaxNumberOfResults, you can call this function again with an incremented Page value to get the next page of results. For example, if there are 700 results, but you're only requesting 500 at a time, you could call this function with Page=2 to get the remaining 200 results.

Response
{
"HasMoreResults": false,
"Results": [
{
"TaskId": "4000139775504355291351565993254",
"Name": "Follow-up with John",
"DueDate": "2024-12-28",
"AssignedTo": "4000139775504355291351565963228",
"Description": "We talked yesterday but they were busy and said to touch base next week.",
"ContactId": "4000139775504355291351564420340",
"IsCompleted": false,
"DateCompleted": "2024-12-20T12:28:13-08:00",
"CalendarId": "4000139775506661134360779308064",
"DateCreated": "2024-12-21T04:28:13-08:00",
"AssignedToMetaData": {
"FirstName": "Your",
"LastName": "Name"
}
"ContactMetaData": {
"Name": "John Doe",
"AssignedTo": "123456"
}
},
{...},
{...}
]
}