Introduction #
Here is how the CentrixOne CRM API works:
- Read = GET
- Add/edit = POST
- Everything happens in a table from zero to several contacts. (In reading as in addition / modification)
- The result “success” is always in JSON (Content Type: application / json) with “Result” at the value “Success”.
- In case of error, just read the text content returned with the codes 4XX and 5XX.
- It is possible to receive a “503 Service Unavailable” code with a “Retry-After” header when the service is not available. For the moment, I advise to try again later with any errors 4XX, 5XX or the 200 which are not in “application / json”. This part remains to be improved.
- There is a html read cache system and that’s why all the parameters are in the URL. You will receive a “Last-Modified” header for reading. If you redo the same query with the header “If-Modified-Since”, you will receive a code “304 Not Modified” if nothing in the result has been modified. Convenient for mobile applications and software that request the same query at regular intervals.
How can I obtain my API key and CentrixOne account number? #
As this information is confidential, you need to send a request by email to support@centrix.one. Our team will validate your identity and the use you will make of this information, then an API key will be generated by our dev team.
Read contacts #
Here are some examples of basic filters:
- C9999 to return the contact with the Centrix identifier 9999
- E9999 to return the contact with External ID 9999 (your login)
- S999 to return the contacts from the list 999
- All these parameters can be specified at the same time, they will be joined in “AND”. Examples;
- “C1234, C125” will return contacts 1234 and 125 as well as contact information to all lists. (A contact can be in one or more lists.)
- “C1234, S999” will return contact 1234 if it belongs to the list S999 and only the contact information for the list 999
- “S999” will return all contacts and contact information for this list. (A list is internally called “Script” in Centrix, which goes back to the time of call scripts in call center.)
- “E9999” will return contact with externalID (your username) 9999 as well as contact information to all lists.
- Etc.
The extension of the page is “.awp”.
Here are the optional parameters:
- fields : List of requested fields separated by comma. Value “all” return all fields. (Make a query with “all” to see the list of available fields.)
- Exception; the fields in “ContactScript” must be preceded by “cs_” in the list of requested fields. Ex .: cs_salesrep1
- Abbreviation; CC_ = Contact_Cusom_, AC_ = Account_Custom_, CCS_ = Contact_Custom_Script_, ACS_ = Account_Custom_Script_
- Multiple choices in custom fields have “::” as separator.
- filters : Allows you to specify advanced filters. The elements are separated by TAB (% 09 in the URL) and the conditions are separated by LF (% 0A in the URL)
- Structure;
- Separator prefix : “(“, “((“, “AND”, “OR”,”AND(“,”OR(“, etc.
- Nome of fields : “company”, etc.
- Operator : “=”, “<>”, “<“, “>”,”<=”, “>=”,”[=”,”=]”, “[=]”
- Value : “Test”, etc. (Insensible Maj/Min)
- Separator suffix : “)”,”))”,etc.
- It is possible to specify a basic filter at the same time (which will be attached in “AND”) or to specify “all” as the basic filter to disable the basic filter.
- Structure;
The result is a JSON with an array of Contacts that in each contact will have a ContactScript table. (The lists)
Here are some examples:
- https://api.centrix.one/API_WEB/EN/Contacts-Account-APIKey.awp?fields=all
- https://api.centrix.one/API_WEB/EN/Contacts-Account-APIKey-C999999.awp?fields=all
- https://api.centrix.one/API_WEB/EN/Contacts-Account-APIKey-all.awp?fields=all&filters=%09company%09%5B=%09test%09%0AOR%09company%09%5B=%09centrix%09
- https://api.centrix.one/API_WEB/EN/Contacts-Account-APIKey-S9999.awp?fields=all&filters=%09company%09%5B=%09test%09%0AOR%09company%09%5B=%09centrix%09
Add or edit contacts #
- Same URL as reading except with a POST request and a JSON with the same structure as the read one. (A “Contacts” table that contains a “ContactScript” table in each contact)
- The value “BaseFilter” of the URL is ignored in this case, but you still have to specify one. Ex .: “C” for contact, it does not matter.
- If a field is not received, its value is not changed. If it is received empty, it will be replaced by the empty value.
- The values of the fields of type “account” will be replaced in all the contacts of the same account. (Everything that appears in the “Account” tabs in Centrix)
- If “idc” is specified, the contact will be changed.
- If “idc” is not specified and “ExternalID” is specified, the contact with this “ExternalID” is searched for and modified or created if it is not found.
- If neither “idc” nor “ExternalID” is specified, the contact is created.
- In a contact, if a list is specified (“ids”), the account and contact information will be changed for this list. If the contact is not a member of this list, he will become a member automatically. It is not possible for the moment to remove a contact from a list by the API. (It’s possible in Centrix UI)
Links to other CentrixOne APIs #
- https://api.centrix.one/API_WEB/EN/Opportunities-Account-APIKey-S9999.awp?fields=all
- https://api.centrix.one/API_WEB/EN/Users-Account-APIKey-all.awp?fields=all
- https://api.centrix.one/API_WEB/EN/Scripts-Account-APIKey.awp?fields=all (List the contact lists of the account.)
- https://api.centrix.one/API_WEB/EN/RevenueTypes-Account-APIKey-all.awp?fields=all
- https://api.centrix.one/API_WEB/EN/RevenueTypesSub1-Account-APIKey-all.awp?fields=all
- https://api.centrix.one/API_WEB/EN/RevenueTypesSub2-Account-APIKey-all.awp?fields=all