Supported Formats

json, csv

Examples

curl -H "Authorization: Basic BASE64_ENCODED_PUBLIC_KEY_AND_PRIVATE_KEY" "https://[your-subdomain].trackdrive.com/api/v1/calls?page=1&in_progress=true&order=created_at"

Params

Param name
Description
serializer
Optional Blank Value Allowed

This endpoint supports multiple response formats. Pass serializer=name to retrieve data in an alternate format.

  • Must be a value contained in the pick list:
    Acceptable ValueDescription
    callDefault response format.
    call_gridModern response format that returns various foreign keys for use with other API endpoints.
cursor
Optional

The API provides a technique called ‘cursoring' to paginate large result sets. Cursoring separates results into pages (the size of which are defined by the per_page request parameter) and provides a means to move backwards and forwards through these pages. To retrieve cursored results, you initially pass a cursor with a value of -1 to the endpoint. By default, an API endpoint that supports cursoring will assume -1 was passed as cursor if you do not provide one. The response to a cursored request will contain metadata.next_cursor. The next_cursor is the cursor that you should send to the endpoint to receive the next batch of responses. You will know that you have requested the last available page of results when the API responds with a next_cursor = 0.

  • Must be a decimal number.

page
Optional

Return the next page of results.

  • Must be a number.

per_page
Optional

How many results to return per page. The default is 25.

  • Must be a number.

created_at_to
Optional

Date formatted like 2016-01-01 12:25:15 -0500

  • Must be String

created_at_from
Optional

Date formatted like 2016-01-01 12:25:15 -0500

  • Must be String

fulltext
Optional

Search for any record that matches this text

  • Must be String

time_zone
Optional

Date ranges will be parsed using this time zone.

columns
Optional
Specify the columns you would like returned by the API for a given resource. Limiting the columns can significantly increase API response time since only the requested data will be processed. columns=uuid,number,created_at

Must be any combination of:

  • id
  • legacy_id
  • type
  • uuid
  • created_at
  • updated_at
  • deleted_at
  • user_updated_at
  • routes_show_path
  • routes_edit_path
  • external_record_id
  • name
  • recording_url
  • category
  • number_called
  • number_id
  • connected_to
  • caller_number
  • offer
  • user_offer_id
  • offer_id
  • quality_assurance_user_id
  • quality_assurance_name
  • quality_assurance_id
  • agent_id
  • traffic_source
  • user_traffic_source_id
  • traffic_source_id
  • buyer
  • user_buyer_id
  • buyer_id
  • obfuscated_caller_number
  • caller_city
  • caller_country
  • token_values
  • total_duration
  • hold_duration
  • ivr_duration
  • attempted_duration
  • answered_duration
  • agent_duration
  • sub_id
  • schedule_id
  • schedule_name
  • ring_pool_id
  • status
  • buyer_converted
  • buyer_repeat_caller
  • buyer_revenue
  • revenue
  • traffic_source_converted
  • traffic_source_repeat_caller
  • traffic_source_payout
  • payout
  • trackdrive_cost
  • provider_cost
  • call_sid
  • provider
  • outgoing_webhooks_count
  • ended_at
  • contact_field_type
  • disposition_id
  • disposition_key
  • disposition_name
  • disposition_notes
  • hangup_cause
  • Must be String

root
Optional

Pass root=false to return results without a root node and metadata.
For example:
GET /api/v1/calls?root=false will return [call1, call2, call3]
While:
GET /api/v1/calls will return {calls: [call1, call2, call3], metadata: {}}

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

created_at_label
Optional Blank Value Allowed

Dynamic Date String such as “Today” or “This Year”

  • Must be one of: Last 5 Min, Last 15 Min, Last 30 Min, Last Hour, Last 4 Hours, Last 6 Hours, Last 12 Hours, Last Day, Last 2 Days, Today, Yesterday, This Week, Last Week, This Month, Last Month, This Quarter, Last Quarter, Last 6 Months, This Year, Last Year, Lifetime, Custom Range.

offer_repeat_caller
Optional

Match calls where the Traffic Source had a repeat caller.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

buyer_repeat_caller
Optional

Match calls where the Buyer had a repeat caller.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

buyer_converted
Optional

Did the buyer convert?

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

offer_converted
Optional

Did the traffic source convert?

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

in_progress
Optional

Match calls that are on-going

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

placed_on_hold
Optional

