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

Controlla lo stato del caricamento in blocco delle foto

Restituisce lo stato di elaborazione corrente di una richiesta di caricamento in blocco delle foto.

Richiede una chiave API. Consulta Autenticazione per il formato dell’header e la rotazione delle chiavi.

Parametri

Percorso

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

Risposte

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.

Controlla periodicamente lo stato di un caricamento asincrono in blocco delle foto. Quando un lotto è sufficientemente grande, aggiungi foto della sede lo elabora in background e restituisce un requestId nell'oggetto request anziché i contenuti multimediali già elaborati. La dimensione del lotto che attiva questo comportamento è una configurazione lato server e non una costante pubblicata, quindi determina quale modalità è in uso verificando se è stato restituito request.requestId, non contando le tue immagini. Interroga periodicamente questo endpoint con quel requestId finché il processo non raggiunge uno stato definitivo.

Caso d'uso: aggiornare una barra di avanzamento del caricamento. Dopo aver caricato un lotto di grandi dimensioni, esegui il polling ogni pochi secondi mentre status è PROCESSING. Quando passa a SUCCESS o ERROR, leggi l'array photos per conoscere l'esito di ogni immagine: ciascuna voce contiene il mediaId risultante (in caso di successo) e una coppia status/errorMessage, così puoi mostrare esattamente quali file sono stati rifiutati e perché (dimensioni errate, formato non supportato, ecc.) anziché considerare fallito l'intero lotto.

Valori di stato: PROCESSING (elaborazione ancora in corso: ripeti il polling), SUCCESS (il processo ha terminato l'elaborazione), ERROR (il processo stesso è fallito; esamina photos[].errorMessage).

Lo stato status del processo indica soltanto che l'elaborazione è terminata, non che ogni immagine sia stata elaborata correttamente. Un processo con stato SUCCESS può comunque contenere foto rifiutate, come nell'esempio precedente. Quando il processo lascia lo stato PROCESSING, scorri photos[] e leggi i valori status e errorMessage di ciascuna voce per scoprire quali immagini sono state caricate correttamente.

Insidia del polling: lascia un intervallo tra le richieste di polling: un ciclo serrato di richieste a questo endpoint porta rapidamente a 429. Rispetta l'header Retry-After e preferisci un intervallo di pochi secondi. Un requestId sconosciuto o scaduto non verrà risolto, quindi esegui il polling soltanto con gli ID restituiti da una chiamata di caricamento recente.

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