---
title: "Update workspace setup config snippets"
method: PUT
path: "/workspaces/{slug}/setup-bundle"
---

# Update workspace setup config snippets

`PUT /workspaces/{slug}/setup-bundle`

## Request

- Base URL: `https://superskill.sh/api`
- URL: `https://superskill.sh/api/workspaces/{slug}/setup-bundle`
- Auth: HTTP bearer

Requires workspace publish/collection write access. Stores bounded setup config snippets; private archive access is still checked at install time.

## Path parameters

- `slug` string, required

## Request body

- object
  - `target` 'cli' | 'claude-code' | 'codex' | 'cursor' | 'mcp'
  - `configs` WorkspaceSetupConfig[]
    - `path` string, required
    - `content` string, required

## Response `200`

Updated workspace setup bundle

- WorkspaceSetupBundleResponse
  - `workspace` Workspace, required
    - `slug` string, required
    - `name` string, required
    - `type` 'company' | 'community' | 'team' | 'course' | 'agency' | 'chat', required
    - `visibility` 'private' | 'invite_only' | 'gated' | 'public' | 'unlisted', required
    - `plan` 'free' | 'team' | 'enterprise', required
    - `description` string, nullable
    - `avatarUrl` string, nullable
  - `bundle` WorkspaceSetupBundle, required
    - `version` string, required
    - `generatedAt` string, date-time, required
    - `target` 'cli' | 'claude-code' | 'codex' | 'cursor' | 'mcp', required
    - `resources` WorkspaceSetupResource[], required
      - `id` string, required
      - `name` string, required
      - `title` string, required
      - `resourceType` string, required
      - `source` 'workspace_private' | 'workspace_approved', required
      - `hostedArchive` boolean, required
      - `sourceResourceId` string
      - `pinnedVersion` string: Immutable public release version approved by the workspace.
      - `pinnedArchiveHash` string: Approved release archive SHA-256 digest.
      - `exactResourceUrl` string, uri: Human-facing URL for the exact approved release, never latest.
      - `approvalState` string
      - `collections` string[], required
      - `detailCommand` string, required
      - `openCommand` string, required
      - `installCommand` string
      - `note` string, nullable
    - `configs` WorkspaceSetupConfig[], required
      - `path` string, required
      - `content` string, required
  - `next` string, required

## Other responses

- `400`: Bad request
- `401`: Authorization required
- `403`: Authorization was provided but is not allowed for this action
- `404`: Resource not found

---

[API](https://skmtc.dev/superskill/apis/superskill-api.md) · [All operations](https://skmtc.dev/superskill/apis/superskill-api/llms.txt) · [OpenAPI document](https://skmtc.dev/superskill/apis/superskill-api/revisions/ced2d2d1f217?raw)
