HTTP Request Definition
Create HTTP request definition
Creates a new HTTP request definition. The signing secret is only returned in this response and cannot be retrieved later.
POST
/
v1
/
http-request-definition
JavaScript
import Roark from '@roarkanalytics/sdk';
const client = new Roark({
bearerToken: process.env['ROARK_API_BEARER_TOKEN'], // This is the default and can be omitted
});
const httpRequestDefinition = await client.httpRequestDefinition.create({
scope: 'AGENT_OUTBOUND_DIAL',
url: 'https://example.com',
});
console.log(httpRequestDefinition.data);import os
from roark_analytics import Roark
client = Roark(
bearer_token=os.environ.get("ROARK_API_BEARER_TOKEN"), # This is the default and can be omitted
)
http_request_definition = client.http_request_definition.create(
scope="AGENT_OUTBOUND_DIAL",
url="https://example.com",
)
print(http_request_definition.data)curl --request POST \
--url https://api.roark.ai/v1/http-request-definition \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"scope": "AGENT_OUTBOUND_DIAL",
"url": "<string>",
"description": "<string>",
"method": "POST",
"body": "<string>",
"headers": {}
}
'<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.roark.ai/v1/http-request-definition",
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([
'scope' => 'AGENT_OUTBOUND_DIAL',
'url' => '<string>',
'description' => '<string>',
'method' => 'POST',
'body' => '<string>',
'headers' => [
]
]),
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.roark.ai/v1/http-request-definition"
payload := strings.NewReader("{\n \"scope\": \"AGENT_OUTBOUND_DIAL\",\n \"url\": \"<string>\",\n \"description\": \"<string>\",\n \"method\": \"POST\",\n \"body\": \"<string>\",\n \"headers\": {}\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.roark.ai/v1/http-request-definition")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"scope\": \"AGENT_OUTBOUND_DIAL\",\n \"url\": \"<string>\",\n \"description\": \"<string>\",\n \"method\": \"POST\",\n \"body\": \"<string>\",\n \"headers\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.roark.ai/v1/http-request-definition")
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 \"scope\": \"AGENT_OUTBOUND_DIAL\",\n \"url\": \"<string>\",\n \"description\": \"<string>\",\n \"method\": \"POST\",\n \"body\": \"<string>\",\n \"headers\": {}\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"scope": "AGENT_OUTBOUND_DIAL",
"description": "<string>",
"url": "<string>",
"body": "<string>",
"parsedBody": {},
"headers": {},
"createdAt": "<string>",
"updatedAt": "<string>",
"signingSecret": "<string>"
}
}{
"type": "authentication",
"code": "unauthorized",
"message": "Authentication required"
}{
"type": "internal",
"code": "internal_error",
"message": "Internal server error"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
Input for creating an HTTP request definition
Scope: AGENT_OUTBOUND_DIAL
Available options:
AGENT_OUTBOUND_DIAL URL for the HTTP request
Description of the HTTP request definition
HTTP method (default: POST)
Available options:
POST, PUT, PATCH, GET Request body template. Accepts a JSON object or a string with placeholders like {{phoneNumberToDial}}. Objects are serialized to JSON for storage.
Request headers as key-value pairs
Show child attributes
Show child attributes
Response
The created HTTP request definition with signing secret
HTTP request definition with signing secret (returned on creation)
Show child attributes
Show child attributes
⌘I
JavaScript
import Roark from '@roarkanalytics/sdk';
const client = new Roark({
bearerToken: process.env['ROARK_API_BEARER_TOKEN'], // This is the default and can be omitted
});
const httpRequestDefinition = await client.httpRequestDefinition.create({
scope: 'AGENT_OUTBOUND_DIAL',
url: 'https://example.com',
});
console.log(httpRequestDefinition.data);import os
from roark_analytics import Roark
client = Roark(
bearer_token=os.environ.get("ROARK_API_BEARER_TOKEN"), # This is the default and can be omitted
)
http_request_definition = client.http_request_definition.create(
scope="AGENT_OUTBOUND_DIAL",
url="https://example.com",
)
print(http_request_definition.data)curl --request POST \
--url https://api.roark.ai/v1/http-request-definition \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"scope": "AGENT_OUTBOUND_DIAL",
"url": "<string>",
"description": "<string>",
"method": "POST",
"body": "<string>",
"headers": {}
}
'<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.roark.ai/v1/http-request-definition",
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([
'scope' => 'AGENT_OUTBOUND_DIAL',
'url' => '<string>',
'description' => '<string>',
'method' => 'POST',
'body' => '<string>',
'headers' => [
]
]),
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.roark.ai/v1/http-request-definition"
payload := strings.NewReader("{\n \"scope\": \"AGENT_OUTBOUND_DIAL\",\n \"url\": \"<string>\",\n \"description\": \"<string>\",\n \"method\": \"POST\",\n \"body\": \"<string>\",\n \"headers\": {}\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.roark.ai/v1/http-request-definition")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"scope\": \"AGENT_OUTBOUND_DIAL\",\n \"url\": \"<string>\",\n \"description\": \"<string>\",\n \"method\": \"POST\",\n \"body\": \"<string>\",\n \"headers\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.roark.ai/v1/http-request-definition")
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 \"scope\": \"AGENT_OUTBOUND_DIAL\",\n \"url\": \"<string>\",\n \"description\": \"<string>\",\n \"method\": \"POST\",\n \"body\": \"<string>\",\n \"headers\": {}\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"scope": "AGENT_OUTBOUND_DIAL",
"description": "<string>",
"url": "<string>",
"body": "<string>",
"parsedBody": {},
"headers": {},
"createdAt": "<string>",
"updatedAt": "<string>",
"signingSecret": "<string>"
}
}{
"type": "authentication",
"code": "unauthorized",
"message": "Authentication required"
}{
"type": "internal",
"code": "internal_error",
"message": "Internal server error"
}