# REST API, Translations, Artikel Attribute

**URL:** https://forum.shopware.com/t/rest-api-translations-artikel-attribute/47246
**Category:** Programmierung
**Created:** [2. August 2017 um 09:23 UTC](https://forum.shopware.com/t/rest-api-translations-artikel-attribute/47246 "2017-08-02T09:23:08Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![KOBAB](https://avatars.discourse-cdn.com/v4/letter/k/ee7513/32.png) [@KOBAB](https://forum.shopware.com/u/KOBAB)
#### Post date: [2. August 2017 um 09:23 UTC](https://forum.shopware.com/t/rest-api-translations-artikel-attribute/47246/1 "2017-08-02T09:23:08Z")

</div>

Hallo zusammen,

ich stehe vor folgendem Problem:  
Über die Rest-API lege ich einen neuen Artikel an. Im zweiten Schritt lege ich für den eben angelegten Artikel die Übersetzungen für die Sprachshops an.  
Die Übersetzung wird ohne Fehler angelegt, allerdings werden die konfigurierten Freitextfelder nicht übersetzt.

```
$shopware_resource = "translations";
$shopware_method = "METHOD_POST";
	
$shopware_data = array( 'key' => 3251, 
                        'type' => 'article',
                        'shopId' => 2,
                        'data' => array(
							'name' => 'Article title',
							'description' => 'Article description short',
							'descriptionLong' => 'Article description long',
							'keywords' => 'Article keywords',
							'metaTitle' => 'Article meta title',
							'attr2' => 'Attribute 2',
				        )			
                    );

```

Um diese ‘attr2’ geht es. Ich habe schon verschiedene Kombinationen probiert, u.a. auch die gleiche Verschachtelung beim Anlegen oder “en\_attr2” oder “attr2\_2” etc. Die Übersetzung kommt einfach nicht an.

Wer weiß, wie es geht? Und geht es überhaupt?

Vielen Dank und beste Grüße

Andreas

---

<div class="post-metadata">

### Author: ![simkli](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/simkli/32/13124_2.png) [@simkli](https://forum.shopware.com/u/simkli)
#### Post date: [2. August 2017 um 09:31 UTC](https://forum.shopware.com/t/rest-api-translations-artikel-attribute/47246/2 "2017-08-02T09:31:14Z")

</div>

Hi KOBAB,

die Attribute hängen nicht an der Article Resource sondern an der Detail Resource:  
[REST API - Models](https://developers.shopware.com/developers-guide/rest-api/models/#article-detail)  
(Also nicht am Shopware\Models\Article\Article Model sondern&nbsp;Shopware\Models\Article\Detail )

Ich vermute mal daran wird es liegen.&nbsp;

Viele Grüße

---

<div class="post-metadata">

### Author: ![KOBAB](https://avatars.discourse-cdn.com/v4/letter/k/ee7513/32.png) [@KOBAB](https://forum.shopware.com/u/KOBAB)
#### Post date: [2. August 2017 um 16:13 UTC](https://forum.shopware.com/t/rest-api-translations-artikel-attribute/47246/3 "2017-08-02T16:13:51Z")

</div>

Hallo simkli,

ja, beim Erzeugen eines neuen Artikels über die API kommen die Attribute verschachtelt unter ‚mainDetail‘.  
Bei den Translations scheint der Aufbau aber nicht zu greifen. Auch habe ich schon versucht die Resource direkt anzuzsprechen und bekomme zwar ein „Ok“ als Rückmeldung, übersetzt sind die Attribute aber trotzdem nicht.

&nbsp;

```
$shopware_resource = "translations";
$shopware_method = "METHOD_POST";
	
$shopware_data = array( 'key' => 3251, 
                         'type' => 'attribute',
                         'shopId' => 2,
                         'data' => array(
			     'attr2' => 'Translated',
		             'attr5' => '2'
		          )			
                       );

```

&nbsp;

---

<div class="post-metadata">

### Author: ![simkli](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/simkli/32/13124_2.png) [@simkli](https://forum.shopware.com/u/simkli)
#### Post date: [2. August 2017 um 17:45 UTC](https://forum.shopware.com/t/rest-api-translations-artikel-attribute/47246/4 "2017-08-02T17:45:32Z")

</div>

Hi KOBAB,

versuche mal folgendes:

```
$api->post('translations', [
    'key' => 3251, // muss die ID aus s_articles_detail sein nicht s_articles !!!
    'type' => 'variant',// hier variant benutzen 
    'shopId' => 2, // subshop ID
    'data' => [
            'attr2' => 'Translated',
    ]
]);

```

Viele Grüße

---

<div class="post-metadata">

### Author: ![KOBAB](https://avatars.discourse-cdn.com/v4/letter/k/ee7513/32.png) [@KOBAB](https://forum.shopware.com/u/KOBAB)
#### Post date: [3. August 2017 um 10:06 UTC](https://forum.shopware.com/t/rest-api-translations-artikel-attribute/47246/5 "2017-08-03T10:06:42Z")

</div>

Danke für deine Tipps.

Ich habe mit Adminer nachgeschaut. Die gewünschten Übersetzungen laden in der Tabelle s\_articles\_translations (Beschreibungen, Keywords und attribute 1-6).

Der neue Artikel bekommt die ID 3253 in (s\_articles).  
Die Details zum Artikel stehen in (s\_articles\_details) mit ID 3578 und articleID 3523.  
Die Attribute zum Artikel stehen in (s\_articles\_attributes) mit ID 3573 und articleID 3523 und articleDetailID 3578

In (s\_articles\_translations) finden sich genau die Daten, die ich via REST API übertragen habe.  
ID =\> 6  
articleID =\> 3253  
languageID =\> 2  
…  
attr2 =\> Translated

Im Sprachshop werden die Daten aus der Translations verwendet, jedoch nicht die Attribute 1-6, obwohl diese Daten gefüllt sind.

Und jetzt wird es merkwürdig:  
Ich kann über das Backend die Sprachversion vom Artikel ändern -\> die Daten landen in der s\_articles\_attributes.  
Ändere ich den Datensatz in s\_articles\_attributes kommen diese Änderungen nicht im Backend/Frontend an.

Die s\_articles\_translations scheint ein Backup zu sein. Die verwendeten Übersetzungen im Sprachshop scheinen noch woanders zu stehen.  
Das würde erklären, warum man offenbar die Attribute nicht direkt mit übersetzen kann:

Hast du (oder hat jemand) eine Idee, wo ich gucken kann? In s\_articles, s\_articles\_details und s\_articles\_attributes stehen immer nur die deutschen Werte drin.

Danke.

Andreas

---

<div class="post-metadata">

### Author: ![KOBAB](https://avatars.discourse-cdn.com/v4/letter/k/ee7513/32.png) [@KOBAB](https://forum.shopware.com/u/KOBAB)
#### Post date: [27. September 2017 um 07:03 UTC](https://forum.shopware.com/t/rest-api-translations-artikel-attribute/47246/6 "2017-09-27T07:03:52Z")

</div>

Update:

Mittlerweile ist auch die Doku ([REST API - Examples using the translation resource](https://developers.shopware.com/developers-guide/rest-api/examples/translation/)) angepasst und zeigt, wie es geht:

Die Freitextfelder werden mit \_\_attribute\_{NAME} übergeben.

```
$shopware_data = array( 'key' => $id, 
					    'type' => 'article',
					    'shopId' => $language_id_subshop,
					    'data' => array(
						    'name' => $article_title,
						    'description' => $article_description,
						    'descriptionLong' => $article_descriptionlong,
						    'keywords' => $article_keywords,
						    'metaTitle' => $article_title,
					        '__attribute_attr1' => $article_attr1,
					        '__attribute_attr2' => $article_attr2,
					        '__attribute_attr5' => $article_attr5,
							)    
						);

```

&nbsp;
