Buyers

The people or companies who pay for your calls and leads, with hours, caps, and conversion rules that define revenue.

GET /buyers

Authorization Required
https://[your-subdomain].trackdrive.com/api/v1/buyers

List the buyers in your Trackdrive account.

Lists the buyers configured in your account. Supports filtering by phone number and paused status, full-text search, sorting, and pagination, and results can be returned as JSON or CSV. Only buyers you have permission to view are included.

Supported Formats

json, csv

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
    buyerDefault response format.
    buyer_gridModern response format that returns various foreign keys for use with other API endpoints.
number
Optional

Filter buyers for a telephone number.

  • Must be a String

paused
Optional

Filter buyers that are either paused or unpaused.

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

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 a String

created_at_from
Optional

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

  • Must be a String

fulltext
Optional

Search for any record that matches this text

  • Must be a 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
  • context_menu_name
  • email
  • number
  • paused
  • time_zone
  • user_buyer_id
  • bid_price
  • route_by_type
  • buyer_type
  • buyer_group_ids
  • buyer_group_names
  • token_values
  • token_values_hash
  • attribution_token_values
  • attribution_token_values_hash
  • last_call_at
  • weight
  • tier
  • timeout_seconds
  • dtmf_tones
  • concurrency_cap_limit
  • concurrency_cap_used
  • maxed_out_by
  • current_conversion_revenue_max
  • current_conversion_revenue_min
  • current_conversion_revenue_increment
  • current_conversion_revenue
  • current_conversion_duration
  • current_conversion_duplicate_timeframe
  • current_conversion_name
  • current_conversion_token_value_ids
  • current_conversion_attribution_token_value_ids
  • ping_timeout_seconds
  • buyer_suppression_ids
  • record_token_filter_id
  • record_token_filter_data_count
  • record_token_filter_data
  • record_token_additional_id
  • record_token_additional_data_count
  • record_token_additional_data
  • attempt_daily_used
  • attempt_hourly_used
  • attempt_monthly_used
  • attempt_total_used
  • buyer_conversion_daily_used
  • buyer_conversion_hourly_used
  • buyer_conversion_monthly_used
  • buyer_conversion_total_used
  • connection_daily_used
  • connection_hourly_used
  • connection_monthly_used
  • connection_total_used
  • earned_revenue_daily_used
  • earned_revenue_hourly_used
  • earned_revenue_monthly_used
  • earned_revenue_total_used
  • revenue_daily_used
  • revenue_hourly_used
  • revenue_monthly_used
  • revenue_total_used
  • attempt_daily_limit
  • attempt_hourly_limit
  • attempt_monthly_limit
  • attempt_total_limit
  • buyer_conversion_daily_limit
  • buyer_conversion_hourly_limit
  • buyer_conversion_monthly_limit
  • buyer_conversion_total_limit
  • connection_daily_limit
  • connection_hourly_limit
  • connection_monthly_limit
  • connection_total_limit
  • earned_revenue_daily_limit
  • earned_revenue_hourly_limit
  • earned_revenue_monthly_limit
  • earned_revenue_total_limit
  • revenue_daily_limit
  • revenue_hourly_limit
  • revenue_monthly_limit
  • revenue_total_limit
  • business_hours_schedule
  • buyer_conversions_schedule
  • Must be a 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

order
Optional

Sort results by this field.

  • Must be one of: id, name, calls_count, recent_calls_count, outgoing_webhooks_count, paused, number, created_at, last_call_at, tier, weight, time_zone, user_buyer_id, revenue_hourly_used, revenue_daily_used, revenue_monthly_used, revenue_total_used, earned_revenue_hourly_used, earned_revenue_daily_used, earned_revenue_monthly_used, earned_revenue_total_used, buyer_conversion_hourly_used, buyer_conversion_daily_used, buyer_conversion_monthly_used, buyer_conversion_total_used, connection_hourly_used, connection_daily_used, connection_monthly_used, connection_total_used, attempt_hourly_used, attempt_daily_used, attempt_monthly_used, attempt_total_used.

