---
title: "Explain Picture"
method: POST
path: "/v1/teams/{team_id}/artifacts/explain-picture"
tags: ["artifacts"]
---

# Explain Picture

`POST /v1/teams/{team_id}/artifacts/explain-picture`

## Request

- Base URL: `https://api.stormy.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.stormy.ai/v1/teams/{team_id}/artifacts/explain-picture`
- Auth: none declared

Draw one explanation, in about five seconds, and keep it as an artifact.

Separate from `/generate` because it is a different job with a different
model: `/generate` makes photographs and scenes, this makes the one picture
that answers "what is this and why is it my problem". The house style comes
from a reference image the caller never sees, so every explainer in the
product looks like a sibling of the last one.

NOTHING IS REUSED. Each call draws a new picture carrying this shop's own
name — a cached explainer is a stock illustration, and being about them is
the only reason anybody looks twice.

## Path parameters

- `team_id` string, uuid, required

## Headers

- `authorization` string, nullable
- `x-darwin-token` string, nullable
- `x-darwin-run-id` string, nullable

## Request body

- ExplainPictureRequest: One picture that explains a thing, drawn in the house style.
  - `shows` string, required
  - `words` string[]
  - `aspect_ratio` string
  - `title` string, nullable
  - `work_item_id` string, uuid, nullable
  - `source_execution_type` string, nullable
  - `source_execution_id` string, uuid, nullable
  - `idempotency_key` string, nullable

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[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.dev/stormy/apis/stormy-control-plane/revisions/8f749ef0f9db?raw)
