Claude Platform Docs

Create a Telemetry Destination

BetaTelemetryDestination beta().organization().telemetryDestinations().create(params, requestOptions = RequestOptions.none())
POST/v1/organizations/telemetry_destinations

Register an OpenTelemetry destination for the organization.

The destination starts in state enabled. An organization can have at most 10 destinations, including disabled ones.

See the OpenTelemetry export guide to learn more about adding a destination.

Parameters
TelemetryDestinationCreateParams params
Optional<List<AnthropicBeta>> betas⁠Header parameter

This endpoint is in beta: requests must send telemetry-destinations-2026-08-11 in this header.

MESSAGE_BATCHES_2024_09_24("message-batches-2024-09-24")
PROMPT_CACHING_2024_07_31("prompt-caching-2024-07-31")
COMPUTER_USE_2024_10_22("computer-use-2024-10-22")
COMPUTER_USE_2025_01_24("computer-use-2025-01-24")
PDFS_2024_09_25("pdfs-2024-09-25")
TOKEN_COUNTING_2024_11_01("token-counting-2024-11-01")
TOKEN_EFFICIENT_TOOLS_2025_02_19("token-efficient-tools-2025-02-19")
OUTPUT_128K_2025_02_19("output-128k-2025-02-19")
FILES_API_2025_04_14("files-api-2025-04-14")
MCP_CLIENT_2025_04_04("mcp-client-2025-04-04")
MCP_CLIENT_2025_11_20("mcp-client-2025-11-20")
DEV_FULL_THINKING_2025_05_14("dev-full-thinking-2025-05-14")
INTERLEAVED_THINKING_2025_05_14("interleaved-thinking-2025-05-14")
CODE_EXECUTION_2025_05_22("code-execution-2025-05-22")
EXTENDED_CACHE_TTL_2025_04_11("extended-cache-ttl-2025-04-11")
CONTEXT_1M_2025_08_07("context-1m-2025-08-07")
CONTEXT_MANAGEMENT_2025_06_27("context-management-2025-06-27")
MODEL_CONTEXT_WINDOW_EXCEEDED_2025_08_26("model-context-window-exceeded-2025-08-26")
SKILLS_2025_10_02("skills-2025-10-02")
FAST_MODE_2026_02_01("fast-mode-2026-02-01")
OUTPUT_300K_2026_03_24("output-300k-2026-03-24")
USER_PROFILES_2026_03_24("user-profiles-2026-03-24")
USER_PROFILES_2026_08_18("user-profiles-2026-08-18")
USER_PROFILES_2026_09_04("user-profiles-2026-09-04")
ADVISOR_TOOL_2026_03_01("advisor-tool-2026-03-01")
MANAGED_AGENTS_2026_04_01("managed-agents-2026-04-01")
CACHE_DIAGNOSIS_2026_04_07("cache-diagnosis-2026-04-07")
DREAMING_2026_04_21("dreaming-2026-04-21")
THINKING_TOKEN_COUNT_2026_05_13("thinking-token-count-2026-05-13")
SERVER_SIDE_FALLBACK_2026_06_01("server-side-fallback-2026-06-01")
SERVER_SIDE_FALLBACK_2026_07_01("server-side-fallback-2026-07-01")
FALLBACK_CREDIT_2026_06_01("fallback-credit-2026-06-01")
FALLBACK_CREDIT_2026_07_01("fallback-credit-2026-07-01")
AGENT_MEMORY_2026_07_22("agent-memory-2026-07-22")
MID_CONVERSATION_TOOL_CHANGES_2026_07_01("mid-conversation-tool-changes-2026-07-01")
COMPACT_2026_01_12("compact-2026-01-12")
COMPUTER_USE_2025_11_24("computer-use-2025-11-24")
MCP_TUNNELS_2026_06_22("mcp-tunnels-2026-06-22")
STRUCTURED_OUTPUTS_2025_11_13("structured-outputs-2025-11-13")
TASK_BUDGETS_2026_03_13("task-budgets-2026-03-13")
THINKING_DISPLAY_UPDATES_2026_08_18("thinking-display-updates-2026-08-18")
CE_USER_MANAGEMENT_2026_07_13("ce-user-management-2026-07-13")
MID_CONVERSATION_OUTPUT_CONFIG_2026_07_01("mid-conversation-output-config-2026-07-01")
THINKING_BINDING_CONTROLS_2026_08_01("thinking-binding-controls-2026-08-01")
MID_CONVERSATION_SYSTEM_CLEAR_AT_2026_08_21("mid-conversation-system-clear-at-2026-08-21")
COMPACT_2026_09_04("compact-2026-09-04")
INLINE_TOOLS_2026_09_15("inline-tools-2026-09-15")
MCP_CLIENT_2026_09_15("mcp-client-2026-09-15")
CE_PLUGINS_2026_09_01("ce-plugins-2026-09-01")
SPEND_LIMIT_READS_2026_09_26("spend-limit-reads-2026-09-26")
TELEMETRY_DESTINATIONS_2026_08_11("telemetry-destinations-2026-08-11")
String endpointUrl

