---
title: "PUT /api/copilot/mod-generation/sessions/{id}/"
method: PUT
path: "/api/copilot/mod-generation/sessions/{id}/"
tags: ["copilot"]
---

# PUT /api/copilot/mod-generation/sessions/{id}/

`PUT /api/copilot/mod-generation/sessions/{id}/`

Create or replace the mod-generation copilot session with the given id, storing its conversation and version metadata for the current user.

## Path parameters

- `id` string, required

## Request body

- ModCopilotSession
  - `id` string, uuid
  - `user` object
    - `id` string, uuid
    - `email` string, email
  - `data` object, required
    - `messages` object[], required
      - `id` string, required
      - `role` string, required
      - `timestamp` string, required
      - `content` string, nullable
      - `toolCallId` string, nullable
      - `state` object, nullable
      - `response` object, nullable
    - `id` string, required
  - `source_version` string, nullable — Commit SHA of the app-service (backend) running when the session was created
  - `platform_version` string, nullable — The platform version that created the session
  - `created_at` string, date-time
  - `updated_at` string, date-time
  - `feedback` object[]
    - `id` string, uuid
    - `user` object
      - `id` string, uuid
      - `email` string, email
    - `session` string, required — The session being reviewed
    - `rating` -1 | 1, required — User rating: -1 for negative, 1 for positive
    - `comment` string, required — User's feedback comment
    - `message_id` string, nullable — Optional message ID for feedback on a specific message
    - `created_at` string, date-time
    - `updated_at` string, date-time

## Response `200`

---

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