Accedi ad Adobe Sign come Amministratore.
Novità
Introduzione
- Guida introduttiva per gli amministratori
- Guida introduttiva per gli utenti
- Per gli sviluppatori
- Libreria tutorial video
- Domande frequenti
Amministrazione
- Panoramica su Admin Console
- Gestione degli utenti
- Aggiunta di utenti
- Creare utenti con funzioni specifiche
- Verificare la presenza di utenti con errori di provisioning
- Modificare il nome/l’indirizzo e-mail
- Modificare l’iscrizione a un gruppo di un utente
- Modificare l’iscrizione a un gruppo di un utente tramite l’interfaccia del gruppo
- Promuovere un utente a un ruolo di amministratore
- Tipi di identità utente e SSO
- Cambiare l’identità utente
- Autenticare gli utenti con Microsoft Azure
- Autenticare gli utenti con la Federazione Google
- Profili di prodotti
- Esperienza di accesso
- Impostazioni account/gruppo
- Panoramica delle impostazioni
- Impostazioni generali
- Livello e ID account
- Nuova esperienza del destinatario
- Flussi di lavoro per firma autonoma
- Invia in modalità collettiva
- Moduli web
- Flussi di lavoro di invio personalizzati
- Flussi di lavoro Power Automate
- Documenti libreria
- Raccogliere i dati modulo con gli accordi
- Visibilità limitata dei documenti
- Allegare una copia PDF dell’accordo firmato
- Includere un collegamento nell’e-mail
- Includere un’immagine nell’e-mail
- Denominazione dei file allegati alle e-mail
- Allegare report di audit ai documenti
- Unire più documenti in uno solo
- Scarica documenti singoli
- Caricare un documento firmato
- Delega per utenti nel mio account
- Consentire la delega ai destinatari esterni
- Autorizzazione a firmare
- Autorizzazione a inviare
- Autorizzazione all’aggiunta di sigilli elettronici
- Impostare un fuso orario predefinito
- Impostare un formato data predefinito
- Utenti in più gruppi
- Autorizzazioni amministratore gruppo
- Sostituzione del destinatario
- Report di audit
- Piè di pagina transazione
- Messaggi e assistenza nel prodotto
- PDF accessibili
- Nuova esperienza di creazione
- Cliente nel settore sanitario
- Configurazione dell’account
- Aggiungere un logo
- Personalizzare nome host/URL dell’azienda
- Aggiungere il nome dell’azienda
- Reindirizzamento URL post-accordo
- Preferenze firma
- Firme formattate correttamente
- Consentire ai destinatari di firmare
- I firmatari possono cambiare il nome
- Consentire ai destinatari di usare la propria firma salvata
- Personalizzare le Condizioni d'uso e l’Informativa cliente
- Guida per i destinatari ai campi del modulo
- Riavviare il flusso di lavoro dell’accordo
- Rifiuto di firmare
- Consentire flussi di lavoro con timbri
- Chiedere ai firmatari di fornire il proprio Titolo o Azienda
- Consentire ai firmatari di stampare e apporre una firma manuale
- Mostrare i messaggi durante la firma elettronica
- Chiedere ai firmatari di creare la firma con un dispositivo mobile
- Richiedere indirizzo IP dei destinatari
- Escludere il nome dell’azienda e il titolo dai timbri di partecipazione
- Firme digitali
- Sigilli elettronici
- Identità digitale
- Impostazioni report
- Nuova esperienza per i report
- Impostazioni per report Classic
- Impostazioni di protezione
- Impostazioni Single Sign-on
- Impostazioni Ricordami
- Criterio password di accesso
- Forza password di accesso
- Durata sessione Web
- Tipo cifratura PDF
- API
- Accesso a informazioni su utenti e gruppi
- Intervalli IP consentiti
- Condivisione account
- Permessi di condivisione account
- Controlli di condivisione accordi
- Verifica identità firmatario
- Password per firma accordo
- Forza password del documento
- Blocca firmatari tramite geolocalizzazione
- Autenticazione tramite telefono
- Autenticazione basata su conoscenza (KBA)
- Consentire estrazione pagina
- Scadenza del link del documento
- Caricare un certificato client per webhook/richiamata
- Marca temporale
- Impostazioni di invio
- Mostrare la pagina Invia dopo l’accesso
- Richiedere il nome del destinatario all’invio
- Bloccare i valori dei nomi per gli utenti noti
- Ruoli destinatario consentiti
- Consentire e-Witnesses
- Gruppi di destinatari
- Cc
- Accesso dei destinatari agli accordi
- Campi obbligatori
- Creazione di documenti allegati
- Appiattisci i campi
- Modificare gli accordi
- Nome dell’accordo
- Lingue
- Messaggi privati
- Tipi di firma consentiti
- Promemoria
- Protezione con password di documenti firmati
- Invia notifica di invio accordo tramite
- Opzioni di identificazione firmatari
- Protezione contenuti
- Abilitare transazioni Notarize
- Scadenza documento
- Mostrare l’anteprima, posizionare le firme e aggiungere campi
- Ordine di firma
- Liquid Mode
- Controlli per flusso di lavoro personalizzato
- Opzioni di caricamento per la pagina di firma elettronica
- Reindirizzamento URL di conferma post-firma
- Modelli messaggio
- Impostazioni Bio-Pharma
- Integrazione flusso di lavoro
- Impostazioni autenticazione
- Integrazione per pagamenti
- Messaggi per firmatari
- Impostazioni SAML
- Configurazione SAML
- Installare Microsoft Active Directory Federation Service
- Installare Okta
- Installare OneLogin
- Installare Oracle Identity Federation
- Configurazione SAML
- Governance dei dati
- Impostazioni marca temporale
- Archivio esterno
- Lingue account
- Impostazioni e-mail
- Migrazione da echosign.com ad adobesign.com
- Configurare le opzioni per i destinatari
- Linee guida per i requisiti normativi
- Accessibilità
- HIPAA
- GDPR
- 21 CFR parte 11 ed EudraLex Annex 11
- Clientela del settore sanitario
- Supporto IVES
- Accordi di “archiviazione”
- Considerazioni UE/Regno Unito
- Download di accordi in modalità collettiva
- Richiedere il proprio dominio
- Collegamenti Segnala abuso
Inviare, firmare e gestire gli accordi
- Opzioni destinatari
- Annullare un promemoria tramite e-mail
- Opzioni disponibili nella pagina di firma elettronica
- Panoramica della pagina di firma elettronica
- Aprire per leggere l’accordo senza campi
- Rifiutare di firmare un accordo
- Delegare autorizzazioni di firma
- Riavviare l’accordo
- Scaricare un file PDF dell’accordo
- Visualizzare la cronologia dell’accordo
- Visualizzare i messaggi dell’accordo
- Convertire una firma elettronica in una manuale
- Convertire una firma da manuale a elettronica
- Aggiungere i campi modulo
- Cancellare i dati dai campi modulo
- Navigazione e ingrandimento della pagina Firma elettronica
- Cambiare la lingua utilizzata nelle informazioni e negli strumenti per gli accordi
- Rivedere le note legali
- Regolare le preferenze dei cookie Acrobat Sign
- Inviare gli accordi
- Panoramica sulla pagina Invia
- Inviare un accordo solo a se stessi
- Inviare un accordo agli altri
- Firme manuali
- Ordine di firma del destinatario
- Invia in modalità collettiva
- Panoramica della funzione Invia in modalità collettiva
- Invio in modalità collettiva: configurare un modello principale
- Invio in modalità collettiva: configurare un file CSV
- Annullare una transazione per l’invio in modalità collettiva
- Aggiungere promemoria all’invio in modalità collettiva
- Reporting per Invia in modalità collettiva
- Authoring dei campi nei documenti
- Ambiente di authoring in-app
- Rilevamento automatico dei campi
- Trascinare i campi utilizzando l’ambiente di authoring
- Assegnare i campi modulo ai destinatari
- Ruolo di precompilazione
- Applicare campi con un modello per campi riutilizzabili
- Trasferire i campi in un nuovo modello libreria
- Ambiente di authoring aggiornato durante l’invio degli accordi
- Creare moduli e tag di testo
- Creare moduli con Acrobat (AcroForms)
- Campi
- Domande frequenti sull’authoring
- Ambiente di authoring in-app
- Firmare gli accordi
- Gestire gli accordi
- Panoramica della pagina Gestisci
- Delegare gli accordi
- Sostituire i destinatari
- Limitare la visibilità del documento
- Annullare un accordo
- Creare nuovi promemoria
- Revisione dei promemoria
- Annullare un promemoria
- Accedere ai flussi Power Automate
- Altre azioni...
- Come funziona la ricerca
- Visualizzare un accordo
- Creare un modello da un accordo
- Nascondere/Mostrare gli accordi nella visualizzazione
- Caricare un accordo firmato
- Modificare i file e i campi di un accordo inviato
- Modificare il metodo di autenticazione di un destinatario
- Aggiungere o modificare una data di scadenza
- Aggiungere una nota a un accordo
- Condividere un singolo accordo
- Annullare la condivisione di un accordo
- Scaricare un singolo accordo
- Scaricare i singoli file di un accordo
- Scaricare il report di audit di un accordo
- Scaricare il contenuto dei campi di un accordo
- Report di audit
- Rapporti ed esportazioni di dati
- Panoramica
- Concedere agli utenti l’accesso al reporting
- Grafici del report
- Esportazioni di dati
- Rinominare un report o un’esportazione
- Duplicare un report o un’esportazione
- Pianificare un report o un’esportazione
- Eliminare un report o un’esportazione
- Verificare l’utilizzo delle transazioni
Funzionalità e flussi di lavoro avanzati per gli accordi
- Moduli web
- Modelli riutilizzabili (Modelli libreria)
- Moduli per la Pubblica amministrazione degli Stati Uniti nella libreria Acrobat Sign
- Creare un modello libreria
- Modificare il nome di un modello libreria
- Modificare il tipo di un modello libreria
- Modificare il livello di autorizzazione di un modello libreria
- Copiare, modificare e salvare un modello condiviso
- Scaricare i dati dei campi aggregati per un modello libreria
- Trasferire la proprietà dei moduli web e dei modelli libreria
- Flussi di lavoro Power Automate
- Panoramica dell’integrazione Power Automate e diritti inclusi
- Abilitare l’integrazione di Power Automate
- Azioni nel contesto sulla pagina Gestisci
- Tracciare l’utilizzo di Power Automate
- Creare un nuovo flusso (esempi)
- Trigger utilizzati per i flussi
- Importazione di flussi dall’esterno di Acrobat Sign
- Gestire i flussi
- Modificare i flussi
- Condividere i flussi
- Disabilitare o abilitare i flussi
- Eliminare i flussi
- Modelli utili
- Solo per l’amministratore
- Archiviazione dell’accordo
- Archiviazione del modulo web dell’accordo
- Salvare i documenti dei moduli web completati nella libreria di SharePoint
- Salvare i documenti dei moduli web completati in OneDrive for Business
- Salvare i documenti completati in Google Drive
- Salvare i documenti dei moduli web completati in Box
- Estrazione dati dall’accordo
- Notifiche per l’accordo
- Inviare notifiche e-mail personalizzate con i contenuti dell’accordo e l’accordo firmato
- Ricevere le notifiche di Adobe Acrobat Sign in un canale Teams
- Ricevere le notifiche di Adobe Acrobat Sign in Slack
- Ricevere le notifiche di Adobe Acrobat Sign in Webex
- Generazione degli accordi
- Generare un documento da modulo Power App e modello Word e inviarlo per la firma
- Generare un accordo da un modello Word in OneDrive e ottenere la firma
- Generare un accordo per la riga Excel selezionata, inviarlo per revisione e firma
- Flussi di lavoro di invio personalizzati
- Condividere utenti e accordi
Integrazione con altri prodotti
- Panoramica delle integrazioni di Acrobat Sign
- Acrobat Sign per Salesforce
- Acrobat Sign per Microsoft
- Altre integrazioni
- Integrazioni gestite dai partner
- Come ottenere una chiave di integrazione
Acrobat Sign per sviluppatori
- API REST
- Webhook
Supporto e risoluzione dei problemi
L’accesso alle API è riservato esclusivamente agli account di livello Enterprise e Sviluppatore.
Collegamenti alla documentazione di base
API REST 6 - Collegamenti utili:
- Registrare un account Sviluppatore: https://acrobat.adobe.com/it/it/sign/developer-form.html
- Metodi in-app: https://secure.adobesign.com/public/docs/restapi/v6
- Esempi: https://opensource.adobe.com/acrobat-sign/developer_guide/index.html#!adobedocs/adobe-sign/master/samples.md
- Webhook: https://opensource.adobe.com/acrobat-sign/acrobat_sign_events/index.html
Il supporto per le API SOAP precedenti è terminato a maggio 2021.
Tutti i clienti che utilizzano le API SOAP devono migrare alle API REST il prima possibile.
Una volta effettuato l’accesso, accedere a Account > API Acrobat Sign > Informazioni API > API REST e documentazione.
Aspetti generali
Non è possibile creare il documento visualizzando la pagina nell’interfaccia utente Web, tramite trascinamento o assegnando ruoli firmatari utilizzando transientDocumentId tramite API.
La chiamata transientDocuments restituisce transientDocumentID, valido per 7 giorni. Puoi utilizzarlo solo per le chiamate API successive. Viene memorizzato nel server API e gli viene assegnato questo ID. Carica un file e fai riferimento al suo ID nelle ulteriori chiamate API.
Non puoi caricare direttamente un documento in Accordo utilizzando le API REST.
In base al requisito REST, devi prima creare un documento transitorio e quindi utilizzare questo ID nei metodi Agreement, Widget o Library come origine del file.
Il documento transitorio è un file di origine raw, ad esempio PDF, doc o docx, caricato sui server di Adobe. Pertanto, questo è un modo pratico per trasmettere il documento di base ai server API e un documento transitorio sul Web.
Sì, puoi pubblicare gli accordi utilizzando i flussi di lavoro nella versione 6 utilizzando la chiamata API POST /agreements. Trasmetti il parametro workflowId nella chiamata API.
Puoi ottenere l’ID workflowId di un flusso di lavoro utilizzando la chiamata GET /workflows.
-
-
Passa a Account > API Adobe Sign > Registro richieste API.
-
Accedi all’account Adobe Sign con Amministratore.
-
Passa a Account > API Adobe Sign > Informazioni API.
-
Fai clic sul collegamento Esempi API REST.
Nota:Per scaricare l’SDK JavaScript, vedi https://github.com/adobe-sign/AdobeSignJsSdk.
A partire dalla versione 6, l’opzione “sendTroughWeb” non è più disponibile. È sostituita da state. Si tratta dello stato a cui arriva l’accordo. Il campo “state” può essere fornito solo nelle chiamate POST. Non viene mai restituito in GET /agreements/{ID} e viene ignorato se fornito nella chiamata PUT /agreements/{ID}. L’eventuale stato finale dell’accordo può essere ottenuto da GET /agreements/ID.
state(string) = ['AUTHORING' o 'DRAFT' o 'IN_PROCESS'].
AUTHORING (Creazione) consente a un utente di creare i documenti di un accordo prima di inviarli. L’operazione di creazione in questo caso si riferisce alla creazione, modifica o inserimento di campi modulo con le relative configurazioni (assegnatario, condizioni, tipo di dati, ecc.). nei documenti dell’accordo. Dopo aver pubblicato il documento nello stato Authoring, il documento diventa visibile nella sezione Bozza della scheda Gestisci di Adobe Sign.
DRAFT (Bozza) è una fase temporanea o di base della risorsa finale prevista che può essere aggiornata in ulteriori passaggi per creare la risorsa finale; non è visibile nella sezione Bozza della scheda Gestisci di Adobe Sign. Utilizzando lo stato Bozza, le informazioni del set di partecipanti non sono obbligatorie e possono essere assegnate in seguito durante l’esecuzione della chiamata PUT /agreement/agreementId per completare la bozza. Questo passaggio può essere ripetuto più volte fino a disporre di tutti i dati necessari per creare l’accordo.
IN_PROCESS (In corso) modifica lo stato dell’accordo in Inviato per firma ed è visibile nella sezione Inviato per firma della scheda Gestisci di Adobe Sign.
sendThroughWeb consente di inviare l’accordo in modo interattivo. I vari parametri nel campo “options” della richiesta POST v5 /agreements consentono all’utente di configurare questa vista interattiva (pagina Invia). Tutti questi parametri di configurazione della pagina, ad esempio fileUploadOptions, vengono spostati nell’API POST agreement/ID/views.
In pratica, per eseguire sendThroughWeb puoi creare un accordo nello stato AUTHORING tramite l’API POST /agreements. Quindi, per richiedere l’URL della pagina successiva nella configurazione desiderata, chiama l’API POST agreements/ID/views.
Procedi come segue:
1. Accedi alla documentazione delle API REST v6 e seleziona il metodo POST/agreements.
2. Utilizza il seguente codice di richiesta:
{ "fileInfos": [ { "transientDocumentId": "***************************" } ], "name": "test", "participantSetsInfo": [ { "memberInfos": [ { "email": "abc@gmail.com" } ], "order": 1, "role": "SIGNER" } ], "signatureType": "ESIGN", "state": "AUTHORING" }
3. A questo punto, usa il metodo POST /agreements/{agreementId}/views con il seguente codice di richiesta:
{ "name": "AUTHORING" } |
Il codice di risposta fornisce l’URL per i campi di creazione.
È possibile definire l’URL di richiamata nei modi seguenti:
- Usa il parametro seguente per definire l’URL di richiamata in base alle esigenze:
"callbackInfo": "",
- Contatta l’assistenza di Adobe Sign per impostare l’URL di richiamata predefinito per l’account completo.
L’interfaccia utente SOAP (SmartBear) riceve un errore di connessione SSL simile al seguente, che viene generato quando si effettua una chiamata API. Questo errore si verifica in genere se si utilizza un protocollo SSL o TLS obsoleto precedente a TLS1.2.
ERRORE: Eccezione nella richiesta: javax.net.ssl.SSLException: Ricevuto avviso irreversibile: protocol_version
ERRORE: Si è verificato un errore [Ricevuto avviso irreversibile: protocol_version], per i dettagli consulta il registro degli errori.
-
Aggiungi (-Dsoapui.https.protocols=SSLv3,TLSv1.2) nel file VMOPTIONS nella cartella Bin.
-
Passa a C:\Programmi\SmartBear\SoapUI-5.2.1\bin (o altra, in base alla posizione in cui è stata installata l’interfaccia SOAP). Potrebbe essere in C:\Programmi (x86)
-
Nel file VMOPTIONS, abilita per il file l’autorizzazione completa di lettura/scrittura.
-
Fai clic con il pulsante destro del mouse sul file VMOPTIONS, quindi scegli Proprietà, passa alla scheda Sicurezza, seleziona l’utente e fai clic su Modifica. L’icona Controllo accesso utente viene visualizzata sul pulsante Modifica. Seleziona tutte le caselle di controllo e fai clic su OK.
-
Ripeti la stessa procedura per Amministratori, Sistemi e tutti i pacchetti di applicazioni.
-
Apri il file con Blocco note.
-
In fondo, aggiungi questo protocollo: “-Dsoapui.https.protocols=SSLv3,TLSv1.2” e salva le modifiche.
-
Chiudi l’interfaccia SOAP e riavvia. Quando fai la chiamata API, ora funziona senza errori SSL. Esegui una chiamata ping di prova per controllare.
Di seguito sono descritti i passaggi per creare ID client e Segreto client nell’applicazione Adobe Sign:
-
Accedi all’account Adobe Sign.
-
Passa a Account > API Adobe Sign > Applicazioni API.
-
Per creare un’applicazione, fai clic sull’icona +.
-
Immetti il nome e il nome visualizzato.
-
In Dominio, seleziona CUSTOMER (Cliente) e fai clic su Salva.
-
Evidenzia l’applicazione con un solo clic.
-
Fai clic su Configura OAuth per l’applicazione.
-
Immetti l’URI di reindirizzamento.
-
Per abilitare gli ambiti richiesti, seleziona le rispettive caselle di controllo e fai clic su Salva.
-
Accedi ad Adobe Sign con un account Amministratore.
-
Passa a Account > API Adobe Sign > Informazioni API.
-
Fai sul collegamento Chiave di integrazione.
Nota:Se non vedi il collegamento Chiave di integrazione (Integration Key), contatta il tuo Success Manager per richiedere l’abilitazione del il tuo account.
-
- Assegna un nome alla chiave utilizzando un valore intuitivo.
- Seleziona i vari ambiti necessari in base alla funzione dell’applicazione.
- Una volta completata la configurazione della chiave, fai clic su Salva.
-
Una volta salvata, la chiave si trova in: Account > Preferenze personali > Token di accesso.
Vengono elencati il nome della chiave e tutti gli ambiti attivati.
Fai clic una volta sulla descrizione della chiave per esporre i collegamenti delle azioni disponibili:
- Chiave di integrazione: questo collegamento fornisce la chiave letterale.
- Revoca: questo collegamento revoca ed elimina definitivamente il token di accesso.
-
Accedi all’account Adobe Sign.
-
Passa a Account > API Adobe Sign > Applicazioni API.
-
Fai clic sull’icona + per creare un’applicazione.
-
Fai clic su Configura OAuth per l’applicazione.
-
Genera il codice di autorizzazione utilizzando il seguente collegamento. L’ID client, l’URI di reindirizzamento e gli ambiti devono corrispondere a quelli dell’URL seguente selezionato nell’applicazione (non inserire spazi nell’URL seguente; la partizione, come “NA1”, deve corrispondere alla partizione a cui appartiene l’account Adobe Sign):
https://secure.na1.echosign.com/public/oauth?redirect_uri=https://www.google.co.in&response_type=code&client_id=CBJCHBCAABAAo9FZgq31_5BVG_kcIXEe6gNtn-R-gdNe&scope=user_login:self+agreement_send:account -
Se la chiamata ha esito positivo, preleva il codice di autorizzazione dalla barra degli indirizzi.
-
Scarica e installa Postman dal collegamento https://www.getpostman.com/apps.
-
Una volta scaricato e installato, fai clic su NEW per creare un POST.
-
Immetti il collegamento https://secure.na1.echosign.com/oauth/token in base alla partizione a cui appartiene il tuo account Adobe Sign.
-
In Headers (Intestazioni), per Content-Type immetti application/x-www-form-urlencoded.
-
Verifica che x-www-form-urlencoded sia selezionato nella sezione Body (Corpo) e immetti i parametri seguenti con i relativi valori dall’applicazione creata nell’account Adobe Sign, quindi fai clic su SEND (Invia).
-
Se tutte le informazioni sono corrette, nella risposta vengono restituiti il token di accesso e il token di aggiornamento:
Durante l’esecuzione del processo OAuth:
1. Verifica che siano stati specificati l’ID client e l’URI di reindirizzamento corretti.
2. Controlla che gli ambiti forniti nell’URL di autorizzazione corrispondano esattamente agli ambiti forniti nell’applicazione Adobe Sign.
3. Assicurati che sia stata utilizzata la partizione (na1, na2, au1, eu1, jp1) corretta in base alla configurazione dell’account.
4. Rimuovi eventuali spazi nell’URL di autorizzazione.
5. Controlla la sintassi dell’URL di autorizzazione:
https://secure.na1.echosign.com/public/oauth?redirect_uri=https://secure.na1.echosign.com/public/oauthDemo&
response_type=code&client_id=9MEJXY4Y4R7L2T&scope=agreement_send
I token di accesso sono validi solo per 3600 secondi (1 ora), dopodiché scadono.
Il titolare della richiesta API può utilizzare i token di aggiornamento per generare nuovi token di accesso in base alle esigenze.
I webhook sono supportati in API REST v6 e versioni successive.
Se un ricevitore di webhook non risponde entro 72 ore, il webhook viene disabilitato e non viene inviata alcuna notifica.
Se l’URL di destinazione per il webhook è inattivo per qualsiasi motivo, Adobe Sign mette in coda il codice JSON e tenta di inviarlo di nuovo in un ciclo progressivo di 72 ore.
Gli eventi non consegnati vengono mantenuti in una coda di tentativi e nelle successive 72 ore verrà fatto il possibile per inviare le notifiche nell’ordine in cui si sono verificate.
La strategia con sui viene nuovamente tentato di consegnare le notifiche prevede il raddoppiamento del tempo tra tentativi successivi, a partire da un intervallo di 1 minuto che aumenta fino a 12 ore, per un totale di 15 tentativi nell’arco di 72 ore.
Per creare un webhook direttamente dall’interfaccia utente di Adobe Sign, crea innanzitutto un URL webhook tramite le app della funzione Azure AD, come descritto di seguito:
-
Accedi dall’account Microsoft https://portal.azure.com/.
-
Registrati per le App per le funzioni nell’account Azure AD.
-
Passa ad Azure AD, seleziona App per le funzioni e fai clic sull’icona + per Funzioni.
-
Seleziona Webhook e API con il linguaggio JavaScript e fai clic su Crea funzione.
-
Sostituisci il file Index.js con lo snippet di codice seguente:
module.exports = function (context, req) { var clientId = req.headers['x-adobesign-clientid']; // Validate that the incoming ClientID is genuine if (clientId === '************************************') { context.res = { // status: 200, /* Defaults to 200 */ // any 2XX response is acceptable body: { 'xAdobeSignClientId' : clientId, }, headers : { 'Content-Type' : 'application/json' } }; } else { context.res = { status: 400, body: "Opps!! Illegitimate Call identified" }; } context.done(); };
-
Fai clic sul pulsante Prova nell’angolo a destra e fornisci la seguente intestazione:
X-AdobeSign-ClientId as ***********************
-
Fai clic su Salva ed esegui.
-
Dopo aver ricevuto la risposta “200 OK” con l’intestazione seguente, fai clic su Ottieni URL funzione
-
Copia l’URL e passa all’interfaccia utente di Adobe Sign, seleziona Webhook e fai clic sull’icona + per creare il webhook.
-
Immetti i dati seguenti:
- Nome: scegli un nome intuitivo che altri amministratori possono facilmente riconoscere.
- Ambito: ampiezza della rete che deve essere coperta dal webhook. Nell’interfaccia sono disponibili gli ambiti Account e Gruppo.
L’API supporta gli ambiti Account, Gruppo, Utente e Risorsa. - È possibile definire un solo ambito per webhook.
- URL: URL di destinazione a cui Adobe Sign ha trasmesso il payload JSON.
- Eventi: trigger in risposta del quale Adobe Sign crea il file JSON e lo trasmette all’URL.
Ogni evento crea un payload diverso relativo all’evento trigger
Più eventi possono essere inclusi in un webhook. - Parametri di notifica: i parametri di notifica identificano le sezioni del payload JSON dell’evento e consentono di selezionare solo le sezioni dell’evento che ritieni importanti.
-
Una volta definito il webhook, fai clic su Salva: il nuovo webhook inizia subito a reagire agli eventi trigger.
La risorsa dell’accordo è una risorsa tramite la quale puoi creare un accordo, ad esempio un documento libreria, un widget e un accordo stesso.
Per cercare gli eventi delle risorse degli accordi, effettua una richiesta all’API per creare agreementAssetEvents con i parametri di ricerca pertinenti.
La Risposta è la prima pagina di risultati, insieme a un parametro ID di ricerca e al cursore per passare alla pagina successiva. Puoi usarlo per recuperare ulteriori risultati di pagina se disponibili mediante l’API, che recupera agreementAssetEvents in base all’ID di ricerca.
-
Apri la documentazione delle API REST per la versione 5.
-
Passa a POST /search/agreementAssetEvents e genera il token di accesso con gli ambiti pertinenti.
-
Nel codice della richiesta, definisci la data di inizio e di fine in base al requisito:
{ "endDate": "2018-05-22T22:33:33", "startDate": "2017-12-22T22:33:33" }
-
Fai clic su Try it Out per provarlo. Vengono recuperati gli ID delle risorse dell’accordo, che possono essere utilizzati anche come ID accordo.
Gestione degli utenti e dell’account
- Accedi ad Adobe Sign.
- Passa a Account > API Adobe Sign > Documentazione REST API.
- Seleziona Versione 5.
- Nel metodo POST /users, usa il codice di richiesta descritto per il
metodo UserCreationInfo
{
"email": "email@email.com",
"firstName": "AA",
"lastName": "AB",
"password":"12******rte"
}
Gli account Adobe Sign che utilizzano Admin Console (Adobe One) per gestire le autorizzazioni degli utenti non possono utilizzare le API di Adobe Sign per creare nuovi utenti o gestire gli utenti esistenti.
Adobe One Admin Console utilizza API diverse dalle API di Adobe Sign. Per ulteriori informazioni, consulta questi articoli:
- https://helpx.adobe.com/it/enterprise/help/users.html
- https://www.adobe.io/apis/cloudplatform/umapi-new.html
Ottenere l’ID di un gruppo:
-
Passa a https://secure.na1.echosign.com/public/docs/restapi/v5.
-
In Risorse e operazioni, fai clic su groups.
-
Fai clic su GET /groups.
-
Fai clic sul pulsante OAuth Access-token.
-
Genera il token di accesso.
-
Fai clic sul pulsante Try it out per provarlo.
Riceverai una risposta simile alla seguente, con il nome e l’ID del gruppo:
{ "groupInfoList": [ { "groupId": "3AAABLblqZhB4o9EnlvmGB_m8CrG5O6XClTBO7vmojOOexu5r3G95LtEV2Sp7BuhNvQYSvWB7PmmwVPXnhPIiYSuHV98Cerkp", "groupName": "Default Group" }, { "groupId": "3AAABLblqZhC3dPT6za5h7r1-BOEWivCe_OcAVONhcsKa57SL9_iCwGr5v_JED1No5jE20Pcjv0mYH2J-LoY1AcmqS69vRkO7", "groupName": "test" }, ] }
Eliminazione di un gruppo:
-
Fai clic su DELETE /groups/{groupId}.
-
Per generare il token di accesso, fai clic sul pulsante OAuth Access-token.
-
Nella casella groupId, inserisci il groupId ricevuto nella risposta della chiamata precedente e che desideri eliminare.
-
Fai clic su Try it Out per provarlo.
Una volta eliminato il gruppo, riceverai una risposta simile alla seguente: Nessun contenuto
Non è possibile eliminare un gruppo a cui è assegnato un utente. È possibile eliminare solo gruppi vuoti. Se nel gruppo è presente un utente, riceverai la seguente risposta.
"code": "GROUP_NOT_EMPTY", "message": "Impossibile eliminare il gruppo perché non è vuoto." } |
Avvio e invio di accordi
Generazione di un documento transitorio
-
Fai clic su transientDocuments ed espandi il metodo POST /transientDocuments.
-
Fai clic sul pulsante OAuth Access-token.
-
- Abilita gli ambiti (Scopes) per la transazione.
- Fai clic su Authorize.
-
Se richiesto, fai clic su Consenti accesso.
-
Viene visualizzata nuovamente la pagina dei metodi API. Il valore Autorizzazione è ora compilato.
- Immetti il nome file nel campo File-Name.
- Fai clic sul pulsante Choose File per scegliere e caricare il documento per l’accordo.
- Fai clic sul pulsante Try it out!
-
Viene generata la risposta.
Il transientDocumentID si trova nel corpo della risposta:
Generazione di un accordo mediante il documento transitorio
-
Fai clic su agreements ed espandi il metodo POST /agreements.
-
- Fai clic sul pulsante OAuth Access-token.
- Abilita l’ambito OAuth.
- Fai clic su Authorize.
- Se richiesto, fai clic su Consenti accesso.
-
Viene visualizzata nuovamente la pagina dei metodi API. Il valore Autorizzazione è ora compilato.
- Copia lo script seguente in un editor di testo (questo script è solo un esempio con configurazioni minime; il codice di produzione sarà diverso).
- Inserisci il valore trasientDocumentId nel codice, dove è indicato.
{ "fileInfos": [ {"transientDocumentId":"PASTE YOUR TRANSIENTDOCUMENTID HERE"} ], "name": "test doc", "participantSetsInfo": [ { "memberInfos": [ { "email": "noreply@echosign.com" } ], "order": 1, "role": "SIGNER" } ], "signatureType": "ESIGN", "state": "DRAFT" }
- Copia lo script personalizzato e incollalo nel campo AgreementInfo.
- Fai clic sul pulsante Try it out!
-
Viene generata la risposta.
Il codice agreementID si trova nel corpo della risposta:
Di seguito viene descritto come aggiungere dei file al parametro FileInfo:
-
Utilizza l’ID transitorio:
Passa a POST/transientDocuments e carica il documento da utilizzare dal sistema locale.
Utilizza l’ID transitorio generato nella sezione Info file in POST/agreements:"fileInfos": [ { "transientDocumentId": "" } ],
-
Utilizza l’ID documento libreria:
Passa al dashboard. Fai clic su Aggiungi documento a libreria e salva il modello.
In Documentazione API REST, fai clic su GET /libraryDocuments e recupera l’ID libreria del modello creato.
In POST /agreements, specifica l’ID del documento libreria:"libraryDocumentId": "", "libraryDocumentName": "",
-
Utilizza un URL pubblico:
Specifica l’URL accessibile al pubblico da utilizzare nel parametro FileInfo:
{ "documentURL": { "mimeType": "", "name": "", "url": "" },
-
Seleziona l’opzione Agreements > POST/agreements.
-
Seleziona l’opzione OAuth Access-Token e specifica gli ambiti necessari.
-
Una volta aggiunto il token di accesso, è possibile utilizzare il seguente codice di richiesta:
{ "documentCreationInfo": { "recipientSetInfos": [ { "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{"email": "testemail@email.com"}] }, { "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{"email": "testemail@email.com"}] } ], "signatureFlow": "SEQUENTIAL", "name": "husband wife", "signatureType": "ESIGN", "fileInfos": [ { "transientDocumentId": "(SAMPLE VALUE)3AAABLblqZhAJ9H6e23kZAfBUbItPvIhHTEyA6eZhziEp4KSntYcULpo43OEXwuWiWa-IM1r1EExYW0044CjCkliP4WFL5yKBUDq5DYSmSxVlFypcD0at8kK-BX-Mu3T9c_3GUqgDg0ArX0MmzWT72GLR_0M4Jq--mtuqGzq-VK1s-WGR6GcbedVY7XWAf3b3h-SpE08Hc-iF3zO7jQzi9newXSl-iW2JJsb_55tggkyxkXAkj74C1WD6KkJzgblK0JU-seh6QPDd0Fv6_mfQe2EPQA31nXj50aXwD_xlUBq7mg5FeaBnZ5bzgoqIWGHkbyeD2taaFdw*"} ] } }
Nella chiamata POST /agreements, per il parametro signatureflow puoi trasmettere il valore SENDER_SIGNS_FIRST o SENDER_SIGNS_LAST per aggiungere rispettivamente il mittente come Primo o Ultimo firmatario.
Esempio di una chiamata in formato JSON:
{
"documentCreationInfo": {
"fileInfos": [
{ "transientDocumentId":"3AAABLblqZ-yourIDGoesHere"
}
],
"name": "Test",
"recipientSetInfos": [
{
"recipientSetMemberInfos": [
{
"email": "test@email.com"
}
],
"recipientSetRole": "SIGNER"
}
],
"signatureType": "ESIGN",
"signatureFlow": "SENDER_SIGNS_FIRST"
}
}
L’opzione “Invia per conto di” è disponibile solo in API REST v6 quando è attivata la condivisione avanzata.
Se l’autorizzazione Invia non è fornita in condivisione o se Condivisione avanzata non è abilitata, viene visualizzata una risposta come quella seguente:
{"code":"PERMISSION_DENIED","message":"L’utente fornito nell’intestazione x-on-behalf-of-user non ha le autorizzazioni necessarie per eseguire questa operazione."}
|
Per la funzione “Invia per conto di”, abilita Condivisione account avanzata affinché gli utenti possano concedere autorizzazioni di invio ad altri utenti durante la condivisione del proprio account. Per la condivisione avanzata, vedi Attivazione della condivisione avanzata dell’account.
Una volta attivata la condivisione degli utenti, effettua le seguenti operazioni per impostare Invia per conto di:
Generazione di un documento transitorio:
-
In transientDocuments, fai clic su POST /transientDocuments.
-
Per generare un token di autorizzazione, fai clic sul pulsante OAUTH ACCESS-TOKEN.
-
In x-on-behalf-of-user, specifica l’e-mail dell’utente per conto del quale si desidera inviare, nel formato seguente: email:test@email.com
-
Per selezionare un file, fai clic su Choose File, quindi su Try it Out.
Viene ricevuta una risposta simile alla seguente con transientDocumentId:
{"transientDocumentId":"3AAABLblqZhB9Mjo0mrIu_pSgrf5VsMaKM68_Vmn80cimaqiUAD2OxrPp2e5H8GvjfiOxj4d5B8bCPkUfvaozW3KLisp_wseGVOL8A7oNZni1DWyFi4uNoxLQu4nUO44Wh63GQv9_HEJMePust0Pk94vJ_rbS96R7ic-vl7jbOkN0b4EB5-JMqlC-Fl_Vpyz8I1EQUrM5I4nB9ztMov4ad00yiOtDw0tB-Y2t5JdzM07P-mpJmwYEl8Fq2IeDuWjcR2tV7qY7TNGX2CNyh9jt0aMyduHeYa0GABr69z8Hm76eKdtaM_1E1ggWj205fSrNcwJsnpSO278*"}
Generazione di un accordo mediante il documento transitorio:
-
In agreements, fai clic su POST /agreements.
-
Per generare un token di autorizzazione, fai clic sul pulsante OAUTH ACCESS-TOKEN.
-
In x-on-behalf-of-user, specifica l’e-mail dell’utente come per la creazione del documento transitorio.
-
In AgreementInfo, aggiungi il codice seguente e fai clic su Try it Out:
{ "fileInfos": [ { "transientDocumentId":"3AAABLblqZhB9Mjo0mrIu_pSgrf5VsMaKM68_Vmn80cimaqiUAD2OxrPp2e5H8GvjfiOxj4d5B8bCPkUfvaozW3KLisp_wseGVOL8A7oNZni1DWyFi4uNoxLQu4nUO44Wh63GQv9_HEJMePust0Pk94vJ_rbS96R7ic-vl7jbOkN0b4EB5-JMqlC-Fl_Vpyz8I1EQUrM5I4nB9ztMov4ad00yiOtDw0tB-Y2t5JdzM07P-mpJmwYEl8Fq2IeDuWjcR2tV7qY7TNGX2CNyh9jt0aMyduHeYa0GABr69z8Hm76eKdtaM_1E1ggWj205fSrNcwJsnpSO278*" } ], "name": "Test", "participantSetsInfo": [ { "memberInfos": [ { "email": "signer@email.com" } ], "order": 1, "role": "SIGNER" } ], "signatureType": "ESIGN", "state": "IN_PROCESS" }
Viene ricevuta una risposta simille alla seguente con agreementId:
{ "id": "CBJCHBCAABAAUlen3l_fzlj1Kbn_wGZAhYcIgN0J7Qtq" }
-
Accedi ad Adobe Sign.
-
Passa a Account > API Adobe Sign > Informazioni API e fai clic su Documentazione metodi REST API.
-
POST /transientDocuments, carica un file e crea un ID documento transitorio.
-
Copia l’ID del documento transitorio e utilizzalo nel metodo POST /agreements. Indica la seguente richiesta JSON nella casella:
{ "documentCreationInfo": { "mergeFieldInfo": null, "recipientSetInfos": [{ "signingOrder": null, "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{ "securityOptions": null, "email": "test1@gmail.com" }], "privateMessage": "Hello 1", "securityOptions": null }, { "signingOrder": null, "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{ "securityOptions": null, "email": "test2@gmail.com" }], "privateMessage": "Hello 2", "securityOptions": null } ], "signatureType": "ESIGN", "callbackInfo": null, "message": "Rivedi e firma questo documento.", "locale": "it_IT", "vaultingInfo": null, "securityOptions": null, "reminderFrequency": null, "ccs": null, "postSignOptions": null, "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED", "daysUntilSigningDeadline": null, "formFieldLayerTemplates": [], "name": "Accordo Adobe Sign", "formFields": null, "fileInfos": [{ "libraryDocumentName": null, "transientDocumentId": "XXXXXXXXXXXX", "documentURL": null, "libraryDocumentId": null }] } }
-
Per eseguire la richiesta JSON, fai clic sul pulsante Try it Out.
Il codice JSON corretto restituisce la risposta con l’ID dell’accordo.
Di seguito sono riportati i parametri che è possibile passare nel codice per impostare la password di apertura:
{ "documentCreationInfo": [{ "signatureType": "ESIGN", "recipientSetInfos": [{ "recipientSetMemberInfos": [{ "email": "abc@xyz.com" }],
"recipientSetRole": "SIGNER" }], "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED", "fileInfos": [ { "libraryDocumentId": "3AAABLblqZhBsm_vH7TVzU3hRdbtWuvzfTKDvBzaKZTiehjO2eGTk5Rlu02K-0BYn8HBJVFTWOmT_BQlrofPBlrCdjiJ_JI-V" } ], "name": "Password di apertura per visualizzare il documento", "securityOptions": { "openPassword": "1234", "protectOpen": true } }] }
|
Per creare un accordo tramite API con stato “AUTHORING”, effettua le seguenti operazioni:
Accedi a POST /agreements e crea un token di accesso con gli ambiti richiesti.
Utilizza il codice di richiesta nel modo seguente:
{ "fileInfos": [ { "transientDocumentId": "*********************" } ], "name": "A1", "participantSetsInfo": [ { "memberInfos": [ { "email": "abc@xyz.com" } ], "order": 1, "role": "SIGNER" } ], "signatureType": "ESIGN", "state": "AUTHORING" }
|
La versione 6 dispone di un set di API per la creazione di un accordo. Nella versione 5, i formFields vengono utilizzati direttamente nell’API POST /agreements. Tuttavia, nella versione 6 gli utenti possono creare un accordo nello stato AUTHORING (state = AUTHORING) tramite POST v6 /agreements e utilizzare PUT /agreements/ID/formFields in qualsiasi un secondo tempo per aggiungere dei campi modulo ai documenti dell’accordo.
Di seguito sono riportati i passaggi da eseguire:
-
Accedi alla documentazione delle API REST v6 e seleziona il metodo POST /agreements.
-
Utilizza il seguente codice di richiesta:
{ "fileInfos": [ { "transientDocumentId": "***************************" } ], "name": "test", "participantSetsInfo": [ { "memberInfos": [ { "email": "abc@gmail.com" } ], "order": 1, "role": "SIGNER" } ], "signatureType": "ESIGN", "state": "AUTHORING" }
-
Utilizza il metodo PUT /agreements/{agreementId}/formFields con la seguente richiesta di esempio:
{ "fields": [ { "locations": [ { "height": 36, "left": 75, "pageNumber": "1", "top": 200, "width": 150 } ], "contentType": "SIGNATURE_BLOCK", "name": "sigBlock1", "inputType": "SIGNATURE", "recipientIndex":1 } ]}
Una volta completata la richiesta, l’accordo viene inviato al destinatario indicato.
-
Accedi ad Adobe Sign.
-
Passa a Account > API Adobe Sign > Informazioni API e fai clic su Documentazione metodi REST API.
-
POST /transientDocuments, carica un file e crea un ID documento transitorio.
-
Copia l’ID del documento transitorio e utilizzalo nel metodo POST /agreements. Indica la seguente richiesta JSON nella casella:
{ "documentCreationInfo": { "recipientSetInfos": [{ "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{ "email": "test1@gmail.com" }], "privateMessage": "Hello 1" }, { "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{ "email": "test2@gmail.com" }], "privateMessage": "Hello 2" } ], "signatureType": "ESIGN", "message": "Rivedi e firma questo documento.", "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED", "name": "Demo1", "fileInfos": [{ "transientDocumentId": "XXXXXXXXXX" }], "formFields": [{ "hidden": "1", "defaultValue": "test1@gmail.com", "name": "Signer Email (Applicant-1)", "inputType": "TEXT_FIELD", "readOnly": true, "locations": { "pageNumber": 1, "top": 100, "left": 100, "width": 100, "height": 30 }, "contentType": "SIGNER_EMAIL" }, { "name": "Signature (Applicant-2)", "inputType": "SIGNATURE", "locations": { "pageNumber": 1, "top": 520, "left": 162, "width": 280, "height": 30 }, "contentType": "SIGNATURE", "required": 1, "recipientIndex": 1 }, { "name": "Signature (Applicant-3)", "inputType": "SIGNATURE", "locations": { "pageNumber": 2, "top": 312, "left": 154, "width": 280, "height": 30 }, "contentType": "SIGNATURE", "required": 1, "recipientIndex": 1 }, { "defaultValue": "017/09/2018", "displayFormatType": "DATE", "name": "Signature Date (Applicant-4)", "format": "DATE_DD_MM_YYYY", "inputType": "TEXT_FIELD", "readOnly": true, "locations": { "pageNumber": 2, "top": 260, "left": 90, "width": 80, "height": 30 }, "contentType": "DATA", "required": 1, "recipientIndex": 1 }, { "name": "Signature (Applicant-5)", "inputType": "SIGNATURE", "locations": { "pageNumber": 3, "top": 199, "left": 179, "width": 276, "height": 30 }, "contentType ": "SIGNATURE", "required": 1, "recipientIndex": 1 }, { "contentType": "SIGNATURE_DATE", "defaultValue": "06/07/2018", "displayFormatType": "DATE", "name": "Signature Date (Applicant-6)", "format": "DATE_DD_MM_YYYY", "inputType": "TEXT_FIELD", "readOnly": true, "locations": { "pageNumber": 3, "top": 188, "left": 488, "width": 76, "height": 25 }, "required": 1, "recipientIndex": 1 }, { "name": "Signature (Applicant-7)", "inputType": "SIGNATURE", "locations": { "pageNumber": 3, "top": 370, "left": 37, "width": 210, "height": 26 }, "contentType ": "SIGNATURE", "required": 1, "recipientIndex": 2 }, { "contentType ": "SIGNATURE_DATE", "defaultValue": "01/02/2018", "name": "Signature Date (Applicant-8)", "locations": { "pageNumber": 3, "top": 370, "left": 300, "width": 76, "height": 26 }, "required": 1, "recipientIndex": 2 } ] } }
-
Per eseguire la richiesta JSON, fai clic sul pulsante Try it Out.
Il codice JSON corretto restituisce la risposta con l’ID dell’accordo.
-
Accedi ad Adobe Sign.
-
Passa a Account > API Adobe Sign > Informazioni API e fai clic su Documentazione metodi REST API.
-
POST /transientDocuments, carica un file e crea un ID documento transitorio.
-
Copia l’ID del documento transitorio e utilizzalo nel metodo POST /agreements. Indica la seguente richiesta JSON nella casella:
{ "options": { "noChrome": true, "authoringRequested": true }, "documentCreationInfo": { "recipientSetInfos": [{ "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{ "email": "test1@gmail.com" }], "privateMessage": "Hello 1" }, { "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{ "email": "test2@gmail.com" }], "privateMessage": "Hello 44" } ], "signatureType": "ESIGN", "message": "Rivedi e firma questo documento.", "locale": "it_IT", "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED", "formFieldLayerTemplates": [], "name": "Accordo Adobe Sign", "formFields": null, "fileInfos": [{ "libraryDocumentName": null, "transientDocumentId": "XXXXXXXXXXXX" }] } }
-
Per eseguire la richiesta JSON, fai clic sul pulsante Try it Out.
Il codice JSON corretto restituisce la risposta con l’ID dell’accordo.
-
Per aprire l’accordo in modalità di creazione, copia l’URL e incollalo nella barra degli indirizzi di un browser.
-
Trascina i campi modulo nella posizione desiderata.
-
Per inviare l’accordo da firmare, fai clic su Invia.
Usa POST /agreements per creare un accordo. Viene inviato per la firma e l’ID dell’accordo viene restituito nella risposta al client. Di seguito è riportato il formato JSON per inviare un accordo mediante il metodo di autenticazione telefonica.
{ "documentCreationInfo": { "mergeFieldInfo": null, "recipientSetInfos": [{ "signingOrder": null, "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{ "securityOptions": null, "email": "Signer@email.com" }],
"privateMessage": null, "securityOptions": [{ "authenticationMethod": "PHONE", "phoneInfos": [{ "phone": "1111111111", "countryCode": "+1" }] }] }],
"signatureType": "ESIGN", "callbackInfo": null, "message": "Rivedi e firma questo documento.", "locale": "en_US", "vaultingInfo": null, "securityOptions": null, "reminderFrequency": null, "ccs": null, "postSignOptions": null, "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED", "daysUntilSigningDeadline": null, "formFieldLayerTemplates": [], "name": "Adobe Sign Agreement-Phone authentication testing", "formFields": null, "fileInfos": [{ "libraryDocumentName": null, "transientDocumentId": "3AAABLYourTransactionID", "documentURL": null, "libraryDocumentId": null }] },
"options": { "autoLoginUser": true, "authoringRequested": false, "noChrome": true, "sendThroughWeb": null, "sendThroughWebOptions": null, "locale": "en_US" } }
|
È possibile unire i dati direttamente nei campi modulo utilizzando i seguenti metodi:
- Mediante un modello libreria:
Se nel parametro FileInfo utilizzi un ID di modello libreria, assicurati di specificare il nome esatto del campo e i relativi dati associati nella sezione seguente:
"mergeFieldInfo": [ { "defaultValue": "", "fieldName": "" } ],
|
- Mediante tag di testo in un documento caricato come documento transitorio:
Se carichi un documento a cui sono stati aggiunti tag di testo come documento transitorio, assicurati di fornire il nome esatto del campo e i relativi dati associati nella sezione seguente:
"mergeFieldInfo": [ { "defaultValue": "", "fieldName": "" } ],
|
Come inviare un accordo mediante API con valori precompilati per i campi modulo specifici (campi unione)?
Per questa chiamata è necessario che completare innanzitutto il passaggio “Caricamento transitorio” e ottenere il “transientDocumentId” (utilizzando: secure.na1.echosign.com/public/docs/restapi/v5#!/transientDocuments/createTransientDocument) da utilizzare.
- Questa chiamata include la sezione “mergeFieldInfo” in cui vengono forniti i valori predefiniti di campi modulo specifici.
- In tal modo nella chiamata API vengono pre-compilati i dati provenienti da un altro sistema.
- Tali campi nell’accordo possono essere modificabili o di sola lettura.
Prerequisiti:
- ID documento transitorio
- Nomi dei campi e relativi valori
Esempio di chiamata di richiesta:
Richiesta: POST /api/rest/v5/agreements HTTP/1.1 Host: api.na1.echosign.com (o il nome della tua partizione, che puoi trovare utilizzando la chiamata getbaseURis: https://secure.na1.echosign.com/public/docs/restapi/v5#!/base_uris/getBaseUris Token di accesso: 2AAABLblqZhA_D1mluNKQP7py5vXtt-1UHl9NR25e_C3LnKTUH14IblbrXODbXGRozyr7ChBkJNM* x-user-email: sender@yourdomain.com Content-Type: application/json Cache-Control: no-cache
{ "documentCreationInfo": { "signatureType": "ESIGN", "recipientSetInfos": [ { "recipientSetMemberInfos": [ { "email": “signerEmail@domain.com" } ], "recipientSetRole": "SIGNER" } ],
"signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED", "message": "Ti i invitiamo a firmare questo documento!", "fileInfos": [ { "transientDocumentId": "3AAABLblqZhD1uP3ZnkJximC0JV1S677PR5xmybSJ-SJn6OtEy2tVqFyMN4xUAbhKTSkLw2Zb6HEF4zAGsrUd2ycoB8fFHQJhrci0O6267VztmIL4nCicSqvAjO7HckATHAsovVmuYwI9_FDDgHg0ogyti62L13HQFZIQRe9iyQMvvzbmksM7ODNK_HEepEKRCeJTtis9FOlz6uRCcIMNlbX_2GU8utWT" } ], "name": "MSA Edited”, "mergeFieldInfo": [ { "fieldName": "AccountName", "defaultValue": "Sam's Garage" }, { "fieldName": "AccountNumber", "defaultValue": "8756999" }, { "fieldName": "Zip", "defaultValue": "94501" }, { "fieldName": "City", "defaultValue": "CityVille" }, { "fieldName": "State", "defaultValue": "CA" }, { "fieldName": "Street", "defaultValue": "123 Some Road" }, { "fieldName": "Title1", "defaultValue": "COO" }, { "fieldName": "Description", "defaultValue": "Some new description here" } ] }
}
La risposta a questa chiamata è l’ID “agreementId” che dovrai memorizzare nel sistema per le chiamate successive (signingUrl, status, formData, ecc.).
Risposta: { "agreementId": "3AAABLblqZhCf_7xDcrOgKFwAabp1S-OFfvUdHf2wJsSMwlB95_x_WdUeab67jOkJi1IJzWuSJ0zdNNKugS1blZB4LT5vNVyJ" }
|
Durante l’esecuzione del metodo “POST /megaSigns/{megaSignId}/views”, viene visualizzato un errore di tipo “La vista richiesta non è disponibile per la risorsa nel suo stato corrente”.
Questo errore viene presentato se il valore del nome del parametro fornito non è valido nel codice di richiesta seguente:
{
"name": " "
}
Ad esempio, se lo stato dell’accordo MegaSign è già “IN_PROCESS”, il valore “AUTHORING” restituirà questo errore. Verifica che il valore fornito sia conforme allo stato corrente dell’accordo.
Durante l’esecuzione del metodo “put /megaSigns/{megaSignId}/state”, viene presentato un errore di tipo “Nessun valore fornito per le informazioni di annullamento MegaSign”.
Questo errore si verifica se manca il codice di richiesta del parametro:
"megaSignCancellationInfo": {
"comment": "",
"notifyOthers": false
}
Anziché utilizzare lo “Schema minimo”, fai clic su “Modello schema completo” e fornisci il codice di richiesta completo per eseguire la chiamata API.
Per modificare lo stato dell’accordo MegaSign, utilizza PUT /megaSigns/{megaSignId}/state ed effettua le seguenti operazioni:
- Passa alla documentazione API REST per v6 e seleziona il metodo
PUT /megaSigns/{megaSignId}/state. - Specifica il valore di Authorization, nonché If-Match e megasignID.
- Per recuperare il codice megasignID, utilizza GET /megaSigns.
- Per recuperare il valore If-Match, utilizza GET /megaSigns/{megaSignId} e individua “Etag” nell’intestazione.
- {
"state": "CANCELED",
"megaSignCancellationInfo": {
"comment": "cancel",
"notifyOthers": false
}
}
Per registrare correttamente un webhook, il suo URL risponde a questa richiesta di verifica con un codice di risposta 2XX; inoltre, può restituire lo stesso valore di ID client in uno dei due modi seguenti:
- In un’intestazione di risposta X-AdobeSign-ClientId. Si tratta della stessa intestazione trasmessa nella richiesta, che viene riecheggiata nella risposta.
- Nel corpo della risposta JSON con la chiave X-AdobeSign-ClientId. Il suo valore corrisponde all’ID client inviato nella richiesta.
Adobe Sign riceve la risposta 2XX con X-AdobeSign-ClientId. L’utente può verificare se è configurato correttamente nel webhook.
L’URL del webhook non risponde in base al comportamento previsto. Per ogni notifica Post inviata da Adobe Sign, l’URL risponde con il codice di stato 2XX e restituisce nelle intestazioni di risposta l’ID client che era stato inviato nelle intestazioni di richiesta (X-AdobeSign-ClientId).
Per informazioni complete, visita il seguente collegamento:
https://www.adobe.io/apis/documentcloud/sign/docs.html#!adobedocs/adobe-sign/master/webhooks/webhook_events.md
Se l’URL non rispetta questo protocollo, Adobe Sign ritiene che non sia stata accettata la richiesta e tenta di riprogrammarla in base ai criteri di affidabilità.
Se il webhook non risponde e viene superato il tempo o l’intervallo massimo di tentativi, il webhook viene disabilitato.
I post su Twitter™ e Facebook non sono coperti dai termini di Creative Co
Gestire/Ottenere informazioni sugli accordi
Per modificare un documento già inviato per la firma, utilizza il metodo PUT /agreements/{agreementId} con cui puoi aggiornare un accordo esistente. Fornisci l’ID transitorio e l’ID accordo nel seguente codice di richiesta:
{ "documentUpdateInfo": { "fileInfos": [ { "agreementDocumentId": "", "transientDocumentId": "" } ] } }
|
Di seguito sono riportate le istruzioni per cambiare lo stato da “AUTHORING” a “IN_PROCESS” utilizzando PUT /agreements/{agreementId}/state:
-
Ottieni l’ID accordo recuperato utilizzando il metodo POST /agreements.
-
Utilizza GET /agreements/{agreementId} per recuperare l’ultimo ETag.
-
Passa a PUT /agreements/{agreementId}/state e fornisci le seguenti informazioni: "state": "IN_PROCESS"
No.
Non esiste alcun metodo nell’API REST corrente per caricare una copia firmata.
Il mittente deve caricare la copia firmata dalla pagina Gestisci.
DELETE /agreements/ID viene utilizzato per consentire di nascondere un accordo dalla pagina Gestisci.
Adobe ha un nuovo metodo API PUT /agreements/ID/me/visibility per controllare la visibilità di un accordo (in GET /agreements). Oltre alla funzionalità fornita dal metodo DELETE /agreements/ID, il nuovo endpoint di visibilità consente anche all’utente di annullare l’operazione “hide”, per rendere nuovamente visibile l’accordo.
Puoi anche seguire i passaggi dettagliati riportati di seguito:
- Passa al metodo GET /agreements e recupera l’ID dell’accordo.
- Fai clic su PUT /agreements/{agreementId}/me/visibility e fornisci la seguente richiesta di esempio:
{
“visibility”: “HIDE”
}
L’ID dell’accordo è nascosto solo da GET /libraryDocuments, ma è ancora visibile nella scheda Gestisci.
La funzione API Retention (conservazione) non è attivata per impostazione predefinita.
Per abilitare l’operazione DELETE /agreements, chiedi al tuo Success Manager che l’opzione API Retention sia attivata per l’account.
Per ulteriori informazioni su come abilitare le funzioni di conservazione per l’account, consulta Adobe Sign - Conservazione dei documenti.
-
Accedi ad Adobe Sign come amministratore e passa a: https://secure.adobesign.com/public/docs/restapi/v6
-
- Fai clic su agreements ed espandi il metodo GET /agreements.
- Fai clic sul pulsante OAUTH ACCESS-TOKEN.
- Abilita l’ambito agreement_read:self.
- Fai clic sul pulsante Authorize.
- Se richiesto, fai clic su Consenti accesso.
- Fai clic sul pulsante Provalo.
-
Viene generata la risposta.
Il codice agreementID si trova nel corpo della risposta:
-
DELETE /agreements/{agreementId}/documents: elimina tutti i documenti correlati a un accordo. L’accordo stesso resta visibile nella pagina Gestisci.
- Seleziona l’operazione DELETE /agreements da eseguire.
- Fai clic sul pulsante OAUTH ACCESS-TOKEN e crea un token di accesso con ambito agreement_retention.
- Fornisci il codice agreementId dell’accordo da eliminare.
- Una volta eliminato l’accordo, il corpo della risposta contiene “nessun contenuto”.
Se ricevi la risposta seguente, significa che l’operazione DELETE /agreements non è abilitata:
"code": "DYNAMIC_DOCUMENT_EXPIRATION_NOT_ENABLED",
"message": "L’operazione richiede l’attivazione di alcune impostazioni account. Contattare il team Adobe Sign per attivare le impostazioni."
Come scaricare il documento firmato con il report di audit e il documento di supporto tramite API REST di Adobe Sign, anziché effettuare una chiamata separata per scaricare il report di audit, con il metodo seguente.
-
Fai clic su GET /agreements/{agreementId}/combinedDocument.
-
Fai clic sul pulsante OAuth Access-token.
-
Il token di accesso viene generato automaticamente una volta accettata l’autorizzazione.
-
Fornisci l’ID agreementId.
-
In attachSupportingDocuments, seleziona true dal menu a discesa.
-
In attachAuditReport, seleziona true dal menu a discesa.
-
Fai clic sul pulsante Try it Out.
Viene scaricato un PDF combinato con l’accordo Firmato, il documento di supporto e il report di audit.
Per scaricare più documenti in blocco, è disponibile solo lo strumento di esportazione dei documenti; con l’API è possibile scaricare solo un documento alla volta. Di seguito è riportato il metodo API:
https://secure.na1.adobesign.com/public/docs/restapi/v5#!/agreements/getCombinedDocument
Modelli libreria e moduli Web
-
Accedi ad Adobe Sign come amministratore e passa a: https://secure.na1.adobesign.com/public/docs/restapi/v6
-
- Fai clic su libraryDocuments ed espandi il metodo GET /libraryDocuments.
- Fai clic sul pulsante OAUTH ACCESS-TOKEN.
- Abilita l’ambito library_read:self.
- Fai clic sul pulsante Authorize.
- Se richiesto, fai clic su Consenti accesso.
- Fai clic sul pulsante Provalo.
-
Viene generata la risposta.
Il codice libraryDocumentId si trova nel corpo della risposta:
Adobe ha un nuovo metodo API PUT/libraryDocuments/ID/me/visibility che consente di controllare la visibilità di un accordo (in GET /agreements). Oltre alla funzionalità fornita dal metodo DELETE /agreements/ID, il nuovo endpoint di visibilità consente anche all’utente di annullare l’operazione “hide”, per rendere nuovamente visibile l’accordo.
Puoi anche seguire i passaggi dettagliati riportati di seguito:
- Passa al metodo GET /libraryDocuments e recupera l’ID dell’accordo.
- Fai clic su PUT /libraryDocuments/{libraryDocumentId}/me/visibility e fornisci la seguente richiesta di esempio:
{
"visibility": "HIDE"
}
L’ID della libreria è nascosto solo da GET /libraryDocuments, ma è ancora visibile nella scheda Gestisci.
- Invia una richiesta al team di supporto per richiedere che venga abilitato l’ambito per l’eliminazione della libreria.
- L’API elimina il documento libreria. Tuttavia, gli accordi creati con il documento libreria restano intatti.
Generazione di un codice libraryDocumentID
-
Passa a https://secure.echosign.com/public/docs/restapi/v5.
-
Fai clic su libraryDocuments.
-
Fai clic sul pulsante OAuth Access-Token.
Autorizza l’accesso: token per se stesso, gruppo o account.
-
Seleziona libraryTemplateType - Document o Form_field_layer.
-
Fai clic su Try it Out per provarlo.
Puoi ricevere una risposta come quella seguente per tutti i tuoi modelli. Copia l’ID libraryDocumentId per il modello libreria da eliminare.
{ "libraryDocumentList": [ { "name": "testing fields", "modifiedDate": "2017-08-04T01:06:05-07:00", "scope": "PERSONAL", "libraryDocumentId": "3AAABLblqZhAK53Dvzq88Q1Ov0TEvMAySDPpIVjF1PWgUpy0H1uYggt4iwGiRSZYlWfl9ms_AcmgZ_uZMPPN2hNT9izwaspHc", "libraryTemplateTypes": [ "DOCUMENT" ] },
Eliminazione dei modelli libreria
-
Copia l’ID libraryDocumentID dal corpo della risposta.
-
Passa a DELETE libraryDocuments.
-
Fai clic sul pulsante OAuth Access-token.Autorizza l’accesso: token per se stesso, gruppo o account.
-
Incolla l’ID libraryDocumentId nel campo Value.
-
Fai clic su Try it Out.
Il modello viene eliminato.Viene visualizzato il seguente codice di errore: 204
È possibile aggiornare solo i moduli web che si trovano nello stato Bozza.
-
Crea il widget utilizzando il metodo POST /widgets.
-
Ottieni l’ID del widget da GET /widgets.
-
Una volta creato utilizzando il metodo GET /widgets/{widgetId}, recupera l’Etag dall’intestazione della risposta.
-
In PUT /widgets/{widgetId}, utilizza il valore Etag da GET /widgets/{widgetId}. Per il parametro If-Match, immetti widgetId e widgetInfo.
{ "fileInfos": [ { "transientDocumentId": "******" } ], "name": "Widht_Name", "status": "DRAFT", "widgetParticipantSetInfo": { "memberInfos": [ { "email": "" } ], "role": "SIGNER" } }
-
Esempi di utilizzo
-
Effettua una chiamata GET /agreements con il valore x-api-user corretto.
-
Nel corpo della risposta, individua l’accordo inviato per la firma di cui desideri trovare l’URL di firma e prendi nota dell’ID dell’accordo.
-
Effettua una chiamata GET /agreements/{agreementId}/signingUrls utilizzando l’ID dell’accordo ricevuto dalla chiamata GET /agreements.
Risultato
L’output restituisce l’indirizzo e-mail dei firmatari e l’URL per la firma elettronica.