order_dir
Optional

Sort results in ascending or descending order.

  • Must be one of: desc, asc.

GET /buyers/:id

Authorization Required
https://[your-subdomain].trackdrive.com/api/v1/buyers/:id

Get a buyer by ID

Retrieves a single buyer using Trackdrive's internal numeric ID. Viewing a buyer's full record requires edit permission on buyers, not just read access. If you only track buyers by your own external identifier, use show_by_user_buyer_id instead.

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
    buyerDefault response format.
    buyer_gridModern response format that returns various foreign keys for use with other API endpoints.

GET /buyers/:user_buyer_id/by_user_buyer_id

Authorization Required
https://[your-subdomain].trackdrive.com/api/v1/buyers/:user_buyer_id/by_user_buyer_id

Get a buyer by your buyer ID

Retrieves a single buyer using the user_buyer_id you assigned to it, instead of Trackdrive's internal ID. Use this when your own system references buyers by its own identifier so you do not need to store Trackdrive's ID separately.

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
    buyerDefault response format.
    buyer_gridModern response format that returns various foreign keys for use with other API endpoints.

PUT /buyers/:id

Authorization Required
https://[your-subdomain].trackdrive.com/api/v1/buyers/:id

Update a buyer with Trackdrive's internal ID.

Updates an existing buyer's settings, such as its name, number, routing tier and weight, ring timeout, caps, business hours, and conversion payout configuration. Only the attributes you include are changed. Changing the number to a non-North American number requires two-factor authentication to be enabled on the account, or the request is rejected.

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
    buyerDefault response format.
    buyer_gridModern response format that returns various foreign keys for use with other API endpoints.
reset_total_caps
Optional
  • Must be a boolean value: 1, true, yes, on, 0, false, no, off

user_buyer_id
Optional

Your external ID for this buyer.

  • Must be a String

number
Optional

The DID or SIP endpoint to call. DID must be prefixed with +{country code}. Example: to dial a number in the USA, enter +1 followed by the 10 digit DID number, in UK it would be +44 followed by the DID number. To transfer a call via SIP, begin the number with โ€˜sip:โ€™.

  • Must be a String

name
Optional

The name for this buyer that will appear on menus and in logs.

  • Must be a String

timeout_seconds
Optional

Determines the time in seconds the call should ring. Must be at least 12 seconds. If the call is not answered within the ring timeout value or the default value of 120 s, it is canceled.

  • Must be a decimal number.

dtmf_tones
Optional Blank value allowed

Play DTMF tones when the call is answered. This is useful when dialing a phone number and an extension. Your provider will dial the number, and when the automated system picks up, sends the DTMF tones to connect to the extension. E.g. If you want to dial the 2410 extension after the call is connected, and you want to wait for a few seconds before sending the extension, add a few leading โ€˜wโ€™ characters. Each โ€˜wโ€™ character waits 0.5 second before sending a digit. Each โ€˜Wโ€™ character waits 1 second before sending a digit.

  • Must be a String

dial_caller_name
Optional Blank value allowed

The caller name announced to this buyer when the call connects, with tokens replaced before it is sent.

  • Must be a String

delay_calling_buyer_seconds
Optional Blank value allowed

The number of seconds Trackdrive waits before dialing this buyer after a call is ready to transfer.

  • Must be a decimal number.

time_zone
Optional

Date ranges will be parsed using this time zone.

sip_username
Optional Blank value allowed

The SIP username used when dialing this buyerโ€™s sip: endpoint.

  • Must be a String

sip_password
Optional Blank value allowed

The SIP password used when dialing this buyerโ€™s sip: endpoint.

  • Must be a String

external_platform_id
Optional Blank value allowed

The known third-party platform this buyerโ€™s number or SIP endpoint belongs to.

  • Must be an 8-bit integer ID or a 128-bit UUID reference to an object on Trackdrive. Example ID: 289302820, Example UUID: 924c37d5-e70f-42ad-84c2-e85eb0c1bc21

