# Artikel per API eine Download-Datei zuweisen

**URL:** https://forum.shopware.com/t/artikel-per-api-eine-download-datei-zuweisen/25218
**Category:** Shopware 3.5
**Tags:** programming
**Created:** [20. Februar 2015 um 11:54 UTC](https://forum.shopware.com/t/artikel-per-api-eine-download-datei-zuweisen/25218 "2015-02-20T11:54:21Z")
**Posts on this page:** 9
**Page:** 1

<div class="post-metadata">

### Author: ![ebert](https://avatars.discourse-cdn.com/v4/letter/e/41988e/32.png) [@ebert](https://forum.shopware.com/u/ebert)
#### Post date: [20. Februar 2015 um 11:54 UTC](https://forum.shopware.com/t/artikel-per-api-eine-download-datei-zuweisen/25218/1 "2015-02-20T11:54:21Z")

</div>

Hi zusammen, ich möchte einem Artikel per API einen Download zuweisen. Die Download-Datei liegt bereits im Dateisystem. Wenn ich mit die Doku dazu anschau, werde ich leider nicht wirklich schlau daraus: [http://wiki.shopware.com/REST-API-Artik … Download\_2](http://wiki.shopware.com/REST-API-Artikel-Endpunkt%5C_detail%5C_1681%5C_919.html#Download%5C_2) Nach verschiedenen Versuchen bekomme ich leider immer nur Fehlermeldungen… Mein letzter Versuch schaut so aus: `$objClient-\>post('articles/2', array( 'downloads' =\> array( 'name' =\> 'Name der Download-Datei', 'file' =\> $strPathToFile, 'link' =\> 1 ) ));` Kann mich bitte jemand korrigieren? Grüße!

---

<div class="post-metadata">

### Author: ![Shopwareianer](https://avatars.discourse-cdn.com/v4/letter/s/b4bc9f/32.png) [@Shopwareianer](https://forum.shopware.com/u/Shopwareianer)
#### Post date: [20. Februar 2015 um 12:18 UTC](https://forum.shopware.com/t/artikel-per-api-eine-download-datei-zuweisen/25218/2 "2015-02-20T12:18:39Z")

</div>

Du möchtest doch einen Artikel aktualisieren oder ? `$objClient-\>put` nicht -\> post. Welchen Fehler bekommst du denn ? Poste mal bitte eben den Output nur vom Artikel, habe den gerade nicht im Kopf bzw. die Struktur. `$objClient-\>get('articles/2');`

---

<div class="post-metadata">

### Author: ![ebert](https://avatars.discourse-cdn.com/v4/letter/e/41988e/32.png) [@ebert](https://forum.shopware.com/u/ebert)
#### Post date: [20. Februar 2015 um 12:31 UTC](https://forum.shopware.com/t/artikel-per-api-eine-download-datei-zuweisen/25218/3 "2015-02-20T12:31:21Z")

</div>

Hi kayyy, danke schonmal, PUT bringt mich einen kleinen Schritt weiter. Hier mal das „downloads“-Array aus der GET-Abfrage: ` [downloads] =\> Array ( [0] =\> Array ( [id] =\> 1 [articleId] =\> 2 [name] =\> Datenblatt [file] =\> media/pdf/Datenblatt.pdf [size] =\> 0 ) )` Ich erhalte nun folgende Fehlermeldung: [quote]Errormesage: An exception occurred while executing ‚INSERT INTO s\_articles\_downloads (articleID, description, filename, size) VALUES (?, ?, ?, ?)‘ with params [2, null, null, null]: SQLSTATE[23000]: Integrity constraint violation: 1048 Column ‚description‘ cannot be null[/quote] Mein Aufruf: `$objClient-\>put('articles/2', array( 'downloads' =\> array( 'name' =\> 'Download-Datei', 'file' =\> $strPathToFile, 'link' =\> 1 ) ));`

---

<div class="post-metadata">

### Author: ![Shopwareianer](https://avatars.discourse-cdn.com/v4/letter/s/b4bc9f/32.png) [@Shopwareianer](https://forum.shopware.com/u/Shopwareianer)
#### Post date: [20. Februar 2015 um 12:53 UTC](https://forum.shopware.com/t/artikel-per-api-eine-download-datei-zuweisen/25218/4 "2015-02-20T12:53:50Z")

</div>

Nehme mal folgendes: ` $objClient-\>put('articles/2', array( array ( 'downloads' =\> array( 'name' =\> 'Download-Datei', 'file' =\> 'media/pdf/Datenblatt\_NEU.pdf' ) ) )); ` Das sollte so gehen.

---

<div class="post-metadata">

### Author: ![ebert](https://avatars.discourse-cdn.com/v4/letter/e/41988e/32.png) [@ebert](https://forum.shopware.com/u/ebert)
#### Post date: [20. Februar 2015 um 14:08 UTC](https://forum.shopware.com/t/artikel-per-api-eine-download-datei-zuweisen/25218/5 "2015-02-20T14:08:26Z")

</div>

Hm, wir nähern uns offenbar dem Ziel… `$result = $objClient-\>put('articles/2', array( array ( 'downloads' =\> array( 'name' =\> 'Download-Datei', 'file' =\> $strFilename ) ) ));` Dieser Code führt nun immerhin zu einer Erfolgsmeldung: [quote]HTTP: 200 Success[/quote] Allerdings ist dem Artikel kein Download zugewiesen, wenn ich ihn im Backend öffne. Die Datei, die ich zuweisen will existiert definitiv, den Pfad habe ich aus dem Medienmanager kopiert ("/media/pdf/dateiname.pdf", auch schon ohne leading slash versucht). Weitere Ideen?

---

<div class="post-metadata">

### Author: ![Shopwareianer](https://avatars.discourse-cdn.com/v4/letter/s/b4bc9f/32.png) [@Shopwareianer](https://forum.shopware.com/u/Shopwareianer)
#### Post date: [20. Februar 2015 um 14:13 UTC](https://forum.shopware.com/t/artikel-per-api-eine-download-datei-zuweisen/25218/6 "2015-02-20T14:13:44Z")

</div>

Was sagt denn jetzt der dump des Artikels ? Wurde hier ein Pfad hinterlegt, oder der Name ?

---

<div class="post-metadata">

### Author: ![ebert](https://avatars.discourse-cdn.com/v4/letter/e/41988e/32.png) [@ebert](https://forum.shopware.com/u/ebert)
#### Post date: [20. Februar 2015 um 14:16 UTC](https://forum.shopware.com/t/artikel-per-api-eine-download-datei-zuweisen/25218/7 "2015-02-20T14:16:38Z")

</div>

Das gleiche “downloads”-Array wie zuvor. Ein Download war bereits zuvor zugewiesen, der ist immer noch da, aber kein neues Element.

---

<div class="post-metadata">

### Author: ![kossi\_lpc](https://avatars.discourse-cdn.com/v4/letter/k/a4c791/32.png) [@kossi\_lpc](https://forum.shopware.com/u/kossi_lpc)
#### Post date: [17. Juli 2018 um 09:49 UTC](https://forum.shopware.com/t/artikel-per-api-eine-download-datei-zuweisen/25218/8 "2018-07-17T09:49:20Z")

</div>

Hallo,

Folgender Eintrag im config.php löst das Problem.

\<?php return array (

.... 'cdn' =\\> [&nbsp; 'liveMigration' =\\> true,], ... &nbsp; Der Grund der ist eim Aufruf der Site wird die URL für den Download generiert. siehe if(!$this-\\>container-\\>getParameter('shopware.cdn.liveMigration')) in der funktion migrateFileLive($path) im file MediaService.php.

---

<div class="post-metadata">

### Author: ![Darta](https://avatars.discourse-cdn.com/v4/letter/d/5daacb/32.png) [@Darta](https://forum.shopware.com/u/Darta)
#### Post date: [30. August 2018 um 13:09 UTC](https://forum.shopware.com/t/artikel-per-api-eine-download-datei-zuweisen/25218/9 "2018-08-30T13:09:28Z")

</div>

Hallo,

leider habe ich das gleiche Problem.

Ich bekomme ein&nbsp;HTTP: 200 Success, der Download wurde aber nicht zugewiesen. Weder im Backend noch im Dump des Artikels ist der Download enthalten.

Das Aktivieren von “liveMigration” in der config.php bringt auch keine Verbesserung.

Woran kann es noch liegen?

&nbsp;
