Claude Platform Docs

List Telemetry Destinations

$ ant beta:organization:telemetry-destinations list
GET/v1/organizations/telemetry_destinations

List the organization's destinations, newest first, optionally only those that cover given workspaces.

See the OpenTelemetry export guide to learn more about destinations.

Parameters
--limit: optional number⁠Query parameter

Number of destinations to return per page, between 1 and 1,000. Defaults to 20.

formatint32
--page: optional string⁠Query parameter

Opaque cursor from a previous response's next_page. Leave it out to get the first page.

--workspace-id: optional array of string⁠Query parameter

Return only the destinations that cover at least one of these workspaces (wrkspc_...).

Send at most 100 IDs, as workspace_ids[]. A destination covers a workspace when its workspaces.type is all, when its include list has the workspace, or when its exclude list doesn't have it. Destinations in either state can match. An ID that isn't the ID of one of the organization's workspaces doesn't match any destination, not even one whose type is all.

--beta: optional array of AnthropicBeta⁠Header parameter

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

Returns
BetaListTelemetryDestinationsResponse: object{ data, next_page }

A page of the organization's telemetry destinations, newest first.

data: array of BetaTelemetryDestination { type: "telemetry_destination", id, created_at, 8 more }

Destinations on this page, newest first.

type: "telemetry_destination"
id: string

The unique ID of the destination (tdst_...).

created_at: string

Time the destination was created.

formatdate-time
delivery_health: object{ last_error, last_error_at, last_success_at }

The most recent delivery results for this destination.

last_error: string

A message that describes the most recent failed delivery to the destination, or null if no delivery has failed yet.

Examples are temporary DNS failure, TLS failure, timeout, connection failure, invalid address, HTTP error (status 503), and redirect (status 301). The message is invalid address both for a hostname that doesn't exist and for an address that isn't publicly routable. It never contains the endpoint's response body, a header value, a network address, or TLS details.

last_error and last_error_at always change together. A later successful delivery doesn't clear them. If last_success_at is later than last_error_at, a delivery has succeeded since this failure.

See the OpenTelemetry export guide to learn the likely cause of each error.

last_error_at: string

Time of the failure that last_error describes. Changes together with last_error. Null until a delivery first fails.

formatdate-time
last_success_at: string

Time of the most recent successful delivery to the destination, or null if no delivery has succeeded yet.

formatdate-time
display_name: string

Human-readable name for the destination. Null when none was set.

endpoint_url: string

The base URL of the destination's OTLP/HTTP endpoint, exactly as registered.

The API appends the per-signal path, such as /v1/traces, on delivery, unless traces.endpoint_url is set.

header_names: array of string

Names of the registered request headers. Header values are write-only and are never returned.

Whether the destination receives deliveries.

One of the following:
beta_telemetry_destination_state_enabled: object{ type: "enabled" }

The telemetry destination receives the spans of the workspaces that it covers.

type: "enabled"
beta_telemetry_destination_state_disabled: object{ type: "disabled", reason }

The API doesn't deliver anything to the telemetry destination.

Spans produced while it is disabled aren't delivered later.

type: "disabled"
One of the following:
beta_telemetry_destination_disabled_reason_caller: object{ type: "caller" }

A caller disabled the destination with an update that set state to disabled.

type: "caller"
beta_telemetry_destination_disabled_reason_sustained_failure: object{ type: "sustained_failure" }

The API disabled the destination because deliveries to it failed, with no successful delivery in between, for longer than a threshold that Anthropic configures and that is not part of this contract. The reason is invalid_address instead when the most recent failed delivery failed with an invalid address.

type: "sustained_failure"
beta_telemetry_destination_disabled_reason_invalid_address: object{ type: "invalid_address" }

The API disabled the destination because deliveries to it failed for longer than the same threshold as for sustained_failure, and the most recent failed delivery failed with an invalid address: the DNS answer says that the endpoint's hostname doesn't exist or doesn't have an address, or the address that the API would connect to isn't publicly routable or is reserved, for example a loopback, link-local, private-network, or cloud-metadata address. The API doesn't connect to such an address, and retries the delivery a bounded number of times as it does after a timeout. A timeout or a server failure of the DNS lookup is a temporary DNS failure instead, not an invalid address.

type: "invalid_address"
beta_telemetry_destination_disabled_reason_redirect: object{ type: "redirect" }

The API disabled the destination because the endpoint answered a delivery with a 3xx status. Redirects are never followed, and one such answer disables the destination at once.

type: "redirect"
traces: object{ content_mode, enabled, endpoint_url, max_content_bytes }

The destination's settings for the traces it receives.

content_mode: "metadata_only" or "content"

What the exported spans contain.

One of the following:
"metadata_only"

The spans contain identifiers, timing, status, token counts, and similar metadata. They don't contain prompt text, completion text, or tool inputs and outputs.

"content"

The spans contain the same metadata as metadata_only, plus message and tool content.

An organization with a data-handling restriction, such as under HIPAA, can't choose this mode. The API exports only metadata for such an organization, even to a destination that already has content.

enabled: boolean

Whether the destination receives traces. A destination whose enabled is false keeps its other settings.

endpoint_url: string

The full URL that the API posts traces to, exactly as registered, or null if the destination doesn't have one.

When it is null, the API posts traces to endpoint_url with /v1/traces appended.

max_content_bytes: number

The most bytes of content that one exported span can contain, or null if only the API's maximum applies.

Content means model prompts and responses, and tool inputs and outputs. The API shortens longer content to this size before it delivers the span. A destination whose content_mode is metadata_only keeps this value. It applies once content_mode is content.

formatint32
updated_at: string

Time of the last change to the destination's configuration or state. Changes to delivery_health don't change it.

An update that sets a header value always changes it, even when the value is the same as before. Adding or removing a single workspace on the destination's list doesn't change it. An update that changes the list does.

formatdate-time

Which of the organization's workspaces the destination covers.

One of the following:
beta_telemetry_destination_workspaces_all: object{ type: "all" }

The destination covers every workspace of the organization, including the default workspace, archived workspaces, and workspaces created later. It doesn't have a list.

type: "all"
beta_telemetry_destination_workspaces_include: object{ type: "include" }

The destination covers the workspaces on its list, and no others.

type: "include"
beta_telemetry_destination_workspaces_exclude: object{ type: "exclude" }

The destination covers every workspace of the organization except the workspaces on its list. A workspace created later is covered until it is added to the list.

type: "exclude"
next_page: string

Cursor for the next page. Null on the last page.

List Telemetry Destinations
ant beta:organization:telemetry-destinations list \
  --api-key my-anthropic-api-key
Returns Examples
Response 200
{
  "data": [
    {
      "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"
      }
    }
  ],
  "next_page": "next_page"
}