---
title: "Change blocks on several slides"
method: POST
path: "/api/v1/presentations/{slug}/blocks"
tags: ["presentations"]
---

# Change blocks on several slides

`POST /api/v1/presentations/{slug}/blocks`

## Request

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

Change blocks on many slides in one step (and one version in the history). "edits" is a list of
{"slide_id", "add", "update", "delete", "at_bottom", "base_version"}; on its slide each item adds new blocks
("add": [{"type", "props"}], on top or with "at_bottom": true under the others), changes the given props of blocks
("update": [{"id" | "ids": [...] | "inside": <card block id>, "props"}]) and deletes blocks ("delete": [ids]).
Nothing is changed when one item is wrong (or its slide changed meanwhile). Returns the changed slides.

## Path parameters

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

## Request body

- object
  - `edits` object[], required: Up to 100 items: [{"slide_id", "add"?, "update"?, "delete"?, "at_bottom"?, "base_version"?}].
  - `response` 'brief' | 'full': "brief" (default): only the ids, numbers and types of the slides and blocks; "full": every prop of every block too.

## 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)
