Passa al contenuto principale

API Endpoints

Questa sezione documenta tutti gli endpoint disponibili per Askme Sign API v2, con descrizioni dettagliate dei parametri e delle risposte.

Base URL

https://sign.askme.it/api/v2

Autenticazione

Tutti gli endpoint richiedono gli header di autenticazione API Key:

X-SignToken: your-api-token
X-SignUser: your-username
HeaderObbligatorioDescrizione
X-SignTokenToken API per l'autenticazione
X-SignUserUsername o identificativo utente

Per maggiori dettagli sulla procedura di autenticazione, consulta la pagina Autenticazione.


Pratiche

Creare una Pratica

Crea una nuova pratica (processo di firma) inviando uno o più documenti con i relativi firmatari, coordinate di firma, scadenza e opzioni di notifica.

POST /files/send

Autorizzazioni richieste: DOC_SUBMIT

Parametri (Body)

Il body è un oggetto JSON di tipo FileInsertSimpleDTO.

NomeTipoObbligatorioDescrizione
documentsarrayArray di documenti da firmare. Ogni elemento contiene base64content o externalUrl, filename, order.
documents[].base64contentstringCondizionaleContenuto del file in Base64. Obbligatorio se non si usa externalUrl.
documents[].externalUrlstringCondizionaleURL pubblico del documento. Alternativa a base64content.
documents[].filenamestringConsigliatoNome del file (es. contratto.pdf).
documents[].orderintegerNoOrdine del documento nella pratica (0-based).
signersarrayArray dei firmatari.
signers[].emailstringCondizionaleEmail del firmatario. Obbligatorio se username non è specificato.
signers[].firstNamestringCondizionaleNome del firmatario. Obbligatorio se username non è specificato.
signers[].lastNamestringCondizionaleCognome del firmatario. Obbligatorio se username non è specificato.
signers[].actionstringTipo di firma: S Semplice, E FES, T FES+OTP, V FEA, Q FEQ, P Visto, O FEQ One-Shot, J Firma IO.
signers[].usernamestringCondizionaleUsername se firmatario interno Askme Sign.
signers[].signatureCoordinatesarrayNoCoordinate di posizionamento della firma sul documento.
signers[].signatureCoordinates[].documentintegerIndice del documento (0-based).
signers[].signatureCoordinates[].pageintegerNumero della pagina (1-based).
signers[].signatureCoordinates[].positionXnumberPosizione orizzontale (0–1).
signers[].signatureCoordinates[].positionYnumberPosizione verticale (0–1).
signers[].signatureCoordinates[].widthnumberNoLarghezza del riquadro (0–1).
signers[].signatureCoordinates[].heightnumberNoAltezza del riquadro (0–1).
signers[].signatureCoordinates[].signatureTypestringNoTipo firma per questa coordinata (sovrascrive action).
namestringCondizionaleNome identificativo della pratica. Obbligatorio se non definito nella tipologia.
notesstringNoNote aggiuntive per l'iter di firma.
summarystringNoSommario della pratica.
sendNotificationsbooleanNoSe true (default), invia email ai firmatari con il link per firmare.
sendCopyIterCompletedbooleanNoSe true (default), invia email di completamento a pratica firmata.
expirationDatestringNoData scadenza in formato ISO 8601 (es. 2025-12-31T23:59:59+01:00).
expirationDateDaysintegerNoGiorni alla scadenza dalla data di creazione. Alternativa a expirationDate.
webhookobjectNoWebhook per ricevere notifiche sugli eventi della pratica.
webhook.urlstringURL di callback (POST). Supporta placeholder: {{idFile}}, {{status}}, {{signerEmail}}.
webhook.authModestringNoModalità autenticazione: basic, header, oauth2.
webhook.usernamestringNoUsername per Basic Auth.
webhook.passwordstringNoPassword per Basic Auth.
draftbooleanNoSe true, salva come bozza senza avviare il processo.
urgentbooleanNoSegna la pratica come urgente. Default: false.
privacystringNoLivello di privacy: P pubblico, A aziendale (default), C confidenziale, S strettamente confidenziale.
destinationContactsarrayNoContatti in copia conoscenza (ricevono email a completamento/rifiuto).
destinationContacts[].emailstringEmail del contatto destinatario.
placeholdersarrayNoCampi compilabili sul documento (testo, data, checkbox, allegato).
paramsarrayNoParametri/metadati del workflow (chiave/valore).
workflowTypeCodestringNoCodice della tipologia di processo.