buyer_fleet_id
Optional Blank value allowed

The BuyerFleet this buyer is grouped under.

buyer_suppression_ids
Optional Blank value allowed

The list of internal suppression idโ€™s that will be assigned to this buyer.

token_value_ids
Optional Blank value allowed

Callers will be routed to Buyers with matching tokens.

attribution_token_value_ids
Optional Blank value allowed

When this Buyer is connected to a Caller, the Call will be tagged with these tokens.

paused
Optional

Pause or unpause the buyer.

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

record_calls
Optional

Enable or Disable call recordings for this Buyer.

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

record_calls_require_authorization
Optional Blank value allowed

Require a Trackdrive user logged into your company to have permission to download call recordings for calls transferred to this buyer.

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

press_one_to_accept
Optional Blank value allowed

After answering the call the Buyer must Press 1 before being connected to the Caller.
Trackdrive will use the โ€œPress 1 To Acceptโ€ call routing from the current Offer.

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

generate_team
Optional

Grant access to edit this Buyer, and view calls that it paid for.

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

team_users_emails
Optional Blank value allowed

The selected users will recieve an email invitation to collaborate on your company.

  • Must be an array of emails. EG: ["john-smith@gmail.com", "example@domain.com"]

team_offer_ids
Optional Blank value allowed

Team members can view calls made to these Offers that were paid for by their Buyer.

  • Must be a valid array of integers. Each integer ID must be a valid foreign key reference to an Offer. Refer to: /api/docs/1.0/offers

record_token_filter_list
Optional Blank value allowed

Assign filters to the object by passing an array of key:value pairs

  • Must be a valid list of filters. Example filters:
    "interest:auto", "loan_amount:>=10000", "loan_amount:<=50000", "geo:!=800", "caller_id:!=anonymous"
record_token_additional_list
Optional Blank value allowed

Assign additional tokens that will be applied to leads and calls by passing a comma separated string of key:value pairs.

  • Must be a valid list of tokens. Example tokens:
    buyer_interest:loan,another_token:value
route_by_type
Optional

Configure how calls will be routed to this Buyer. When routing by revenue the tier will be automatically calculated by taking the revenue for the current timeframe * -1.

  • Must be one of: tier, revenue, epc.

tier
Optional Blank value allowed

When routing by revenue the tier will not be used. Buyers with the lowest tier are considered first for calls (a tier may be negative if needed). For buyers with the same tier, the weight will then be used to calculate the % of calls the buyer gets within that tier.

  • Must be a decimal number.

epc_timeframe
Optional Blank value allowed

The number of hours used when calculating the EPC. If there are less than Minimum Required Calls in this timeframe the Assumed EPC will be used instead.

  • Must be a decimal number.

epc_assumed_amount
Optional Blank value allowed

The Assumed EPC will be used until the Buyer has received Minimum Required Calls calls during the EPC Timeframe.

  • Must be a decimal number.

epc_assumed_calls_count
Optional Blank value allowed

The number of calls required during EPC Timeframe before the real EPC is used insead of the Assumed EPC.

  • Must be a decimal number.

weight
Optional Blank value allowed

The Weight of this buyer will be divided by the Total Weight of all buyers at this same Tier to get the % of calls this buyer will get within this Tier.

  • Must be a decimal number.

enable_ping_before_calling_lead
Optional Blank value allowed

Ping this buyer before calling the lead back, used with off-hook webhook conversions.

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

webhook_conversion_sync
Optional Blank value allowed

When true, Trackdrive waits for this buyerโ€™s webhook conversion ping to respond before pinging the next buyer, instead of pinging all webhook buyers at once.

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

ping_priority
Optional Blank value allowed

The order this buyer is pinged in relative to other webhook buyers on the same offer. Lower numbers are pinged first.

  • Must be a decimal number.

use_dynamic_number
Optional Blank value allowed

Replace this buyerโ€™s number with dynamic_number, with its tokens replaced, when dialing this buyer.

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

