Gemma.WebApi

<back to all web services

UploadFileToDocumentoRequest

Files
Requires Authentication
Required role:ApiUser
The following routes are available for this service:
POST/documenti/{DocumentoId}/filesCarica un nuovo file associandolo a un'entità Documento.### Modalità di Upload supportate: 1. **Multipart/Form-Data (Raccomandato)**: Inviare il file binario nel corpo della richiesta (standard HTML form upload). In questa modalità, il campo `Nome` è opzionale: se omesso verrà usato il nome originale del file. 2. **JSON (Base64)**: Inviare un oggetto JSON contenente il campo `Base64Content`. Utile per integrazioni programmatiche dove il multipart non è agevole. **Logica Cartelle**: L'ID della cartella radice viene recuperato dal campo FileId dell'entità Documento. Se non esiste, viene creata implicitamente.
UploadFileToDocumentoRequest Parameters:
NameParameterData TypeRequiredDescription
DocumentoIdpathintegerYesID univoco del Documento di destinazione (usato per trovare o creare la cartella radice).
UploadFileRequestBase Parameters:
NameParameterData TypeRequiredDescription
NomeformstringNoNome desiderato del file. Se omesso, viene utilizzato il nome originale del file caricato.
ConflictActionformFileConflictActionYesAzione da intraprendere se un file con lo stesso nome esiste già nella cartella. Valori possibili: **0 (Error)**, **1 (Rename)**, **2 (Overwrite)**. Consultare i dettagli di ciascun valore per la logica completa.
Base64ContentformstringNoContenuto del file codificato in Base64. **OPZIONE IBRIDA**: Usare questo campo se la richiesta è di tipo 'application/json'.
FileConflictAction Enum:
Error
Rename
Overwrite
CreateFileResponse Parameters:
NameParameterData TypeRequiredDescription
FileIdformlongNo
FinalFileNameformstringNo
IsUpdateformboolNo
ResponseStatusformResponseStatusNo

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /documenti/{DocumentoId}/files HTTP/1.1 
Host: gemma.api.kerberos.energy 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"documentoId":0,"nome":"String","conflictAction":"Error","base64Content":"String"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"fileId":0,"finalFileName":"String","isUpdate":false,"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}