Run lead touchpoints now
Make the selected waiting leads due now, so the dialler runs their next cadence step, usually a call, on its next check. Only leads in a waiting status, or stopped by TFU Live for a person, are touched. A lead that is mid-dial or already finished is skipped and left out of count, without an error. With selectAll, it acts on the outstanding leads, whose step came due and did not complete, and not the leads that GET /api/power-dialer/pipeline/leads, GET /api/power-dialer/pipeline/callbacks or GET /api/power-dialer/pipeline/s2l-parked return. Customer roles: agency_admin, project_user.
Required API key scope: power_dialer:write.
POST
/
api
/
power-dialer
/
run-now
cURL
curl --request POST \
--url https://api.teamfollowup.ai/api/power-dialer/run-now \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"queueIds": [
"queue_123",
"queue_456"
]
}'import requests
url = "https://api.teamfollowup.ai/api/power-dialer/run-now"
payload = { "queueIds": ["queue_123", "queue_456"] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({queueIds: ['queue_123', 'queue_456']})
};
fetch('https://api.teamfollowup.ai/api/power-dialer/run-now', 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://api.teamfollowup.ai/api/power-dialer/run-now",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'queueIds' => [
'queue_123',
'queue_456'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.teamfollowup.ai/api/power-dialer/run-now"
payload := strings.NewReader("{\n \"queueIds\": [\n \"queue_123\",\n \"queue_456\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.teamfollowup.ai/api/power-dialer/run-now")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"queueIds\": [\n \"queue_123\",\n \"queue_456\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.teamfollowup.ai/api/power-dialer/run-now")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"queueIds\": [\n \"queue_123\",\n \"queue_456\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"count": 2,
"modifiedCount": 2,
"updated": 2
}
}{
"success": false,
"error": "ValidationFailed",
"message": "Some details need fixing. Please check the highlighted fields.",
"errors": [
{
"field": "queueIds",
"code": "FieldRequired",
"message": "Please fill this in."
}
]
}{
"success": false,
"error": "Unauthorized",
"message": "Please sign in to continue."
}{
"success": false,
"error": "Forbidden",
"message": "You don't have access to this. Ask your account admin if you need it."
}{
"success": false,
"error": "TooManyRequests",
"message": "That's a lot at once. Please wait a moment and try again."
}{
"success": false,
"error": "Internal",
"message": "Something went wrong on our side. Please try again in a moment.",
"ref": "3f2b8c1e-7d4a-4f8e-9b6a-2c1d0e5f7a9b"
}Authorizations
Body
application/json
Lead action payload.
⌘I
cURL
curl --request POST \
--url https://api.teamfollowup.ai/api/power-dialer/run-now \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"queueIds": [
"queue_123",
"queue_456"
]
}'import requests
url = "https://api.teamfollowup.ai/api/power-dialer/run-now"
payload = { "queueIds": ["queue_123", "queue_456"] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({queueIds: ['queue_123', 'queue_456']})
};
fetch('https://api.teamfollowup.ai/api/power-dialer/run-now', 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://api.teamfollowup.ai/api/power-dialer/run-now",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'queueIds' => [
'queue_123',
'queue_456'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.teamfollowup.ai/api/power-dialer/run-now"
payload := strings.NewReader("{\n \"queueIds\": [\n \"queue_123\",\n \"queue_456\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.teamfollowup.ai/api/power-dialer/run-now")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"queueIds\": [\n \"queue_123\",\n \"queue_456\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.teamfollowup.ai/api/power-dialer/run-now")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"queueIds\": [\n \"queue_123\",\n \"queue_456\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"count": 2,
"modifiedCount": 2,
"updated": 2
}
}{
"success": false,
"error": "ValidationFailed",
"message": "Some details need fixing. Please check the highlighted fields.",
"errors": [
{
"field": "queueIds",
"code": "FieldRequired",
"message": "Please fill this in."
}
]
}{
"success": false,
"error": "Unauthorized",
"message": "Please sign in to continue."
}{
"success": false,
"error": "Forbidden",
"message": "You don't have access to this. Ask your account admin if you need it."
}{
"success": false,
"error": "TooManyRequests",
"message": "That's a lot at once. Please wait a moment and try again."
}{
"success": false,
"error": "Internal",
"message": "Something went wrong on our side. Please try again in a moment.",
"ref": "3f2b8c1e-7d4a-4f8e-9b6a-2c1d0e5f7a9b"
}