---
search:
  tags:
    - Produkte
    - POST
seo:
  description: >-
    Produktbild hochladen (Multipart-Feld file) und imageUrl setzen. Ersetzt ein
    vorhandenes Bild. Erfordert einen Write-Key. Max. 10 MiB (10'485'760 Bytes).
    Der…
sidebar:
  label: Produktbild hochladen
  badge: POST
title: Produktbild hochladen
type: openapi-operation
---
Produktbild hochladen (Multipart-Feld `file`) und `imageUrl` setzen. Ersetzt ein vorhandenes Bild. Erfordert einen Write-Key. Max. 10 MiB (10'485'760 Bytes). Der Typ stammt aus dem `Content-Type`-Header des Teils: jpeg, png, webp oder gif.

`POST /products/{productId}/image`

**Request body** (`multipart/form-data`, required)

- `file` (any, required) — Bilddatei (jpeg, png, webp oder gif), max. 10 MiB.

Request body example:

```json
{
  "file": null
}
```

**Responses**

- `200` — Hochgeladen
- `400` — Ungültige Parameter oder ungültiger Body.
- `403` — Fehlender, unbekannter oder inaktiver API-Key oder ein Read-Key bei einem Schreibzugriff.
- `404` — Kein Eintrag mit dieser ID.
- `413` — Datei zu gross

Response example, 200:

```json
{
  "data": {
    "url": "https://firebasestorage.googleapis.com/v0/b/example/o/instance%2Forg%2Fproducts%2Fprod%2Fphoto.jpg?alt=media&token=abc",
    "imageUrl": "https://firebasestorage.googleapis.com/v0/b/example/o/instance%2Forg%2Fproducts%2Fprod%2Fphoto.jpg?alt=media&token=abc"
  }
}
```

Response example, 400:

```json
{
  "statusCode": 400,
  "message": "Validation failed for Field: name, Error: Required",
  "timestamp": "2024-04-20T12:00:00.000Z",
  "path": "/api/v1/suppliers"
}
```

Response example, 403:

```json
{
  "statusCode": 403,
  "message": "Unknown Error",
  "timestamp": "2024-04-20T12:00:00.000Z",
  "path": "/api/v1/products"
}
```
