Löschen eines PDF-Dokuments per API?

Hallo zusammen,

Bilder kan man per mediaID über die API löschen.

Doch wie funktioniert das bei PDF-Dokumenten? Was ist da die mediaID?

Grüße
sunflower

Hi @sunflower‍,

Meines Erachtens nur über einen eigenen Endpoint lösbar.

 

Gruß

Da gibt es so viele Shopware5-Installationen seit vielen Jahren und immer noch gibt es Probleme die anscheinend nur ich habe. Crying

Hey @sunflower‍,

vielleicht auf folgende Art:

GET /api/media  - du könntest in dem Resultat aller Media-Dateien dann nach deinem PDF-Dokument suchen, ggf mittels Filter das Ergebnis auf die Extension ‚pdf‘ einschränken

DELETE /api/media/{id}  - Die Datei löschen

VG

2 „Gefällt mir“

@endeehjeeh schrieb:

Hey @sunflower‍,

vielleicht auf folgende Art:

GET /api/media  - du könntest in dem Resultat aller Media-Dateien dann nach deinem PDF-Dokument suchen, ggf mittels Filter das Ergebnis auf die Extension ‚pdf‘ einschränken

DELETE /api/media/{id}  - Die Datei löschen

VG

Nicht nur vielleicht - genau so. *TOP* Manchmal hat man einfach den falschen Gedanken.

Bin nicht davon ausgegangen das die darüber natrülich filterbar ist *FACEPALM*

Da war ich ein bisschen zu voreilig.

 

Gruß 

Danke für den Tipp. Bin selbst auch ein Stück weiter gekommen und lösche per delete media.

Ich kann mit meiner externen Anwendung zur Not auch direkt auf die Datenbank zugreifen.
Für Bilder wird in der Tabelle eine mediaId mitgeführt. Für Dokumente ist das Problem, die richtige mediaId zu finden. Wink

Hm, man muss ja nicht alle Medien ausgeben lassen. Hier kann man sogar Filter setzen:

/api/media?filter[0][property]=media.extension&filter[0][expression]=like&filter[0][value]=%pdf%

oder

/api/media?filter[0][property]=media.extension&filter[0][expression]==&filter[0][value]=pdf

Dann geht das eventuell etwas schneller.

Dokumente von Bestellungen sind dort nicht drin

1 „Gefällt mir“

Danke für die Info. Für mich sind derzeit nur die den Artikeln zugeordneten Dokumente relevant.

Hm, doch immer noch nicht ok.

Wenn ich nun das Dokument anhand der mediaId mit delete entferne bleibt immer noch der Eintrag in der Tabelle s_articles_downloads stehen.

Ich glaube es muss doch direkt per SQL in die Datenbank eingegriffen werden…