curl --request GET \
--url https://automations-api.vortexiq.ai/v1/automations \
--header 'Authorization: Bearer <token>'import requests
url = "https://automations-api.vortexiq.ai/v1/automations"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://automations-api.vortexiq.ai/v1/automations', 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://automations-api.vortexiq.ai/v1/automations",
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://automations-api.vortexiq.ai/v1/automations"
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://automations-api.vortexiq.ai/v1/automations")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://automations-api.vortexiq.ai/v1/automations")
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{
"success": true,
"contract_version": 1,
"data": {
"automations": [
{
"id": "01M520GSDQH5TQ3CAAQ584TTKH",
"version": 2,
"kind": "template",
"import_id": null,
"template_id": "shopify-catalogue-quality",
"template_version": 4,
"platform": "shopify",
"integration_id": 101,
"store_label": "Example Shopify store",
"name": "Weekly catalogue check",
"state": "active",
"trigger": {
"kind": "schedule"
},
"paused_by": null,
"paused_reason": null,
"inputs": {},
"bindings": {},
"plan_version": 1,
"connections": [],
"schedule": {
"cadence": "weekly",
"run_at": "07:00",
"day_of_week": 1,
"day_of_month": null,
"date": null,
"days": null,
"week_of_month": null
},
"timezone": "Europe/London",
"spread_minutes": 2,
"next_run_at": "2026-10-19T06:02:00.000Z",
"last_run_at": null,
"consecutive_failures": 0,
"send_mode": "ask",
"created_at": "2026-10-16T09:26:03.448Z",
"updated_at": "2026-10-16T09:26:03.517Z",
"created_by": 7,
"created_via": "api-token",
"api_client_id": "viq_auto_Ab12Cd34Ef56Gh78Ij90Kl12"
},
{
"id": "01M520EQVS8H6AVZK1BECZEGR0",
"version": 7,
"kind": "template",
"import_id": null,
"template_id": "shopify-catalogue-quality",
"template_version": 4,
"platform": "shopify",
"integration_id": 101,
"store_label": "Example Shopify store",
"name": "Weekly catalogue check",
"state": "archived",
"trigger": {
"kind": "schedule"
},
"paused_by": null,
"paused_reason": null,
"inputs": {},
"bindings": {},
"plan_version": 1,
"connections": [],
"schedule": {
"cadence": "weekly",
"run_at": "07:00",
"day_of_week": 1,
"day_of_month": null,
"date": null,
"days": null,
"week_of_month": null
},
"timezone": "Europe/London",
"spread_minutes": 9,
"next_run_at": null,
"last_run_at": "2026-10-16T09:24:58.861Z",
"consecutive_failures": 0,
"send_mode": "ask",
"created_at": "2026-10-16T09:24:56.315Z",
"updated_at": "2026-10-16T09:25:01.413Z",
"created_by": 7,
"created_via": "api-token",
"api_client_id": "viq_auto_Ab12Cd34Ef56Gh78Ij90Kl12"
}
],
"page": {
"page": 1,
"per_page": 2,
"total": 73
}
}
}{
"success": false,
"contract_version": 2,
"message": "<string>",
"code": "<string>",
"errors": {}
}{
"success": false,
"contract_version": 2,
"message": "<string>",
"code": "<string>",
"errors": {}
}{
"success": false,
"contract_version": 2,
"message": "<string>",
"code": "<string>",
"errors": {}
}List automations
Your organisation’s automations, newest first, a page at a time. Filter with state and platform. Each
automation carries its schedule, its next run, its state, and who set it up: created_by (the person),
created_via (ui for the Vortex IQ app, api-token for this API) and api_client_id.
Needs the automations:read scope.
curl --request GET \
--url https://automations-api.vortexiq.ai/v1/automations \
--header 'Authorization: Bearer <token>'import requests
url = "https://automations-api.vortexiq.ai/v1/automations"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://automations-api.vortexiq.ai/v1/automations', 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://automations-api.vortexiq.ai/v1/automations",
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://automations-api.vortexiq.ai/v1/automations"
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://automations-api.vortexiq.ai/v1/automations")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://automations-api.vortexiq.ai/v1/automations")
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{
"success": true,
"contract_version": 1,
"data": {
"automations": [
{
"id": "01M520GSDQH5TQ3CAAQ584TTKH",
"version": 2,
"kind": "template",
"import_id": null,
"template_id": "shopify-catalogue-quality",
"template_version": 4,
"platform": "shopify",
"integration_id": 101,
"store_label": "Example Shopify store",
"name": "Weekly catalogue check",
"state": "active",
"trigger": {
"kind": "schedule"
},
"paused_by": null,
"paused_reason": null,
"inputs": {},
"bindings": {},
"plan_version": 1,
"connections": [],
"schedule": {
"cadence": "weekly",
"run_at": "07:00",
"day_of_week": 1,
"day_of_month": null,
"date": null,
"days": null,
"week_of_month": null
},
"timezone": "Europe/London",
"spread_minutes": 2,
"next_run_at": "2026-10-19T06:02:00.000Z",
"last_run_at": null,
"consecutive_failures": 0,
"send_mode": "ask",
"created_at": "2026-10-16T09:26:03.448Z",
"updated_at": "2026-10-16T09:26:03.517Z",
"created_by": 7,
"created_via": "api-token",
"api_client_id": "viq_auto_Ab12Cd34Ef56Gh78Ij90Kl12"
},
{
"id": "01M520EQVS8H6AVZK1BECZEGR0",
"version": 7,
"kind": "template",
"import_id": null,
"template_id": "shopify-catalogue-quality",
"template_version": 4,
"platform": "shopify",
"integration_id": 101,
"store_label": "Example Shopify store",
"name": "Weekly catalogue check",
"state": "archived",
"trigger": {
"kind": "schedule"
},
"paused_by": null,
"paused_reason": null,
"inputs": {},
"bindings": {},
"plan_version": 1,
"connections": [],
"schedule": {
"cadence": "weekly",
"run_at": "07:00",
"day_of_week": 1,
"day_of_month": null,
"date": null,
"days": null,
"week_of_month": null
},
"timezone": "Europe/London",
"spread_minutes": 9,
"next_run_at": null,
"last_run_at": "2026-10-16T09:24:58.861Z",
"consecutive_failures": 0,
"send_mode": "ask",
"created_at": "2026-10-16T09:24:56.315Z",
"updated_at": "2026-10-16T09:25:01.413Z",
"created_by": 7,
"created_via": "api-token",
"api_client_id": "viq_auto_Ab12Cd34Ef56Gh78Ij90Kl12"
}
],
"page": {
"page": 1,
"per_page": 2,
"total": 73
}
}
}{
"success": false,
"contract_version": 2,
"message": "<string>",
"code": "<string>",
"errors": {}
}{
"success": false,
"contract_version": 2,
"message": "<string>",
"code": "<string>",
"errors": {}
}{
"success": false,
"contract_version": 2,
"message": "<string>",
"code": "<string>",
"errors": {}
}Authorizations
A bearer token from Login, sent as Authorization: Bearer <token>. Valid for 60 minutes; it acts as the person named at login, within their organisation, and never approves. Rotating or disabling the organisation's API credential ends every token made with it on its next call. See Authentication.
Query Parameters
Only automations in this state: draft, active, paused or archived.
draft, active, paused, archived Only automations on this platform, such as shopify.
What an automation runs on: a store's platform (shopify, bigcommerce), or an account a template runs on, such as a cloud account (aws).
^[a-z][a-z0-9_]{1,63}$"shopify"
The page to read, from 1.
x >= 1Automations a page, 1 to 100 (25 unless you say).
1 <= x <= 100Was this page helpful?