GET/api/v4/locations/photos/requests/{requestId}

Status eines Foto-Sammeluploads prüfen

Gibt den aktuellen Verarbeitungsstatus einer Anfrage für einen Foto-Sammelupload zurück.

Erfordert einen API-Schlüssel. Format des Headers und Schlüsselrotation finden Sie unter Authentifizierung.

Parameter

Pfad

NameTypErforderlichBeschreibung
requestIdstringerforderlichUUID request ID returned in the `request` object by the add-photos endpoint when it queues a batch instead of uploading it inline.

Antworten

200Current status of the bulk upload request, with per-photo results once available.
Response
{  "data": {    "getLocationPhotosUploadStatus": {      "requestId": "e6c2d9d9-9a18-4015-88cf-9a4e19a6f49a",      "status": "SUCCESS",      "photos": [        {          "mediaId": "TWVkaWFGaWxlOjkxODI3",          "locationId": "TG9jYXRpb246MTgwMDI4OQ==",          "status": "SUCCESS",          "errorMessage": null        },        {          "mediaId": null,          "locationId": "TG9jYXRpb246MTgwMDI4OQ==",          "status": "ERROR",          "errorMessage": "Image dimensions below the minimum 250x250."        }      ]    }  }}
401Unauthenticated, missing or invalid API key.
429Rate limit exceeded. Retry after the `Retry-After` header value.

Fragt den Status eines asynchronen Foto-Sammeluploads ab. Wenn ein Stapel groß genug ist, verarbeitet Standortfotos hinzufügen ihn im Hintergrund und gibt im request-Objekt einen requestId anstelle der fertig verarbeiteten Medien zurück. Die Stapelgröße, die dies auslöst, wird serverseitig konfiguriert und ist keine veröffentlichte Konstante. Prüfen Sie daher, ob request.requestId zurückgegeben wurde, um den zutreffenden Verarbeitungsweg zu bestimmen, statt Ihre eigenen Bilder zu zählen. Fragen Sie diesen Endpunkt mit dem zurückgegebenen requestId ab, bis der Job einen Endzustand erreicht.

Anwendungsfall: einen Fortschrittsbalken für Uploads steuern. Fragen Sie nach dem Upload eines großen Stapels alle paar Sekunden den Status ab, solange status den Wert PROCESSING hat. Sobald der Wert zu SUCCESS oder ERROR wechselt, lesen Sie das photos-Array aus, um das Ergebnis für jedes Bild zu ermitteln: Jeder Eintrag enthält den resultierenden mediaId (bei Erfolg) sowie ein status/errorMessage-Paar, damit Sie genau anzeigen können, welche Dateien aus welchem Grund abgelehnt wurden (falsche Abmessungen, nicht unterstütztes Format usw.), statt den gesamten Stapel als fehlgeschlagen zu behandeln.

Statuswerte: PROCESSING (Verarbeitung läuft noch: erneut abfragen), SUCCESS (die Verarbeitung des Jobs ist abgeschlossen), ERROR (der Job selbst ist fehlgeschlagen; prüfen Sie photos[].errorMessage).

status des Jobs gibt lediglich an, dass die Verarbeitung abgeschlossen ist, nicht, dass jedes Bild erfolgreich verarbeitet wurde. Ein Job mit dem Status SUCCESS kann weiterhin abgelehnte Fotos enthalten, wie im obigen Beispiel. Sobald der Job den Status PROCESSING verlässt, gehen Sie photos[] durch und lesen Sie für jeden Eintrag dessen eigene Werte für status und errorMessage aus, um festzustellen, welche Bilder erfolgreich übernommen wurden.

Fallstrick bei der Statusabfrage: Legen Sie zwischen den Abfragen Pausen ein: Eine eng getaktete Schleife, die diesen Endpunkt abfragt, führt schnell zu 429. Beachten Sie den Retry-After-Header und wählen Sie vorzugsweise ein Intervall von einigen Sekunden. Ein unbekannter oder abgelaufener requestId lässt sich nicht auflösen. Fragen Sie daher nur IDs ab, die von einem kürzlich erfolgten Upload-Aufruf zurückgegeben wurden.

Request
curl -X GET 'https://listingsapi.com/api/v4/locations/photos/requests/<requestId>' \  -H "Authorization: API $LISTINGSAPI_KEY"