curl --request POST \
--url https://api.openworklabs.com/v1/workflows/{configObjectId}/run \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"pluginId": "<string>",
"configObjectVersionId": "<string>",
"input": "<unknown>"
}
'import requests
url = "https://api.openworklabs.com/v1/workflows/{configObjectId}/run"
payload = {
"pluginId": "<string>",
"configObjectVersionId": "<string>",
"input": "<unknown>"
}
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({pluginId: '<string>', configObjectVersionId: '<string>', input: '<unknown>'})
};
fetch('https://api.openworklabs.com/v1/workflows/{configObjectId}/run', 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}/run",
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([
'pluginId' => '<string>',
'configObjectVersionId' => '<string>',
'input' => '<unknown>'
]),
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.openworklabs.com/v1/workflows/{configObjectId}/run"
payload := strings.NewReader("{\n \"pluginId\": \"<string>\",\n \"configObjectVersionId\": \"<string>\",\n \"input\": \"<unknown>\"\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.openworklabs.com/v1/workflows/{configObjectId}/run")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"pluginId\": \"<string>\",\n \"configObjectVersionId\": \"<string>\",\n \"input\": \"<unknown>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.openworklabs.com/v1/workflows/{configObjectId}/run")
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 \"pluginId\": \"<string>\",\n \"configObjectVersionId\": \"<string>\",\n \"input\": \"<unknown>\"\n}"
response = http.request(request)
puts response.read_body{
"status": "succeeded",
"value": "<unknown>",
"markdown": "<string>",
"receiptId": "<string>",
"resultDigest": "<string>",
"inputSchemaDigest": "<string>",
"outputSchemaDigest": "<string>",
"rendererVersion": "codemode-markdown-v1"
}{
"error": "invalid_request",
"details": [
{
"message": "<string>",
"path": [
"<string>"
]
}
],
"capability": "<string>"
}Run an exact Workflow version
Executes the version identified by configObjectVersionId of this Workflow, under the Plugin named by pluginId, with input as the script’s input, using the caller’s live tools, and records a snapshot receipt. The input is validated against the version’s inputSchema and the result against its outputSchema; a mismatch is rejected with 400 invalid_capability_arguments, a required capability that is unavailable with capability_unavailable, and a thrown script error with script_failed. The caller needs a Workflow, Plugin, or Marketplace grant that covers this Workflow; an unknown Workflow or Plugin returns unknown_capability and a missing grant returns forbidden, both as 400.
curl --request POST \
--url https://api.openworklabs.com/v1/workflows/{configObjectId}/run \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"pluginId": "<string>",
"configObjectVersionId": "<string>",
"input": "<unknown>"
}
'import requests
url = "https://api.openworklabs.com/v1/workflows/{configObjectId}/run"
payload = {
"pluginId": "<string>",
"configObjectVersionId": "<string>",
"input": "<unknown>"
}
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({pluginId: '<string>', configObjectVersionId: '<string>', input: '<unknown>'})
};
fetch('https://api.openworklabs.com/v1/workflows/{configObjectId}/run', 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}/run",
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([
'pluginId' => '<string>',
'configObjectVersionId' => '<string>',
'input' => '<unknown>'
]),
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.openworklabs.com/v1/workflows/{configObjectId}/run"
payload := strings.NewReader("{\n \"pluginId\": \"<string>\",\n \"configObjectVersionId\": \"<string>\",\n \"input\": \"<unknown>\"\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.openworklabs.com/v1/workflows/{configObjectId}/run")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"pluginId\": \"<string>\",\n \"configObjectVersionId\": \"<string>\",\n \"input\": \"<unknown>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.openworklabs.com/v1/workflows/{configObjectId}/run")
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 \"pluginId\": \"<string>\",\n \"configObjectVersionId\": \"<string>\",\n \"input\": \"<unknown>\"\n}"
response = http.request(request)
puts response.read_body{
"status": "succeeded",
"value": "<unknown>",
"markdown": "<string>",
"receiptId": "<string>",
"resultDigest": "<string>",
"inputSchemaDigest": "<string>",
"outputSchemaDigest": "<string>",
"rendererVersion": "codemode-markdown-v1"
}{
"error": "invalid_request",
"details": [
{
"message": "<string>",
"path": [
"<string>"
]
}
],
"capability": "<string>"
}Authorizations
Session token passed as Authorization: Bearer <session-token> for user-authenticated Den routes.
Path Parameters
Body
Response
Workflow executed.
Was this page helpful?