I4A API 2.0: Difference between revisions
Line 72: | Line 72: | ||
<code>lastName:Doe,email:test@domain.com</code>. This will search for contacts where lastName = 'Doe' AND email = 'test@domain.com'. | <code>lastName:Doe,email:test@domain.com</code>. This will search for contacts where lastName = 'Doe' AND email = 'test@domain.com'. | ||
'''Advanced usage:''' You can write your own query filter as such: <code>city ='Chicago' OR email LIKE '%i4a%'</code> '''Note:''' do not include the keyword 'WHERE'. | '''Advanced usage:''' You can write your own query filter as such: <code>city ='Chicago' OR email LIKE '%i4a%'</code> '''Note:''' do not include the keyword 'WHERE'. You may use other query operators (= > < >= <= <> BETWEEN LIKE IN). Date values to query against must be in the format 'yyyy-MM-dd'. | ||
|- | |- | ||
| <code>filterOperator</code> | | <code>filterOperator</code> |
Revision as of 16:40, 26 October 2022
Security
For security purposes, I4A API 2 will only work on a secure port through HTTPS. To access any of the API functionality, you must first authenticate. Information is available on the API Settings page on how to obtain the values needed to authenticate and update them, if need be.
Authentication Endpoint
POST /i4a/api2/authenticate/
Parameters
username
form | required |
See API Settings page on how to obtain the value. |
password
form | required |
See API Settings page on how to obtain the value. |
token
form | required |
See API Settings page on how to obtain the value. |
Example:
curl --location --request POST 'https://<yourdomain.com>/i4a/api2/authenticate' \
--form 'username="XXXXXXXX"' \
--form 'password="XXXXXXXX"' \
--form 'token="XXXXXX-XXXX-XXXXX-XXXXXXXXXXX"'
Response:
{
"expiration": "{ts '2022-10-25 16:03:47'}",
"success": true,
"authKey": "XXXXXX-XXXX-XXXXX-XXXXXXXXXXX",
"error": ""
}
Retrieving Data
Once you have successfully obtained the authKey, you can then access a few different read-only endpoints. Note: Your authKey will expire after 4 hours.
Contacts Endpoint
POST /i4a/api2/contacts/
Parameters
authKey
header | required |
The authKey you received during authentication. |
Content-Type
header | required |
Set this to application/json .
|
filter
form | optional |
This is the query filter.
Basic usage: Advanced usage: You can write your own query filter as such: |
filterOperator
form | optional |
This can be either 'OR' or 'AND' (default). Only applicable when filter is used with colons. |
Example:
curl --location --request POST 'https://yourdomain.com/i4a/api2/contacts/' \
--header 'authKey: XXXXXXX-XXXX-XXXX-XXXXXXXXXXXXXXXX' \
--header 'Content-Type: application/json' \
--form 'filter="lastName:Doe"'
Response:
{
"success": true,
"data": [
{
"zip": "12345",
"corpexpiration": "2034-11-01 01:00:00.0",
"c_user_memo": "",
"firstname": "Tim",
"customid": "645",
"email": "tim@test.com",
"contactid": "693295",
"corptype": "Regular",
"country": "US",
"c_user_test_default_no": false,
"lastname": "Doe",
"iscorp": 1,
"corpjoindate": "2017-09-12 01:00:00.0",
"id": "693295",
"middle": "J.",
"c_user_pets": "cats,monkeys",
"c_user_photo": "",
"orgid": "115893",
"suffix": "",
"creationdate": "2018-04-16 12:18:30.0",
"modifiedby": "693295",
"c_user_gender": "",
"modifieddate": "2021-12-08 13:22:47.0",
"isemail": 0,
"c_user_graduationdate": "",
"datedropped": "",
"isactive": 1,
"daterenewed": "2022-12-09 01:00:00.0",
"company": "HQC Inc.",
"region": "",
"c_user_birthday": "",
"prefix": "Mr.",
"review": 0,
"c_user_certified": "",
"ccmail": "",
"c_user_uploadbio": "",
"phone": "5551234",
"state": "OH",
"paidthru": "2034-11-01 01:00:00.0",
"c_user_end_market": "",
"primarycontact": "693295",
"url": "",
"member_status": "",
"address1": "123 Happy Lane",
"isdirectory": 1,
"address3": "",
"address2": "",
"datejoined": "2007-07-23 05:00:00.0",
"c_user_occupation": "",
"addid": "140462",
"groupid": 0,
"city": "Chicago",
"isprimary": 1,
"informalname": "",
"title": "",
"fax": "",
"c_user_resume": ""
},
{
"zip": "",
"corpexpiration": "",
"c_user_memo": "",
"firstname": "John",
"customid": "649",
"email": "john@site.com",
"contactid": "693681",
"corptype": "",
"country": "US",
"lastname": "Doe",
"iscorp": 0,
"corpjoindate": "",
"id": "693681",
"middle": "",
"c_user_photo": "",
"orgid": "150514",
"suffix": "",
"creationdate": "2021-11-08 15:31:50.0",
"modifiedby": "692686",
"c_user_gender": "",
"modifieddate": "2021-11-08 15:31:50.0",
"isemail": 0,
"c_user_graduationdate": "",
"datedropped": "",
"isactive": 1,
"daterenewed": "",
"company": "",
"region": "",
"c_user_birthday": "",
"prefix": "",
"review": 0,
"c_user_certified": "",
"ccmail": "",
"c_user_uploadbio": "",
"phone": "555-1234",
"state": "OH",
"paidthru": "",
"c_user_end_market": "",
"primarycontact": "693681",
"url": "",
"member_status": "",
"address1": "555 Street",
"isdirectory": 1,
"address3": "",
"address2": "",
"datejoined": "",
"c_user_occupation": "",
"addid": "140467",
"groupid": "693681",
"city": "Cincinnati",
"isprimary": 1,
"informalname": "",
"title": "",
"fax": "",
"c_user_resume": ""
}
],
"error": "",
"page": 1,
"pagesize": "100"
}
Views Endpoint
POST /i4a/api2/views/