Справочник API

Полное руководство по использованию API Qwen Image Edit

API Qwen Image Edit позволяет программно взаимодействовать с нашими сервисами для редактирования и анализа изображений. В этом справочнике подробно описаны доступные конечные точки, методы и параметры.

1. Аутентификация

Все запросы к API Qwen Image Edit должны быть аутентифицированы с использованием вашего ключа API. Передайте свой ключ API в заголовке Authorization как токен-носитель (Bearer Token):

Authorization: Bearer ВАШ_API_КЛЮЧ

Или при инициализации SDK:

const qwen = new QwenImageEdit({
  apiKey: 'ВАШ_API_КЛЮЧ',
});

2. Основные методы

editText

Изменяет существующий текст на изображении.

  • Метод: POST
  • Конечная точка: /edit/text
  • Параметры запроса:
    • imageUrl (строка, обязательно): URL исходного изображения.
    • originalText (строка, обязательно): Текст, который нужно найти на изображении.
    • newText (строка, обязательно): Текст, на который нужно заменить originalText.
    • targetLanguage (строка, необязательно): Язык newText для перевода.
  • Пример ответа:
{
  "status": "success",
  "editedImageUrl": "https://example.com/edited_image.jpg",
  "jobId": "abc-123"
}

editElement

Добавляет, удаляет или изменяет элементы на изображении.

  • Метод: POST
  • Конечная точка: /edit/element
  • Параметры запроса:
    • imageUrl (строка, обязательно): URL исходного изображения.
    • element (объект, обязательно): Объект, описывающий элемент и его свойства (тип, положение, размер, URL для изображений, содержимое для текста и т. д.).
    • action (строка, необязательно): add, remove, update. По умолчанию add.
  • Пример ответа:
{
  "status": "success",
  "editedImageUrl": "https://example.com/image_with_logo.jpg",
  "jobId": "def-456"
}

transferStyle

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

  • Метод: POST
  • Конечная точка: /transform/style
  • Параметры запроса:
    • imageUrl (строка, обязательно): URL исходного изображения.
    • style (строка, обязательно): Имя стиля для применения (например, impressionist_painting, cinematic_hdr).
    • strength (число, необязательно): Интенсивность стиля (от 0 до 1, по умолчанию 0.8).
  • Пример ответа:
{
  "status": "success",
  "styledImageUrl": "https://example.com/styled_image.jpg",
  "jobId": "ghi-789"
}

analyzeImage

Выполняет глубокий анализ изображения для извлечения информации.

  • Метод: POST
  • Конечная точка: /analyze/image
  • Параметры запроса:
    • imageUrl (строка, обязательно): URL изображения для анализа.
    • features (массив строк, обязательно): Список функций для анализа (например, text_detection, object_detection, face_recognition, color_analysis).
  • Пример ответа:
{
  "status": "success",
  "analysisResult": {
    "text": ["Hello", "World"],
    "objects": [{"label": "car", "confidence": 0.95}]
  }
}

3. Вспомогательные методы

resizeImage

Изменяет размер изображения до указанных размеров.

  • Метод: POST
  • Конечная точка: /util/resize
  • Параметры запроса:
    • imageUrl (строка, обязательно): URL исходного изображения.
    • width (число, обязательно): Новая ширина в пикселях.
    • height (число, обязательно): Новая высота в пикселях.
    • fit (строка, необязательно): Как изображение должно соответствовать заданным размерам (cover, contain, fill, inside, outside). По умолчанию cover.
  • Пример ответа:
{
  "status": "success",
  "resizedImageUrl": "https://example.com/resized_image.jpg"
}

enhanceImage

Улучшает качество изображения (например, яркость, контрастность, резкость).

  • Метод: POST
  • Конечная точка: /util/enhance
  • Параметры запроса:
    • imageUrl (строка, обязательно): URL исходного изображения.
    • enhancements (объект, необязательно): Объект с настройками улучшения (например, brightness: 0.1, contrast: 0.05).
  • Пример ответа:
{
  "status": "success",
  "enhancedImageUrl": "https://example.com/enhanced_image.jpg"
}

cleanImage

Удаляет нежелательные объекты или шумы с изображения.

  • Метод: POST
  • Конечная точка: /util/clean
  • Параметры запроса:
    • imageUrl (строка, обязательно): URL исходного изображения.
    • area (объект, необязательно): Координаты области для очистки (например, { x: 10, y: 10, width: 50, height: 50 }).
    • maskImageUrl (строка, необязательно): URL изображения маски, указывающей области для очистки.
  • Пример ответа:
{
  "status": "success",
  "cleanedImageUrl": "https://example.com/cleaned_image.jpg"
}

4. Расширенная конфигурация

API поддерживает различные параметры конфигурации, которые можно передавать в заголовках запроса или при инициализации SDK. См. раздел Конфигурация для получения более подробной информации.

5. Обработка ошибок

API возвращает стандартные коды состояния HTTP для индикации успеха или неудачи. Подробные сообщения об ошибках предоставляются в теле ответа JSON.

  • 400 Bad Request: Неверные параметры запроса.
  • 401 Unauthorized: Отсутствует или недействительный ключ API.
  • 403 Forbidden: Недостаточно разрешений или превышен лимит.
  • 404 Not Found: Ресурс не найден.
  • 429 Too Many Requests: Превышен лимит скорости.
  • 500 Internal Server Error: Внутренняя ошибка сервера.

6. Лимиты и квоты

Использование API подлежит лимитам скорости и квотам. См. нашу документацию по ценам для получения подробной информации.

7. Webhook

Для асинхронных операций вы можете настроить Webhook для получения уведомлений о завершении задачи. См. раздел Расширенные функции для получения более подробной информации.

8. SDK

Мы предоставляем официальные SDK для следующих языков:

  • JavaScript/TypeScript
  • Python
  • PHP
  • Java
  • Go
  • Ruby

Использование SDK упрощает взаимодействие с API и обрабатывает аутентификацию, повторные попытки и обработку ошибок.