Track Prompt
curl --request POST \
--url https://api.promptlayer.com/rest/track-prompt \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"prompt_name": "support-response",
"prompt_input_variables": {
"user_message": "Hello"
},
"request_id": 12345,
"version": 2
}
'import requests
url = "https://api.promptlayer.com/rest/track-prompt"
payload = {
"prompt_name": "support-response",
"prompt_input_variables": { "user_message": "Hello" },
"request_id": 12345,
"version": 2
}
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
prompt_name: 'support-response',
prompt_input_variables: {user_message: 'Hello'},
request_id: 12345,
version: 2
})
};
fetch('https://api.promptlayer.com/rest/track-prompt', 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/rest/track-prompt",
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([
'prompt_name' => 'support-response',
'prompt_input_variables' => [
'user_message' => 'Hello'
],
'request_id' => 12345,
'version' => 2
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.promptlayer.com/rest/track-prompt"
payload := strings.NewReader("{\n \"prompt_name\": \"support-response\",\n \"prompt_input_variables\": {\n \"user_message\": \"Hello\"\n },\n \"request_id\": 12345,\n \"version\": 2\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
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.promptlayer.com/rest/track-prompt")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"prompt_name\": \"support-response\",\n \"prompt_input_variables\": {\n \"user_message\": \"Hello\"\n },\n \"request_id\": 12345,\n \"version\": 2\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.promptlayer.com/rest/track-prompt")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"prompt_name\": \"support-response\",\n \"prompt_input_variables\": {\n \"user_message\": \"Hello\"\n },\n \"request_id\": 12345,\n \"version\": 2\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Prompt tracked successfully"
}{
"success": false,
"message": "<string>",
"error": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Tracking
Track Prompt
POST
/
rest
/
track-prompt
Track Prompt
curl --request POST \
--url https://api.promptlayer.com/rest/track-prompt \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"prompt_name": "support-response",
"prompt_input_variables": {
"user_message": "Hello"
},
"request_id": 12345,
"version": 2
}
'import requests
url = "https://api.promptlayer.com/rest/track-prompt"
payload = {
"prompt_name": "support-response",
"prompt_input_variables": { "user_message": "Hello" },
"request_id": 12345,
"version": 2
}
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
prompt_name: 'support-response',
prompt_input_variables: {user_message: 'Hello'},
request_id: 12345,
version: 2
})
};
fetch('https://api.promptlayer.com/rest/track-prompt', 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/rest/track-prompt",
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([
'prompt_name' => 'support-response',
'prompt_input_variables' => [
'user_message' => 'Hello'
],
'request_id' => 12345,
'version' => 2
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.promptlayer.com/rest/track-prompt"
payload := strings.NewReader("{\n \"prompt_name\": \"support-response\",\n \"prompt_input_variables\": {\n \"user_message\": \"Hello\"\n },\n \"request_id\": 12345,\n \"version\": 2\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
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.promptlayer.com/rest/track-prompt")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"prompt_name\": \"support-response\",\n \"prompt_input_variables\": {\n \"user_message\": \"Hello\"\n },\n \"request_id\": 12345,\n \"version\": 2\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.promptlayer.com/rest/track-prompt")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"prompt_name\": \"support-response\",\n \"prompt_input_variables\": {\n \"user_message\": \"Hello\"\n },\n \"request_id\": 12345,\n \"version\": 2\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Prompt tracked successfully"
}{
"success": false,
"message": "<string>",
"error": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Associate a prompt template with an existing request log. Use this after logging a request when you want PromptLayer to connect that request back to a prompt template version or release label.
Related
Authorizations
Body
application/json
Prompt tracking payload.
Prompt template name to associate with the request.
PromptLayer request ID to update.
Variables used to render the prompt.
Prompt template version to associate.
Release label to resolve to a prompt template version.
Was this page helpful?
⌘I