Esempio di Richiesta

curl -X POST "https://sign.askme.it/api/v2/files/send" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username" \
-H "Content-Type: application/json" \
-d '{
"documents": [
{
"filename": "contratto.pdf",
"base64content": "JVBERi0xLjMNCiXi48/T..."
}
],
"name": "Contratto di Servizio Q1 2025",
"notes": "Contratto annuale di manutenzione",
"sendNotifications": true,
"expirationDateDays": 30,
"signers": [
{
"firstName": "Mario",
"lastName": "Rossi",
"email": "[email protected]",
"action": "S",
"signatureCoordinates": [
{
"document": 0,
"page": 1,
"signatureType": "S",
"positionX": 0.6,
"positionY": 0.8,
"width": 0.2,
"height": 0.08
}
]
}
]
}'

Risposta (200 OK)

{
"idFile": 12345,
"canAutoAdvance": false,
"signers": [
{
"email": "[email protected]",
"firstName": "Mario",
"lastName": "Rossi",
"action": "S",
"signingUrl": "https://sign.askme.it/external-sign?token=abc123...",
"external": true
}
]
}
CampoTipoDescrizione
idFilenumberID univoco della pratica creata.
canAutoAdvancebooleanSe true, il workflow avanza automaticamente allo step successivo.
signersarrayElenco dei firmatari con i rispettivi link per firmare.
signers[].signingUrlstringLink per il firmatario esterno per procedere alla firma.
signers[].passwordstringPassword di accesso (se richiesta e generata dal sistema).

Ottenere Dettagli Pratica

Recupera lo stato e i dettagli completi di una pratica, inclusi documenti, firmatari, storico eventi, annotazioni e metadati.

GET /files/{idFile}

Autorizzazioni richieste: DOC_LST, DOC_PERSONAL, DOC_SIGN o UNIT_DOC_ADMIN + permesso di visualizzazione sulla pratica.

Parametri (URL)

NomeTipoObbligatorioDescrizione
idFilenumberID della pratica.

Parametri (Query)

NomeTipoObbligatorioDefaultDescrizione
idUsernumberNoID dell'utente per il quale registrare l'evento di apertura.
nextStepsbooleanNofalseSe true, include le informazioni sui prossimi step del workflow.
lockDocumentbooleanNofalseSe true, blocca il documento per l'utente corrente (utile in contesti multi-firmatario).

Esempio di Richiesta

curl -X GET "https://sign.askme.it/api/v2/files/12345" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username"

Risposta (200 OK)

