The Less Annoying CRM API is a simple web service that allows programmers to connect third-party applications with Less Annoying CRM. It is particularly well suited for entering leads from web forms. If there's some functionality that you're unable to perform with the current API functions, please let us know, and we'll be happy to consider adding new functions to support your needs.
Accessing our API is as simple as sending an HTTP request to our server. In this help section, we'll go over everything you need to know to start using the API, and we have PHP code examples to help you get started.
Generating your API key
In order to access the API, you need two pieces of information. The first is a User Code which is a unique code that we use to identify your account. The other is an API key which acts as a password when you connect to the API. You can get both of those on the API page in your settings section. Just click on the "Generate a new API key" to display your User Code (a unique identifier for your account) and a new key. You'll need to remember both of those later when you start writing code.
Please note that anyone who knows your User Code and API key can access your account through the API. If you're ever concerned that there may be unauthorized access, you can go back to the the API page, deactivate your key, and then generate a new one.
Connecting to the API
Once you've generated your API key, connecting to the API is easy. All you need to do is send an HTTPS request to api.lessannoyingcrm.com. You can use POST, GET, or whatever else you want (it's all the same to us).
All of the API functions are called from the same URL, so all you need to do is pass the correct parameters to us and we'll take it from there. Each API call must include the following four parameters:
- UserCode - the unique code identifying who you are (you get this when you generate your API key)
- APIToken - the security credentials which will give you access to the API
- Function - the name of the function you want to call (like "CreateContact")
- Parameters - a JSON-encoded array of parameters to pass to the function
As you can see, the API returns a JSON encoded array. One of the items in that array is called "Success" and it will return true or false. If false, there will also be an "Error" so you can figure out what went wrong. If the API call was a success, there will normally be other data in the array such as the ID of the record you just created.
Here's a very simple example of a PHP function that calls the API and includes these four parameters in the URL:
Finding the unique Ids for objects and people in the CRM
Some API functions take Ids for people (i.e. users of the CRM) and records/objects that you created using the Less Annoying CRM GUI -- they aren't a part of the main interface, so you are unlikely to know off-hand what those are or how to find them.
The first step is to head to your API Settings page.
At the bottom of the API settings page, you'll see an option that says:
If you need to see a list of Ids for your account to use when writing code for the API, click here.
Click on the "click here" to expand a section of this page that will lay out your various Ids that you might need while working with the API. You'll see a variety of different types of Ids in this area here, including:
- User Id
- Pipeline Id
- Pipeline Status Id
- Pipeline Custom Field Id
You'll also see a section at the bottom of the page that shows a log of your most recent calls to the API, which can be useful for troubleshooting as you work on your custom integration.
Testing the API with a sandbox account
The Less Annoying CRM API is still very sparse, and so there isn't an official sandbox for testing out your code. However, there are two different hacks you can use if you need to test things out before going live.
Option 1: Use a demo account. Open up a different browser (so that you won't be logged out of your main LACRM account) and go to www.lessannoyingcrm.com. There's a link under the signup form to try out a demo account. This account is somewhat limited because you won't be able to log back into it later, but you can set up an API key and do some quick testing.
Option 2: Create a test user on your account. This option will end up costing you an extra $15/month for the test user account, but it might be worth it to have a more robust testing system (or you can just cancel the account once you're done with development). Just add a new user to your account and set it so that user doesn't share contacts with anyone else at the company. Then log in as the test user and generate an API key to test with.. Because that user's contacts will be private, any test data that you add won't clutter up the actual CRM.