Just a moment,
we are processing your request ...

Inbound Calls | Ringba Specs

Who Should Use These Specs?

  • Publishers who host and post calls through Ringba

General Notes

  • Fields and Enums are case sensitive! Use exact syntax.
  • Fields listed must be included to receive competitive bids.
  • Transfer calls to the “Terminating_Phone” provided.
  • You must use a 2-step Ping/Post request.
  • Inquirly does not pass call duration in the ping or the post. If duration is required for billing or tracking purposes, please contact your Affiliate Manager for guidance. All affiliates are required to hard code the desired duration value on their end during setup and integration.

Required Fields

Ping Post Field Value
YesYesKeyProvided
YesYesSRCProvided
YesYesTerminating_PhoneProvided
YesYesTerminating_Phone_Country_Code1
YesYesAPI_ActioniprSubmitLead
YesNoModeping
NoYesModepost
YesYesTYPE9
YesYesTaskex. Plumbing
YesYesZIPex. 90210
YesYesSub_IDex. 123, abc
YesNoReturn_Best_Price1
YesYesOrigin_Phone_Country_Code1
YesYesOrigin_Phone_Area_Codeex. 123
YesYesOrigin_Phone_Prefixex. 456
YesYesOrigin_Phone_Suffixex. 7890
YesYesFormatJSON
NoYesLead_IDIn Ping Response
NoYesApp_ID888
NoYesStart_Date_Time2018-08-12 12:30:12

Ping 📢: Send partial info (like ZIP and Task) to ask “Do you want this lead?”
Post ✉️: If Inquirly bids appropriately, send the full lead info to finalize the sale.

Task List

Air Duct CleaningDrainage ChannelGuttersRoofing
Appliance RepairElectricianHoardingSiding
Asbestos RemovalExcavationHVACSolar
Asbestos TestingFencingLocksmithTree Services
Bathroom RemodelFire DamageMold RemovalWater Removal
BiohazardFlooringMold TestingWaterproofing
Concrete FoundationGarage DoorsPest ControlWindows
Concrete LevelingGutter CoversPlumbingXeriscaping

Ringba Campaign Setup Guide

Introduction

Ringba is a powerful inbound call-tracking platform that values setup simplicity to get calls routed from A➡️B. However, there are a few quirks in Ringba that makes it vulnerable to integration errors with Inquirly. The worst of them being routing calls to Inquirly that never actually connect, leaving the caller unable to reach a contractor. We aim to help reduce those errors in this document. Step by step, we’ll detail what we think is the best setup for routing calls from your Ringba campaign to Inquirly. Deviate from these steps at your own risk.

1. Create Number

Navigate to the Numbers🔽Manage Numbers menu.

If you haven’t already, create a number that will be used to route users from your display page or advertisement to your Ringba campaign. Assign that number to the appropriate publisher (default: “You”).

Once created, edit the number with a new tag name Task and insert the appropriate task enum from the Task List. For example, if you are routing appliance repair calls, you would map Task: Appliance Repair. Save the number with a recognizable name for later reference.

ℹ️ If you plan on routing multiple Tasks to Inquirly, ensure you have a unique number for each one.

2. Create Inquirly’s Ring Tree Target

Navigate to the Ring Trees🔽Manage Ring Tree Targets menu and create a Ring Tree Target.

A Ring Tree Target is a buyer endpoint that Ringba pings during a real-time bidding setup to see if the buyer want to accept an incoming call. In other words, a Ring Tree Target allows you to send Inquirly a ping and post request to our system when a call comes in, allowing us to confirm if we have coverage for that call and return a bid. Ring Tree Targets are essential for integration with Inquirly, so this step should not be neglected. We’ll create a TODO list for you to check off as you go along.

  • Under Name, enter Inquirly Ring Tree Target
  • Under Number, enter your provided Terminating_Phone
  • Under Revenue Settings↘️Convert On, select Postback/Webhook
  • Under Request Settings↘️URL, enter https://app.inquirly.com/apiJSON.php
  • Under Request Settings↘️HTTP Method, select POST
  • Under Request Settings↘️Request Body, enter your Ping Request
{
    "Request": {
        "Key": "<Your API Key>",
        "ZIP": "[tag:gather:ZipCode]",
        "Task": "[tag:DialedNumber:Task]",
        "API_Action": "iprSubmitLead",
        "Mode": "ping",
        "Return_Best_Price": "1",
        "TYPE": "9",
        "SRC": "<Your SRC>",
        "Terminating_Phone": "<Your Terminating Phone>",
        "Terminating_Phone_Country_Code": "1",
        "Format": "JSON",
        "Start_Date_Time": "[tag:Date:Date]",
        "Origin_Phone_Country_Code": "1"
        "Origin_Phone_Area_Code": "[tag:InboundNumber:AreaCode]",
        "Origin_Phone_Prefix": "[tag:InboundNumber:Prefix]",
        "Origin_Phone_Suffix": "[tag:InboundNumber:Suffix]"
    }
}
  • Under Request Settings↘️Run Request, run a test request to view and store Inquirly’s ping response syntax
  • Under Request Settings↘️Acceptance Parsing, select response>status then Equals then enter Matched
  • Under Request Settings↘️Dynamic Bid Parsing, select response,price
  • Under Request Settings↘️Confirmation Request, switch on
  • Under Request Settings↘️Bid ID Required, switch on
  • Under Request Settings↘️Bid ID Parsing, select response,lead_id
  • Under Confirmation Request Settings↘️Confirmation Request Required, switch on
  • Under Confirmation Request Settings↘️URL, enter https://app.inquirly.com/apiJSON.php
  • Under Confirmation Request Settings↘️HTTP Method, select POST
  • Under Confirmation Request Settings↘️Request Body, enter your Post Request
{
    "Request": {
        "Key": "<Your API Key>",
        "ZIP": "[tag:gather:ZipCode]",
        "Task": "[tag:DialedNumber:Task]",
        "API_Action": "iprSubmitLead",
        "Lead_ID": "[bid-id]",
        "Mode": "post",
        "TYPE": "9",
        "SRC": "<Your SRC>",
        "Terminating_Phone": "<Your Terminating Phone>",
        "Terminating_Phone_Country_Code": "1",
        "Format": "JSON",
        "App_ID": "888",
        "Start_Date_Time": "[Call:CallDateTime]",
        "Origin_Phone_Country_Code": "1"
        "Origin_Phone_Area_Code": "[tag:InboundNumber:AreaCode]",
        "Origin_Phone_Prefix": "[tag:InboundNumber:Prefix]",
        "Origin_Phone_Suffix": "[tag:InboundNumber:Suffix]"
    }
}
  • Save your Ring Tree Target