{
"idFile": 12345,
"name": "Contratto di Servizio Q1 2025",
"notes": "Contratto annuale di manutenzione",
"status": "L",
"numDocuments": 1,
"urgent": false,
"privacy": "A",
"digitalSigned": false,
"expirationDate": "2025-06-30T23:59:59+02:00",
"tsIns": "2025-01-15T10:30:00+01:00",
"tsUpd": "2025-01-15T10:30:00+01:00",
"user": {
"idUser": 1001,
"firstName": "Admin",
"lastName": "User",
"email": "[email protected]"
},
"signers": [
{
"email": "[email protected]",
"firstName": "Mario",
"lastName": "Rossi",
"action": "S",
"status": "L"
}
],
"documents": [
{
"idDocument": 5001,
"filename": "contratto.pdf",
"contentType": "application/pdf",
"order": 0
}
],
"events": [
{
"action": "I",
"tsIns": "2025-01-15T10:30:00+01:00",
"description": "Pratica creata"
}
],
"metadata": [],
"tags": [],
"canAdvance": true,
"deletedData": false
}
CampoTipoDescrizione
idFilenumberID univoco della pratica.
namestringNome della pratica.
notesstringNote della pratica.
summarystringSommario della pratica.
statuscharStato della pratica (L In lavorazione, F Firmato, R Rifiutato, E Scaduto, ecc.).
numDocumentsintegerNumero di documenti nella pratica.
urgentbooleanSe la pratica è urgente.
privacystringLivello di privacy (P, A, C, S).
digitalSignedbooleanSe contiene firme digitali.
sealedbooleanSe la pratica è sigillata.
expirationDatestringData di scadenza.
protocolstringNumero di protocollo.
tsInsstringData/ora di creazione.
tsUpdstringData/ora ultimo aggiornamento.
userobjectUtente creatore (idUser, firstName, lastName, email).
signersarrayElenco dei firmatari con stato e azione.
documentsarrayElenco dei documenti allegati.
eventsarrayStorico degli eventi della pratica.
historyarrayStorico delle versioni dei documenti.
placeholdersarrayCampi compilabili configurati.
metadataarrayParametri/metadati del workflow.
tagsarrayTag associati alla pratica.
webhookobjectConfigurazione webhook (se presente).
destinationContactsarrayContatti destinatari in copia.
canAdvancebooleanSe il workflow può avanzare.
deletedDatabooleanSe i dati dei documenti sono stati eliminati.

Risposta (404 Not Found)

Restituito se la pratica non esiste o è stata disattivata (active = false).


Elenco Pratiche

Recupera l'elenco paginato delle pratiche visibili all'utente autenticato, con supporto per filtri e ordinamento.

GET /files/

Autorizzazioni richieste: DOC_LST, UNIT_DOC_ADMIN o DOC_PERSONAL.

Parametri (Query) — Paginazione

NomeTipoObbligatorioDefaultDescrizione
pageintegerNo0Numero pagina (0-based).
sizeintegerNo100Elementi per pagina.
sortstringNoidFile,descOrdinamento (es. tsIns,desc, name,asc). Ripetibile per più criteri.

Parametri (Query) — Filtri

NomeTipoObbligatorioDescrizione
idFilenumberNoFiltra per ID pratica.
querystringNoRicerca testuale su nome e altri campi.
statusstringNoStato/i della pratica. Ripetibile (es. status=L&status=F). Valori: L, F, R, E, S, V, U, A, C.
tsInsFromstringNoData creazione da (formato yyyy-MM-dd).
tsInsTostringNoData creazione a (formato yyyy-MM-dd).
tsUpdFromstringNoData aggiornamento da.
tsUpdTostringNoData aggiornamento a.
expirationDateMinstringNoScadenza minima.
expirationDateMaxstringNoScadenza massima.
idUsernumberNoFiltra per ID utente creatore.
userEmailstringNoFiltra per email utente creatore.
idSignernumberNoFiltra per ID firmatario. Ripetibile.
urgentbooleanNoSolo pratiche urgenti.
digitalSignedbooleanNoSolo pratiche con firma digitale.
protocolstringNoFiltra per protocollo.
externalIdstringNoFiltra per ID sistema esterno.
metadataKeystringNoFiltra per chiave metadato.
metadataValuestringNoFiltra per valore metadato (con metadataKey).

Esempio di Richiesta

curl -X GET "https://sign.askme.it/api/v2/files/?page=0&size=20&sort=tsIns,desc&status=L" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username"

Risposta (200 OK)

{
"content": [
{
"idFile": 12345,
"name": "Contratto di Servizio Q1 2025",
"status": "L",
"numDocuments": 1,
"urgent": false,
"privacy": "A",
"tsIns": "2025-01-15T10:30:00+01:00",
"user": {
"idUser": 1001,
"firstName": "Admin",
"lastName": "User",
"email": "[email protected]"
},
"signers": [
{
"email": "[email protected]",
"firstName": "Mario",
"lastName": "Rossi",
"action": "S"
}
]
}
],
"totalElements": 150,
"totalPages": 8,
"size": 20,
"number": 0,
"numberOfElements": 20,
"first": true,
"last": false
}
CampoTipoDescrizione
contentarrayArray degli elementi nella pagina corrente.
totalElementsnumberTotale elementi corrispondenti ai filtri.
totalPagesnumberTotale pagine.
sizenumberDimensione pagina richiesta.
numbernumberNumero pagina corrente (0-based).
firstbooleantrue se è la prima pagina.
lastbooleantrue se è l'ultima pagina.

