curl --request GET \
--url https://your-instance.example.com/api/applications/{id}/time-to-contact \
--header 'Authorization: Bearer <token>'import requests
url = "https://your-instance.example.com/api/applications/{id}/time-to-contact"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://your-instance.example.com/api/applications/{id}/time-to-contact', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://your-instance.example.com/api/applications/{id}/time-to-contact",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.example.com/api/applications/{id}/time-to-contact"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://your-instance.example.com/api/applications/{id}/time-to-contact")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://your-instance.example.com/api/applications/{id}/time-to-contact")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"timeToContact": 184000,
"unit": "milliseconds",
"firstContactAt": "2026-04-12T14:25:14.000Z",
"formatted": {
"milliseconds": 184000,
"seconds": 184,
"minutes": 3,
"hours": 0,
"days": 0
}
}{
"error": "Application not found"
}{
"error": "Application not found"
}{
"error": "Application not found"
}Calculate application time-to-contact
Calculates the elapsed time between when the Application was created and the first outbound message in any linked Conversation. Returns timeToContact: null (and an explanatory message) when no outbound message has been sent yet.
curl --request GET \
--url https://your-instance.example.com/api/applications/{id}/time-to-contact \
--header 'Authorization: Bearer <token>'import requests
url = "https://your-instance.example.com/api/applications/{id}/time-to-contact"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://your-instance.example.com/api/applications/{id}/time-to-contact', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://your-instance.example.com/api/applications/{id}/time-to-contact",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://your-instance.example.com/api/applications/{id}/time-to-contact"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://your-instance.example.com/api/applications/{id}/time-to-contact")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://your-instance.example.com/api/applications/{id}/time-to-contact")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"timeToContact": 184000,
"unit": "milliseconds",
"firstContactAt": "2026-04-12T14:25:14.000Z",
"formatted": {
"milliseconds": 184000,
"seconds": 184,
"minutes": 3,
"hours": 0,
"days": 0
}
}{
"error": "Application not found"
}{
"error": "Application not found"
}{
"error": "Application not found"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Response
Time-to-contact returned
Time elapsed between application creation and the first outbound message in any linked conversation. timeToContact and firstContactAt are null when no outbound message has been sent yet.
milliseconds Milliseconds between application creation and first outbound message. Null if no outbound message yet.
Explanatory message when timeToContact is null.
Same value expressed in different units (only present on the success path).
Show child attributes
Show child attributes