Was the call placed on hold?

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

has_recording
Optional

Match calls that have a recording.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

either_converted
Optional

Whether this call's buyer or traffic source has converted.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

buyer_conversion_duplicated_call
Optional

Match calls where the callerID was a duplicate against the Buyer's conversion settings.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

offer_conversion_duplicated_call
Optional

Match calls where the callerID was a duplicate against the Traffic Source's conversion settings.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

no_buyer
Optional

Match calls that didn't connect to a Buyer

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

token_key
Optional

Calls that are tagged with this token will be matched. EG: token_key=buyer_id will return all calls that have a buyer_id token.

  • Must be String

token_value
Optional

Will match calls that are tagged with a token:value. EG: token_key=buyer_id:12345 will return all calls that have a buyer_id token with the value set to 12345.

  • Must be String

order
Optional

Sort results by this field.

  • Must be one of: direction, start_app_duration, number_id, offer_id, traffic_source_id, sub_id, buyer_id, caller_number, updated_at, total_duration, hold_duration, ivr_duration, third_party_cost, charge_total, answered_duration, agent_duration, status, buyer_converted, revenue, offer_converted, payout, outgoing_webhooks_count, created_at, end_time, lead_id.

order_dir
Optional

Sort results in ascending or descending order.

  • Must be one of: desc, asc.

number_id
Optional

Refer to the number api for details

  • Must be a decimal number.

offer_id
Optional

Refer to the offer api for details

  • Must be a decimal number.

schedule_id
Optional

Schedule internal id.

  • Must be a decimal number.

traffic_source_id
Optional

Refer to the traffic source api for details

  • Must be a decimal number.

buyer_id
Optional

Refer to the buyer api for details

  • Must be a decimal number.

buyer_group_ids
Optional

Buyer Group Internal ids.

  • Must be a decimal number.

ring_pool_id
Optional

Refer to the Number Pool api for details

  • Must be a decimal number.

id
Optional

An Integer number eg: 12345

  • Must be a decimal number.

provider_configuration_id
Optional

Refer to the provider api for details

  • Must be a decimal number.

contact_id
Optional

Match calls that were placed by this caller.

  • Must be a decimal number.

status
Optional

Match results that have this status.

  • Must be String

ended_at_to
Optional

Date formatted like 2016-01-01 12:00:15 -0500

  • Must be String

ended_at_from
Optional

Date formatted like 2016-01-01 12:00:15 -0500

  • Must be String


Examples

curl -H "Authorization: Basic BASE64_ENCODED_PUBLIC_KEY_AND_PRIVATE_KEY" "https://[your-subdomain].trackdrive.com/api/v1/calls/17191231234/by_caller_number"

Params

Param name
Description
serializer
Optional Blank Value Allowed

This endpoint supports multiple response formats. Pass serializer=name to retrieve data in an alternate format.

  • Must be a value contained in the pick list:
    Acceptable ValueDescription
    callDefault response format.
    call_gridModern response format that returns various foreign keys for use with other API endpoints.
caller_number
Required

The caller number. EG: +17191112222

  • Must be String

per_page
Optional

How many results to return per page. The default is 25.

  • Must be a number.


GET /api/v1/calls/live_calls
List ongoing live calls.

Supported Formats

json, csv

Examples

curl -H "Authorization: Basic BASE64_ENCODED_PUBLIC_KEY_AND_PRIVATE_KEY" "https://[your-subdomain].trackdrive.com/api/v1/calls/live_calls"

Params

Param name
Description
serializer
Optional Blank Value Allowed

This endpoint supports multiple response formats. Pass serializer=name to retrieve data in an alternate format.

  • Must be a value contained in the pick list:
    Acceptable ValueDescription
    callDefault response format.
    call_gridModern response format that returns various foreign keys for use with other API endpoints.

GET /api/v1/calls/reports
Get statistics on calls by category.

Supported Formats

json, csv

Examples

curl -H "Authorization: Basic BASE64_ENCODED_PUBLIC_KEY_AND_PRIVATE_KEY" "https://[your-subdomain].trackdrive.com/api/v1/calls/reports?category=buyer_id&"

Params

Param name
Description
category
Required
  • Must be String

page
Optional

Return the next page of results.

  • Must be a number.

per_page
Optional

How many results to return per page. The default is 25.

  • Must be a number.

created_at_to
Optional

