List immutable Workflow versions
curl --request GET \
--url https://api.openworklabs.com/v1/workflows/{configObjectId}/versions \
--header 'x-api-key: <api-key>'import requests
url = "https://api.openworklabs.com/v1/workflows/{configObjectId}/versions"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.openworklabs.com/v1/workflows/{configObjectId}/versions', 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.openworklabs.com/v1/workflows/{configObjectId}/versions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$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://api.openworklabs.com/v1/workflows/{configObjectId}/versions"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.openworklabs.com/v1/workflows/{configObjectId}/versions")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.openworklabs.com/v1/workflows/{configObjectId}/versions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"items": [
{
"id": "<string>",
"code": "<string>",
"graph": {
"nodes": [
{
"id": "<string>",
"kind": "input",
"label": "<string>",
"fields": [
"<string>"
]
}
],
"edges": [
{
"from": "<string>",
"to": "<string>",
"label": "<string>",
"kind": "flow"
}
],
"parseError": "<string>"
},
"inputSchema": null,
"outputSchema": null,
"requiredCapabilities": [
{
"capabilityName": "<string>",
"scriptPath": "<string>"
}
],
"codeDigest": "<string>",
"inputSchemaDigest": "<string>",
"outputSchemaDigest": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"automationReferences": [
{
"id": "<string>",
"name": "<string>",
"state": "active",
"configObjectVersionId": "<string>",
"input": "<unknown>"
}
],
"exampleInput": null
}
]
}{
"error": "invalid_request",
"details": [
{
"message": "<string>",
"path": [
"<string>"
]
}
],
"message": "<string>",
"capability": "<string>"
}{
"error": "unauthorized"
}{
"error": "<string>",
"message": "<string>"
}Workflows
List immutable Workflow versions
Lists the Workflow’s immutable versions, newest first, each with its code, call graph, schemas, requiredCapabilities, digests, and the caller’s own Automations that pin it. Code, example input, and source-derived graph labels are redacted for members without manager access. Requires read access to the Workflow.
GET
/
v1
/
workflows
/
{configObjectId}
/
versions
List immutable Workflow versions
curl --request GET \
--url https://api.openworklabs.com/v1/workflows/{configObjectId}/versions \
--header 'x-api-key: <api-key>'import requests
url = "https://api.openworklabs.com/v1/workflows/{configObjectId}/versions"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.openworklabs.com/v1/workflows/{configObjectId}/versions', 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.openworklabs.com/v1/workflows/{configObjectId}/versions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$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://api.openworklabs.com/v1/workflows/{configObjectId}/versions"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.openworklabs.com/v1/workflows/{configObjectId}/versions")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.openworklabs.com/v1/workflows/{configObjectId}/versions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"items": [
{
"id": "<string>",
"code": "<string>",
"graph": {
"nodes": [
{
"id": "<string>",
"kind": "input",
"label": "<string>",
"fields": [
"<string>"
]
}
],
"edges": [
{
"from": "<string>",
"to": "<string>",
"label": "<string>",
"kind": "flow"
}
],
"parseError": "<string>"
},
"inputSchema": null,
"outputSchema": null,
"requiredCapabilities": [
{
"capabilityName": "<string>",
"scriptPath": "<string>"
}
],
"codeDigest": "<string>",
"inputSchemaDigest": "<string>",
"outputSchemaDigest": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"automationReferences": [
{
"id": "<string>",
"name": "<string>",
"state": "active",
"configObjectVersionId": "<string>",
"input": "<unknown>"
}
],
"exampleInput": null
}
]
}{
"error": "invalid_request",
"details": [
{
"message": "<string>",
"path": [
"<string>"
]
}
],
"message": "<string>",
"capability": "<string>"
}{
"error": "unauthorized"
}{
"error": "<string>",
"message": "<string>"
}Authorizations
denApiKeybearerAuth
Organization API key passed as the x-api-key header. The raw key is the header value; do not prefix it with Bearer.
Path Parameters
Response
Workflow versions returned.
Show child attributes
Show child attributes
Was this page helpful?