Bilder

Aktuell können per API zwei Arten von Bilddateien zu einer ONE Site hinzugefügt oder gelöscht werden: Logos und Inhaber/GF-Fotos

Von jeder Bilddatei werden nach dem Upload automatisch verschiedene Größenvarianten generiert, die in der ONE Site verwendet werden.

Endpunkte

GET https://api.immonex.one/wp-json/one-api/v2/sites/:id/images/:type (Bilddaten abrufen)
POST https://api.immonex.one/wp-json/one-api/v2/sites/:id/images/:type (Bild hinzufügen)
DELETE https://api.immonex.one/wp-json/one-api/v2/sites/:id/images/:type (Bild löschen)

Für den Parameter type sind die Werte logo und owner_photo zulässig.

Bildvarianten-URLs abrufen

Endpunkt
GET https://api.immonex.one/wp-json/one-api/v2/sites/:id/images/:type

Im folgenden Beispiel werden die aktuellen URLs des in der ONE Site mit der ID 123 eingebundenen Logodateien (Größenvarianten) abgerufen.

Request (Beispiel)
GET https://api.immonex.one/wp-json/one-api/v2/sites/123/images/logo

Response (Erfolg)
200 OK

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
{
"data": [
{
"type": "logo",
"size": "large",
"url": "https://assets.immonex.one/wp-content/uploads/sites/123/branding/logo-abc-xyz-immo-large.png"
},
{
"type": "logo",
"size": "medium",
"url": "https://assets.immonex.one/wp-content/uploads/sites/123/branding/logo-abc-xyz-immo-medium.png"
},
{
"type": "logo",
"size": "small",
"url": "https://assets.immonex.one/wp-content/uploads/sites/123/branding/logo-abc-xyz-immo-small.png"
},
{
"type": "logo",
"size": "org",
"url": "https://assets.immonex.one/wp-content/uploads/sites/123/branding/logo-abc-xyz-immo-org.png"
}
]
}

Ist noch keine Bilddatei des abgefragen Typs vorhanden, wird ein leeres Array zurückgeliefert.

1
2
3
{
"data": []
}

Bilddatei hinzufügen/aktualisieren

Es können Dateien in den Formaten PNG (empfohlen, transparenter Hintergrund bei Logos), JPG und GIF mit einer maximalen Dateigröße von 4 MB hinzugefügt werden. Die Mindestbreite sollte 400 Pixel betragen.

Endpunkt
POST https://api.immonex.one/wp-json/one-api/v2/sites/:id/images/:type

Die ONE Site mit der ID 123 soll im folgenden Beispiel ein neues Logo erhalten.

Request (Beispiel)
POST https://api.immonex.one/wp-json/one-api/v2/sites/123/images/logo

Die Datei selbst kann entweder direkt in Form der entsprechenden Binärdaten im Request-Body oder per URL folgendermaßen referenziert werden (mit anschließendem API-seitigem Download):

1
2
3
{
"image_url": "https://external.asset.url/logo.png"
}

Im Erfolgsfall werden die URLs der generierten Größenvarianten zurückgeliefert.

Response (Erfolg)
200 OK

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
{
"data": [
{
"type": "logo",
"size": "large",
"url": "https://assets.immonex.one/wp-content/uploads/sites/123/branding/logo-abc-xyz-immo-large.png"
},
{
"type": "logo",
"size": "medium",
"url": "https://assets.immonex.one/wp-content/uploads/sites/123/branding/logo-abc-xyz-immo-medium.png"
},
{
"type": "logo",
"size": "small",
"url": "https://assets.immonex.one/wp-content/uploads/sites/123/branding/logo-abc-xyz-immo-small.png"
},
{
"type": "logo",
"size": "org",
"url": "https://assets.immonex.one/wp-content/uploads/sites/123/branding/logo-abc-xyz-immo-org.png"
}
]
}

Response (per URL referenzierte Datei nicht gefunden)
400 Bad Request

1
2
3
4
5
6
7
{
"code": "image_file_not_found",
"message": "",
"data": {
"status": 400
}
}

Response (nicht unterstützer Dateityp)
415 Unsupported Media Type

1
2
3
4
5
6
7
{
"code": "unsupported_media_type",
"message": "",
"data": {
"status": 415
}
}

Bilddatei löschen

Endpunkt
DELETE https://api.immonex.one/wp-json/one-api/v2/sites/:id/images/:type

Wir bleiben beim Beispiel der ONE Site mit der ID 123 und werden mit der folgenden API-Anfrage das aktuelle Logo (alle Größenvarianten) löschen.

Request (Beispiel)
DELETE https://api.immonex.one/wp-json/one-api/v2/sites/123/images/logo

In der Antwort werden - analog zum Hinzufügen - die URLs aller Größenvarianten des Bildtyps zurückgeliefert. In diesem Fall handelt es sich allerdings um die Dateien, die gelöscht wurden.

Response (Erfolg)
200 OK

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
{
"data": [
{
"type": "logo",
"size": "large",
"url": "https://assets.immonex.one/wp-content/uploads/sites/123/branding/logo-abc-xyz-immo-large.png"
},
{
"type": "logo",
"size": "medium",
"url": "https://assets.immonex.one/wp-content/uploads/sites/123/branding/logo-abc-xyz-immo-medium.png"
},
{
"type": "logo",
"size": "small",
"url": "https://assets.immonex.one/wp-content/uploads/sites/123/branding/logo-abc-xyz-immo-small.png"
},
{
"type": "logo",
"size": "org",
"url": "https://assets.immonex.one/wp-content/uploads/sites/123/branding/logo-abc-xyz-immo-org.png"
}
]
}

Ist keine Datei des angegebenen Typs vorhanden, wird auch hier ein leeres Array zurückgeliefert.

1
2
3
{
"data": []
}