dynamic_number
Optional Blank value allowed

The token-replaced number or SIP address dialed instead of number when use_dynamic_number is true.

  • Must be a String

use_with_key_press_flows
Optional Blank value allowed

Apply a key press flow group to calls transferred to this buyer.

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

key_press_flow_group_id
Optional Blank value allowed

The key press flow group applied when use_with_key_press_flows is true.

record_voicemail_sound_playlist_id
Optional Blank value allowed

The sound playlist played to a caller when this buyer leaves them a voicemail.

display_caller_id_type
Optional

Select which Caller ID will be sent to this Buyer.

  • Must be one of: display_caller_id, display_fake_caller_id, display_trackdrive_number_id.

display_trackdrive_number_id
Optional Blank value allowed

The Trackdrive number to display when display_caller_id_type=display_trackdrive_number_id

concurrency_cap_limit
Optional Blank value allowed

Choose the number of concurrent calls that can be forwarded to this buyer simultaneously.

  • Must be a decimal number.

convert_when_downstream_converts
Optional Blank value allowed

Convert When Downstream Converts

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

attempt_total_limit
Optional Blank value allowed

Attempt caps limit the number of times a buyer can be attempted in a given interval.

  • Must be a decimal number.

attempt_monthly_limit
Optional Blank value allowed

Monthly Attempt Cap

  • Must be a decimal number.

attempt_daily_limit
Optional Blank value allowed

Daily Attempt Cap

  • Must be a decimal number.

attempt_hourly_limit
Optional Blank value allowed

Hourly Attempt Cap

  • Must be a decimal number.

connection_total_limit
Optional Blank value allowed

Connection caps limit the number of times a buyer can be connected in a given interval.

  • Must be a decimal number.

connection_monthly_limit
Optional Blank value allowed

Monthly Connection Cap

  • Must be a decimal number.

connection_daily_limit
Optional Blank value allowed

Daily Connection Cap

  • Must be a decimal number.

connection_hourly_limit
Optional Blank value allowed

Hourly Connection Cap

  • Must be a decimal number.

buyer_conversion_total_limit
Optional Blank value allowed

Conversion caps limit the number of times a buyer can convert in a given interval.

  • Must be a decimal number.

buyer_conversion_monthly_limit
Optional Blank value allowed

Monthly Conversion Cap

  • Must be a decimal number.

buyer_conversion_daily_limit
Optional Blank value allowed

Daily Conversion Cap

  • Must be a decimal number.

buyer_conversion_hourly_limit
Optional Blank value allowed

Hourly Conversion Cap

  • Must be a decimal number.

revenue_total_limit
Optional Blank value allowed

Revenue caps limit the dollar amount that can be paid by a buyer in a given interval.

  • Must be a decimal number.

revenue_monthly_limit
Optional Blank value allowed

Monthly $ Revenue Cap

  • Must be a decimal number.

revenue_daily_limit
Optional Blank value allowed

Daily $ Revenue Cap

  • Must be a decimal number.

revenue_hourly_limit
Optional Blank value allowed

Hourly $ Revenue Cap

  • Must be a decimal number.

business_hours_schedule
Optional

Day is an integer representing the day of the week, 0..6, with Sunday == 0. [

{
  attempt_hourly_limit: 10,
  connection_hourly_limit: 10,
  buyer_conversion_hourly_limit: 10,
  revenue_hourly_limit: 10,
  schedule: [
    {
      day: 0,
      times: ["11:00..13:09", "14:00..15:09"]
    },
    {
      day: 1,
      times: ["11:10..18:39", "19:10..23:39"]
    }
  ]
}

]

  • Must be an array of any type

buyer_conversions_schedule
Optional

