---
title: "Open Sample"
method: GET
path: "/v1/samples/{slug}"
tags: ["samples"]
---

# Open Sample

`GET /v1/samples/{slug}`

The sample's team and a read-only credential for it.

A 404 is the only refusal: there is no gate to close on a read of a
business that exists to be read. The token expires in four hours and the
page simply asks for another.

OPENING AN UNPUBLISHED MANIFEST IS HOW IT PUBLISHES. `ensure_sample_team`
is idempotent and stamps the row, so dropping a directory under
`harnesses/skills/onboarding/samples/` and visiting its URL once is the
whole publish — which is also what makes the first request after a deploy
correct rather than a 404 nobody would think to retry.

## Path parameters

- `slug` string, required

## Response `200`

Successful Response

- object

## Other responses

- `422` — Validation Error

## Changes

- **2026-09-02** `032c0f4e1565` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/stormy/apis/stormy-control-plane/changes/v1/samples/:slug/get.md)

---

[API](https://skmtc.dev/stormy/apis/stormy-control-plane.md) · [All operations](https://skmtc.dev/stormy/apis/stormy-control-plane/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/stormy/stormy-control-plane/revisions/f1c8ed62c117/schema)
