---
title: "Merge multiple EPUBs"
method: POST
path: "/merge"
---

# Merge multiple EPUBs

`POST /merge`

## Request

- Base URL: `https://epublys.com/v1`
- URL: `https://epublys.com/v1/merge`
- Auth: HTTP bearer

## Request body

- object
  - `files` string[], required: Base64-encoded EPUB files
  - `names` string[]: Original filenames, in the same order as files — the output is named after them ("A + B.epub", or "A + N more.epub" past two); without them it is merged.epub
  - `title` string
  - `author` string
  - `dividers` boolean

## Response `200`

Success — JSON envelope with the base64-encoded output file

- FileResult
  - `success` boolean
  - `file` string: Base64-encoded output file
  - `filename` string
  - `contentType` string
  - `message` string
  - `pro_tip` string: Present on free-tier responses only

## Other responses

- `400`: Invalid input — human message in `error`, machine category in `code`
- `401`: Missing or invalid API key
- `413`: Upload exceeds the per-request total cap
- `429`: Rate limited
- `500`: Processing failure

---

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