---
title: "Submit Goal Commit"
method: POST
path: "/v1/sessions/internal/commit"
tags: ["sessions"]
---

# Submit Goal Commit

`POST /v1/sessions/internal/commit`

Called by the agent when it commits a goal's state to external integrators.
This is the ONLY path that fires external streaming webhooks — per-turn extractions
persist to goal_state for dashboard preview but never fire externally.

## Request body

- CommitPayload
  - `room_name` string, required
  - `session_id` string, required
  - `goal_id` string, required
  - `commit_id` string, required
  - `snapshot_id` string, required
  - `reason` string, required
  - `data` union, required
    - object
    - unknown[]
      - unknown

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/roxels/apis/interviewer.md) · [All operations](https://skmtc.dev/roxels/apis/interviewer/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/roxels/interviewer/revisions/4ef48ed226e1/schema)
