.. include:: globals.txt Öffentliche Vermarkterdaten ============================== Hier sind die Funktionen zur Ablage und Abruf der Vermarkterdaten mit |connectcentername| beschrieben. Auf die Vermarkterdaten haben alle Teilnehmer des connect centers uneingeschränkten Zugriff. Auflistung ------------ .. _getPublicDocumentsList: .. |publicDocumentType| replace:: Stammdatentyp: "**placements**" für Inventare (siehe :ref:`getPlacements`), "**pricelist**" für Preislisten (siehe :ref:`getPriceLists`) oder "**advertisement**" für Werbeformen (siehe :ref:`getAdvertisements`). getPublicDocumentsList ``````````````````````` Gibt eine Auflistung der im |connectcentername| eingestellten öffentlichen Vermarkterdaten zurück. ============= =================================== Aufruf :api_url:`getPublicDocumentsList` ============= =================================== Methoden **GET** Rückgabe XML-Liste der Stammdatendokumente (encoding: utf-8) ============= =================================== =============== ========= **Parameter** =============== ========= **type** |publicDocumentType|. Parameter ist optional. Keine Angabe gibt alle Dokumente zurück. **lastChanged** |dateRangeFormat| =============== ========= Mögliche Fehlerrückgaben ''''''''''''''''''''''''' ========= ============================== ====================================================== **Code** Infotext Erläuterung ========= ============================== ====================================================== **401** *...* |autherrors| ========= ============================== ====================================================== Beispiel ''''''''''''' .. literalinclude:: files/api_response/getPublicDocumentsList.xml :language: xml :lines: 1-25 :append: ... :encoding: utf-8 Zugehöriges XSD-Schema: :download:`publicDocumentsList.xsd `. .. _explain_publicdocument: Elemente von "Document" ........................ .. list-table:: :widths: 10 10 80 :header-rows: 1 * - Element - Attribut - Bedeutung * - - **id** - Eindeutige ID im |connectcentername| System. * - - **date** - Zeitpunkt zu dem das Dokument eingestellt wurde im YYY-MM-DD HH:MM:SS Format * - User - **ovkparticipantid** - |ovkID-explained| * - - **name** - Name des |connectcentername| users * - - **type** - |usertype| * - **Attributes** - **type** - |publicDocumentType| Sender ------- setPlacements ```````````````` Dient zur Ablage des Inventars eines Vermarkters für den allgemeinen Zugriff. Ein evtl. bereits vorhandenes Inventar des Vermarkters wird überschrieben. ============= ================================ Aufruf :api_url:`setPlacements` ============= ================================ Methoden **POST** (*multipart/form-data* encoded) Rückgabe :ref:`genericresponse` mit InfoText "received" wenn Empfang abgeschlossen werden konnte. ============= ================================ ============= ========= **Parameter** ============= ========= **file** Die Placements-XML Datei (*multipart/form-data* encoded). |maxuploadfile| ============= ========= Mögliche Fehlerrückgaben ''''''''''''''''''''''''' ========= ============================== ====================================================== **Code** Infotext Erläuterung ========= ============================== ====================================================== **400** **missing params** Parameter **file** wurde nicht übergeben. **401** *...* |autherrors| **432** siehe :ref:`validateBehavior` Probleme bei der Validierung der Inhalte ========= ============================== ====================================================== Beispiel ''''''''''''' Beispieldatei placements.xml (Ausschnitt): .. literalinclude:: files/Placements.xml :language: xml :lines: 1-13 :append: ... :encoding: utf-8 Rückgabe ............. .. literalinclude:: files/api_response/normal_received.xml :language: xml setPriceLists ````````````` Dient zur Ablage der Preislisten eines Vermarkters für den allgemeinen Zugriff. Eine evtl. bereits vorhandene Preisliste des Vermarkters wird überschrieben. ============= ================================ Aufruf |connecturl|/setPriceLists/ ============= ================================ Methoden **POST** Rückgabe :ref:`genericresponse` mit InfoText "received" wenn Empfang abgeschlossen werden konnte. ============= ================================ ============= ========= **Parameter** ============= ========= **file** Inhalt der Preislisten-XML Datei (*multipart/form-data* encoded). |maxuploadfile| ============= ========= Mögliche Fehlerrückgaben ''''''''''''''''''''''''' ========= ============================== ====================================================== **Code** Infotext Erläuterung ========= ============================== ====================================================== **400** **missing params** Parameter **file** wurde nicht übergeben. **401** *...* |autherrors| **432** siehe :ref:`validateBehavior` Probleme bei der Validierung der Inhalte ========= ============================== ====================================================== Beispiel ''''''''''''' Beispieldatei pricelist.xml (Ausschnitt): .. literalinclude:: files/Pricelist.xml :language: xml :lines: 1-13 :append: ... :encoding: utf-8 Rückgabe ............. .. literalinclude:: files/api_response/normal_received.xml :language: xml setAdvertisements ````````````````` Dient zur Ablage der Werbeformen eines Vermarkters für den allgemeinen Zugriff. Evtl. bereits vorhandene Werbeformen des Vermarkters werden überschrieben. ============= ==================================== Aufruf :api_url:`setAdvertisements` ============= ==================================== Methoden **POST** Rückgabe :ref:`genericresponse` mit InfoText "received" wenn Empfang abgeschlossen werden konnte. ============= ==================================== ============= ========= **Parameter** ============= ========= **file** Inhalt der Werbeformen-XML Datei (*multipart/form-data* encoded). |maxuploadfile| ============= ========= Mögliche Fehlerrückgaben ''''''''''''''''''''''''' ========= ============================== ====================================================== **Code** Infotext Erläuterung ========= ============================== ====================================================== **400** **missing params** Parameter **file** wurde nicht übergeben. **401** *...* |autherrors| **432** siehe :ref:`validateBehavior` Probleme bei der Validierung der Inhalte ========= ============================== ====================================================== Beispiel ''''''''''''' Beispieldatei advertisements.xml (Ausschnitt): .. literalinclude:: files/advertisements.xml :language: xml :lines: 1-13 :append: ... :encoding: utf-8 Rückgabe ............. .. literalinclude:: files/api_response/normal_received.xml :language: xml .. _validateBehavior: Validierung der Inhalte ``````````````````````` Bei den oben aufgeführten **set...** Befehlen wird eine automatische Validierung durchgeführt: 1. Prüfung, ob der Sender in der XML die eigene ID ist (OVK ParticipantID identisch mit den Attribute *ovkparticipantsenderid*) Hierbei sind folgende Fehlerszenarien denkbar: .. list-table:: :widths: 70 30 :header-rows: 1 * - Bedingung - Verhalten * - Inhalt ist kein valides XML - keine Validierung möglich, **Versand erfolgt** * - Inhalt ist XML, XSD wird gefunden, Validierung klappt => Absender.VID ist nicht die eigene ID - **kein Versand** .. _validateErrors: Fehlermeldungen ''''''''''''''''' Im Rahmen der Validerungen werden unterschiedliche Fehlermeldungen entweder in die Logdatei des connect kits oder im Response ausgegeben. .. list-table:: :widths: 70 20 10 :header-rows: 1 * - Meldung - Ausgabe - Response Code * - "Ausgehendes XML konnte nicht geparsed werden" - Logdatei - 200 * - "Ausgehendes XML enthält keine OVK Absender Id (ovkparticipantsenderid)" - Logdatei - 200 * - "Absender ID im XML stimmt nicht mit Ihrer ID überein" - Response - 432 Empfänger ---------- .. |getsuffix| replace:: des abgefragen Vermarkters als XML. .. _getPlacements: getPlacements ````````````` Dient zum Abruf der Inventories der Vermarkter. ============= ================================ Aufruf |connecturl|/getPlacements/ ============= ================================ Methoden **GET** Rückgabe Inventory |getsuffix| ============= ================================ =============== ========= **Parameter** =============== ========= **publisher** ID des Vermarkters in |connectcentername| |useridinfo| =============== ========= Mögliche Fehlerrückgaben ''''''''''''''''''''''''' ========= ============================== ====================================================== **Code** Infotext Erläuterung ========= ============================== ====================================================== **401** *...* |autherrors| ========= ============================== ====================================================== Beispiel ''''''''''''' .. literalinclude:: files/Placements.xml :language: xml :lines: 1-13 :append: ... :encoding: utf-8 .. _getPriceLists: getPriceLists ````````````` Dient zum Abruf der Preislisten der Vermarkter. ============= ================================ Aufruf :api_url:`getPriceLists` ============= ================================ Methoden **GET** Rückgabe Preislisten |getsuffix| ============= ================================ =============== ========= **Parameter** =============== ========= **publisher** ID des Vermarkters in |connectcentername| |useridinfo| =============== ========= Mögliche Fehlerrückgaben ''''''''''''''''''''''''' ========= ============================== ====================================================== **Code** Infotext Erläuterung ========= ============================== ====================================================== **401** *...* |autherrors| ========= ============================== ====================================================== Beispiel ''''''''''''' .. literalinclude:: files/Pricelist.xml :language: xml :lines: 1-13 :append: ... :encoding: utf-8 .. _getAdvertisements: getAdvertisements ````````````````` Dient zum Abruf der Werbeformen der Vermarkter. ============= ================================ Aufruf :api_url:`getAdvertisements` ============= ================================ Methoden **GET** Rückgabe Werbformen |getsuffix| ============= ================================ =============== ========= **Parameter** =============== ========= **publisher** ID des Vermarkters in |connectcentername| |useridinfo| =============== ========= Mögliche Fehlerrückgaben ''''''''''''''''''''''''' ========= ============================== ====================================================== **Code** Infotext Erläuterung ========= ============================== ====================================================== **401** *...* |autherrors| ========= ============================== ====================================================== Beispiel ''''''''''''' .. literalinclude:: files/advertisements.xml :language: xml :lines: 1-13 :append: ... :encoding: utf-8