VICIfast

API Studio: let lead vendors send you leads

Give a lead vendor or web form one URL to send leads to, map their fields to yours, and watch every request arrive.

Advanced · 3 min read

API Studio: let lead vendors send you leads

API Studio gives a lead vendor, a web form or any other system one web address (URL) to send leads to. VICIfast turns what they send into a lead on your dialer. Their computers never need to reach your server, so you don't open your firewall to addresses that keep changing, and nobody outside VICIfast gets your dialer's login. Use it when you buy leads or collect them on a website.

What you need

  • You are the account owner. Team members don't see API Studio.
  • A running server, with the list the leads should go into.
  • One real example of what the vendor sends (JSON, or form fields). Ask them for a sample.

Step 1: Create an endpoint

  1. Click API Studio in the sidebar.
  2. Click New endpoint.
API Studio lists your endpoints, with 24-hour traffic and failures
API Studio lists your endpoints, with 24-hour traffic and failures

Step 2: Choose where it writes

  1. Under Where it writes, give it a Name, for example "Partner A — auto leads".
  2. Pick the Server.
  3. Under Do what, pick the job: Add a lead, Update a lead, Schedule a callback, Move a lead up the dial queue, Look up a lead, Add to DNC or Remove from DNC.
  4. For Add a lead, choose the List. It is fixed here, so a sender can't file leads anywhere else.
Name, server, what the endpoint does, and the list
Name, server, what the endpoint does, and the list

Step 3: Paste what they send

  1. Under What they send, paste one real sample from the vendor.
  2. Click Read the fields. It shows how many fields it found.
Paste one sample; every field below comes from it
Paste one sample; every field below comes from it

Step 4: Match their fields to yours

  1. Under Join their fields to yours, check the rows. On a new endpoint, Read the fields already joins the fields whose names match yours, such as first_name or phone.
  2. For anything it didn't match, click Add a field, then pick Your field (for example the phone number) and Their field from the sample. Use Changes to tidy a value on the way in.
  3. Under Check it, click Preview what gets sent. It writes nothing. A value shown as "empty" means that field found nothing in the sample.
Match each of their fields to one of yours
Match each of their fields to one of yours

Step 5: Settings, then create

  1. For Add a lead, Duplicates decides what happens to a number you already have: Allow duplicates, Skip if already in this list, Skip if already in the campaign or Skip if anywhere on the dialer.
  2. Most per minute caps how many requests are accepted each minute (120 to start). Above that, the sender is told to slow down and your dialer is left alone.
  3. Only these IPs (optional): leave it empty if the vendor's addresses change.
  4. Optional: Send it on (optional) forwards every delivered lead to another system, such as your CRM, after the vendor has had their answer.
  5. Click Create endpoint. Post to this URL shows the address. Click Copy and give it to the vendor. They send to it with POST.
Treat the URL like a password: anyone who has it can send leads to your list. If it leaks, give the endpoint a new URL: on the list, click the circular-arrow button on its row ("New URL" when you point at it). The old one stops working at once.

Step 6: Check what arrives

  1. Open the endpoint and click Run History. Each request shows Delivered, Retrying, Failed, Nothing mapped, Rejected or Rate limited.
  2. Open a request to see They sent, We mapped and The dialer said. Requests are kept for 30 days.
  3. On Alerts, switch on Tell me when it starts failing (one email to the account owner, at most 3 a day) and Daily digest (a summary at 08:00 UTC). Click Save.
Run History: every request and what happened to it
Run History: every request and what happened to it

To stop an endpoint for a while, use the power button on its row (Live becomes Paused). The trash button deletes it; anything still sending to it then fails.

If something goes wrong

Frequently asked

› The vendor gets "not_found".
The URL is wrong, the endpoint is paused or deleted, or you gave it a new URL. Check the endpoint is Live and send them the current URL.
› The vendor gets "rate_limited".
They sent more than your Most per minute. Raise the number in the Builder tab, or ask them to send more slowly.
› The vendor gets "ip_not_allowed".
They sent from an address that is not in Only these IPs. Add it, or empty the box.
› Run History says "Nothing mapped" or phone_number is required.
The phone number field matched nothing in what they sent. Check Join their fields to yours against a fresh sample.
› Requests show "Retrying" or "Failed".
Your dialer could not be reached when the lead arrived. Retrying requests are sent again by themselves; check your server is running.