These are our recommended Ring Tree Target settings. Feel free to customize around this to fit your campaign’s settings.

3. Establish Ring Tree

Navigate to the Ring Trees🔽Manage Ring Trees menu.

A Ring Tree combines multiple Ring Tree Targets, allowing you to ping multiple API endpoints at the same time and accept the most qualified bidder. Please follow this TODO list for instructions.

  • Under Name, enter Main Ring Tree
  • Under Revenue Settings↘️Revenue Type, select Dynamic
  • Under Revenue Settings↘️Convert On, select Postback/Webhook
  • Under Add Ring Tree Targets↘️Select Target, select Inquirly Ring Tree Target
  • Add other Ring Tree Targets if you have them
  • Save your Ring Tree
4. Establish Routing Plan

Navigate to the Call Flows🔽Routing Plans menu.

A Routing Plan in Ringba allows you to setup where you want your calls to go, after someone calls your publisher number. Create a Routing Plan and select the Ring Tree you created earlier to route calls to your Ring Tree Targets.

5. Create Call Flow

Navigate to the Call Flows🔽Create Call Flow menu.

A Call Flow is the step-by-step logic that controls what happens from the moment a call comes in until it ends. Ringba uses “Nodes” to encapsulate different functionalities in the Call Flow Design UI. Experiment with what works best for you, but the general flow we recommend looks like this:

Inbound Call ➡️ Collect Zip ➡️ Transfer

To collect ZIP, search for the “Gather” node and connect it after your root. Name it “Collect Zip” and assign “Gather Tag Name” to be ZIP. Like the Task tag, this will be later referenced. Feel free to customize this node with different voice and collect options.

To transfer the call, search for the “Dial” node and connect it after the “Gather” node. Ensure you connect it with the “On success” option. Name it “Transfer” and connect it to the Routing Plan you established earlier.

Handle “Failures” in your Call Flow however you’d like – we recommend routing the caller to a fail-safe number, like a call center, so the opportunity isn’t lost.

6. Establish Campaign

Navigate to the Campaigns menu.

In Ringba, a campaign is a container that controls how incoming calls are handled. When you create a new Campaign, a majority of the settings depend on how you’d like to fine-tune your setup. We won’t spend too much time on those and only include the settings that will allow you to integrate everything we just created into the campaign.

  • Under Publishers, add Publishers that correspond to the Numbers you created in the beginning. DO NOT add Numbers that are missing the Task Tag and value in them. This will cause calls not to route at all to Inquirly.
  • Under Call Routing, select the Call Flow you created earlier.
  • Save your Campaign
7. Testing

Before we go live, we need to make sure you are able to route calls properly from your Campaign. To test, call your Publisher Number and enter ZIP = 00001. If all goes well, your Campaign should route you through the Call Flow, into the Routing Plan, which would then activate your Ring Tree with Inquirly’s Ring Tree Target in it. Our system should accept your ping request and confirm a bid. If Ringba interprets this as a successful ping reply, it will send the post request with the rest of the info to Inquirly and route the call to the Terminating_Phone provided. If everything worked as expected, your test call will route to our test buyer (i.e. an Inquirly Agent) who will confirm the test was successful.

Conclusion

You have now completed your Ringba integration to route calls to Inquirly with Ping/Post! If you have any questions about this guide, please email amer@inquirly.com for support.

⚠️ Disclaimer
This guide is provided solely for informational purposes to assist users in integrating their Ringba account with Inquirly. It is a general reference and may not reflect the most up-to-date best practices or account configurations.
Inquirly is not affiliated with Ringba in any way. All trademarks, service marks, and company names mentioned are the property of their respective owners.
By using this guide, you acknowledge that Inquirly is not liable for any errors, issues, misconfigurations, data loss, or other consequences that may result from its use.
Use at your own discretion and risk.
If you have concerns about integration, we recommend reaching out to Ringba support or a qualified technical professional.