REST

Die ONE API setzt auf dem Framework der REST-API von WordPress auf. Die Grundlagen entsprechen daher auch weitestgehend dem REST-Paradigma (RMM Level 2):

Request-URLs

Die URLs der regulären API-Requests beginnen immer mit der folgenden Basis-Adresse (API-Version 2):

https://api.immonex.one/wp-json/one-api/v2

(Requests im Rahmen der Authentifizierung weichen von diesem Schema ab.)

Beispiele

Liste der vom “API-Benutzer” (Client) verwalteten ONE Sites abrufen
GET https://api.immonex.one/wp-json/one-api/v2/sites

Daten der ONE Site mit der ID 23 abrufen
GET https://api.immonex.one/wp-json/one-api/v2/sites/23

Verfügbarkeit einer E-Mail-Adresse vor dem Anlegen einer neuen ONE Site prüfen
POST https://api.immonex.one/wp-json/one-api/v2/site-email-addresses/demo@immonex.one

JSON

Nutzdaten (Payload) werden sowohl bei Anfragen (Requests) als auch bei Antworten (Responses) im JSON-Format übermittelt.

Eine Ausnahme stellen Bilddateien dar, die optional auch im “Rohformat” im Request-Body übertragen werden können.

Beispiel-Anfrage

1
2
3
4
5
6
7
8
{
"company": "Demo Immobilien",
"site_slug": "demo-immobilien",
"address": "Europa-Allee 1",
"zipcode": "54343",
"city": "Föhren",
...
}

Beispiel-Antwort

Bei Responses sind die eigentlichen Nutzdaten Unterelemente von data, wohingegen die Hauptebene für die optionalen Elemente code und message reserviert ist. Letztere werden meist im Fehlerfall oder im Sandbox-Modus mit zurückgeliefert.

1
2
3
4
5
6
7
8
9
10
11
{
"code": "sandboxed",
"message": "Die Verarbeitung wurde nur simuliert.",
"data": {
"site_id": "123",
"url": "https://demo.immonex.one/",
"admin_url": "https://demo.immonex.one/bearbeiten",
"site_domain": "demo.immonex.one",
"status": "ACTIVE",
...
}