---
title: "Upsert Website Config"
method: PUT
path: "/events/{event_id}/website"
tags: ["website"]
---

# Upsert Website Config

`PUT /events/{event_id}/website`

## Request

- Base URL: `https://api.confbuilder.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.confbuilder.com/events/{event_id}/website`
- Auth: none declared

Save the draft; optionally claim/rename the slug (kept reserved forever).

## Path parameters

- `event_id` string, required

## Request body

- WebsiteConfigUpdateSchema: Website Builder upsert. `config` is the opaque draft JSON (sections/theme — schema lives in the frontend); `slug` optional rename, 409 when taken.
  - `config` object, required
  - `slug` string, nullable

## Response `200`

Successful Response

- WebsiteConfigSchema
  - `eventId` string, uuid, required
  - `slug` string, nullable
  - `config` object, nullable
  - `publishedConfig` object, nullable
  - `publishedAt` string, date-time, nullable
  - `updatedAt` string, date-time, nullable

## Other responses

- `422`: Validation Error

---

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