Agile CRM Node JS API
Agile CRM is a new breed CRM software with sales and marketing automation.
Table of contents
- 1 To get a contact by email
- 2 To get a contact by contact ID
- 3 To create a contact
- 4 To update a contact
- 5 To delete a contact
- 6 To update tags to a contact
- 7 To delete tags to a contact
- 8 Change owner of a contact
- 1 To get a deal by deal ID
- 2 To get deals by contact id
- 3 To create a deal
- 4 To update a deal
- 5 To delete a deal
- 6 Get deal source
- 1 Create a note to a contact
- 2 Update a note to a contact
- 3 Get note by contact ID
- 4 Delete a note by contact ID and note ID
- 1 Create a task to a contact
- 2 Create a task to a contact by email ID
- 3 Update a task to a contact
- 4 Get a task by task ID
- 5 Delete a task by task ID
NPM Agile CRM Installation
$ npm install agile_crm
Requirements
-
Two files required agilecrm.js and test.js OR
-
Setting Domain Name and API Key
In the above image, API Key is present at the "API & Analytics" tab at https://mycompany.agilecrm.com/#analytics-code
.
Domain Name : mycompany
API Key : myagilecrmapikey
So you have to update your
var AgileCRMManager = require("./agilecrm.js");
var obj = new AgileCRMManager("DOMAIN", "KEY", "EMAIL");
var success = function (data) {
console.log(data);
console.log("hello");
};
var error = function (data) {
console.log(data);
};
API's details
Changes
API supports the promise.
Use a new object contactAPIPromise.
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; objcontactAPIPromise
Errors for Add and Update now do not print a stack trace if you will get API error..
1. Contact
1.1 To get a contact by email
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
1.2 To get a contact by contact ID
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
1.3 To create a contact
Acceptable request Representation:
"star_value": "4" "lead_score": "92" "tags": "Lead" "Likely Buyer" "properties": "type": "SYSTEM" "name": "first_name" "value": "Los " "type": "SYSTEM" "name": "last_name" "value": "Bruikheilmer" "type": "SYSTEM" "name": "company" "value": "steady.inc" "type": "SYSTEM" "name": "title" "value": "VP Sales" "type": "SYSTEM" "name": "email" "subtype": "work" "value": "clinton@walt.ltd " "type": "SYSTEM" "name": "address" "value": "{\"address\":\"225 George Street\",\"city\":\"NSW\",\"state\":\"Sydney\",\"zip\":\"2000\",\"country\":\"Australia\"}" "type": "CUSTOM" "name": "My Custom Field" "value": "Custom value"
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; var contact = "lead_score": "92" "tags": "Lead" "Likely Buyer" "properties": "type": "SYSTEM" "name": "first_name" "value": "Los " "type": "SYSTEM" "name": "email" "subtype": "work" "value": "sila@tester.com" "type": "SYSTEM" "name": "address" "value": "{\"address\":\"225 George Street\",\"city\":\"NSW\",\"state\":\"Sydney\",\"zip\":\"2000\",\"country\":\"Australia\"}" ; objcontactAPI;
1.4 To update a contact
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; var update_contact = "id": "5698936018829312" "properties": "type": "SYSTEM" "name": "first_name" "value": "Losalitest" "type": "SYSTEM" "name": "last_name" "value": "Lee" ;objcontactAPI;
1.5 To delete a contact
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
1.6 To update tags to a contact
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; var update_tags = "id": "5671839405703168" "tags": "test1" "test2" ; objcontactAPI;
1.7 To delete tags to a contact
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; var delete_tags = "id": "5671839405703168" "tags": "test1" ; objcontactAPI;
1.8 Change owner of a contact
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
2. Deal
2.1 To get a deal by deal ID
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
2.2 To get deals by contact id
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
2.3 To create a deal
Acceptable request Representation:
"name": "Deal-Tomato" "expected_value": "500" "probability": "75" "close_date": 1455042600 "milestone": "Proposal" "contact_ids": "5758948741218304" "custom_data": "name": "Group Size" "value": "10"
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; var deal = "name": "Deal-Tomato" "expected_value": "500" "probability": "75" "close_date": 1455042600 "milestone": "Proposal" "contact_ids": "5758948741218304" "custom_data": "name": "Group Size" "value": "10" ; objcontactAPI;
2.4 To update a deal
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; var update_deal = "id": "5122047336251392" "expected_value": "1000" "contact_ids": "5675392618725376" "5744178885558278" "custom_data": "name": "dealTester" "value": "hello hello2" ; objcontactAPI;
2.5 To delete a deal
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
2.6 Get deal source
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
3. Note
3.1 Create a note to a contact
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; var note = "subject": " Note subject" "description": "Note description" "contact_ids": "5688267051630592" "5721389839417344" ; objcontactAPI;
3.2 Update a note to a contact
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; var update_note = "id": "5754615706419200" "subject": "Test" "description": "Sample test updated1" "contact_ids": "5630286201094144" ; objcontactAPI;
3.3 Get note by contact ID
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
3.4 Delete a note by contact ID and note ID
- Delete a note from a contact
- first parameter ID is contact and second one is note ID
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
4. Task
4.1 Create a task to a contact
- Task type accepeted value : CALL, EMAIL, FOLLOW_UP, MEETING, MILESTONE, SEND, TWEET, OTHER
- Task priority_type accepeted value : HIGH, NORMAL, LOW
- Task due accepeted value : epoch time in miliseconds
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; var task = "subject": "test" "contacts": "5630286201094144" "type": "EMAIL" "priority_type": "HIGH" "due": 11545245654 ; objcontactAPI;
4.2 Create a task to a contact by email ID
- Task type accepeted value : CALL, EMAIL, FOLLOW_UP, MEETING, MILESTONE, SEND, TWEET, OTHER
- Task priority_type accepeted value : HIGH, NORMAL, LOW
- Task due accepeted value : epoch time in miliseconds
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; var task_email = "subject": "test email task" "type": "EMAIL" "priority_type": "HIGH" "due": 11545245654 ; objcontactAPI;
4.3 Update a task to a contact
- Task type accepeted value : CALL, EMAIL, FOLLOW_UP, MEETING, MILESTONE, SEND, TWEET, OTHER
- Task priority_type accepeted value : HIGH, NORMAL, LOW
- Task due accepeted value : epoch time in miliseconds
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; var update_task = "id": "5637588316585984" "subject": "test updated" "contacts": "5630286201094144" "type": "EMAIL" "priority_type": "HIGH" "due": 11545245654 ; objcontactAPI;
4.4 Get a task by task ID
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
4.5 Delete a task by task ID
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
5. Dynamic filter
5.1 Get contacts by property
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
5.2 Get contacts or companies by tag
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;
5.3 Get companies by property
var AgileCRMManager = ; var obj = "DOMAIN" "KEY" "EMAIL"; var { console; }; var { console; }; objcontactAPI;