---
title: "Run an action in an interview session"
method: POST
path: "/api/session/action"
tags: ["Sessions"]
---

# Run an action in an interview session

`POST /api/session/action`

Runs a named action in the specified interview session. The response is
empty (204) unless the action ends with a `response()` call, in which
case the response content is returned (200).

## Request body

- object
  - `i` string, required — Interview filename.
  - `session` string, required — Session ID.
  - `secret` string — Encryption secret.
  - `action` string, required — Name of the action to run.
  - `arguments` object — Arguments to pass to the action.
  - `persistent` 0 | 1 — Set to 1 if the action shows a question block.
  - `overwrite` 0 | 1 — Set to 1 to overwrite the previous step rather than creating a new one.
  - `read_only` 0 | 1 — Set to 1 to run the action without saving interview answers.

## Response `200`

Action produced a response.

- object

## Other responses

- `204` — Action completed with no response body.
- `400` — Bad request.
- `403` — Access denied.

---

[API](https://skmtc.dev/docassemble/apis/docassemble-api.md) · [All operations](https://skmtc.dev/docassemble/apis/docassemble-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/docassemble/docassemble-api/revisions/a75d7eea6826/schema)
