Get AI Config metrics by variation
curl --request GET \
--url https://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation \
--header 'Authorization: <api-key>'import requests
url = "https://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation', 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://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation",
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: <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://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<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://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"metrics": {
"judgeRelevance": 0.14894159,
"inputCost": 7.386281948385884,
"outputCost": 1.2315135367772556,
"generationSuccessCount": 5,
"inputTokens": 0,
"generationErrorCount": 2,
"thumbsDown": 9,
"judgeToxicity": 0.6846853,
"totalTokens": 1,
"judgeAccuracy": 0.10246457,
"generationCount": 5,
"timeToFirstTokenMs": 2,
"outputTokens": 6,
"thumbsUp": 7,
"durationMs": 3,
"satisfactionRating": 0.4145608
},
"variationKey": "variationKey"
}
]{
"code": "code",
"message": "message"
}{
"code": "code",
"message": "message"
}{
"code": "code",
"message": "message"
}{
"code": "code",
"message": "message"
}Get AI Config metrics by variation
Retrieve usage metrics for an AI Config by config key, with results split by variation.
GET
/
api
/
v2
/
projects
/
{projectKey}
/
ai-configs
/
{configKey}
/
metrics-by-variation
Get AI Config metrics by variation
curl --request GET \
--url https://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation \
--header 'Authorization: <api-key>'import requests
url = "https://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation', 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://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation",
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: <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://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<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://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.launchdarkly.com/api/v2/projects/{projectKey}/ai-configs/{configKey}/metrics-by-variation")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"metrics": {
"judgeRelevance": 0.14894159,
"inputCost": 7.386281948385884,
"outputCost": 1.2315135367772556,
"generationSuccessCount": 5,
"inputTokens": 0,
"generationErrorCount": 2,
"thumbsDown": 9,
"judgeToxicity": 0.6846853,
"totalTokens": 1,
"judgeAccuracy": 0.10246457,
"generationCount": 5,
"timeToFirstTokenMs": 2,
"outputTokens": 6,
"thumbsUp": 7,
"durationMs": 3,
"satisfactionRating": 0.4145608
},
"variationKey": "variationKey"
}
]{
"code": "code",
"message": "message"
}{
"code": "code",
"message": "message"
}{
"code": "code",
"message": "message"
}{
"code": "code",
"message": "message"
}Authorizations
Query Parameters
The starting time, as milliseconds since epoch (inclusive).
The ending time, as milliseconds since epoch (exclusive). May not be more than 100 days after from.
An environment key. Only metrics from this environment will be included.
A context kind. Only metrics from events that include a context of this kind are included. Required if contextKey is provided.
A context key. Only metrics from events whose context of the contextKind kind has this key are included. Requires contextKind.
Response
Metrics computed
Show child attributes
Show child attributes
Example:
{ "judgeRelevance": 0.14894159, "inputCost": 7.386281948385884, "outputCost": 1.2315135367772556, "generationSuccessCount": 5, "inputTokens": 0, "generationErrorCount": 2, "thumbsDown": 9, "judgeToxicity": 0.6846853, "totalTokens": 1, "judgeAccuracy": 0.10246457, "generationCount": 5, "timeToFirstTokenMs": 2, "outputTokens": 6, "thumbsUp": 7, "durationMs": 3, "satisfactionRating": 0.4145608 }