Restituisce il magic link di una pratica, utile per recuperare l'URL di firma da condividere con i firmatari esterni.

GET /files/{idFile}/link

Autorizzazioni richieste: permesso di visualizzazione sulla pratica.

Parametri (URL)

NomeTipoObbligatorioDescrizione
idFilenumberID della pratica.

Esempio di Richiesta

curl -X GET "https://sign.askme.it/api/v2/files/12345/link" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username"

Risposta (200 OK)

"https://sign.askme.it/external-sign?token=abc123def456..."

Documenti

Upload Documento (Multipart)

Carica un documento sul server prima di utilizzarlo in una pratica. Il file caricato viene elaborato (conversione PDF, verifica firme) e restituisce un identificativo da usare nel campo uploadedFilename dell'endpoint di creazione pratica.

POST /documents/upload

Autorizzazioni richieste: DOC_SUBMIT.

Content-Type: multipart/form-data

Parametri (Form Data)

NomeTipoObbligatorioDefaultDescrizione
filefileFile da caricare (PDF, DOCX, ecc.).
convertbooleanNotrueSe true, converte il documento in formato PDF standard.
verifySignaturesbooleanNofalseSe true, verifica le firme digitali eventualmente presenti.

Esempio di Richiesta

curl -X POST "https://sign.askme.it/api/v2/documents/upload" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username" \
-F "file=@/path/to/contratto.pdf" \
-F "convert=true" \
-F "verifySignatures=false"

Risposta (200 OK)

{
"uuid": null,
"filename": "contratto_20250115103000.pdf",
"originalFilename": "contratto.pdf",
"pages": 3,
"isP7m": false,
"convertedPdfa": false,
"rotated": false,
"external": false,
"readonly": false,
"hasAcrofields": false,
"pagesSize": [
{ "page": 1, "width": 595, "height": 842 },
{ "page": 2, "width": 595, "height": 842 },
{ "page": 3, "width": 595, "height": 842 }
],
"signatures": []
}
CampoTipoDescrizione
filenamestringNome del file elaborato. Da usare come uploadedFilename nell'endpoint di creazione pratica.
originalFilenamestringNome originale del file caricato.
pagesintegerNumero di pagine del documento.
isP7mbooleanSe il file è in formato P7M (firma CAdES).
convertedPdfabooleanSe il file è stato convertito in PDF/A.
rotatedbooleanSe il documento è stato ruotato.
readonlybooleanSe il documento è in sola lettura.
hasAcrofieldsbooleanSe il PDF contiene campi AcroForm.
pagesSizearrayDimensioni di ogni pagina (larghezza/altezza in punti PDF).
signaturesarrayFirme digitali trovate nel documento (se verifySignatures=true).

Upload Documento (Base64)

Versione alternativa dell'upload che accetta il documento codificato in Base64 nel body JSON anziché come multipart. Utile per integrazioni server-to-server.

POST /documents/upload/encoded

Autorizzazioni richieste: DOC_SUBMIT.

Content-Type: application/json

Parametri (Body)

NomeTipoObbligatorioDescrizione
filenamestringNome del file (es. contratto.pdf).
base64contentstringContenuto del file codificato in Base64.
convertbooleanNoSe true, converte il documento in PDF.
verifySignaturesbooleanNoSe true, verifica le firme digitali presenti.

Esempio di Richiesta

curl -X POST "https://sign.askme.it/api/v2/documents/upload/encoded" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username" \
-H "Content-Type: application/json" \
-d '{
"filename": "contratto.pdf",
"base64content": "JVBERi0xLjMNCiXi48/T...",
"convert": true,
"verifySignatures": false
}'

Risposta (200 OK)