Day is an integer representing the day of the week, 0..6, with Sunday == 0. [

{
  buyer_conversions_attributes: [
    {
      name: '10$ conversion at 1 minute, deduped every 2 hours',
      duration: 60,
      revenue: 10,
      duplicate_timeframe: 7200
    }
  ],
  schedule: [{"day":0,"times":["00:00..23:59"]},{"day":1,"times":["00:00..23:59"]},{"day":2,"times":["00:00..23:59"]},{"day":3,"times":["00:00..23:59"]},{"day":4,"times":["00:00..23:59"]},{"day":5,"times":["00:00..23:59"]},{"day":6,"times":["00:00..23:59"]}]
}

]

  • Must be an array of any type

current_conversion_revenue_max
Optional

The maximum valid revenue for the current time frame.

  • Must be a decimal number.

current_conversion_revenue_min
Optional

The minimum valid revenue for the current time frame.

  • Must be a decimal number.

current_conversion_revenue_increment
Optional

Bids must be increased/decreased by this amount for the current time frame.

  • Must be a decimal number.

current_conversion_revenue
Optional

The number of dollars paid per call in increments of $0.01 for the current time frame.

  • Must be a decimal number.

current_conversion_duration
Optional

The number of seconds for a call to payout. If this is set to 0 the call will convert when this buyer is dialed for the current time frame.

  • Must be a decimal number.

current_conversion_duplicate_timeframe
Optional

The period of time that must elapse before a buyer will pay for the same caller to be transferred.

  • Must be a decimal number.

current_conversion_name
Optional

This name that will appear in call logs.

  • Must be a String

ping_timeout_seconds
Optional Blank value allowed

How many seconds Trackdrive waits for this buyerโ€™s ping to respond. Reading returns the largest timeout across the buyerโ€™s ping settings; writing applies the value to all of them. Call routing waits for every ping to resolve, so the slowest buyer sets the callerโ€™s hold time.

  • Must be a decimal number.

current_conversion_token_values
Optional Blank value allowed

Conversion will only occur if the caller matches these filters.

  • Must be a valid list of filters. Example filters:
    "interest:auto", "loan_amount:>=10000", "loan_amount:<=50000", "geo:!=800", "caller_id:!=anonymous"
current_conversion_attribution_token_values
Optional Blank value allowed

If the call converts, these tokens will be applied to the call.

  • Must be a valid list of tokens. Example tokens:
    buyer_interest:loan,another_token:value

GET /buyers/new

Authorization Required
https://[your-subdomain].trackdrive.com/api/v1/buyers/new

Build buyer with defaults.

Builds an unsaved buyer populated with Trackdrive's default attribute values, or a copy of an existing buyer when copy_id is supplied, so you can preview the settings before calling create. Nothing is saved to your account.

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
    buyerDefault response format.
    buyer_gridModern response format that returns various foreign keys for use with other API endpoints.

POST /buyers

Authorization Required
https://[your-subdomain].trackdrive.com/api/v1/buyers

Create a buyer.

Creates a new buyer in your account from the submitted attributes, optionally copying settings from an existing buyer via copy_id and copy_another_buyer. After saving, Trackdrive computes derived fields such as tier, EPC, business hours, and cap status before returning the created record.

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
    buyerDefault response format.
    buyer_gridModern response format that returns various foreign keys for use with other API endpoints.
copy_another_buyer
Optional

Copy another buyer?

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

copy_id
Optional Blank value allowed

The id of the buyer you would like to copy.

user_buyer_id
Optional

Your external ID for this buyer.

  • Must be a String

number
Optional

The DID or SIP endpoint to call. DID must be prefixed with +{country code}. Example: to dial a number in the USA, enter +1 followed by the 10 digit DID number, in UK it would be +44 followed by the DID number. To transfer a call via SIP, begin the number with โ€˜sip:โ€™.

  • Must be a String

name
Optional

The name for this buyer that will appear on menus and in logs.

  • Must be a String

timeout_seconds
Optional

Determines the time in seconds the call should ring. Must be at least 12 seconds. If the call is not answered within the ring timeout value or the default value of 120 s, it is canceled.

  • Must be a decimal number.

dtmf_tones
Optional Blank value allowed

