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β
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
FIDBOP | int | ID della riparazione nel sistema XOX | |
SubOrderRowCode | string | Chiave esterna della riparazione |
Headers Richiestiβ
| Header | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
AccessToken | string | Token di autenticazione |
Struttura Richiestaβ
Il corpo della richiesta deve essere un oggetto JSON con i seguenti campi:
| Campo | Tipo | Obbligatorio | Descrizione | Note |
|---|---|---|---|---|
CollectionDate | string | Data di ritiro preferita (formato YYYY-MM-DD) | ||
FIDCollectionHourRange | int | ID del range orario per il ritiro | Riferimento 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:
| Campo | Tipo | Descrizione |
|---|---|---|
statusCode | int | Codice di stato HTTP |
errorCode | string | Codice di errore (null se successo) |
message | string | Messaggio descrittivo (null se successo) |
result | object | Oggetto contenente i dati della risposta |
debug | object | Informazioni di debug (se debug=true) |
Struttura Resultβ
| Campo | Tipo | Descrizione |
|---|---|---|
totalCount | int | Numero totale di record (sempre 0 per questa API) |
totalPages | int | Numero totale di pagine (sempre 0 per questa API) |
page | int | Pagina corrente (sempre 0 per questa API) |
count | int | Numero di record nella risposta (sempre 0 per questa API) |
records | array | Array di record (sempre null per questa API) |
record | object | Oggetto contenente il risultato dell'operazione |
Struttura Recordβ
| Campo | Tipo | Descrizione |
|---|---|---|
CollectionPreferenceSaved | bool | Indica se la preferenza Γ¨ stata salvata con successo |
Struttura Debugβ
| Campo | Tipo | Descrizione |
|---|---|---|
requestTime | string | Timestamp della richiesta |
responseTime | string | Timestamp della risposta |
duration | string | Durata dell'operazione |
clientIP | string | Indirizzo 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β
| Codice | Descrizione |
|---|---|
| 200 | Operazione completata con successo |
| 400 | Richiesta non valida |
| 401 | Token di autenticazione non valido o mancante |
| 404 | Riparazione non trovata |
| 500 | Errore 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