BRIFLY
Войти

Загрузить фото в карточку товара

Кладёт картинку в карточку товара. Нужен, когда фото уже есть файлом и его надо показать в каталоге.

Кладёт картинку в карточку товара. Нужен, когда фото уже есть файлом и его надо показать в каталоге.

Scope

catalog:write

Заголовки

  • Content-Type: application/json
  • X-Api-Key — ключ проекта
  • Idempotency-Key — для повторного запроса с тем же результатом

Загрузить фото в карточку товара

POST /v1/catalog-products/upload-image. Scope catalog:write.

Учебный пример магазина «Северная полка». Это не запись из вашей базы. Здесь товар: запрос и ответ на одном вызове.

Запрос

{
  "data": {
    "projectId": "11111111-1111-4111-8111-111111111111",
    "productId": "55555555-5555-4555-8555-555555555555",
    "fileName": "kruzhka-emal.png",
    "mimeType": "image/png",
    "fileBase64": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8z8BQDwAEhQGAhKmMIQAAAABJRU5ErkJggg=="
  }
}

Ответ (успех, 200)

{
  "success": true,
  "data": {
    "id": "55555555-5555-4555-8555-555555555555",
    "name": "Кружка эмаль, 350 мл",
    "shortDescription": "Лёгкая кружка для чая в дороге.",
    "priceAmount": 890,
    "priceCurrencyCode": "RUB",
    "status": "active",
    "sku": "MUG-350-EMAL",
    "brand": "Северная полка",
    "projectId": "11111111-1111-4111-8111-111111111111",
    "createdAt": "2026-10-16T09:00:00.000Z",
    "updatedAt": "2026-10-16T09:12:00.000Z"
  }
}

Пример cURL

curl -X POST "https://api-external.brifly.online/v1/catalog-products/upload-image" \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: {{api_key}}" \
  -d '{"data": {"projectId": "11111111-1111-4111-8111-111111111111", "productId": "55555555-5555-4555-8555-555555555555", "fileName": "kruzhka-emal.png", "mimeType": "image/png", "fileBase64": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8z8BQDwAEhQGAhKmMIQAAAABJRU5ErkJggg=="}}'

Ошибки

  • 401 INVALID_API_KEY — нет ключа или ключ отозван.
  • 403 FORBIDDEN_SCOPE — у ключа нет catalog:write.
  • 403 PROJECT_MISMATCH — в теле другой проект.
  • 429 RATE_LIMIT_EXCEEDED — заголовок Retry-After.
  • 400 VALIDATION_ERROR — не хватает поля в data.

Ограничения

  • Проект и пользователь берутся из ключа. Чужой data.projectId отвечает 403 PROJECT_MISMATCH.

См. также

Оцените статью — нам важна ваша обратная связь.

0 (0 оценок)