Dokumentacja API
Kompletny przewodnik po używaniu API Qwen Image Edit
API Qwen Image Edit zapewnia potężny interfejs do integracji funkcji edycji i analizy obrazów z Twoimi aplikacjami.
1. Uwierzytelnianie
Aby uzyskać dostęp do API, wymagany jest klucz API. Klucz API musi być przekazany w nagłówku Authorization
jako token Bearer
.
Authorization: Bearer TWÓJ_KLUCZ_API
Twój klucz API można wygenerować i zarządzać nim w konsoli Qwen Image Edit.
2. Podstawowe metody
POST /edit
- Edycja obrazu
Stosuje różne operacje edycji do obrazu. Ten punkt końcowy obsługuje szeroki zakres manipulacji obrazami, takich jak modyfikacja tekstu, dodawanie elementów i przenoszenie stylu.
- Przykład treści żądania:
{
"imageUrl": "https://example.com/image.jpg",
"edits": [
{
"type": "text_replace",
"find": "Stary tekst",
"replaceWith": "Nowy tekst"
},
{
"type": "add_element",
"elementUrl": "https://example.com/logo.png",
"position": {
"x": 10,
"y": 10
},
"scale": 0.5
}
],
"outputFormat": "png",
"quality": 90
}
- Przykład odpowiedzi:
{
"jobId": "job_12345",
"status": "processing",
"editedImageUrl": "https://qwen-image-edit.com/results/job_12345.png" // Ważne po zakończeniu zadania
}
POST /analyze
- Analiza obrazu
Wyodrębnia tekst, obiekty lub inne elementy wizualne z obrazu.
- Przykład treści żądania:
{
"imageUrl": "https://example.com/document.png",
"features": [
"text_detection",
"object_recognition"
]
}
- Przykład odpowiedzi:
{
"jobId": "job_67890",
"status": "processing",
"analysisResult": {} // Ważne po zakończeniu zadania
}
3. Metody pomocnicze
GET /job/{jobId}
- Pobieranie statusu zadania
Pobiera bieżący status wcześniej przesłanego zadania edycji lub analizy.
-
Parametry ścieżki:
jobId
: (wymagane) Unikalny identyfikator zadania.
-
Przykład odpowiedzi (w toku):
{
"jobId": "job_12345",
"status": "processing",
"progress": 50
}
- Przykład odpowiedzi (ukończono):
{
"jobId": "job_12345",
"status": "completed",
"editedImageUrl": "https://qwen-image-edit.com/results/job_12345.png",
"outputDetails": {
"format": "png",
"size": "1.2MB"
}
}
- Przykład odpowiedzi (niepowodzenie):
{
"jobId": "job_12345",
"status": "failed",
"errorMessage": "Nieobsługiwany format obrazu wejściowego."
}
4. Zaawansowana konfiguracja
Możesz dołączyć następujące nagłówki do swoich żądań API, aby dostosować zaawansowane zachowanie:
X-Qwen-Region
: Określa konkretny region do przetwarzania żądania (np.us-east-1
,eu-west-1
).X-Qwen-Callback-Url
: Określa adres URL webhooka do otrzymywania powiadomień o zakończeniu zadania.
5. Obsługa błędów
API używa standardowych kodów statusu HTTP do wskazywania sukcesu lub błędu.
200 OK
: Żądanie zostało pomyślnie przetworzone.202 Accepted
: Żądanie zostało zaakceptowane i jest przetwarzane asynchronicznie.400 Bad Request
: Nieprawidłowa składnia żądania.401 Unauthorized
: Nie podano prawidłowego klucza API.403 Forbidden
: Klucz API nie ma wystarczających uprawnień do żądanej operacji.404 Not Found
: Nie znaleziono żądanego zasobu (np. nieistniejącyjobId
).429 Too Many Requests
: Przekroczono limit szybkości.500 Internal Server Error
: Wystąpił błąd na serwerze API.503 Service Unavailable
: Usługa jest tymczasowo niedostępna.
Odpowiedzi na błędy będą zawierać pola code
i message
, dostarczające więcej szczegółów na temat problemu.
{
"code": "INVALID_API_KEY",
"message": "Podany klucz API jest nieprawidłowy."
}
6. Limity i kwoty
API ma limity szybkości i kwoty, aby zapewnić sprawiedliwe i stabilne użytkowanie. Szczegółowe informacje można znaleźć w dokumentacji cen i kwot.
7. Webhooki
Qwen Image Edit obsługuje webhooki do wysyłania powiadomień o zmianach statusu zadania. Aby skonfigurować webhooki, zarejestruj adres URL wywołania zwrotnego w konsoli.
Obsługiwane typy zdarzeń:
job.completed
: Wyzwalane, gdy zadanie zostanie pomyślnie zakończone.job.failed
: Wyzwalane, gdy zadanie zakończy się niepowodzeniem.
Przykład ładunku webhooka:
{
"eventType": "job.completed",
"jobId": "job_12345",
"status": "completed",
"timestamp": "2023-10-27T10:00:00Z",
"data": {
"editedImageUrl": "https://qwen-image-edit.com/results/job_12345.png",
"outputDetails": {
"format": "png",
"size": "1.2MB"
}
}
}
8. Zestawy SDK
Qwen Image Edit udostępnia zestawy SDK dla różnych języków programowania, aby uprościć interakcję z API.