---
title: "Check whether a project has spans"
method: GET
path: "/v1/private/spans/exists"
tags: ["Spans"]
---

# Check whether a project has spans

`GET /v1/private/spans/exists`

Returns whether the project has at least one span matching the given scope. Cheap existence probe (LIMIT 1) used to drive empty-state decisions without scanning or aggregating the whole project.

## Query parameters

- `project_id` string, uuid
- `project_name` string
- `source` string — Restrict the probe to a single ingestion source (e.g. 'sdk' for the Logs empty state), matching the rendered list's logs-source scope. Omit to probe any source.

## Response `200`

Span existence

- ExistenceResponse
  - `exists` boolean — Whether the project has at least one matching entity for the given scope

## Changes

- **2026-07-10** `4f9588a73d90` — 1 info
  - endpoint added
- **2026-05-04** `d606e84c75e4` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/comet-ml/apis/opik-rest-api/changes/v1/private/spans/exists/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/1a1bcfd67f99/schema)