Stessa struttura della risposta dell'Upload Documento (Multipart).


Elenco Documenti di una Pratica

Recupera l'elenco dei singoli documenti contenuti in una pratica, con informazioni su pagine, tipo, ordine e stato.

GET /files/{idFile}/documents

Autorizzazioni richieste: permesso di visualizzazione sulla pratica.

Parametri (URL)

NomeTipoObbligatorioDescrizione
idFilenumberID della pratica.

Esempio di Richiesta

curl -X GET "https://sign.askme.it/api/v2/files/12345/documents" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username"

Risposta (200 OK)

[
{
"idDocument": 5001,
"idFile": 12345,
"name": "contratto.pdf",
"pages": 3,
"mimeType": "application/pdf",
"documentOrder": 0,
"visible": true,
"attachment": false,
"readonly": false,
"digitalSigned": false,
"external": false,
"blobExist": true,
"tsIns": "2025-01-15T10:30:00+01:00",
"pagesSize": [
{ "page": 1, "width": 595, "height": 842 }
]
}
]
CampoTipoDescrizione
idDocumentnumberID univoco del documento. Da usare per download/viewer del singolo documento.
idFilenumberID della pratica di appartenenza.
namestringNome del file.
pagesintegerNumero di pagine.
mimeTypestringMIME type del documento.
documentOrderintegerOrdine del documento nella pratica (0-based).
visiblebooleanSe il documento è visibile all'utente.
attachmentbooleanSe è un allegato (non documento principale).
readonlybooleanSe il documento è in sola lettura.
digitalSignedbooleanSe contiene firme digitali.
externalbooleanSe il documento proviene da fonte esterna.
externalUrlstringURL esterno (se external=true).
docExternalIdstringID esterno del documento.
blobExistbooleanSe il contenuto binario è disponibile.
tsInsstringData/ora di inserimento.
pagesSizearrayDimensioni di ogni pagina.

Visualizzare un Documento (Viewer)

Restituisce il contenuto PDF di un singolo documento per la visualizzazione inline nel browser. Per visualizzare tutti i documenti di una pratica in un unico stream, usare l'endpoint alternativo GET /files/viewer/{idFile}.

GET /documents/viewer/{idDocument}

Autorizzazioni richieste: permesso di visualizzazione sul documento.

Parametri (URL)

