List AI Routines
curl --request GET \
--url https://{instance}.omniapp.co/api/v1/ai/routines \
--header 'Authorization: Bearer <token>'import requests
url = "https://{instance}.omniapp.co/api/v1/ai/routines"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{instance}.omniapp.co/api/v1/ai/routines', 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://{instance}.omniapp.co/api/v1/ai/routines",
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://{instance}.omniapp.co/api/v1/ai/routines"
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://{instance}.omniapp.co/api/v1/ai/routines")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{instance}.omniapp.co/api/v1/ai/routines")
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{
"pageInfo": {
"hasNextPage": true,
"nextCursor": "<string>",
"pageSize": 123,
"totalRecords": 123
},
"records": [
{
"branchId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "<string>",
"description": "<string>",
"destination": {
"type": "email",
"recipientEmails": [
"blob.ross@blobsrus.com",
"blob.the.builder@blobsrus.com"
],
"userGroupIds": [
"550e8400-e29b-41d4-a716-446655440000"
]
},
"disabled": true,
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"lastRun": {
"completedAt": "<string>",
"label": "Delivered",
"state": "COMPLETE"
},
"modelId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"prompt": "<string>",
"recipientCount": 123,
"schedule": "<string>",
"systemDisabled": true,
"systemDisabledReason": "<string>",
"timezone": "<string>",
"topicName": "<string>",
"updatedAt": "<string>"
}
]
}{
"detail": "<string>",
"status": 400
}{
"error": "<response_code>",
"message": "<error_reason>"
}{
"error": "<response_code>",
"message": "<error_reason>"
}{
"detail": "<string>",
"status": 404
}{
"error": "<response_code>",
"message": "<error_reason>"
}{
"error": "<response_code>",
"message": "<error_reason>"
}Routines
List AI Routines
List AI Routines for the calling user, newest first. Includes routines paused by the owner or disabled by Omni, but excludes deleted routines.
Use pageInfo.nextCursor from one response as the cursor query parameter on the next request.
GET
/
v1
/
ai
/
routines
List AI Routines
curl --request GET \
--url https://{instance}.omniapp.co/api/v1/ai/routines \
--header 'Authorization: Bearer <token>'import requests
url = "https://{instance}.omniapp.co/api/v1/ai/routines"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{instance}.omniapp.co/api/v1/ai/routines', 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://{instance}.omniapp.co/api/v1/ai/routines",
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://{instance}.omniapp.co/api/v1/ai/routines"
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://{instance}.omniapp.co/api/v1/ai/routines")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{instance}.omniapp.co/api/v1/ai/routines")
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{
"pageInfo": {
"hasNextPage": true,
"nextCursor": "<string>",
"pageSize": 123,
"totalRecords": 123
},
"records": [
{
"branchId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "<string>",
"description": "<string>",
"destination": {
"type": "email",
"recipientEmails": [
"blob.ross@blobsrus.com",
"blob.the.builder@blobsrus.com"
],
"userGroupIds": [
"550e8400-e29b-41d4-a716-446655440000"
]
},
"disabled": true,
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"lastRun": {
"completedAt": "<string>",
"label": "Delivered",
"state": "COMPLETE"
},
"modelId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"prompt": "<string>",
"recipientCount": 123,
"schedule": "<string>",
"systemDisabled": true,
"systemDisabledReason": "<string>",
"timezone": "<string>",
"topicName": "<string>",
"updatedAt": "<string>"
}
]
}{
"detail": "<string>",
"status": 400
}{
"error": "<response_code>",
"message": "<error_reason>"
}{
"error": "<response_code>",
"message": "<error_reason>"
}{
"detail": "<string>",
"status": 404
}{
"error": "<response_code>",
"message": "<error_reason>"
}{
"error": "<response_code>",
"message": "<error_reason>"
}Authorizations
bearerAuthorgApiKey
Can be either an Organization API Key or Personal Access Token (PAT).
Include in the Authorization header as: Bearer YOUR_TOKEN
Query Parameters
Cursor for pagination from previous response nextCursor
Example:
"eyJpZCI6IjEyMzQ1In0"
Number of results per page (1-100, integer)
Required range:
1 <= x <= 100Example:
20
Sort direction for results
Available options:
asc, desc Example:
"desc"
Field to sort results by
Requires an Organization API key. Target user membership ID.
Was this page helpful?
⌘I

