Быстрый старт - начало работы с API сжатия за 5 минут

Всего за несколько простых шагов вы можете интегрировать сервис API сжатия SmartSlim и выполнить первый запрос на сжатие с помощью curl / Python / Java / Node.js

Шаг 1: Регистрация аккаунта и получение API Key

Перед вызовом API сжатия необходимо зарегистрировать аккаунт UGLYPEAR DATA и создать приложение для получения API Key

Регистрация в консоли

Посетите консоль разработчика UGLYPEAR DATA, зарегистрируйте аккаунт используя email или номер телефона и пройдите проверку личности для начала использования сервиса.

Создание приложения

После входа в консоль создайте новое приложение в разделе «Управление приложениями», заполните название приложения и описание назначения, выберите желаемый тарифный план.

Получение API Key

После создания приложения система сгенерирует уникальный API Key. Храните его в безопасности и не публикуйте в клиентском коде или публичных репозиториях.

Совет по безопасности: Ваш API Key эквивалентен учётным данным аккаунта. Используйте его через переменные окружения или сервис управления ключами. Никогда не встраивайте его в исходный код и не коммитьте в репозитории.

Шаг 2: Первый вызов API (curl)

После получения API Key используйте curl для быстрого выполнения запроса на сжатие и проверки соединения и доступности сервиса

curl -X POST https://api.uglypear.com/v1/compress \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: multipart/form-data" \
  -F "file=@document.pdf" \
  -F "quality=high"

Замените YOUR_API_KEY в запросе на ваш фактический API Key, file=@document.pdf указывает на локальный файл для сжатия, а параметр quality может быть low / medium / high.

Шаг 3: Пример кода на Python

Используйте библиотеку Python requests для загрузки файлов и получения результатов сжатия, подходит для интеграции бэкенд-сервисов и скриптов обработки данных

import requests

url = "https://api.uglypear.com/v1/compress"
headers = {"Authorization": "Bearer YOUR_API_KEY"}
files = {"file": open("document.pdf", "rb")}
data = {"quality": "high", "format": "pdf"}

response = requests.post(url, headers=headers, files=files, data=data)
result = response.json()
print(f"Compression complete, download link: {result['download_url']}")

Шаг 4: Пример кода на Node.js

Используйте Node.js с form-data и fetch для загрузки файлов, подходит для серверных Node-приложений и Serverless-сценариев

const FormData = require('form-data');
const fs = require('fs');

const form = new FormData();
form.append('file', fs.createReadStream('document.pdf'));
form.append('quality', 'high');

fetch('https://api.uglypear.com/v1/compress', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer YOUR_API_KEY', ...form.getHeaders() },
  body: form
}).then(res => res.json()).then(data => console.log(data));

Шаг 5: Пример кода на Java (OkHttp)

Используйте Java-клиент OkHttp для создания multipart-запроса, подходит для корпоративных Java-бэкендов и интеграции Android-приложений

import okhttp3.*;
import java.io.File;

public class CompressDemo {
    public static void main(String[] args) throws Exception {
        OkHttpClient client = new OkHttpClient();

        File file = new File("document.pdf");
        RequestBody body = new MultipartBody.Builder()
                .setType(MultipartBody.FORM)
                .addFormDataPart("file", file.getName(),
                        RequestBody.create(file, MediaType.parse("application/pdf")))
                .addFormDataPart("quality", "high")
                .build();

        Request request = new Request.Builder()
                .url("https://api.uglypear.com/v1/compress")
                .addHeader("Authorization", "Bearer YOUR_API_KEY")
                .post(body)
                .build();

        try (Response response = client.newCall(request).execute()) {
            System.out.println(response.body().string());
        }
    }
}

Формат ответа API

После успешного запроса на сжатие сервер возвращает ответ в формате JSON, содержащий идентификатор задачи и информацию о результате сжатия

{
  "task_id": "task_8f3c2a1b9e7d4c5f",
  "status": "completed",
  "download_url": "https://api.uglypear.com/v1/tasks/task_8f3c2a1b9e7d4c5f/download",
  "original_size": 5242880,
  "compressed_size": 1572864,
  "compression_ratio": "70.0%"
}

task_id

Уникальный идентификатор этой задачи сжатия, который может использоваться для запроса статуса задачи, скачивания файлов результатов или удаления задачи.

status

Статус задачи, значения: pending / processing / completed / failed.

download_url

URL для скачивания сжатого файла результата. После завершения задачи вы можете получить сжатый файл по этой ссылке.

original_size

Исходный размер файла в байтах.

compressed_size

Размер сжатого файла в байтах.

compression_ratio

Коэффициент сжатия, показывающий процент уменьшения размера. Чем выше значение, тем лучше сжатие.

Следующие шаги

После выполнения первого вызова вы можете глубже изучить полную документацию API, скачать SDK для разных языков или просмотреть больше примеров кода

API Docs

Изучите полную спецификацию OpenAPI 3.0 specification, определения параметров, коды ошибок и политики ограничения частоты.

Смотреть документацию API

Скачать SDK

Download the Rust SDK dynamic library, C FFI header files, and Python пакет привязок для ускорения разработки интеграции.

Скачать SDK

Примеры кода

Смотреть полные примеры кода для типичных сценариев, таких как пакетное сжатие, асинхронные задачи и шифрованное сжатие.

View Examples

Смотреть полную документацию API

Начните создавать свое решение для интеграции сжатия со всеми описаниями интерфейсов, определениями параметров и справочниками кодов ошибок

View Complete API Docs Learn About API Service Связаться с отделом продаж