5.1 Base URL / Authentifizierung / Request Headers

Die Base URL für alle Requests lautet

https://api.mopage.ch

Die Authentifizierung erfolgt mit einem vorgängig kommunizierten API Key, der im Request Header wie folgt mitzuliefern ist:

X-Api-Key: {client_api_key_here}

5.2 Daten anliefern

Mit referenziertem XML File:

PUT /api/v1/xmldata?urldata=ENCODED_URL_TO_XML_FILE

Daten direkt liefern:

POST /api/v1/xmldata

Hierbei werden die XML Daten im Body des POST Requests mitgeliefert.

Als Response erhält man in der Folge eine Liste mit den eingefügtn/geupdateten/gelöscten Datensätzen:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<import importid="86" date="2023-06-23T15:57:08+02:00">
    <item id="1358360" objektkey="2126862070" parent="7682391" usid="111" action="updated" titel="Atelieraufenthalt in Kairo für Carina Kirsch" mutationsdatum=""/>
    <item id="7895" objektkey="456488029" parent="7682391" usid="111" action="inserted" titel="Weiterer Titel" mutationsdatum=""/>
    <item id="13583601" objektkey="1889323642" parent="7682391" usid="111" action="inactivated" titel="" mutationsdatum=""/>
</import>

5.3 Liste aller Datensätze anfordern

GET /api/v1/xmldata/getlist/{importid}

{importid} ist hierbei mit der effektiven Resource zu ersetzen

Als Resultat erhalten Sie ein XML in folgender Form:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<list>
    <item status="1" suchbar="1" datumvon="" datumbis="" geloescht="0">
        <id>01</id>
        <objektkey>123456789</objektkey>
        <titel>Datensatztitel</titel>
    </item>
    <item status="1" suchbar="1" datumvon="" datumbis="" geloescht="0">
        <id>03</id>
        <objektkey>112233</objektkey>
        <titel>Anderer Titel</titel>
    </item>
</list>

5.4 Einzelner Datensatz löschen

DELETE /api/v1/xmldata/delete/{importid}/{id}

{importid} und {id} (ID des Datensatzen auf Source System) sind hierbei mit den effektiven Resourcen zu ersetzen.

Als Response erhält man dann folgende Erfolgmeldung:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<import importid="111" date="2023-06-23T16:07:34+02:00">
    <item id="123456" objektkey="2126862070" usid="123" action="inactivated" titel="Atelieraufenthalt in Kairo für Carina Kirsch" />
</import>

5.5 Aufbau der Daten

Der XML Aufbau ist detailliert dokumentiert. Da die Authentifizierung per API Key erfolgt, können im Element <import> die Attribute passwort und partner weggelassenwerden.

5.6 Seitentypen

Wie die verschiedenen Seitentypen aufgebaut sein sollten, welche Elemente eingesetzt werden, entnehmen Sie der jeweiligen Doku: