---
title: "Get span by id"
method: GET
path: "/v1/private/spans/{id}"
tags: ["Spans"]
---

# Get span by id

`GET /v1/private/spans/{id}`

Get span by id

## Path parameters

- `id` string, uuid, required

## Query parameters

- `strip_attachments` boolean — If true, returns attachment references like [file.png]; if false, downloads and reinjects attachment content from S3 (default: false for backward compatibility)

## Response `200`

Span resource

- SpanPublic
  - `id` string, uuid
  - `project_name` string — If null, the default project is used
  - `project_id` string, uuid
  - `trace_id` string, uuid
  - `parent_span_id` string, uuid
  - `name` string
  - `type` 'general' | 'tool' | 'llm' | 'guardrail'
  - `start_time` string, date-time, required
  - `end_time` string, date-time
  - `input` JsonListStringPublic
  - `output` JsonListStringPublic
  - `metadata` JsonListStringPublic
  - `model` string
  - `provider` string
  - `tags` string[]
  - `usage` object
  - `error_info` ErrorInfoPublic
    - `exception_type` string, required
    - `message` string
    - `traceback` string, required
  - `created_at` string, date-time
  - `last_updated_at` string, date-time
  - `created_by` string
  - `last_updated_by` string
  - `feedback_scores` FeedbackScorePublic[]
    - `name` string, required
    - `category_name` string
    - `value` number, required
    - `reason` string
    - `source` 'ui' | 'sdk' | 'online_scoring', required
    - `source_queue_id` string, uuid
    - `created_at` string, date-time
    - `last_updated_at` string, date-time
    - `created_by` string
    - `last_updated_by` string
    - `value_by_author` object
  - `comments` CommentPublic[]
    - `id` string, uuid
    - `text` string, required
    - `source_queue_id` string, uuid
    - `created_at` string, date-time
    - `last_updated_at` string, date-time
    - `created_by` string
    - `last_updated_by` string
  - `total_estimated_cost` number
  - `total_estimated_cost_version` string
  - `duration` number, double — Duration in milliseconds as a decimal number to support sub-millisecond precision
  - `ttft` number, double — Time to first token in milliseconds
  - `source` 'sdk' | 'experiment' | 'playground' | 'optimization' | 'evaluator'
  - `environment` string

## Other responses

- `404` — Not found

## Changes

- **2026-07-02** `3144ea40dac0` — 2 warning
  - added the new `evaluator` enum value to the `source` response property for the response status `200`
  - added the new `evaluator` enum value to the `source` response property for the response status `404`
- **2026-06-30** `20a1a33446d1` — 4 info
  - added the optional property `feedback_scores/items/value_by_author/additionalProperties/author` to the response with the `200` status
  - added the optional property `feedback_scores/items/value_by_author/additionalProperties/author` to the response with the `404` status
  - added the optional property `feedback_scores/items/value_by_author/additionalProperties/source_queue_id` to the response with the `200` status
  - added the optional property `feedback_scores/items/value_by_author/additionalProperties/source_queue_id` to the response with the `404` status
- **2026-06-19** `580e3bc69e8a` — 4 info
  - added the optional property `comments/items/source_queue_id` to the response with the `200` status
  - added the optional property `comments/items/source_queue_id` to the response with the `404` status
  - added the optional property `feedback_scores/items/source_queue_id` to the response with the `200` status
  - added the optional property `feedback_scores/items/source_queue_id` to the response with the `404` status
- …earlier changes not shown

[Full history](https://skmtc.dev/comet-ml/apis/opik-rest-api/changes/v1/private/spans/:id/get.md)

---

[API](https://skmtc.dev/comet-ml/apis/opik-rest-api.md) · [All operations](https://skmtc.dev/comet-ml/apis/opik-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/comet-ml/opik-rest-api/revisions/0739fa5022ca/schema)
