---
title: "Make Simulation Public"
method: POST
path: "/v1/simulations/{public_id}/share"
tags: ["v1", "simulations"]
---

# Make Simulation Public

`POST /v1/simulations/{public_id}/share`

## Request

- Base URL: `https://thrustlab.com`
- URL: `https://thrustlab.com/v1/simulations/{public_id}/share`
- Auth: HTTP bearer

Mint (or return the existing) share_token for a sim the caller owns.

Owner-scoped and idempotent for single-point (``sim_``), sweep (``sweep_``),
and dynamic (``dyn_``) sims: the id prefix selects the owner-scoped loader,
both of which 404 a non-owner / missing / wrong-prefix id (no existence
leak), and the token is set once (a re-call returns the same token).

## Path parameters

- `public_id` string, required

## Response `200`

Successful Response

- ShareResource
  - `object` string
  - `share_token` string, required
  - `share_url` string, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/thrustlab/apis/thrustlab-api.md) · [All operations](https://skmtc.dev/thrustlab/apis/thrustlab-api/llms.txt) · [OpenAPI document](https://skmtc.dev/thrustlab/apis/thrustlab-api/revisions/c19717e52529?raw)
