Skip to main content
GET
/
v1
/
custom-metrics
Get Custom Metrics
curl --request GET \
  --url https://api.getbluejay.ai/v1/custom-metrics \
  --header 'X-API-Key: <x-api-key>'
{
  "metrics": [
    {
      "id": "<string>",
      "name": "<string>",
      "description": "<string>",
      "response_type": "pass_fail",
      "created_at": "2023-11-07T05:31:56Z",
      "agent_ids": [
        123
      ],
      "min_value": 123,
      "max_value": 123,
      "category": "<string>",
      "tags": [
        "<string>"
      ],
      "scoring_guidance": "<string>",
      "eval_route": "AUDIO",
      "model": "<string>",
      "audio_model": "<string>",
      "temperature": 123,
      "enum_options": [
        "<string>"
      ],
      "allow_not_applicable": false
    }
  ],
  "total_count": 123,
  "page": 123,
  "page_size": 123,
  "items_in_page": 123,
  "total_pages": 123
}
Integration Prompt for AI Agents
# Bluejay — Testing & Monitoring Platform for Conversational AI Agents

You are a senior backend engineer integrating the Bluejay API. Think step-by-step: first understand the endpoint, then plan the integration, then implement with minimal changes.

## Get Custom Metrics — GET /v1/custom-metrics

> **What this endpoint does:** Get all custom metrics, optionally filtered by agent, with pagination.

**Endpoint:** GET `https://api.getbluejay.ai/v1/custom-metrics`
**Auth:** `X-API-Key` header

### Required Parameters
| Name | Type | Description |
|------|------|-------------|
| X-API-Key | string | API key required to authenticate requests. |

Review the full parameter list at https://docs.getbluejay.ai/api-reference/endpoint/get-custom-metrics and include any optional parameters (e.g., `agent_id`, `page`, `page_size`) that serve your integration's use case and align with Bluejay's testing and monitoring capabilities.

### Example
**Simple GET:**
```python
import requests

def get_custom_metrics(api_key: str) -> dict:
    url = "https://api.getbluejay.ai/v1/custom-metrics"
    headers = {"X-API-Key": api_key}
    response = requests.get(url, headers=headers)
    response.raise_for_status()
    return response.json()
```

### Constraints
- Minimal changes — only add/change files needed for this integration.
- Match existing codebase patterns (naming, file structure, error handling).
- Include error handling for 422: Validation Error.

### Integration Checklist
Before writing code, verify:
1. Which module/service owns this API domain in the codebase?
2. What HTTP client and error-handling patterns does the project use?
3. Are there existing types/interfaces to extend?

Then implement the integration, export it, and confirm it compiles/passes lint.
This endpoint allows you to retrieve custom metrics.

Headers

X-API-Key
string
required

API key required to authenticate requests.

Query Parameters

agent_id
integer | null
page
integer
default:1
page_size
integer
default:50

Response

Successful Response

Response model for listing custom metrics

metrics
CustomMetricResponse · object[]
required

List of custom metrics

total_count
integer
required

Total number of metrics across all pages

page
integer
required

Current page number

page_size
integer
required

Requested number of items per page

items_in_page
integer
required

Actual number of items in current page

total_pages
integer
required

Total number of pages