Play DTMF tones when the call is answered. This is useful when dialing a phone number and an extension. Your provider will dial the number, and when the automated system picks up, sends the DTMF tones to connect to the extension. E.g. If you want to dial the 2410 extension after the call is connected, and you want to wait for a few seconds before sending the extension, add a few leading โ€˜wโ€™ characters. Each โ€˜wโ€™ character waits 0.5 second before sending a digit. Each โ€˜Wโ€™ character waits 1 second before sending a digit.

  • Must be a String

dial_caller_name
Optional Blank value allowed

The caller name announced to this buyer when the call connects, with tokens replaced before it is sent.

  • Must be a String

delay_calling_buyer_seconds
Optional Blank value allowed

The number of seconds Trackdrive waits before dialing this buyer after a call is ready to transfer.

  • Must be a decimal number.

time_zone
Optional

Date ranges will be parsed using this time zone.

sip_username
Optional Blank value allowed

The SIP username used when dialing this buyerโ€™s sip: endpoint.

  • Must be a String

sip_password
Optional Blank value allowed

The SIP password used when dialing this buyerโ€™s sip: endpoint.

  • Must be a String

external_platform_id
Optional Blank value allowed

The known third-party platform this buyerโ€™s number or SIP endpoint belongs to.

  • Must be an 8-bit integer ID or a 128-bit UUID reference to an object on Trackdrive. Example ID: 289302820, Example UUID: 924c37d5-e70f-42ad-84c2-e85eb0c1bc21

buyer_fleet_id
Optional Blank value allowed

The BuyerFleet this buyer is grouped under.

buyer_suppression_ids
Optional Blank value allowed

The list of internal suppression idโ€™s that will be assigned to this buyer.

token_value_ids
Optional Blank value allowed

Callers will be routed to Buyers with matching tokens.

attribution_token_value_ids
Optional Blank value allowed

When this Buyer is connected to a Caller, the Call will be tagged with these tokens.

paused
Optional

Pause or unpause the buyer.

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

record_calls
Optional

Enable or Disable call recordings for this Buyer.

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

record_calls_require_authorization
Optional Blank value allowed

Require a Trackdrive user logged into your company to have permission to download call recordings for calls transferred to this buyer.

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

press_one_to_accept
Optional Blank value allowed

After answering the call the Buyer must Press 1 before being connected to the Caller.
Trackdrive will use the โ€œPress 1 To Acceptโ€ call routing from the current Offer.

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

generate_team
Optional

Grant access to edit this Buyer, and view calls that it paid for.

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

team_users_emails
Optional Blank value allowed

The selected users will recieve an email invitation to collaborate on your company.

  • Must be an array of emails. EG: ["john-smith@gmail.com", "example@domain.com"]

team_offer_ids
Optional Blank value allowed

Team members can view calls made to these Offers that were paid for by their Buyer.

  • Must be a valid array of integers. Each integer ID must be a valid foreign key reference to an Offer. Refer to: /api/docs/1.0/offers

record_token_filter_list
Optional Blank value allowed

Assign filters to the object by passing an array of key:value pairs

  • Must be a valid list of filters. Example filters:
    "interest:auto", "loan_amount:>=10000", "loan_amount:<=50000", "geo:!=800", "caller_id:!=anonymous"
record_token_additional_list
Optional Blank value allowed

Assign additional tokens that will be applied to leads and calls by passing a comma separated string of key:value pairs.

  • Must be a valid list of tokens. Example tokens:
    buyer_interest:loan,another_token:value
route_by_type
Optional

Configure how calls will be routed to this Buyer. When routing by revenue the tier will be automatically calculated by taking the revenue for the current timeframe * -1.

  • Must be one of: tier, revenue, epc.

tier
Optional Blank value allowed

When routing by revenue the tier will not be used. Buyers with the lowest tier are considered first for calls (a tier may be negative if needed). For buyers with the same tier, the weight will then be used to calculate the % of calls the buyer gets within that tier.

  • Must be a decimal number.

epc_timeframe
Optional Blank value allowed