The base URL of your collector's OTLP/HTTP endpoint, for example https://gateway.example.com.

The URL must use https and a hostname, not an IP address. The port, if given, must be 443. The URL must not contain a query string, a fragment, or a username and password. At most 2,048 characters.

A path prefix, such as /otlp, is allowed. Don't include the per-signal path (/v1/traces), because the API appends it on delivery. If your collector takes traces on another path, also set traces.endpoint_url.

minLength1
maxLength2048

Which of the organization's workspaces the destination covers.

Optional<String> displayName

Human-readable name for the destination. Optional. 1 to 255 characters.

Optional<DestinationHeaders> headers

Request headers that the API sends with every delivery, typically your collector's authentication header (for example authorization).

The API stores the values encrypted and never returns them. Reads show only header_names.

At most 20 headers. Names are at most 128 characters. Two names can't differ only in case. Values are printable ASCII, at most 4,096 characters, and can't begin or end with a space. Names and values together are at most 16,384 bytes.

Reserved names are rejected, for example host, cookie, user-agent, and names that start with content-, proxy-, x-forwarded-, or anthropic-. For this check, _ in a name counts as -.

The settings for the traces that the destination receives. If you leave it out, every setting takes its default.

Returns
class BetaTelemetryDestination { type = "telemetry_destination"; id; createdAt; /* 8 more */ }

An OpenTelemetry destination: an OTLP/HTTP endpoint, the request headers sent with every delivery to it, what the exported spans contain, and which workspaces it covers. A destination belongs to an organization. A workspace's spans go to every enabled destination that covers it.

Create a Telemetry Destination
package com.anthropic.example;

import com.anthropic.client.AnthropicClient;
import com.anthropic.client.okhttp.AnthropicOkHttpClient;
import com.anthropic.models.beta.organization.telemetrydestinations.BetaTelemetryDestination;
import com.anthropic.models.beta.organization.telemetrydestinations.BetaTelemetryDestinationWorkspacesAllParams;
import com.anthropic.models.beta.organization.telemetrydestinations.TelemetryDestinationCreateParams;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        AnthropicClient client = AnthropicOkHttpClient.fromEnv();

        TelemetryDestinationCreateParams params = TelemetryDestinationCreateParams.builder()
            .endpointUrl("x")
            .workspaces(BetaTelemetryDestinationWorkspacesAllParams.builder().build())
            .build();
        BetaTelemetryDestination betaTelemetryDestination = client.beta().organization().telemetryDestinations().create(params);
    }
}
Returns Examples
Response 200
{
  "id": "id",
  "created_at": "2019-12-27T18:11:19.117Z",
  "delivery_health": {
    "last_error": "last_error",
    "last_error_at": "2019-12-27T18:11:19.117Z",
    "last_success_at": "2019-12-27T18:11:19.117Z"
  },
  "display_name": "display_name",
  "endpoint_url": "endpoint_url",
  "header_names": [
    "string"
  ],
  "state": {
    "type": "enabled"
  },
  "traces": {
    "content_mode": "metadata_only",
    "enabled": true,
    "endpoint_url": "endpoint_url",
    "max_content_bytes": 0
  },
  "type": "telemetry_destination",
  "updated_at": "2019-12-27T18:11:19.117Z",
  "workspaces": {
    "type": "all"
  }
}