# Rest API - Anlegen einer Kategorie mit mehrsprachigen Texten

**URL:** <https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683>\
**Category:** Programmierung\
**Created:** [29. Oktober 2019 um 16:21 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683 "2019-10-29T16:21:47Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![hloettgen](https://avatars.discourse-cdn.com/v4/letter/h/50afbb/32.png) [@hloettgen](https://forum.shopware.com/u/hloettgen)\
**Post date:** [29. Oktober 2019 um 16:21 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/1 "2019-10-29T16:21:47Z")

</div>

Hallo zusammen,&nbsp;

ich versuche zu verstehen, wie ich eine Kategorie über die REST-API (SW6) anlege und dabei gleichzeitig deutsche und englische Bezeichnungen / Beschreibungen mitgeben kann.&nbsp;

Es gibt laut Model das Objekt “translated”… aber ich finde keine Beschreibung dazu.

Kann mir jemand einen Beispielaufruf geben, wie das JSON-Konstrukt da sein muss ?

Beste Grüße

Holger&nbsp;

---

<div class="post-metadata">

**Author:** ![Krispin](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/krispin/32/12849_2.png) [@Krispin](https://forum.shopware.com/u/Krispin)\
**Post date:** [30. Oktober 2019 um 06:33 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/2 "2019-10-30T06:33:58Z")

</div>

Guten Morgen Holger,

für das translated-Objekt brauchst du die Language-UUIDs der Sprachen, dann sieht das JSON so ähnlich aus:

```
"translations":{  
      "c37a87003ce3401884d19afc7d459000":{
         "id":"a2cfd3e5f445404db11afb03e1f107e0",
         "languageId":"c37a87003ce3401884d19afc7d459000",
         "categoryId":"cd15d5fcdd1e4a18b9844b091b9281b5",

         "name":"Übersetzter-Kategoriename",
         "description":"Übersetzte-Kategoriebeschreibung"
      }
   },

```

Welche Sachen übersetzbar sind und wie diese dann heißen, kannst du am besten in der CategoryTranslationDefinition nachschauen.  
Btw. dies funktioniert bei allen Übersetzungen so.

Ich hoffe, das hilft dir weiter.

Gruß

Krispin

---

<div class="post-metadata">

**Author:** ![Michael\_Telgmann](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/michael_telgmann/32/20289_2.png) [@Michael\_Telgmann](https://forum.shopware.com/u/Michael_Telgmann)\
**Post date:** [30. Oktober 2019 um 07:31 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/3 "2019-10-30T07:31:58Z")

</div>

Hallo,

statt der UUID ist es auch möglich den ISO Code zu nutzen, also de-DE oder en-GB

Viele Grüße aus Schöppingen

![cool](http://forum.shopware.com/plugins/CKEditor/plugins/smiley/images/shopware.png "cool")&nbsp;Michael Telgmann

---

<div class="post-metadata">

**Author:** ![hloettgen](https://avatars.discourse-cdn.com/v4/letter/h/50afbb/32.png) [@hloettgen](https://forum.shopware.com/u/hloettgen)\
**Post date:** [30. Oktober 2019 um 08:00 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/4 "2019-10-30T08:00:35Z")

</div>

> [@Krispin schrieb:](https://forum.shopware.com/profile/29825/Krispin "Krispin")
> 
> Guten Morgen Holger,
> 
> für das translated-Objekt brauchst du die Language-UUIDs der Sprachen, dann sieht das JSON so ähnlich aus:
> 
> „translations“:{  
> „c37a87003ce3401884d19afc7d459000“:{  
> „id“:„a2cfd3e5f445404db11afb03e1f107e0“,  
> „languageId“:„c37a87003ce3401884d19afc7d459000“,  
> „categoryId“:„cd15d5fcdd1e4a18b9844b091b9281b5“,
> 
> „name“:„Übersetzter-Kategoriename“,  
> „description“:„Übersetzte-Kategoriebeschreibung“  
> }  
> },
> 
> Welche Sachen übersetzbar sind und wie diese dann heißen, kannst du am besten in der CategoryTranslationDefinition nachschauen.  
> Btw. dies funktioniert bei allen Übersetzungen so.
> 
> Ich hoffe, das hilft dir weiter.
> 
> Gruß
> 
> Krispin

Guten Morgen Krispin,&nbsp;

genau danach habe ich gesucht. Vielen Dank.

Fragen dazu:&nbsp;

- Ist das translations-Objekt irgendwo dokumentiert ? Ich finde in der gesamten Shopware 6 Doku nichts dazu… weder über die Swagger-Doku, noch über " **\_info/openapi3.json**"

- Was ist denn die „id“ innerhalb des translations-Objekts ? Muss ich die selbst vergeben ? languageId und categoryId sind mir klar.

- „…kannst du am besten in der CategoryTranslationDefinition nachschauen.“ Wo genau finde ich das.

Sorry, wenn ich Noob-Fragen stelle 🙂

Viele Grüße

Holger&nbsp;

&nbsp;

---

<div class="post-metadata">

**Author:** ![Krispin](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/krispin/32/12849_2.png) [@Krispin](https://forum.shopware.com/u/Krispin)\
**Post date:** [30. Oktober 2019 um 08:25 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/5 "2019-10-30T08:25:32Z")

</div>

Hi Holger,

kein Problem, die Entity-Definitions sind PHP-Datein in der Shopware-Platform:&nbsp;[https://github.com/shopware/platform/blob/master/src/Core/Content/Category/Aggregate/CategoryTranslation/CategoryTranslationDefinition.php](https://github.com/shopware/platform/blob/master/src/Core/Content/Category/Aggregate/CategoryTranslation/CategoryTranslationDefinition.php)

Jede Translation ist ein neuer Eintrag in der dazugehörigen Tabelle (hierbei: category\_translation), daher benötigt eine neue Übersetzung eine eigene ID für den Eintrag.  
Also benötigst du hier eine neue UUID.

Aber es geht noch einfacher, du kannst auch einfach beim erstellen die IDs weglassen, da diese dann automatisch generiert werden.  
Somit kannst du z.B. folgendes machen:

```
{  
   "active":true,
   "translations":{  
      "de-DE":{  
         "name":"Juwelen"
      }
   },
   "name":"Jewelry"
}

```

Mit dem obigen JSON erstellst du somit eine neue Kategorie mit dem Namen Jewelry und der deutschen Übersetzung Juwelen, die Kategorie-ID und auch die Translation-ID wird automatisch generiert und muss nicht explizit angegeben werden.

Sorry für die Verwirrung, aber bei der Migration z.B. setzen wir immer die IDs, um auch bei einem Update die Daten zu überschreiben und nicht neu anzulegen.

Gruß

Krispin

---

<div class="post-metadata">

**Author:** ![hloettgen](https://avatars.discourse-cdn.com/v4/letter/h/50afbb/32.png) [@hloettgen](https://forum.shopware.com/u/hloettgen)\
**Post date:** [30. Oktober 2019 um 08:52 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/6 "2019-10-30T08:52:04Z")

</div>

Hallo Krispin,&nbsp;

herzlichen Dank für die Erläuterung. Das hilft mir ungemein und kann ich abstrahieren für andere Objekte 🙂

Herzliche Grüße

Holger&nbsp;

---

<div class="post-metadata">

**Author:** ![hloettgen](https://avatars.discourse-cdn.com/v4/letter/h/50afbb/32.png) [@hloettgen](https://forum.shopware.com/u/hloettgen)\
**Post date:** [30. Oktober 2019 um 15:21 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/7 "2019-10-30T15:21:10Z")

</div>

Hallo Krispin,&nbsp;

es funktioniert nur leider nicht…&nbsp;

Mein JSON sieht so aus:&nbsp;

&nbsp;

{&nbsp;  
&nbsp;&nbsp;&nbsp;“active”:true,  
&nbsp;&nbsp;&nbsp;“id”:“753C34548E0E486392234039DB77BD97”,  
&nbsp;&nbsp;&nbsp;“type”:“category”,  
&nbsp;&nbsp;&nbsp;“name”:“Testeintrag1”,  
&nbsp;&nbsp;&nbsp;“translations”:{&nbsp;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;“en-GB”:{&nbsp;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;“name”:“Testeintrag1&nbsp;Englisch”  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}  
&nbsp;&nbsp;&nbsp;}  
}

&nbsp;

Und ich bekomme einen internal server error zurück…&nbsp;

Frage… ist das nicht eher ein Array… ? Denn theoretisch muss ich doch auch gleichzeitig mehrere Sprachen beschicken können, oder ?

Wie würde das denn dann aussehen, wenn ich neben Englisch noch Spanisch und Französisch mitgeben will ?

&nbsp;

Viele Grüße

Holger

---

<div class="post-metadata">

**Author:** ![Krispin](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/krispin/32/12849_2.png) [@Krispin](https://forum.shopware.com/u/Krispin)\
**Post date:** [30. Oktober 2019 um 15:33 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/8 "2019-10-30T15:33:40Z")

</div>

Hi Holger,

welchen Server-Error bekommst du denn?  
Das JSON von dir funktioniert bei mir, aber du musst die UUID in Kleinbuchstaben machen.

Gruß

Krispin

---

<div class="post-metadata">

**Author:** ![hloettgen](https://avatars.discourse-cdn.com/v4/letter/h/50afbb/32.png) [@hloettgen](https://forum.shopware.com/u/hloettgen)\
**Post date:** [30. Oktober 2019 um 16:16 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/9 "2019-10-30T16:16:00Z")

</div>

Hallo Krispin,&nbsp;

du hattest Recht… das hatte ich bei der Prozedur übersehen… mache ich sonst immer lowercase…&nbsp;

Ich habe nun erfolgreich eine Kategorie angelegt mit einer zusätzlichen Sprache… Aber wie kommt die dritte Sprache rein, wenn ich nicht mit einem Array arbeite ?

Habe schon ein paar Varianten probiert aber nix funktioniert.&nbsp;

Viele Grüße

Holger&nbsp;

---

<div class="post-metadata">

**Author:** ![hloettgen](https://avatars.discourse-cdn.com/v4/letter/h/50afbb/32.png) [@hloettgen](https://forum.shopware.com/u/hloettgen)\
**Post date:** [30. Oktober 2019 um 17:07 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/10 "2019-10-30T17:07:49Z")

</div>

Ich ziehe mein Frage zurück 🙂

Habs hinbekommen mit:&nbsp;

{&nbsp;  
&nbsp;&nbsp;&nbsp;„active“:true,  
&nbsp;&nbsp;&nbsp;„name“:„Testeintrag1“,  
&nbsp;&nbsp;&nbsp;„translations“:{&nbsp;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;„en-GB“:{&nbsp;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;„name“:„Testeintrag2&nbsp;Englisch“  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;},  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;„es-ES“:{&nbsp;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;„name“:„Testeintrag&nbsp;Spanisch“  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}  
&nbsp;&nbsp;&nbsp;}  
}

Herzliche Grüße und Danke

Holger&nbsp;

---

<div class="post-metadata">

**Author:** ![shop24](https://avatars.discourse-cdn.com/v4/letter/s/2bfe46/32.png) [@shop24](https://forum.shopware.com/u/shop24)\
**Post date:** [23. Oktober 2020 um 05:29 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/11 "2020-10-23T05:29:26Z")

</div>

Hallo zusammen,

wie wertet Ihr denn die Antwort aus? Versuche es irgendwie in ein Array zu bekommen, doch leider ohne Erfolg. Oder brauch ich das gar nicht und kann auch so auf die einzelnen Werte zugreifen?

Manuel

---

<div class="post-metadata">

**Author:** ![gaxweb](https://avatars.discourse-cdn.com/v4/letter/g/ea5d25/32.png) [@gaxweb](https://forum.shopware.com/u/gaxweb)\
**Post date:** [4. Oktober 2023 um 13:51 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/12 "2023-10-04T13:51:20Z")

</div>

Kann es sein, dass die ganze „translated“ Sache noch immer nicht in der REST API Doku unter [https://shopware.stoplight.io](https://shopware.stoplight.io) erklärt ist? Finde dazu nämlich immer noch nichts Offizielles.

---

<div class="post-metadata">

**Author:** ![hloettgen](https://avatars.discourse-cdn.com/v4/letter/h/50afbb/32.png) [@hloettgen](https://forum.shopware.com/u/hloettgen)\
**Post date:** [4. Oktober 2023 um 14:33 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/13 "2023-10-04T14:33:00Z")

</div>

Ich schaue da so gut wie nie rein.  
Wenn Du den einfachsten Weg gehen willst, um zu wissen, wie Du etwas posten musst, dann geh ins Shopware Backend (zum Beispiel mit Google Chrome), drücke F12 und dann kannst Du deine Calls aufzeichnen, wenn Du zum Beispiel eine Übersetzung für ein Objekt speicherst.

Beste Grüße  
Holger

---

<div class="post-metadata">

**Author:** ![gaxweb](https://avatars.discourse-cdn.com/v4/letter/g/ea5d25/32.png) [@gaxweb](https://forum.shopware.com/u/gaxweb)\
**Post date:** [4. Oktober 2023 um 14:36 UTC](https://forum.shopware.com/t/rest-api-anlegen-einer-kategorie-mit-mehrsprachigen-texten/62683/14 "2023-10-04T14:36:44Z")

</div>

Das hätte mir hier aber vermutl. nicht gezeigt, dass man statt IDs auch den Sprach-ISO-Code verwenden kann.
