/api/v1/products/{id}/imagesКачване на изображение на продукт
Качване на единичен файл с изображение (multipart/form-data, име на полето file) и добавянето му към масива imageUrls на продукта. Използвайте това, когато нямате готов CDN URL — TracePass съхранява изображението и връща публичния му URL в отговора.
Само PNG / JPG / WebP, макс. 5 MB на файл, макс. 20 изображения на продукт. Не поддържа Idempotency-Key — multipart телата не се хешират безопасно. Клиентът трябва да проверява за съществуване + да пропуска при retry. Съответстващият DELETE /api/v1/products/{id}/images/{index} премахва едно изображение по zero-based индекс. Всяко качване се проверява преди съхранение: байтовете трябва да съответстват на декларирания тип изображение (иначе 415), а файлът се сканира за вируси (422 при открит зловреден софтуер, 503 ако скенерът е временно недостъпен — опитайте отново).
Параметри в пътя
- idзадължително
string (24 hex chars)
ID на продукта.
Хедъри
- Authorizationзадължително
string
Bearer <token>— илиtp_API ключ (Developer → API Keys; най-просто, за server-to-server), или OAuth 2.0 access token (Developer → OAuth Apps; за приложения, авторизирани от потребител, scoped и отзоваеми). Страницата Authentication съдържа пълния OAuth поток и списъка със scopes.e.g. Bearer tp_REDACTED_xxxxxxxxxxxx
- Content-Typeзадължително
string
multipart/form-dataс boundary, зададен от вашия HTTP клиент.
Полета в тялото
- fileзадължително
binary (PNG / JPG / WebP, ≤ 5 MB)
Байтове на изображението, изпратени като form поле
file.
Заявка
curl -sS -X POST \
https://app.tracepass.eu/api/v1/products/6650a1b2c3d4e5f6a7b8c9d0/images \
-H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx" \
-F "file=@./battery-hero.jpg"Отговор
{
"imageUrl": "https://<public-image-host>/<imageId>.jpg",
"imageUrls": [
"https://example.com/existing-image-1.jpg",
"https://<public-image-host>/<imageId>.jpg"
]
}