Note: Less Annoying CRM has both contact and company records, but they’re all considered contacts by the API. Even though the function names all say “contact” you can call them to interact with companies in the exact same way.
Contacts are the main record type in Less Annoying CRM. Most other types of objects (tasks, events, relationships, files, etc.) can be attached to contacts, so regardless of what you’re building, you’ll probably need to interact with contacts.
Contacts can have custom fields, which means the specific parameters and return values for your account might be slightly different than what we show in the function definitions below. In addition, companies can have a set of custom fields that differ from the ones for your contacts - use the dropdown found above the function definitions to show parameters and return values for both contacts & companies.
This function creates a new contact or company in the CRM.
Whether this record is a contact or company record. If true, it will create a company record.
The id of the user this contact should be assigned to.
The full name of the contact or company record. If this is a company record, the name must be unique.
The email address(es) for this contact. Can be a single string, an array of strings, or an array of Email
objects.
object
with the following fields:The actual email address (e.g. test@fake.com) for this contact.
The type of this email address (e.g. Work, Personal, etc.). If you leave this blank, it will default to the first option available. If you pass a value, it must match one of the values in the CRM.
The phone number(s) for this contact. Can be a single string, an array of strings, or an array of Phone
objects.
object
with the following fields:The actual phone number for this contact.
The type of this phone number (e.g. Work, Mobile, etc.). If you leave this blank, it will default to the first option available. If you pass a value, it must match one of the values in the CRM.
The name of the company this contact works at. If the company does not exist in the CRM, a new company record will be created.
The text to store in this field.
The address(es) for this contact. Can be a single string, an array of strings, or an array of Address
objects.
object
with the following fields:The street address for this contact.
The city for this contact.
The state for this contact.
The zip code for this contact.
The country for this contact.
The type of this address (e.g. Work, Home, etc.). If you leave this blank, it will default to the first option available. If you pass a value, it must match one of the values in the CRM.
The text to store in this field.
The website(s) for this contact. Can be a single string, an array of strings, or an array of Website
objects.
object
with the following fields:The actual website for this contact.
The date value for this field. If the field is an annual date, 0000-M-D
is preferred if no year is specified but M-D
is also accepted.
Whether this record is a contact or company record. If true, it will create a company record.
The id of the user this contact should be assigned to.
The full name of the contact or company record. If this is a company record, the name must be unique.
The email address(es) for this contact. Can be a single string, an array of strings, or an array of Email
objects.
object
with the following fields:The actual email address (e.g. test@fake.com) for this contact.
The type of this email address (e.g. Work, Personal, etc.). If you leave this blank, it will default to the first option available. If you pass a value, it must match one of the values in the CRM.
The phone number(s) for this contact. Can be a single string, an array of strings, or an array of Phone
objects.
object
with the following fields:The actual phone number for this contact.
The type of this phone number (e.g. Work, Mobile, etc.). If you leave this blank, it will default to the first option available. If you pass a value, it must match one of the values in the CRM.
The address(es) for this contact. Can be a single string, an array of strings, or an array of Address
objects.
object
with the following fields:The street address for this contact.
The city for this contact.
The state for this contact.
The zip code for this contact.
The country for this contact.
The type of this address (e.g. Work, Home, etc.). If you leave this blank, it will default to the first option available. If you pass a value, it must match one of the values in the CRM.
The text to store in this field.
The website(s) for this contact. Can be a single string, an array of strings, or an array of Website
objects.
object
with the following fields:The actual website for this contact.
This function edits a contact or company.
The id of the contact to edit.
The id of the user this contact should be assigned to.
The full name of the contact or company record. If this is a company record, the name must be unique.
The email address(es) for this contact. Can be a single string, an array of strings, or an array of Email
objects.
object
with the following fields:The actual email address (e.g. test@fake.com) for this contact.
The type of this email address (e.g. Work, Personal, etc.). If you leave this blank, it will default to the first option available. If you pass a value, it must match one of the values in the CRM.
The phone number(s) for this contact. Can be a single string, an array of strings, or an array of Phone
objects.
object
with the following fields:The actual phone number for this contact.
The type of this phone number (e.g. Work, Mobile, etc.). If you leave this blank, it will default to the first option available. If you pass a value, it must match one of the values in the CRM.
The name of the company this contact works at. If the company does not exist in the CRM, a new company record will be created.
The text to store in this field.
The address(es) for this contact. Can be a single string, an array of strings, or an array of Address
objects.
object
with the following fields:The street address for this contact.
The city for this contact.
The state for this contact.
The zip code for this contact.
The country for this contact.
The type of this address (e.g. Work, Home, etc.). If you leave this blank, it will default to the first option available. If you pass a value, it must match one of the values in the CRM.
The text to store in this field.
The website(s) for this contact. Can be a single string, an array of strings, or an array of Website
objects.
object
with the following fields:The actual website for this contact.
The date value for this field. If the field is an annual date, 0000-M-D
is preferred if no year is specified but M-D
is also accepted.
The id of the contact to edit.
The id of the user this contact should be assigned to.
The full name of the contact or company record. If this is a company record, the name must be unique.
The email address(es) for this contact. Can be a single string, an array of strings, or an array of Email
objects.
object
with the following fields:The actual email address (e.g. test@fake.com) for this contact.
The type of this email address (e.g. Work, Personal, etc.). If you leave this blank, it will default to the first option available. If you pass a value, it must match one of the values in the CRM.
The phone number(s) for this contact. Can be a single string, an array of strings, or an array of Phone
objects.
object
with the following fields:The actual phone number for this contact.
The type of this phone number (e.g. Work, Mobile, etc.). If you leave this blank, it will default to the first option available. If you pass a value, it must match one of the values in the CRM.
The address(es) for this contact. Can be a single string, an array of strings, or an array of Address
objects.
object
with the following fields:The street address for this contact.
The city for this contact.
The state for this contact.
The zip code for this contact.
The country for this contact.
The type of this address (e.g. Work, Home, etc.). If you leave this blank, it will default to the first option available. If you pass a value, it must match one of the values in the CRM.
The text to store in this field.
The website(s) for this contact. Can be a single string, an array of strings, or an array of Website
objects.
object
with the following fields:The actual website for this contact.
This function deletes a contact or company.
The Id for the contact you want to delete. If you don't already know the contact's Id, you can find it using GetContacts
.
This function retrieves a contact or company record.
The Id for the contact you want to get. If you don't already know the contacts's Id, you can get it using GetContacts
.
This function retrieves a set of contact or company records from a user's account.
List of Ids for the contacts you want to get. If you don't already know the contacts' Ids, you can get them using GetContacts
.
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.
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.
Given search terms, return a list of matching contacts. If no search terms are provided, return all contacts. The advanced filter system is documented here.
Values to search for in record fields.
If true, only return contacts that the current user has permission to edit.
Contacts
, Companies
Limits the type of records that get returned from this function.
Only returns contacts assigned to these UserIds. If null, return all contacts.
Relevance
, FirstName
, LastName
, CompanyName
, DateCreated
, LastUpdate
Which field to sort by; by default, will use a ranking heuristic.
Ascending
, Descending
Direction for sort order.
List of filters to apply to search results. See documentation here.
object
with the following fields:Name of field to filter on.
Type of filter operation to perform.
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.
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.