---
title: "Edit Pdf"
method: POST
path: "/v1/pdf/edit"
tags: ["operations"]
---

# Edit Pdf

`POST /v1/pdf/edit`

## Request

- Base URL: `https://api.smartpdf.ru`
- URL: `https://api.smartpdf.ru/v1/pdf/edit`
- Auth: HTTP bearer

«Редактор PDF» (change pdf-editor): объекты поверх страниц. Картинки и подпись картинкой — загрузки этого же
пользователя (file_id), в задачу идут их ключи и номер в объекте. Подпись входит в лимит подписей free (D7).

## Headers

- `X-API-Key` string, nullable

## Request body

- EditPdfRequest: «Редактор PDF»: объекты поверх страниц (текст, подпись, картинка, «Закрасить», фигуры) и замена строк текста.
  - `webhook_url` string, nullable: https-адрес для уведомления о завершении; подпись — заголовок X-SmartPDF-Signature (см. описание API)
  - `file_id` string, required
  - `objects` union[], required
    - union
      - EditTextObject: Текст: lines — строки, уже перенесённые по ширине рамки (так шлёт редактор сайта, D3), или text — целиком, тогда строки переносит сервер по ширине box (API). box[0], box[1] — левый верхний угол.
        - `page` integer, required
        - `type` 'text', required
        - `box` number[], required
        - `lines` string[], nullable
        - `text` string, nullable
        - `font` 'sans' | 'serif' | 'mono'
        - `bold` boolean
        - `italic` boolean
        - `size` number
        - `color` string
      - EditSignatureObject: Подпись: картинкой (file_id загрузки — нарисованная или загруженная) или введённая (строка рукописным шрифтом).
        - `page` integer, required
        - `type` 'signature', required
        - `box` number[], required
        - `file_id` string, nullable
        - `lines` string[], nullable
        - `size` number
        - `color` string
      - EditImageObject
        - `page` integer, required
        - `type` 'image', required
        - `box` number[], required
        - `file_id` string, required
      - EditBoxObject
        - `page` integer, required
        - `type` 'whiteout' | 'highlight' | 'rect' | 'ellipse' | 'check' | 'cross', required
        - `box` number[], required
        - `color` string
        - `width` number
        - `fill` string, nullable
      - EditStrokeObject
        - `page` integer, required
        - `type` 'line' | 'arrow' | 'ink', required
        - `points` array[], required
          - number[]
        - `color` string
        - `width` number
      - EditReplaceTextObject: «Изменить текст» (этап B): box и baseline — исходная строка (GET /upload/{id}/text), text — новая строка (пустая — строку удалить), x — её начало.
        - `page` integer, required
        - `type` 'replace_text', required
        - `box` number[], required
        - `x` number, required
        - `baseline` number, required
        - `text` string
        - `font` 'sans' | 'serif' | 'mono'
        - `bold` boolean
        - `italic` boolean
        - `size` number
        - `color` string

## Response `202`

Successful Response

- TaskIdResponse
  - `task_id` string, required

## Other responses

- `422`: Validation Error

---

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