API

TLDCRM Has Robust Ingress and Egress API Endpoints that can be used with a variety of third party automation platforms and reporting tools such as Microsoft BI and other Data lake platforms such as Snowflake.

API Basics

The first step in using the API is Creating and Using an API Key, as well as setting up basic Endpoint Security and IP Address Access Protections to make sure your data is safe.

Creating an API Key

Go to Settings → API to create an API key. You must have Superadmin Privileges or the Manage APIs Ability to see this section.

Click the Green + Icon to create an API.

For most general use cases you will be using a v1 API type until our V2 API is complete.

Securing your API

Using API ID and API Key

The API Key and ID can be passed via almost any GET, POST, PUT, or DELETE as parameters but the preferred and most secure method is via headers using tld-api-id: {api_id} and tld-api-key: {api_key}

You can also send a pair of api and apikey, or api_id and api_key as alternatives if your third party system has some sort of limitation.

Both API ID and API Key are required with every Request.

Request Body Types

All API Requests support JSON Raw Body Content as long as Content-Type: application/json is passed via headers. JSON is the recommended format to work with the API.

The Egress API supports GET or POST Methods via form-data or x-www-form-urlencoded Body data aside from JSON.

The Ingress API supports POST, PUT & DELETE via form-data or x-www-form-urlencoded Body Data and follow REST Standards related to the specific endpoint if that function is available.

POST is normally used for Adding new Data
PUT is normally used for Updating or Replacing Data as well as for Bulk Modifications of Data.
DELETE is normally used for Removing or Deactivating Data. Most Deletes set a Trashed State.

Return Types

The Egress API supports 3 return types. By Default data is output along with debug data in the response object as an array of objects related to your query. This is the default return type.

The format Parameter can be used to modify this default behavior. It can be provided via the URL or as a Form Parameter

&format=json / &format=stream

This format will stream a flat array of objects as JSON and is useful for very large data requests as it is memory performant. It omits performance metrics.

&format=csv

This format will stream a CSV file instead of JSON and is memory performant.

The Ingress API will return a JSON Result similar to the default behavior of the Egress API and does not support format modification as it is normally informational return data. Return data will vary but they will always be encapsulated in the response object.

Account Selection and API Account Exclusivity

All API’s generated are bound to the account they are created on so for example if you created an API on the Sandbox account the domain that that API key would work is https://sandbox.tldcrm.com there are no multi-account API’s.

API Paths

The two main API Paths that are granted are the Egress /api/egress/ and Ingress /api/ingress API's. Egress is used for pulling data, and Ingress is used for Updating Data. Most Ingress or Egress paths relate to a general table or section in TLD or TLDialer. Some are more complex and involve multiple database for reports and have less standardized parameters than those related to a base table. All TLDialer Egress API endpoints can be found under /api/egress/tldialer

Egress API Endpoints

https://esotech.atlassian.net/wiki/spaces/EXTDOC/pages/186744870

TQL ( Total Query Language ) - Working with the Egress API

Ingress API Endpoints