Passa al contenuto principale

Inserimento Preferenza Orario Ritiro Merce​

POST [baseUrl]/api/sync/v1/repair/collection-preference/{FIDBOP}/{SubOrderRowCode}?debug=true

Descrizione​

API per l'inserimento di una preferenza per l'orario di ritiro della merce per una riparazione specifica. Questa API permette di specificare la data e il range orario preferito per il ritiro della merce.

Parametri URL​

ParametroTipoObbligatorioDescrizione
FIDBOPintID della riparazione nel sistema XOX
SubOrderRowCodestringChiave esterna della riparazione

Headers Richiesti​

HeaderTipoObbligatorioDescrizione
AccessTokenstringToken di autenticazione

Struttura Richiesta​

Il corpo della richiesta deve essere un oggetto JSON con i seguenti campi:

CampoTipoObbligatorioDescrizioneNote
CollectionDatestringData di ritiro preferita (formato YYYY-MM-DD)
FIDCollectionHourRangeintID del range orario per il ritiroRiferimento alla tabella dei range orari (vedi API /api/v1/sync/gc/hourrange)

Esempio Richiesta​

sh
curl --location 'https://localhost:45414/api/sync/v1/repair/collection-preference/9817691/072514778' \
--header 'AccessToken: ab6df5b1aade462f860e4bc152952752' \
--header 'Content-Type: application/json' \
--data '{
"CollectionDate": "2025-10-03",
"FIDCollectionHourRange": 1
}'

Struttura Risposta​

La risposta segue il formato standard delle API XOX:

CampoTipoDescrizione
statusCodeintCodice di stato HTTP
errorCodestringCodice di errore (null se successo)
messagestringMessaggio descrittivo (null se successo)
resultobjectOggetto contenente i dati della risposta
debugobjectInformazioni di debug (se debug=true)

Struttura Result​

CampoTipoDescrizione
totalCountintNumero totale di record (sempre 0 per questa API)
totalPagesintNumero totale di pagine (sempre 0 per questa API)
pageintPagina corrente (sempre 0 per questa API)
countintNumero di record nella risposta (sempre 0 per questa API)
recordsarrayArray di record (sempre null per questa API)
recordobjectOggetto contenente il risultato dell'operazione

Struttura Record​

CampoTipoDescrizione
CollectionPreferenceSavedboolIndica se la preferenza Γ¨ stata salvata con successo

Struttura Debug​

CampoTipoDescrizione
requestTimestringTimestamp della richiesta
responseTimestringTimestamp della risposta
durationstringDurata dell'operazione
clientIPstringIndirizzo IP del client

Esempio Risposta​

JSON
{
"statusCode": 200,
"errorCode": null,
"message": null,
"result": {
"totalCount": 0,
"totalPages": 0,
"page": 0,
"count": 0,
"records": null,
"record": {
"CollectionPreferenceSaved": true
}
}
}

Codici di Stato​

CodiceDescrizione
200Operazione completata con successo
400Richiesta non valida
401Token di autenticazione non valido o mancante
404Riparazione non trovata
500Errore interno del server

Gestione Errori​

In caso di errore, la risposta conterrΓ :

JSON
{
"statusCode": 400,
"errorCode": "ER.COLLECTION.INVALID_DATE",
"message": "Data di ritiro non valida",
"result": {
"totalCount": 0,
"totalPages": 0,
"page": 0,
"count": 0,
"records": null,
"record": {
"CollectionPreferenceSaved": false
}
},
"debug": {
"requestTime": "2025-10-02 17:28:55",
"responseTime": "2025-10-02 17:29:04",
"duration": "00:00:08.9599625",
"clientIP": "::1"
}
}

Note​

  • La data di ritiro deve essere futura rispetto alla data corrente
  • Il range orario deve essere valido e presente nella configurazione del sistema
  • È possibile aggiornare una preferenza esistente chiamando nuovamente l'API con gli stessi parametri
  • Per ottenere l'elenco dei range orari disponibili, utilizzare l'API /api/v1/sync/gc/hourrange