---
title: "Change title, description, theme or database"
method: PATCH
path: "/api/v1/presentations/{slug}"
tags: ["presentations"]
---

# Change title, description, theme or database

`PATCH /api/v1/presentations/{slug}`

## Request

- Base URL: `https://easeweb.host`
- URL: `https://easeweb.host/api/v1/presentations/{slug}`
- Auth: one of:
  - HTTP bearer
  - API key in cookie `sessionid`

Change the title, description, theme or cover of a presentation you may edit, or (its author only) the setup scripts of
the databases its runnable code blocks work in. The theme only sets the defaults of new slides and blocks; existing
slides keep their colours. The slug (address) does not change.

## Path parameters

- `slug` string, required: The presentation's slug (its address: /movie/<slug>/).

## Request body

- object
  - `title` string: New title (at most 100 characters).
  - `title_tr` object: The title in the other languages of the site: {"en": "..."} (the languages left out keep theirs).
  - `description` string: New description; an empty string removes it.
  - `theme` 'light' | 'paper' | 'ocean' | 'coral' | 'dark' | 'forest': Colour theme: the defaults of new slides and blocks.
  - `database` object: Setup scripts of the databases the runnable code blocks work in, by language. Every viewer runs the blocks in a private database made from the script (up to 50000 characters each; an empty string removes a script). Only the author may change them; the languages left out keep their scripts.
    - `sql` string: PostgreSQL SQL that creates and fills the database.
    - `mongodb` string: MongoDB shell (mongosh JavaScript) that creates and fills the database.
    - `redis` string: Redis commands that creates and fills the database.
    - `clickhouse` string: ClickHouse SQL (statements separated by ";") that creates and fills the database.
  - `cover_slide` integer, nullable: Id of the slide shown as the cover of the presentation in the lists of presentations; null: the first slide, whichever it is (the default).
  - `names_from_titles` boolean: Name every slide after its title (the text block with the biggest letters, the highest one of those), in every language it is written in. From then on a slide named after its title keeps following it.

## Response `200`

OK

- object

## Other responses

- `4XX`: Error

---

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