---
title: "POST /v2/dry-run"
method: POST
path: "/v2/dry-run"
---

# POST /v2/dry-run

`POST /v2/dry-run`

Perform a dry-run of a template

## Request body

- object
  - `template` object, required
  - `values` JsonObject, required — A type representing all allowed JSON object values.
  - `secrets` object
  - `directoryContents` object[], required
    - `path` string
    - `base64Content` string

## Response `200`

Ok

- object
  - `log` object[], required
    - `body` object, required — A type representing all allowed JSON object values.
      - `message` string, required
      - `status` 'cancelled' | 'completed' | 'failed' | 'open' | 'processing' | 'skipped' — The status of each step of the Task
      - `stepId` string
  - `directoryContents` object[], required
    - `path` string, required
    - `content` string, required
    - `executable` boolean
    - `symlink` boolean
    - `base64Content` string, required
  - `output` JsonObject, required — A type representing all allowed JSON object values.
  - `steps` object[], required
    - `id` string, required
    - `name` string, required
    - `action` string, required

## Other responses

- `400` — Validation errors.

## Changes

- **2024-12-29** `34e9a2e690e7` — 2 breaking
  - response property `errors/items/argument` list-of-types was widened by adding types `boolean, number and string` to media type `application/json` of response `400`
  - the `allOf[#/components/schemas/DryRunResult]/directoryContents/items/content` response's property type/format changed from `string`/`byte` to `string`/`` for status `200`
- **2024-12-27** `e7ca0bc861d2` — 4 breaking, 1 warning, 7 info
  - the `template` request property type/format changed from ``/`` to `object`/``
  - the `allOf[#/components/schemas/DryRunResult]/log/items/body` response's property type/format changed from `object`/`` to ``/`` for status `200`
  - the `allOf[subschema #2]/steps/items/` response's property type/format changed from ``/`` to `object`/`` for status `200`
  - removed the required property `errors/items/schema` from the response with the `400` status
  - …8 more
- **2024-12-10** `77fc3b24957b` — 11 breaking, 48 warning, 6 info
  - added `#/components/schemas/Entity` to the `template` request property `allOf` list
  - the response's body type/format changed from `object`/`` to ``/`` for status `200`
  - added `#/components/schemas/Schema, subschema #1` to the `errors/items/schema` response property `oneOf` list for the response status `400`
  - the `allOf[subschema #2]/directoryContents` response's property type/format changed from `object`/`` to `array`/`` for status `200`
  - …61 more
- …earlier changes not shown

[Full history](https://skmtc.dev/backstage/apis/scaffolder/changes/v2/dry-run/post.md)

---

[API](https://skmtc.dev/backstage/apis/scaffolder.md) · [All operations](https://skmtc.dev/backstage/apis/scaffolder/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/backstage/scaffolder/revisions/7f53f7b1650b/schema)