The number of hours used when calculating the EPC. If there are less than Minimum Required Calls in this timeframe the Assumed EPC will be used instead.

  • Must be a decimal number.

epc_assumed_amount
Optional Blank value allowed

The Assumed EPC will be used until the Buyer has received Minimum Required Calls calls during the EPC Timeframe.

  • Must be a decimal number.

epc_assumed_calls_count
Optional Blank value allowed

The number of calls required during EPC Timeframe before the real EPC is used insead of the Assumed EPC.

  • Must be a decimal number.

weight
Optional Blank value allowed

The Weight of this buyer will be divided by the Total Weight of all buyers at this same Tier to get the % of calls this buyer will get within this Tier.

  • Must be a decimal number.

enable_ping_before_calling_lead
Optional Blank value allowed

Ping this buyer before calling the lead back, used with off-hook webhook conversions.

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

webhook_conversion_sync
Optional Blank value allowed

When true, Trackdrive waits for this buyerโ€™s webhook conversion ping to respond before pinging the next buyer, instead of pinging all webhook buyers at once.

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

ping_priority
Optional Blank value allowed

The order this buyer is pinged in relative to other webhook buyers on the same offer. Lower numbers are pinged first.

  • Must be a decimal number.

use_dynamic_number
Optional Blank value allowed

Replace this buyerโ€™s number with dynamic_number, with its tokens replaced, when dialing this buyer.

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

dynamic_number
Optional Blank value allowed

The token-replaced number or SIP address dialed instead of number when use_dynamic_number is true.

  • Must be a String

use_with_key_press_flows
Optional Blank value allowed

Apply a key press flow group to calls transferred to this buyer.

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

key_press_flow_group_id
Optional Blank value allowed

The key press flow group applied when use_with_key_press_flows is true.

record_voicemail_sound_playlist_id
Optional Blank value allowed

The sound playlist played to a caller when this buyer leaves them a voicemail.

display_caller_id_type
Optional

Select which Caller ID will be sent to this Buyer.

  • Must be one of: display_caller_id, display_fake_caller_id, display_trackdrive_number_id.

display_trackdrive_number_id
Optional Blank value allowed

The Trackdrive number to display when display_caller_id_type=display_trackdrive_number_id

concurrency_cap_limit
Optional Blank value allowed

Choose the number of concurrent calls that can be forwarded to this buyer simultaneously.

  • Must be a decimal number.

convert_when_downstream_converts
Optional Blank value allowed

Convert When Downstream Converts

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

attempt_total_limit
Optional Blank value allowed

Attempt caps limit the number of times a buyer can be attempted in a given interval.

  • Must be a decimal number.

attempt_monthly_limit
Optional Blank value allowed

Monthly Attempt Cap

  • Must be a decimal number.

attempt_daily_limit
Optional Blank value allowed

Daily Attempt Cap

  • Must be a decimal number.

attempt_hourly_limit
Optional Blank value allowed

Hourly Attempt Cap

  • Must be a decimal number.

connection_total_limit
Optional Blank value allowed

Connection caps limit the number of times a buyer can be connected in a given interval.

  • Must be a decimal number.

connection_monthly_limit
Optional Blank value allowed

Monthly Connection Cap

  • Must be a decimal number.

connection_daily_limit
Optional Blank value allowed

Daily Connection Cap

  • Must be a decimal number.

connection_hourly_limit
Optional Blank value allowed

Hourly Connection Cap

  • Must be a decimal number.

buyer_conversion_total_limit
Optional Blank value allowed

Conversion caps limit the number of times a buyer can convert in a given interval.

  • Must be a decimal number.

buyer_conversion_monthly_limit
Optional Blank value allowed

Monthly Conversion Cap

  • Must be a decimal number.

buyer_conversion_daily_limit
Optional Blank value allowed

Daily Conversion Cap

  • Must be a decimal number.

buyer_conversion_hourly_limit
Optional Blank value allowed

Hourly Conversion Cap

  • Must be a decimal number.