Date formatted like 2016-01-01 12:25:15 -0500

  • Must be String

created_at_from
Optional

Date formatted like 2016-01-01 12:25:15 -0500

  • Must be String

fulltext
Optional

Search for any record that matches this text

  • Must be String

time_zone
Optional

Date ranges will be parsed using this time zone.

columns
Optional
Specify the columns you would like returned by the API for a given resource. Limiting the columns can significantly increase API response time since only the requested data will be processed. columns=uuid,number,created_at

Must be any combination of:

  • id
  • legacy_id
  • type
  • uuid
  • created_at
  • updated_at
  • deleted_at
  • user_updated_at
  • routes_show_path
  • routes_edit_path
  • external_record_id
  • name
  • recording_url
  • category
  • number_called
  • number_id
  • connected_to
  • caller_number
  • offer
  • user_offer_id
  • offer_id
  • quality_assurance_user_id
  • quality_assurance_name
  • quality_assurance_id
  • agent_id
  • traffic_source
  • user_traffic_source_id
  • traffic_source_id
  • buyer
  • user_buyer_id
  • buyer_id
  • obfuscated_caller_number
  • caller_city
  • caller_country
  • token_values
  • total_duration
  • hold_duration
  • ivr_duration
  • attempted_duration
  • answered_duration
  • agent_duration
  • sub_id
  • schedule_id
  • schedule_name
  • ring_pool_id
  • status
  • buyer_converted
  • buyer_repeat_caller
  • buyer_revenue
  • revenue
  • traffic_source_converted
  • traffic_source_repeat_caller
  • traffic_source_payout
  • payout
  • trackdrive_cost
  • provider_cost
  • call_sid
  • provider
  • outgoing_webhooks_count
  • ended_at
  • contact_field_type
  • disposition_id
  • disposition_key
  • disposition_name
  • disposition_notes
  • hangup_cause
  • Must be String

root
Optional

Pass root=false to return results without a root node and metadata.
For example:
GET /api/v1/calls?root=false will return [call1, call2, call3]
While:
GET /api/v1/calls will return {calls: [call1, call2, call3], metadata: {}}

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

offer_repeat_caller
Optional

Match calls where the Traffic Source had a repeat caller.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

buyer_repeat_caller
Optional

Match calls where the Buyer had a repeat caller.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

buyer_converted
Optional

Did the buyer convert?

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

offer_converted
Optional

Did the traffic source convert?

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

in_progress
Optional

Match calls that are on-going

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

placed_on_hold
Optional

Was the call placed on hold?

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

has_recording
Optional

Match calls that have a recording.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

either_converted
Optional

Whether this call's buyer or traffic source has converted.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

buyer_conversion_duplicated_call
Optional

Match calls where the callerID was a duplicate against the Buyer's conversion settings.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

offer_conversion_duplicated_call
Optional

Match calls where the callerID was a duplicate against the Traffic Source's conversion settings.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

no_buyer
Optional

Match calls that didn't connect to a Buyer

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

token_key
Optional

Calls that are tagged with this token will be matched. EG: token_key=buyer_id will return all calls that have a buyer_id token.

  • Must be String

token_value
Optional

Will match calls that are tagged with a token:value. EG: token_key=buyer_id:12345 will return all calls that have a buyer_id token with the value set to 12345.

  • Must be String

order
Optional

Sort results by this field.

  • Must be one of: direction, start_app_duration, number_id, offer_id, traffic_source_id, sub_id, buyer_id, caller_number, updated_at, total_duration, hold_duration, ivr_duration, third_party_cost, charge_total, answered_duration, agent_duration, status, buyer_converted, revenue, offer_converted, payout, outgoing_webhooks_count, created_at, end_time, lead_id.

order_dir
Optional

Sort results in ascending or descending order.

  • Must be one of: desc, asc.

number_id
Optional

Refer to the number api for details

  • Must be a decimal number.

offer_id
Optional

Refer to the offer api for details

  • Must be a decimal number.

schedule_id
Optional

Schedule internal id.

  • Must be a decimal number.

traffic_source_id
Optional

Refer to the traffic source api for details

  • Must be a decimal number.

buyer_id
Optional

Refer to the buyer api for details

  • Must be a decimal number.

buyer_group_ids
Optional

Buyer Group Internal ids.

  • Must be a decimal number.

ring_pool_id
Optional

Refer to the Number Pool api for details

  • Must be a decimal number.

