| Required role: | ApiUser |
| POST | /tickets | Crea un nuovo ticket di intervento | ## Specifiche del Servizio * **Validazione Ruoli:** Il richiedente deve avere un ruolo attivo (Proprietario, Referente, Manutentore o Supervisore) sull'impianto. * **Deduzione Impianto:** Se `ImpiantoId` è omesso, il sistema cerca impianti legati al richiedente. Se univoco, viene associato automaticamente. * **Ambiguità:** In caso di più impianti trovati, il ticket viene creato con ID segnaposto e la risposta include la lista `Impianti` per la scelta. * **Accesso:** La risposta include un `AccessToken` (Hashids) per la consultazione sicura senza esporre ID incrementali. |
|---|
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Oggetto | body | string | Yes | Oggetto sintetico del ticket |
| Richiesta | body | string | Yes | Descrizione dettagliata della problematica o della richiesta |
| TipoTicketId | body | int | Yes | ID Tipologia: 1: Assistenza, 2: Sopralluogo, 3: Lavorazione, 4: Collaudo, 5: Controllo Allarmi, 6: Incident, 7: Evento |
| TipoGravitaId | body | int | Yes | ID Gravità (da 1: Grave a 5: Miglioramento) |
| TipoPrioritaId | body | int | Yes | ID Priorità (1: Alta, 2: Media, 3: Bassa) |
| SoggettoRichiedenteId | body | int | Yes | ID del Soggetto che apre la segnalazione |
| ImpiantoId | body | int? | No | ID specifico dell'impianto. Se omesso, il sistema tenterà la deduzione automatica dal Soggetto. |
| MaxImpiantiSuggeriti | body | int? | No | Limite massimo di impianti suggeriti restituiti in caso di ambiguità (Default: 100) |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Id | form | int? | No | **ID Ticket** Identificativo univoco del ticket creato (nullo in caso di fallimento) |
| ImpiantoId | form | int? | No | **ID Impianto Associato** L'ID collegato al ticket: restituisce il valore fornito, quello dedotto o -1 in caso di ambiguità |
| AccessToken | form | string | No | **Token di Accesso** Codice alfanumerico sicuro per consultare il ticket tramite API pubbliche |
| TotalImpiantiCount | form | int? | No | **Conteggio Totale** Numero complessivo di impianti associati al soggetto richiedente |
| Impianti | form | List<TicketImpiantoInfo> | No | **Impianti Suggeriti** Elenco degli impianti associabili (verificare i limiti di ricerca se la lista è vuota) |
| ResponseStatus | form | ResponseStatus | No | **Stato della richiesta** Dettagli diagnostici, errori di business o fallimenti di validazione |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Id | form | int | No | ID interno dell'impianto |
| Codice | form | string | No | Codice tecnico identificativo |
| Nome | form | string | No | Nome dell'impianto |
| Descrizione | form | string | No | Descrizione sintetica |
| Localita | form | string | No | Località o indirizzo estratto dall'ubicazione |
| IsAttivo | form | bool | No | Indica se l'impianto è operativo |
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /tickets HTTP/1.1
Host: gemma.api.kerberos.energy
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<CreateTicketRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Gemma.WebApi.ServiceModel.Requests">
<ImpiantoId>0</ImpiantoId>
<MaxImpiantiSuggeriti>0</MaxImpiantiSuggeriti>
<Oggetto>String</Oggetto>
<Richiesta>String</Richiesta>
<SoggettoRichiedenteId>0</SoggettoRichiedenteId>
<TipoGravitaId>0</TipoGravitaId>
<TipoPrioritaId>0</TipoPrioritaId>
<TipoTicketId>0</TipoTicketId>
</CreateTicketRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<CreateTicketResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Gemma.WebApi.ServiceModel.Responses">
<AccessToken>String</AccessToken>
<Id>0</Id>
<Impianti>
<TicketImpiantoInfo>
<Codice>String</Codice>
<Descrizione>String</Descrizione>
<Id>0</Id>
<IsAttivo>false</IsAttivo>
<Localita>String</Localita>
<Nome>String</Nome>
</TicketImpiantoInfo>
</Impianti>
<ImpiantoId>0</ImpiantoId>
<ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:Message>String</d2p1:Message>
<d2p1:StackTrace>String</d2p1:StackTrace>
<d2p1:Errors>
<d2p1:ResponseError>
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:FieldName>String</d2p1:FieldName>
<d2p1:Message>String</d2p1:Message>
<d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d5p1:KeyValueOfstringstring>
<d5p1:Key>String</d5p1:Key>
<d5p1:Value>String</d5p1:Value>
</d5p1:KeyValueOfstringstring>
</d2p1:Meta>
</d2p1:ResponseError>
</d2p1:Errors>
<d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</d2p1:Meta>
</ResponseStatus>
<TotalImpiantiCount>0</TotalImpiantiCount>
</CreateTicketResponse>