revenue_total_limit
Optional Blank value allowed

Revenue caps limit the dollar amount that can be paid by a buyer in a given interval.

  • Must be a decimal number.

revenue_monthly_limit
Optional Blank value allowed

Monthly $ Revenue Cap

  • Must be a decimal number.

revenue_daily_limit
Optional Blank value allowed

Daily $ Revenue Cap

  • Must be a decimal number.

revenue_hourly_limit
Optional Blank value allowed

Hourly $ Revenue Cap

  • Must be a decimal number.

business_hours_schedule
Optional

Day is an integer representing the day of the week, 0..6, with Sunday == 0. [

{
  attempt_hourly_limit: 10,
  connection_hourly_limit: 10,
  buyer_conversion_hourly_limit: 10,
  revenue_hourly_limit: 10,
  schedule: [
    {
      day: 0,
      times: ["11:00..13:09", "14:00..15:09"]
    },
    {
      day: 1,
      times: ["11:10..18:39", "19:10..23:39"]
    }
  ]
}

]

  • Must be an array of any type

buyer_conversions_schedule
Optional

Day is an integer representing the day of the week, 0..6, with Sunday == 0. [

{
  buyer_conversions_attributes: [
    {
      name: '10$ conversion at 1 minute, deduped every 2 hours',
      duration: 60,
      revenue: 10,
      duplicate_timeframe: 7200
    }
  ],
  schedule: [{"day":0,"times":["00:00..23:59"]},{"day":1,"times":["00:00..23:59"]},{"day":2,"times":["00:00..23:59"]},{"day":3,"times":["00:00..23:59"]},{"day":4,"times":["00:00..23:59"]},{"day":5,"times":["00:00..23:59"]},{"day":6,"times":["00:00..23:59"]}]
}

]

  • Must be an array of any type

current_conversion_revenue_max
Optional

The maximum valid revenue for the current time frame.

  • Must be a decimal number.

current_conversion_revenue_min
Optional

The minimum valid revenue for the current time frame.

  • Must be a decimal number.

current_conversion_revenue_increment
Optional

Bids must be increased/decreased by this amount for the current time frame.

  • Must be a decimal number.

current_conversion_revenue
Optional

The number of dollars paid per call in increments of $0.01 for the current time frame.

  • Must be a decimal number.

current_conversion_duration
Optional

The number of seconds for a call to payout. If this is set to 0 the call will convert when this buyer is dialed for the current time frame.

  • Must be a decimal number.

current_conversion_duplicate_timeframe
Optional

The period of time that must elapse before a buyer will pay for the same caller to be transferred.

  • Must be a decimal number.

current_conversion_name
Optional

This name that will appear in call logs.

  • Must be a String

ping_timeout_seconds
Optional Blank value allowed

How many seconds Trackdrive waits for this buyerโ€™s ping to respond. Reading returns the largest timeout across the buyerโ€™s ping settings; writing applies the value to all of them. Call routing waits for every ping to resolve, so the slowest buyer sets the callerโ€™s hold time.

  • Must be a decimal number.

current_conversion_token_values
Optional Blank value allowed

Conversion will only occur if the caller matches these filters.

  • Must be a valid list of filters. Example filters:
    "interest:auto", "loan_amount:>=10000", "loan_amount:<=50000", "geo:!=800", "caller_id:!=anonymous"
current_conversion_attribution_token_values
Optional Blank value allowed

If the call converts, these tokens will be applied to the call.

  • Must be a valid list of tokens. Example tokens:
    buyer_interest:loan,another_token:value

DELETE /buyers/:id

Authorization Required
https://[your-subdomain].trackdrive.com/api/v1/buyers/:id

Delete a buyer with Trackdrive's internal ID.

Soft-deletes a buyer by its Trackdrive internal ID. The buyer immediately stops receiving new calls, but the record is retained rather than permanently erased, and is excluded from normal lookups afterward.

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
    buyerDefault response format.
    buyer_gridModern response format that returns various foreign keys for use with other API endpoints.