id
Optional

An Integer number eg: 12345

  • Must be a decimal number.

provider_configuration_id
Optional

Refer to the provider api for details

  • Must be a decimal number.

contact_id
Optional

Match calls that were placed by this caller.

  • Must be a decimal number.

status
Optional

Match results that have this status.

  • Must be String

ended_at_to
Optional

Date formatted like 2016-01-01 12:00:15 -0500

  • Must be String

ended_at_from
Optional

Date formatted like 2016-01-01 12:00:15 -0500

  • Must be String


GET /api/v1/calls/stats
Get statistics on calls by category and interval.

Supported Formats

json

Examples

curl -H "Authorization: Basic BASE64_ENCODED_PUBLIC_KEY_AND_PRIVATE_KEY" "https://[your-subdomain].trackdrive.com/api/v1/calls/stats/?group_by=status&created_at_from=2024-04-19 01:39:46 UTC&created_at_to=2024-04-19 13:39:46 +0000&stat=count"

Params

Param name
Description
group_by
Required

Group calls by one of these attributes.

  • Must be one of: buyer_converted, offer_converted, status, created_at_five_minutes, created_at_day, created_at_week, created_at_month.

stat
Required

Return statistics on the grouped calls by one of these numeric columns.

  • Must be one of: count, revenue, profit, cost.

created_at_to
Required

Date formatted like 2016-01-01 12:25:15 -0500

  • Must be String

created_at_from
Required

Date formatted like 2016-01-01 12:25:15 -0500

  • Must be String

page
Optional

Return the next page of results.

  • Must be a number.

offer_repeat_caller
Optional

Match calls where the Traffic Source had a repeat caller.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

buyer_repeat_caller
Optional

Match calls where the Buyer had a repeat caller.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

buyer_converted
Optional

Did the buyer convert?

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

offer_converted
Optional

Did the traffic source convert?

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

in_progress
Optional

Match calls that are on-going

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

placed_on_hold
Optional

Was the call placed on hold?

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

has_recording
Optional

Match calls that have a recording.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

either_converted
Optional

Whether this call's buyer or traffic source has converted.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

buyer_conversion_duplicated_call
Optional

Match calls where the callerID was a duplicate against the Buyer's conversion settings.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

offer_conversion_duplicated_call
Optional

Match calls where the callerID was a duplicate against the Traffic Source's conversion settings.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

no_buyer
Optional

Match calls that didn't connect to a Buyer

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

token_key
Optional

Calls that are tagged with this token will be matched. EG: token_key=buyer_id will return all calls that have a buyer_id token.

  • Must be String

token_value
Optional

Will match calls that are tagged with a token:value. EG: token_key=buyer_id:12345 will return all calls that have a buyer_id token with the value set to 12345.

  • Must be String

order
Optional

Sort results by this field.

  • Must be one of: direction, start_app_duration, number_id, offer_id, traffic_source_id, sub_id, buyer_id, caller_number, updated_at, total_duration, hold_duration, ivr_duration, third_party_cost, charge_total, answered_duration, agent_duration, status, buyer_converted, revenue, offer_converted, payout, outgoing_webhooks_count, created_at, end_time, lead_id.

order_dir
Optional

Sort results in ascending or descending order.

  • Must be one of: desc, asc.

number_id
Optional

Refer to the number api for details

  • Must be a decimal number.

offer_id
Optional

Refer to the offer api for details

  • Must be a decimal number.

schedule_id
Optional

Schedule internal id.

  • Must be a decimal number.

traffic_source_id
Optional

Refer to the traffic source api for details

  • Must be a decimal number.

buyer_id
Optional

Refer to the buyer api for details

  • Must be a decimal number.

buyer_group_ids
Optional

Buyer Group Internal ids.

  • Must be a decimal number.

ring_pool_id
Optional

Refer to the Number Pool api for details

  • Must be a decimal number.

id
Optional

An Integer number eg: 12345

  • Must be a decimal number.

provider_configuration_id
Optional

Refer to the provider api for details

  • Must be a decimal number.

contact_id
Optional

Match calls that were placed by this caller.

  • Must be a decimal number.

status
Optional

Match results that have this status.

  • Must be String

ended_at_to
Optional

Date formatted like 2016-01-01 12:00:15 -0500

  • Must be String

ended_at_from
Optional

