FreeClimb is a cloud-based application programming interface (API) that puts the power of Vail's platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. FreeClimb gives application developers access to features including:
Incoming Numbers represent phone numbers and connect users to your applications. You can use an Incoming Number to make and receive calls or send and receive messages.
To FreeClimb, an Application is simply a set of configuration data. You can configure the following data on an Application:
URL that FreeClimb will request when an inbound call arrives on a phone number assigned to this Application.
URL that FreeClimb will request if it times out waiting for a response from the voiceUrl.
URL that FreeClimb will request when a phone number assigned to this Application receives an incoming SMS message.
URL that FreeClimb will request if it times out waiting for a response from the smsUrl.
URL that FreeClimb will request when an outbound call request is complete.
URL that FreeClimb will request to pass call status (such as call ended) to the application.
When a call or message lands on the plaform for one of your Numbers, these URLs work as the initial link between FreeClimb and your web server.
Assigning your Number to an Application means that when a call or message comes through to that phone number, FreeClimb can use the Application's configuration data for instructions on what to do.
For all of this to work, your webhooks need to be configured with publicly available URLs.
There are two modes of operation on FreeClimb's platform:
- Actions using the Performance Command Language (PerCL) that are in response to external events
- Application-initiated actions using the RESTful API
API actions happen through HTTP requests to FreeClimb endpoints. When an external event happens, like a call or message coming in, FreeClimb will make a POST request to one of your Application's webhooks. Some of these POST requests expect a set of instructions in the response, like what to do with the call, and that's where PerCL comes in. PerCL is a scripting language that FreeClimb developers can use to control events within the context of a call.
Let's look at a couple of examples to see how it all comes together.
- A call for your Incoming Number lands on the platform.
- FreeClimb looks for an Application associated with the phone number.
- FreeClimb makes a POST request to the voiceUrl of the Application.
- Your web server returns a PerCL script with instructions for how FreeClimb should handle the call.
- FreeClimb processes the instructions, and takes some action on the call (for example, playing audio to the caller).
- Your web server makes a POST request to the FreeClimb /Messages endpoint containing the details of the message (the text of the message, the number it's going to, and the FreeClimb number it's coming from) and the URL of a notificationUrl.
- FreeClimb sends your message.
- FreeClimb makes a POST request to the notificationUrl you provided with status updates about your message.
Now that you've got an idea of how FreeClimb works, you're ready to start building. To help you get started we've put together a library of sample applications and related how-to guides for voice and messaging. A great place to start is the Voice Calling Quickstart or Messaging Quickstart.
Updated about a year ago