NomeTipoObbligatorioDescrizione
idDocumentnumberID del documento (ottenuto dall'Elenco Documenti).

Esempio di Richiesta

curl -X GET "https://sign.askme.it/api/v2/documents/viewer/5001" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username" \
-o preview-documento.pdf

Risposta (200 OK)

HeaderValore
Content-Typeapplication/pdf
Content-LengthDimensione in byte
Content-Dispositioninline; filename="contratto.pdf"
Viewer a livello pratica

Per visualizzare tutti i documenti della pratica in un'unica chiamata:

GET /files/viewer/{idFile}

Restituisce il PDF combinato (o ZIP se più documenti) con Content-Disposition: inline.


Download Singolo Documento

Scarica un singolo documento specifico di una pratica (a differenza di GET /files/download/{idFile} che scarica tutti i documenti).

GET /documents/download/{idDocument}

Autorizzazioni richieste: DOC_DOWNLOAD + permesso di visualizzazione sul documento.

Parametri (URL)

NomeTipoObbligatorioDescrizione
idDocumentnumberID del documento (ottenuto dall'Elenco Documenti).

Esempio di Richiesta

curl -X GET "https://sign.askme.it/api/v2/documents/download/5001" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username" \
-o contratto-firmato.pdf

Risposta (200 OK)

HeaderValore
Content-Typeapplication/pdf
Content-LengthDimensione in byte
Content-Dispositionattachment; filename="contratto.pdf"
Firma digitale CAdES

Per documenti con firma CAdES, l'estensione .p7m viene aggiunta automaticamente al filename. Se il documento è un PDF con firma non-CAdES, l'estensione .pdf viene aggiunta se non presente.


Firme

Inviare Copia del Documento Firmato

Invia via email una copia dei documenti di una pratica a uno o più destinatari, con possibilità di personalizzare oggetto e corpo del messaggio.

POST /files/send-copy

Autorizzazioni richieste: DOC_LST, UNIT_DOC_ADMIN o DOC_PERSONAL.

Parametri (Body)

NomeTipoObbligatorioDescrizione
idFilenumberID della pratica di cui inviare la copia.
emailsarray[string]Indirizzi email dei destinatari (almeno uno).
subjectstringNoOggetto dell'email. Se omesso, usa il template predefinito.
messagestringNoCorpo del messaggio email personalizzato.
sendCopySenderbooleanNoSe true, invia una copia in CC all'utente autenticato. Default: false.

Esempio di Richiesta

curl -X POST "https://sign.askme.it/api/v2/files/send-copy" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username" \
-H "Content-Type: application/json" \
-d '{
"idFile": 12345,
"emails": [
"[email protected]",
"[email protected]"
],
"subject": "Copia del contratto firmato",
"message": "In allegato trova il contratto firmato da tutti i firmatari.",
"sendCopySender": true
}'

Risposta (200 OK)

true
CampoTipoDescrizione
booleantrue se l'invio è avvenuto con successo.

Ottenere Audit Trail

Scarica il report di audit trail (cronologia completa) di una pratica in formato PDF. Il report contiene tutti gli eventi registrati: creazione, apertura, firma, rifiuto, download, con timestamp e dettagli dell'utente.

GET /files/{idFile}/report/download

Autorizzazioni richieste: DOC_LST, UNIT_DOC_ADMIN, DOC_PERSONAL o DOC_SIGN + permesso di visualizzazione sulla pratica.

Parametri (URL)

NomeTipoObbligatorioDescrizione
idFilenumberID della pratica.

Esempio di Richiesta

curl -X GET "https://sign.askme.it/api/v2/files/12345/report/download" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username" \
-o audit-trail-12345.pdf

Risposta (200 OK)

La risposta è un file PDF binario (stream) con gli header:

HeaderValore
Content-Typeapplication/pdf
Content-LengthDimensione in byte
Content-Dispositionattachment; filename="report_12345.pdf"
Visualizzazione inline

Per visualizzare il report nel browser senza scaricarlo, usare l'endpoint alternativo:

GET /files/{idFile}/report

Questo endpoint restituisce lo stesso PDF ma con Content-Disposition: inline.


Download e Eliminazione

Download File Firmato

Scarica i documenti di una pratica. Se la pratica contiene un solo documento, restituisce il file diretto. Se contiene più documenti, restituisce un archivio ZIP.

GET /files/download/{idFile}

Autorizzazioni richieste: DOC_DOWNLOAD + permesso di visualizzazione sulla pratica.

Parametri (URL)

NomeTipoObbligatorioDescrizione
idFilenumberID della pratica da scaricare.

Esempio di Richiesta

curl -X GET "https://sign.askme.it/api/v2/files/download/12345" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username" \
-o contratto-firmato.pdf

Risposta (200 OK)

HeaderValore
Content-Typeapplication/pdf (singolo documento) o application/zip (più documenti)
Content-LengthDimensione in byte
Content-Dispositionattachment; filename="contratto.pdf"
Firma digitale CAdES

Per documenti con firma digitale CAdES, il filename avrà estensione .p7m aggiunta automaticamente.


Eliminazione File

Esegue l'eliminazione logica di una pratica. I dati dei documenti (contenuti, storico, annotazioni) vengono rimossi definitivamente. Il record della pratica viene disabilitato.

DELETE /files/{idFile}

Autorizzazioni richieste: DOC_DELETE + permesso di visualizzazione sulla pratica.

Parametri (URL)

NomeTipoObbligatorioDescrizione
idFilenumberID della pratica da eliminare.

Esempio di Richiesta

curl -X DELETE "https://sign.askme.it/api/v2/files/12345" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username"

Risposta (200 OK)

true

Account

Verifica Stato Account

Restituisce le informazioni sull'utente autenticato: dati anagrafici, permessi, tenant disponibili, configurazioni di firma.

GET /account

Parametri

Nessun parametro richiesto. L'utente viene identificato dagli header di autenticazione.

Esempio di Richiesta

curl -X GET "https://sign.askme.it/api/v2/account" \
-H "X-SignToken: your-api-token" \
-H "X-SignUser: your-username"

Risposta (200 OK)

{
"idUser": 1001,
"username": "A462252",
"firstName": "Mario",
"lastName": "Rossi",
"email": "[email protected]",
"enabled": true,
"status": "A",
"permissions": [
"AS_DOC_SUB",
"AS_DOC_LST",
"AS_DOC_DOW",
"AS_DOC_DEL"
],
"currentTenant": {
"idTenant": 1,
"code": "TENANT01",
"name": "Azienda SpA"
},
"availableTenants": [
{
"idTenant": 1,
"code": "TENANT01",
"name": "Azienda SpA"
}
],
"notificationsEnabled": true,
"twoFactorAuthEnabled": false,
"feqRemoteEnabled": true
}
CampoTipoDescrizione
idUsernumberID univoco dell'utente.
usernamestringUsername dell'utente.
firstNamestringNome.
lastNamestringCognome.
emailstringEmail.
enabledbooleanSe l'utente è attivo.
statuscharA presente, O assente.
permissionsarray[string]Permessi dell'utente.
currentTenantobjectTenant corrente (idTenant, code, name).
availableTenantsarrayTenant disponibili.
notificationsEnabledbooleanSe le notifiche sono abilitate.
twoFactorAuthEnabledbooleanSe il 2FA è abilitato.
feqRemoteEnabledbooleanSe la FEQ remota è abilitata.

Gestione Errori

Formato della risposta di errore

Tutti gli endpoint restituiscono un oggetto AskmeSignApiError in caso di errore:

{
"status": 400,
"details": "Documenti mancanti o non validi",
"messageKey": "error.file.missingData",
"code": "VALIDATION_ERROR",
"reference": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"timestamp": "2025-01-15T10:30:00+01:00",
"type": "common"
}
CampoTipoDescrizione
statusintegerCodice HTTP.
detailsstringMessaggio di errore leggibile.
messageKeystringChiave per internazionalizzazione.
codestringCodice errore applicativo.
referencestringUUID univoco della richiesta (per il supporto).
timestampstringData/ora dell'errore.
typestringTipo errore (es. common).

Codici di Errore HTTP

CodiceDescrizione
200Successo
400Bad Request – body malformato, validazione fallita, parametri mancanti.
401Unauthorized – token o API Key mancanti o non validi.
403Forbidden – utente non autorizzato all'azione richiesta.
404Not Found – risorsa non trovata (pratica, workflow type, modulo).
500Internal Server Error – errore lato server; riprovare o contattare il supporto.

Codici di Riferimento

Status della pratica

CodiceDescrizione
LIn lavorazione – in attesa di firma.
FFirmato – tutte le firme completate.
RRifiutato – un firmatario ha rifiutato.
ACompletato – pratica completata.
SSospeso – temporaneamente sospesa.
EScaduto – scadenza superata.
UCaricato – documento caricato, processo non avviato.
VAnnullato – pratica annullata.
CCestinato – pratica cestinata.

Tipi di azione/firma

CodiceDescrizione
SFirma elettronica semplice
EFES (Firma Elettronica Semplice conforme eIDAS)
TFES con OTP
VFEA (Firma Elettronica Avanzata)
QFEQ (Firma Elettronica Qualificata)
OFEQ One-Shot
MFirma automatica
RFirma digitale remota
LFirma digitale locale (PAdES)
JFirma IO
PVisto
WApprovazione
DRifiuto
NAnnullamento

OpenAPI / Swagger

La specifica OpenAPI completa è disponibile come file JSON:

https://docs.askme.it/api-docs-sign.json

Prossimi Passi

  • Consulta l'Overview API per casi d'uso dettagliati con esempi avanzati
  • Leggi la guida sull'Autenticazione per configurare le credenziali