Skip to content
GET/api/v1/metrics

Query stored telemetry metrics

Queries telemetry_metrics. Optional projectId (IDOR-checked; without it the result is scoped to the caller's accessible projects). Optional name/startTime/endTime/limit. NOT an org-wide aggregate-metrics endpoint.

Authentication

Send Authorization: Bearer YOUR_API_KEY on every request. Generate API keys at /dashboard/api-keys.

Parameters

projectId in query

Tenant scope. Ownership-verified; 403 if not in your org.

string
name in query
string
startTime in query

Epoch ms lower bound on timestamp.

integer
endTime in query

Epoch ms upper bound on timestamp.

integer
limit in query
integer

Response

200 example

{
  "success": true
}

All status codes

200{ metrics, total }.
401(no description)
403Forbidden - project is not in your organization.

Code samples

cURL

curl -X GET \
  https://evalguard.ai/api/v1/metrics \
  -H "Authorization: Bearer $EVALGUARD_API_KEY" \

TypeScript

import { EvalGuard } from "@evalguard/sdk";

const client = new EvalGuard({ apiKey: process.env.EVALGUARD_API_KEY });

const response = await client.request({
  method: "GET",
  path: "/api/v1/metrics",
});
console.log(response);

Python

from evalguard import EvalGuard
import os

client = EvalGuard(api_key=os.environ["EVALGUARD_API_KEY"])

response = client.request(method="GET", path="/api/v1/metrics")
print(response)

Go

package main

import (
	"context"
	"fmt"
	"net/http"
	"os"
)

func main() {
	req, _ := http.NewRequestWithContext(context.Background(), "GET", "https://evalguard.ai/api/v1/metrics", nil)
	req.Header.Set("Authorization", "Bearer "+os.Getenv("EVALGUARD_API_KEY"))
	resp, err := http.DefaultClient.Do(req)
	if err != nil { panic(err) }
	defer resp.Body.Close()
	fmt.Println(resp.Status)
}

Errors

401403

Other Monitoring endpoints