dropeggsquad
Вернуться к редактору

DEVELOPER API · V1

Текст и файлы
из вашего кода.

HTTP API для создания и управления текстовыми публикациями и файлами.

BASE URLhttps://drop.eggsquad.top

01 · КАК ЭТО РАБОТАЕТ

Быстрый обзор

Отправьте текст или файл — API вернёт публичную ссылку и секретный edit_key. Храните ключ: он нужен для редактирования, удаления и замены файла.

СоздатьPOST /paste или /upload
ПолучитьGET /api/v1/pastes/:id
УправлятьPATCH / DELETE с X-Edit-Key

Не передавайте edit key другим. Это ключ управления публикацией, не пароль от аккаунта.

02 · СОЗДАНИЕ

Создать публикацию

Эндпоинт POST /paste принимает обычный текст. Укажите Accept: application/json, если хотите структурированный ответ вместо двух строк со ссылками.

POST/pasteтекст или Markdown
curl https://drop.eggsquad.top/paste \
  -X POST \
  -H "Accept: application/json" \
  -H "X-Custom-Url: release-notes" \
  --data-binary "# Release notes\n\nГотово!"

Для JSON, Markdown и кода используйте --data-binary @file.md. Сервис определит синтаксис автоматически; его можно задать параметром syntax.

03 · ЧТЕНИЕ

Получить данные

Вместо :id передайте идентификатор публикации из ссылки. Приватные или защищённые паролем публикации требуют соответствующий ключ или пароль.

GET/api/v1/pastes/:idполная публикация в JSON
GET/api/v1/pastes/:id/metaметаданные без содержимого
GET/api/v1/pastes/:id/rawоригинальный текст
GET/api/v1/pastes/:id/fileскачать вложение
# JSON-публикация
curl https://drop.eggsquad.top/api/v1/pastes/release-notes

# Защищённая публикация
curl -H "X-Paste-Password: secret" \
  https://drop.eggsquad.top/api/v1/pastes/release-notes

# Сохранить raw-текст в файл
curl -o notes.md https://drop.eggsquad.top/api/v1/pastes/release-notes/raw

04 · УПРАВЛЕНИЕ

Редактировать и удалить

Передавайте ключ как X-Edit-Key или Authorization: Bearer EDIT_KEY. Ключ выдаётся только при создании — сохраните его сразу.

PATCH/api/v1/pastes/:idизменить поля публикации
POST/api/v1/pastes/:id/cloneсоздать копию
PUT/api/v1/pastes/:id/fileзаменить вложение
DELETE/api/v1/pastes/:idудалить без восстановления
curl https://drop.eggsquad.top/api/v1/pastes/release-notes \
  -X PATCH \
  -H "X-Edit-Key: YOUR_EDIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title":"Release notes v2","visibility":"unlisted","expiry":"7d"}'

curl -X DELETE -H "X-Edit-Key: YOUR_EDIT_KEY" \
  https://drop.eggsquad.top/api/v1/pastes/release-notes

05 · ВЛОЖЕНИЯ И URL

Файлы и короткие адреса

POST /upload создаёт публикацию с файлом. Максимальный размер — 15 МБ. Передайте X-Custom-Url, чтобы задать красивый адрес.

POST/uploadmultipart/form-data
curl https://drop.eggsquad.top/upload \
  -H "Accept: application/json" \
  -H "X-Custom-Url: my-report" \
  -F "[email protected]"

# заменить прикреплённый файл
curl -X PUT https://drop.eggsquad.top/api/v1/pastes/my-report/file \
  -H "X-Edit-Key: YOUR_EDIT_KEY" \
  -F "[email protected]"

Свой URL: 3–64 символа, буквы, цифры, точка, - и _. Если адрес занят, API вернёт 409.

06 · ПАРАМЕТРЫ

Что можно настроить

ПолеТип / значенияНазначение
titleстрока, до 180Заголовок публикации.
text / contentтекст, до 1 МБСодержимое публикации.
syntaxtext, markdown, javascript…Подсветка кода. По умолчанию определяется автоматически.
visibilitypublic · unlisted · privateПублично, по ссылке или только владельцу.
expirynever · 1h · 1d · 7d · 30dКогда удалить публикацию.
password4–128 символовЗащищает чтение паролем.
burn_after_readtrue / falseУдалить после первого успешного просмотра.
ЗаголовокПримерНазначение
Acceptapplication/jsonПолучить JSON-ответ.
X-Edit-KeyYOUR_EDIT_KEYАвторизация управления.
X-Paste-PasswordsecretОткрыть защищённую публикацию.
X-Custom-Urlmy-reportУстановить короткий URL при создании.

07 · ОТВЕТЫ И ПРОВЕРКА

JSON и состояние сервиса

Для создания добавьте Accept: application/json. Поле edit_key показывается только в ответе создания или ротации ключа.

{
  "success": true,
  "id": "my-report",
  "url": "https://drop.eggsquad.top/my-report",
  "edit_url": "https://drop.eggsquad.top/edit/my-report?key=…",
  "edit_key": "…"
}
GET/api/v1список возможностей API
GET/api/v1/infoлимиты и поддерживаемые функции
GET/api/v1/healthпроверка доступности БД
POST/api/v1/pastes/:id/rotate-keyвыпустить новый edit key

08 · ЛИМИТЫ И БЕЗОПАСНОСТЬ

Правила использования

1 МБмаксимальный текст
15 МБмаксимальный файл
30 / 10 минDeveloper API с IP
10 / 10 минсоздание с IP
  • Ключ редактирования эквивалентен праву управления публикацией — храните его как секрет.
  • После нескольких неверных паролей включается временная защита для IP-адреса.
  • Коды ответов: 201 создано, 400 неверные данные, 401 нужен пароль, 403 неверный ключ, 404 не найдено, 409 URL занят, 429 лимит.