---
title: "Dodaj nowego producenta"
method: POST
path: "/manufacturers"
tags: ["Producenci"]
---

# Dodaj nowego producenta

`POST /manufacturers`

## Request

- Base URL: `https://demo.sellasist.pl/api/v1`
- URL: `https://demo.sellasist.pl/api/v1/manufacturers`
- Auth: API key in header `apiKey`

Tworzy nowego producenta wraz z obsługą pól wielojęzycznych, powiązań z osobą odpowiedzialną (responsibleperson_id) oraz danymi producenta odpowiedzialnego GPSR (responsibleproducer).

## Request body

- ManufacturerRequest
  - `list_style` 'default' | 'box' | 'box_small' | 'list'
  - `responsibleperson_id` integer, nullable: ID osoby odpowiedzialnej (z GET /responsiblepersons).
  - `languages` ManufacturerLanguage[]
    - `language_id` integer, required
    - `title` string, required
    - `text` string: Pełny opis producenta (HTML).
    - `text_short` string
    - `text_bottom` string
    - `image` string
    - `image_title` string
    - `image_alt` string
    - `meta_title` string
    - `meta_description` string
    - `meta_keywords` string
    - `title_url` string: Przyjazny adres URL (slug).
  - `responsibleproducer` ResponsibleProducer, nullable
    - `name` string, nullable: Unikalna nazwa producenta odpowiedzialnego.
    - `trade_name` string, required
    - `country_code` string, required
    - `street` string, required
    - `postal_code` string, required
    - `city` string, required
    - `email` string, email: Adres e-mail (wymagany jeśli brak form_url).
    - `phone_number` string, required
    - `form_url` string, nullable: Adres URL formularza kontaktowego (wymagany jeśli brak adresu e-mail).

## Response `201`

Pomyślnie utworzono producenta. Zwraca pełny obiekt utworzonego rekordu.

- ManufacturerDetailResponse
  - `id` integer
  - `list_style` 'default' | 'box' | 'box_small' | 'list'
  - `responsibleperson_id` integer, nullable
  - `languages` ManufacturerLanguage[]
    - `language_id` integer, required
    - `title` string, required
    - `text` string: Pełny opis producenta (HTML).
    - `text_short` string
    - `text_bottom` string
    - `image` string
    - `image_title` string
    - `image_alt` string
    - `meta_title` string
    - `meta_description` string
    - `meta_keywords` string
    - `title_url` string: Przyjazny adres URL (slug).
  - `responsibleproducer` ResponsibleProducer, nullable
    - `name` string, nullable: Unikalna nazwa producenta odpowiedzialnego.
    - `trade_name` string, required
    - `country_code` string, required
    - `street` string, required
    - `postal_code` string, required
    - `city` string, required
    - `email` string, email: Adres e-mail (wymagany jeśli brak form_url).
    - `phone_number` string, required
    - `form_url` string, nullable: Adres URL formularza kontaktowego (wymagany jeśli brak adresu e-mail).

## Other responses

- `400`: Nieprawidłowe żądanie (błędna struktura JSON lub niepoprawny format zapytania).
- `401`: Błąd autoryzacji
- `422`: Błąd walidacji danych wejściowych (przesłane wartości nie spełniają wymagań biznesowych).
- `500`: Wewnętrzny błąd serwera. Zwraca unikalny identyfikator incydentu (error_id) do przekazania do działu wsparcia technicznego.

## Changes

- **2026-09-05** `084dece82d7c`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/sellasist/apis/sellasist-api/changes/manufacturers/post.md)

---

[API](https://skmtc.dev/sellasist/apis/sellasist-api.md) - [All operations](https://skmtc.dev/sellasist/apis/sellasist-api/llms.txt) - [OpenAPI document](https://skmtc.dev/sellasist/apis/sellasist-api/revisions/58415a41c446?raw)