Date formatted like 2016-01-01 12:00:15 -0500

  • Must be String


POST /api/v1/calls
Make an outbound phone call.

Params

Param name
Description
serializer
Optional Blank Value Allowed

This endpoint supports multiple response formats. Pass serializer=name to retrieve data in an alternate format.

  • Must be a value contained in the pick list:
    Acceptable ValueDescription
    callDefault response format.
    call_gridModern response format that returns various foreign keys for use with other API endpoints.
from
Required

The call will originate from this address (+E.164 formatted phone number.) Example: +18665550001

  • Must be String

to
Required

The call will be placed to this receiving address (+E.164 formatted phone number.) Example: +18665550001

  • Must be String

lead_id
Optional

Optional. Associate this call with this lead.

schedule_id
Optional

Optional. If a lead exists on this schedule, this call will be associated with it. If no lead currently exists, one will be created, and it will be added to this schedule.

offer_id
Optional

Optional. Associate this call with a matching lead on this offer. If no lead currently exists, one will be created on this offer.


GET /api/v1/calls/:id
Get a call by id or uuid.

Examples

curl -H "Authorization: Basic BASE64_ENCODED_PUBLIC_KEY_AND_PRIVATE_KEY" "https://[your-subdomain].trackdrive.com/api/v1/calls/5cc8897c-ad0f-44cb-8ea7-8f7736ae76f1"

Params

Param name
Description
serializer
Optional Blank Value Allowed

This endpoint supports multiple response formats. Pass serializer=name to retrieve data in an alternate format.

  • Must be a value contained in the pick list:
    Acceptable ValueDescription
    callDefault response format.
    call_gridModern response format that returns various foreign keys for use with other API endpoints.
id
Optional

Find the call by Call ID or Call UUID.
Example ID 123895022.
Example UUID c3b20b12-3b3b-4322-b15d-0f1c5f653479

  • Must be String


GET /api/v1/calls/:id/events
Advanced Call Analysis provides detailed event logs of telephonic interactions. This feature captures an array of events including call channels, agent interactions, outgoing HTTP requests, buyer pings, call recordings, and more. Each advanced call analysis request incurs a usage charge billed at your account's Per Advanced Call Analysis Rate. The default rate is 0.0002/request.

Examples

curl -H "Authorization: Basic BASE64_ENCODED_PUBLIC_KEY_AND_PRIVATE_KEY" "https://[your-subdomain].trackdrive.com/api/v1/calls/5cc8897c-ad0f-44cb-8ea7-8f7736ae76f1/events"

POST /api/v1/calls/:id
Update a call by Call ID or Call UUID with contact fields, revenue, payout, and more.

Examples

curl -H "Authorization: Basic BASE64_ENCODED_PUBLIC_KEY_AND_PRIVATE_KEY" -H "Content-Type: application/json" -X POST -d '{"post_call_tokens": {"good_lead":"yes","loan_amount":"500"}}' https://[your-subdomain].trackdrive.com/api/v1/calls/:id

Params

Param name
Description
serializer
Optional Blank Value Allowed

This endpoint supports multiple response formats. Pass serializer=name to retrieve data in an alternate format.

  • Must be a value contained in the pick list:
    Acceptable ValueDescription
    callDefault response format.
    call_gridModern response format that returns various foreign keys for use with other API endpoints.
id
Optional

Find the call by Call ID or Call UUID.
Example ID 123895022.
Example UUID c3b20b12-3b3b-4322-b15d-0f1c5f653479

  • Must be String

post_call_tokens
Optional

Custom contact fields defined on the offer.
EG: {first_name: "John", last_name: "Smith", zip_code: "90210"}

  • Must be Hash

revenue
Optional

The revenue paid out for the call.

  • Must be a decimal number.

add_revenue
Optional

Add this amount to the call's current revenue. For example pass 2.5 to add 2.5 to the current call revenue. If the call revenue is currently 10.50, the revenue would become 13 (10.50 + 2.50)

  • Must be a decimal number.

add_payout
Optional

Add this amount to the call's current payout.

  • Must be a decimal number.

buyer_converted
Optional

Did the buyer convert?

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

trackdrive_buyer_id
Optional

Update the winning Buyer that is assigned to this call.

payout
Optional

The amount paid to the traffic source.

  • Must be a decimal number.

offer_converted
Optional

Did the traffic source convert?

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

trackdrive_traffic_source_id
Optional

