Get Agent
curl --request GET \
--url https://api.promptlayer.com/workflows/{workflow_id_or_name} \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.promptlayer.com/workflows/{workflow_id_or_name}"
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.promptlayer.com/workflows/{workflow_id_or_name}', 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.promptlayer.com/workflows/{workflow_id_or_name}",
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.promptlayer.com/workflows/{workflow_id_or_name}"
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.promptlayer.com/workflows/{workflow_id_or_name}")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.promptlayer.com/workflows/{workflow_id_or_name}")
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{
"success": true,
"workflow_id": 123,
"workflow_name": "my-workflow",
"version_number": 3,
"release_labels": [
"production"
],
"nodes": [
{
"name": "greeting",
"node_type": "VARIABLE",
"is_output_node": true,
"configuration": {
"value": {
"type": "string",
"value": "Hello, World!"
}
},
"dependencies": []
}
],
"edges": [],
"required_input_variables": {
"user_message": "string"
},
"external_ids": []
}{
"success": false,
"message": "<string>",
"error": "<string>"
}{
"success": false,
"message": "<string>",
"error": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Workflows
Get Workflow
GET
/
workflows
/
{workflow_id_or_name}
Get Agent
curl --request GET \
--url https://api.promptlayer.com/workflows/{workflow_id_or_name} \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.promptlayer.com/workflows/{workflow_id_or_name}"
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.promptlayer.com/workflows/{workflow_id_or_name}', 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.promptlayer.com/workflows/{workflow_id_or_name}",
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.promptlayer.com/workflows/{workflow_id_or_name}"
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.promptlayer.com/workflows/{workflow_id_or_name}")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.promptlayer.com/workflows/{workflow_id_or_name}")
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{
"success": true,
"workflow_id": 123,
"workflow_name": "my-workflow",
"version_number": 3,
"release_labels": [
"production"
],
"nodes": [
{
"name": "greeting",
"node_type": "VARIABLE",
"is_output_node": true,
"configuration": {
"value": {
"type": "string",
"value": "Hello, World!"
}
},
"dependencies": []
}
],
"edges": [],
"required_input_variables": {
"user_message": "string"
},
"external_ids": []
}{
"success": false,
"message": "<string>",
"error": "<string>"
}{
"success": false,
"message": "<string>",
"error": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Retrieve a workflow by ID or name, including full node configuration, edges, and version details. By default, the latest version is returned.
Behavior Notes
- Use
versionto retrieve a specific version number. - Use
labelto retrieve the version currently assigned to a release label. versionandlabelare mutually exclusive.
Related
Authorizations
Path Parameters
The agent ID or name.
Query Parameters
Specific version number to retrieve. Mutually exclusive with label.
Release label name to retrieve (e.g. 'prod', 'staging'). Mutually exclusive with version.
Response
Agent retrieved successfully
Example:
true
Unique identifier for the agent
Name of the agent
Version number
Unique identifier for this version
Full node definitions including configuration and dependencies
Show child attributes
Show child attributes
Connections between nodes with optional conditionals
Show child attributes
Show child attributes
Commit message for this version
Input variable names mapped to their types
Show child attributes
Show child attributes
Release labels attached to this version
ISO 8601 timestamp of when this version was created
Was this page helpful?