Update the Traffic Source that is assigned to this call.

contact_field_type
Optional

Pass an ID belonging to an Agent Script & Field Type to select that Custom Contact Field Type for this call.

  • Must be String

fire_outgoing_webhook_ids
Optional

Manually refire the listed outgoing webhook ids against this call.

  • Must be an array of decimal values. EG: [0, 1, 2, 3]

manual_transcribe
Optional

Manually transcribe this call using the default transcription group.

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

call_disposition_id
Optional Blank Value Allowed

Call Disposition

agent_call_disposition_notes
Optional Blank Value Allowed

Notes

  • Must be String


POST /api/v1/calls/update_by_caller_id/:caller_id
Update a call's revenue and buyer_converted using the call's caller_id and offer_token

Examples

curl -H "Authorization: Basic BASE64_ENCODED_PUBLIC_KEY_AND_PRIVATE_KEY" -H "Content-Type: application/json" -X POST -d '{"add_revenue": 2.50, "buyer_converted": "true"}' https://[your-subdomain].trackdrive.com/api/v1/calls/update_by_caller_id/:caller_id
curl -H "Authorization: Basic BASE64_ENCODED_PUBLIC_KEY_AND_PRIVATE_KEY" -X POST "https://my-company.trackdrive.com/api/v1/calls/update_by_caller_id/17194448888?offer_token=the-offer-token&add_revenue=5"

Params

Param name
Description
caller_id
Required

The caller ID for the call that will be updated.

  • Must be String

offer_token
Required

The Dynamic Number Insertion token for the offer.

  • Must be String

call_timeframe
Optional

Pass this optional parameter to restrict the call update to calls made in the last call_timeframe minutes. For Example: Pass 120 if you'd like to only update calls made in the last 2 hours. This is useful if you only want to update a call that happened recently.

  • Must be a number.

revenue
Optional

Set the call's revenue to this amount. For example pass 10.50 to set the revenue to 10.50

  • Must be a decimal number.

add_revenue
Optional

Add this amount to the call's current revenue. For example pass 2.5 to add 2.5 to the current call revenue. If the call revenue is currently 10.50, the revenue would become 13 (10.50 + 2.50)

  • Must be a decimal number.

add_payout
Optional

Add this amount to the call's current payout.

  • Must be a decimal number.

call_disposition_id
Optional Blank Value Allowed

Call Disposition

agent_call_disposition_notes
Optional Blank Value Allowed

Notes

  • Must be String

buyer_converted
Optional

Did the buyer convert?

  • Must be a boolean value: 1, true, yes, on, 0, false, no, off


POST /api/v1/calls/send_key_press
Send a Key Press to trigger a key press flow.

Examples

curl -H "Authorization: Basic BASE64_ENCODED_PUBLIC_KEY_AND_PRIVATE_KEY" -H "Content-Type: application/json" -X POST -d '{"id": "fbd28553-04fc-4c6b-9af8-46c17d5925bf", "digits": "5", "data": {"first_name": "John"}}' "https://[your-subdomain].trackdrive.com/api/v1/calls/send_key_press"

Params

Param name
Description
id
Required

Find the call by Call ID or Call UUID.
Example ID 123895022.
Example UUID c3b20b12-3b3b-4322-b15d-0f1c5f653479

  • Must be String

digits
Required

DTMF digit

  • Must be String

data
Optional Blank Value Allowed

Update the call with this data. {interest: 'kittens', source: 'google', first_name: 'John', last_name: 'Smith'}

  • Must be Hash


DELETE /api/v1/calls/:id
Hang up an ongoing call.

Examples

curl -H "Authorization: Basic BASE64_ENCODED_PUBLIC_KEY_AND_PRIVATE_KEY" -i -X DELETE "https://[your-subdomain].trackdrive.com/api/v1/calls/77777777-dbe3-49ee-b28f-115ec80dcef9"

Params

Param name
Description
serializer
Optional Blank Value Allowed

This endpoint supports multiple response formats. Pass serializer=name to retrieve data in an alternate format.

  • Must be a value contained in the pick list:
    Acceptable ValueDescription
    callDefault response format.
    call_gridModern response format that returns various foreign keys for use with other API endpoints.
id
Optional

Find the call by Call ID or Call UUID.
Example ID 123895022.
Example UUID c3b20b12-3b3b-4322-b15d-0f1c5f653479

  • Must be String