API de Adobe Sign: preguntas frecuentes

El acceso a la API está reservado exclusivamente para las cuentas de nivel de desarrollador y empresariales.

Vínculos a la documentación principal

Nota:

Las API SOAP heredadas dejarán de ser compatibles en mayo de 2021. 

Todos los clientes que utilicen la API SOAP deberán migrar a la API REST lo antes posible.


Conceptos generales

No puede escribir el documento mediante la visualización de la página en la interfaz de usuario web, arrastrar y soltar o asignar funciones de firmante con transientDocumentId a través de la API.

La llamada transientDocuments indica el identificador transientDocumentID, que mantiene su validez durante 7 días.  Solo se puede utilizar para las llamadas API posteriores. Se almacena en el servidor de la API y se le asigna este ID. Cargue un archivo y, a continuación, consulte su ID en las llamadas API posteriores.

No es posible cargar un documento directamente en el acuerdo mediante la API REST.

De acuerdo con el requisito REST, cree un documento transitorio en primer lugar y, a continuación, utilice este identificador en los métodos del acuerdo, el widget o la biblioteca como archivo de origen.

El documento transitorio es un archivo de origen sin procesar (por ejemplo, un archivo en formato PDF, doc, docx), cargado en los servidores de Adobe. Por lo tanto, es una forma cómoda de transmitir el documento base a los servidores de la API y a un documento transitorio en la web.

Sí, puede publicar acuerdos mediante flujos de trabajo en la versión 6 mediante los acuerdos/el POST de llamada API. Pase el parámetro de ID del flujo de trabajo a la llamada de API.

Puede obtener el ID del flujo de trabajo de un flujo de trabajo mediante la llamada de GET /workflows.

  1. Iniciar sesión en Adobe Sign como administrador

  2. Vaya a Cuenta > API de Adobe Sign > Registro de solicitud de la API

    Registros de la API

  1.  Iniciar sesión en una cuenta de Adobe Sign como administrador

  2. Vaya a: Cuenta > API de Adobe Sign > Información de API

  3. Haga clic en el vínculo Ejemplos de API REST.

    Nota:

    Para descargar el SDK de JavaScript, consulte https://github.com/adobe-sign/AdobeSignJsSdk.

La opción "sendTroughWeb" ya no está disponible a partir de la versión 6. El estado la reemplaza. Se trata del estado en el que llega el acuerdo. El campo de estado solo se puede proporcionar en llamadas de POST. Nunca se devuelve en GET /agreements/{ID} y se omite si se proporciona en la llamada de PUT /agreements/{ID}. El estado final del acuerdo se puede obtener en GET /acuerdos/ID.

estado(cadena) = ['AUTHORING', 'DRAFT' o 'EN_PROCESO'].

AUTHORING permite a UN usuario crear los documentos de un acuerdo antes de enviarlos. Esta operación de creación se refiere a la creación, la edición o la colocación de campos de formulario junto con sus configuraciones (usuario asignado, condiciones, tipo de datos, etc.) en los documentos del acuerdo. Tras publicar el documento en el estado de Creación, el documento está visible en la sección Borrador de la pestaña Gestionar Adobe Sign.

BORRADOR es una fase temporal o inicial del recurso final indicado que se puede actualizar en pasos para crear el recurso final y no está visible en la sección Borrador de la pestaña Gestionar Adobe Sign. Al usar el estado Borrador, la información del conjunto de participantes no es necesaria y se puede asignar posteriormente al establecer PUT /agreements/agreementId para completar reste borrador. Este paso puede repetirse varias veces hasta que disponga de todos los datos necesarios para crear el acuerdo.

EN_PROCESO cambia el estado del acuerdo a Enviado para firmar y está visible en la sección Enviados para firmar de la pestaña Gestionar Adobe Sign.

La opción sendThroughWeb permite enviar el acuerdo de forma interactiva. Los distintos parámetros del campo "opciones" de la solicitud de POST/acuerdos de la versión 5 permiten al usuario configurar esta vista interactiva (página Enviar). Todos estos parámetros de configuración de página, como fileUploadOptions, se mueven a la API de vista/ID/acuerdos/POST.

Así que, en efecto, puede conseguir alcanzar sendThroughWeb mediante la creación de un acuerdo en el estado AUTHORING a través de la API de POST/acuerdos. A continuación, para solicitar la URL de la siguiente página en la configuración deseada, realice una llamada a la API de vista/ID/acuerdos/POST.

Lleve a cabo el procedimiento siguiente:

1. Vaya a la documentación de la versión 6 de API REST y seleccione el método POST/acuerdos.
2. Utilice el siguiente código de solicitud:

{

  "fileInfos": [

    {

      "transientDocumentId": "***************************"

    }

  ],

  "name": "test",

  "participantSetsInfo": [

    {

      "memberInfos": [

        {

          "email": "abc@gmail.com"

        }

      ],

      "order": 1,

      "role": "SIGNER"

    }

  ],

  "signatureType": "ESIGN",

  "state": "AUTHORING"

}

 

3. A continuación, utilice el método post /acuerdos/{agreementId}/vistas con el siguiente código de solicitud:

 

{

  "name": "AUTHORING"

}

El código de respuesta proporciona la URL para los campos de creación.

la URL de devolución de llamada se puede definir de las siguientes maneras:

  • Utilice el siguiente parámetro para definir la URL de devolución de llamada según sea necesario:

    "callbackInfo": "",
  • Póngase en contacto con el servicio de asistencia de Adobe Sign para establecer la URL de devolución de llamada predeterminada para la cuenta completa.

La interfaz de usuario de SOAP (SmartBear) obtiene un error de conexión SSL similar al siguiente, que se obtiene al realizar una llamada de API. Este error suele producirse si utiliza un protocolo SSL o TLS obsoleto e inferior a TLS1.2

ERROR: Excepción en la solicitud: javax.net.ssl.SSLException: Se ha recibido una alerta irrecuperable: protocol_version
ERROR: Se ha producido un error [Se ha recibido una alerta irrecuperable: protocol_version], consulte el registro de errores para obtener más información

  1. Añada (-Dsoapui.https.protocols=SSLv3,TLSv1.2) en el archivo VMOPTIONS de la carpeta Papelera.

  2. Vaya a C:\Program Files\SmartBear\SoapUI-5.2.1\bin (depende de dónde haya instalado la interfaz de usuario de SOAP. Puede encontrarse en C:\Program Files (x86))

  3. En el archivo VMOPTIONS, habilite los permisos completos de lectura/escritura.

    VMOPTIONS

  4. Haga clic con el botón derecho en el archivo VMOPTIONS > Propiedades > pestaña Seguridad > Seleccionar usuario > Editar. (El icono Control de acceso de usuario aparece en el botón Editar)>Seleccione todas las casillas de verificación y, a continuación, haga clic en Aceptar.

  5. Repita el mismo procedimiento para los administradores, sistemas y todos los paquetes de aplicaciones.

  6. Abra el archivo con Bloc de notas.

  7. Añada este protocolo en la parte inferior “-Dsoapui.https.protocols=SSLv3,TLSv1.2” y guarde los cambios.

  8. Cierre la interfaz de usuario de SOAP e iníciela de nuevo. Funciona sin error de SSL al realizar una llamada de API. (Realice una breve llamada de prueba para comprobar).

A continuación se indican los pasos para crear el ID de cliente y el secreto de cliente en la aplicación Adobe Sign:

  1. Inicie sesión en la cuenta de Adobe Sign.

  2. Vaya a Cuenta > API de Adobe Sign > Aplicaciones de API.

    Fnord.

  3. Para crear una aplicación, haga clic en el icono +.

    Fnord.

  4. Introduzca Nombre y Nombre para mostrar.

  5. En Dominio, seleccione CLIENTE y haga clic en Guardar.

    Fnord.

  6. Resalte la aplicación con un solo clic.

  7. Haga clic en Configurar OAuth para la aplicación.

    Fnord.

  8. Introduzca el URI de redirección.

  9. Para habilitar los ámbitos necesarios, seleccione las casillas de verificación correspondientes y, a continuación, haga clic en Guardar.

Precaución:

En junio de 2020, Adobe Sign dejará de ser compatible con las claves de integración. El lugar de las claves, los desarrolladores deben utilizar el proceso OAuth.

  1. Inicie sesión en Adobe Sign como administrador de la cuenta.

  2. Vaya a: Cuenta > API de Adobe Sign > Información de API

  3. Haga clic en el vínculo Clave de integración

    Ir a Clave de integración

    Nota:

    Si no ve el vínculo Clave de integración, póngase en contacto con su administrador de éxito para que habilite su cuenta.

    • Asigne un nombre a la clave con un valor intuitivo
    • Seleccione los distintos Ámbitos necesarios para el funcionamiento de la aplicación
    • Haga clic en Guardar tras configurar la clave completamente
    Interfaz Crear clave de integración

  4. Una vez guardada, la clave se encuentra en: Cuenta > Preferencias personales > Tokens de acceso

    Se muestra una lista que contiene el nombre de la clave y todos los ámbitos activados.  

    Haga clic en la descripción de la clave una vez para mostrar los vínculos de acción:

    • Clave de integración: este vínculo proporciona la clave literal 
    • Revocar: esta opción permite revocar y eliminar el token de acceso de forma permanente
    Tokens de acceso: Clave de integración

  1. Inicie sesión en la cuenta de Adobe Sign.

  2. Vaya a Cuenta > API de Adobe Sign > Aplicaciones de API.

  3. Haga clic en el icono + para crear una aplicación.

    Postman1

  4. Haga clic en Configurar OAuth para la aplicación.

    Fnord.

  5. Genere el Código de autorización mediante el siguiente vínculo. El ID de cliente, el URI de redirección y los ámbitos deben ser los mismos que en la siguiente URL, tal y como se haya seleccionado en la aplicación (evite los espacios en la siguiente URL y el recurso compartido como “NA1” según el nombre de la cuenta de 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

  6. Si la llamada se realiza correctamente, seleccione Código de autorización en la barra de direcciones.

    Fnord.

  7. Descargue e instale Postman desde el vínculo https://www.getpostman.com/apps.

  8. Una vez que se haya descargado e instalado, haga clic en NUEVO para crear un POST.

  9. Introduzca el vínculo https://secure.na1.echosign.com/oauth/token según el nombre de su cuenta de Adobe Sign.

  10. En la sección de encabezados, introduzca el tipo de contenido codificado como application/x-www-form-url.

  11. Asegúrese de que x-www-form-urlencoded se haya seleccionado en Cuerpo, introduzca los siguientes parámetros con sus valores correspondientes desde la aplicación creada en la cuenta de Adobe Sign y, a continuación, haga clic en ENVIAR.

    Fnord.

  12. Si toda la información es correcta, devuelve el token de acceso y el token de actualización en la respuesta:

    Fnord.

Al ejecutar el proceso de OAuth, cerciórese de seguir los puntos siguientes:

1. El ID de cliente y el URI de redirección especificados son correctos.
2. Los ámbitos proporcionados en la URL de autorización deben coincidir exactamente con los proporcionados en la aplicación Adobe Sign.
3. Utilice el recurso compartido correcto (na1, na2, au1, eu1, jp1) de acuerdo con la cuenta que se está configurando.
4. Elimine cualquier espacio incluido en la URL de autorización (si lo hubiera).
5. Compruebe la sintaxis de la URL de autorización:

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

Los tokens de acceso solo son válidos durante 3600 segundos (una hora); después, caducan.

El titular de la solicitud de la API puede utilizar los tokens de actualización para generar nuevos tokens de acceso según sea necesario.

Los webhooks son compatibles con la versión 6 de API REST y posteriores.

Si un receptor webhook no responde en un plazo de 72 horas, el webhook se deshabilita y no se envía ninguna notificación.

Si la dirección URL de destino de webhook está desactivada por cualquier motivo, Adobe Sign pone el JSON en cola y vuelve a intentar la inclusión en un ciclo progresivo durante 72 horas.

Los eventos no entregados se conservan en una cola de reintentos y durante las siguientes 72 horas se intenta con mayor intensidad enviar las notificaciones en el orden en que se produjeron.

La estrategia para reintentar la entrega de notificaciones consiste en duplicar el tiempo entre intentos, comenzando con un intervalo de 1 minuto que aumenta a cada 12 horas, lo que se traduce en 15 reintentos en un lapso de 72 horas.

 

Para crear un webhook directamente desde la interfaz de usuario de Adobe Sign, en primer lugar cree la URL de webhook a través de las aplicaciones de la función Azure AD; para ello, siga los pasos que se indican a continuación:

  1. Inicie sesión con la cuenta de Microsoft https://portal.azure.com/.

  2. Regístrese para aplicaciones de función en la cuenta de Azure AD.

    Menú de Azure

  3. Vaya a Azure AD y a continuación, vaya a Aplicaciones de función > Clic en el icono + para ver las funciones.

  4. Seleccione Webhook+API con Javascript como idioma y, a continuación, haga clic en Crear función.

    Interfaz de usuario de API de Azure

  5. Reemplace el archivo Index.js por el siguiente fragmento de código:

    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(); };
  6. Haga clic en el botón Probar situado en la esquina derecha y proporcione el siguiente encabezado:

    X-AdobeSign-ClientId as ***********************

    Prueba de API

  7. Haga clic en Guardar y ejecutar.

  8. Una vez que haya recibido una respuesta de 200 OK con el encabezado siguiente, haga clic en Obtener URL de función

    Respuesta 200

  9. Copie la URL y vaya a la IU de Adobe Sign > Webhooks > Clic en el icono + para crearla.

  10. Introduzca la siguiente información: 

    • Nombre: se sugiere el uso de un nombre intuitivo que otros administradores puedan comprender fácilmente.
    • Ámbito: qué anchura de red cubre el webhook. La cuenta y el grupo están disponibles en la interfaz.
      La API es compatible con los ámbitos de Cuenta, Grupo, Usuario y Recursos.
    • Únicamente se puede definir un Ámbito por webhook
    • URL: la dirección URL de destino en la que Adobe Sign ha insertado la carga de JSON.
    • Eventos: el activador que hace que Adobe Sign cree el JSON y lo inserte en la URL.
      Cada evento crea una carga diferente que se corresponde con el evento activador
      Se pueden incluir varios eventos en un webhook.
    • Parámetros de notificación: los Parámetros de notificación identifican las secciones de la carga de JSON del evento, lo que permite seleccionar únicamente las secciones del evento que son importantes.
    Interfaz de usuario de Webhook

  11. Cuando el webhook esté completamente definido, haga clic en Guardar y el nuevo webhook empezará a reaccionar para activar los eventos inmediatamente.

El recurso del acuerdo hace referencia a un recurso mediante el cual puede crear un acuerdo, por ejemplo, un documento de la biblioteca, un widget y un acuerdo en sí mismo.

Para buscar eventos del recurso del acuerdo, primero deberá realizar una solicitud a la API que crea agreementAssetEvents con los parámetros de búsqueda correspondientes.

La Respuesta es la primera página de resultados junto con un parámetro de ID de búsqueda y el cursor de página siguiente. Puede utilizarla para obtener más resultados de página si están disponibles mediante la API, que recupera agreementAssetEvents según el ID de búsqueda.

  1. Abra la documentación de la API de REST para la versión 5.

  2. Vaya a post/search/agreementAssetEvents y genere el token de acceso con los ámbitos correspondientes.

  3. En el código de solicitud, defina la fecha de inicio y la fecha de finalización según el requisito:

    { "endDate": "2018-05-22T22:33:33", "startDate": "2017-12-22T22:33:33" }
  4. Haga clic en Probar. Así recuperará los identificadores de recursos del acuerdo, que también se pueden utilizar como identificadores del acuerdo.


Administración de usuarios/cuentas

  1. Inicie sesión en Adobe Sign.
  2. Vaya a Cuenta > API de Adobe Sign > Documentación de la API REST.
  3. Seleccione la versión 5.
  4. En el método publicación/usuarios, utilice el código de solicitud que se menciona en el método
    UserCreationInfo
    {
    "email": "email@email.com",
    "firstName": "AA",
    "lastName": "AB",
    "password":"12*****rte"
    }

Las cuentas de Adobe Sign que utilizan al Admin Console (Adobe Une) para administrar sus derechos de usuario no pueden utilizar la API de Adobe Sign para crear usuarios ni administrar los usuarios existentes.

El Admin Console de Adobe Uno utiliza una API diferente a la API de Adobe Sign. Consulte estos artículos para obtener más información:

 

Obtención del ID de grupo:

  1. Vaya a https://secure.na1.echosign.com/public/docs/restapi/v5.

  2. En Recursos y operaciones, haga clic en Grupos.

  3. Haga clic en GET /groups.

  4. Haga clic en el botón del token de acceso de OAuth.

  5. Genere el token de acceso.

  6. Haga clic en el botón Probar.

    Recibirá una respuesta como la siguiente que incluye el nombre del grupo y el ID de grupo:

    { "groupInfoList": [ { "groupId": "3AAABLblqZhB4o9EnlvmGB_m8CrG5O6XClTBO7vmojOOexu5r3G95LtEV2Sp7BuhNvQYSvWB7PmmwVPXnhPIiYSuHV98Cerkp", "groupName": "Default Group" }, { "groupId": "3AAABLblqZhC3dPT6za5h7r1-BOEWivCe_OcAVONhcsKa57SL9_iCwGr5v_JED1No5jE20Pcjv0mYH2J-LoY1AcmqS69vRkO7", "groupName": "test" }, ] }

Eliminación de un grupo:

  1. Haga clic en el DELETE /grupos/{groupId}.

  2. Para generar el token de acceso, haga clic en el botón del token de acceso de OAuth.

  3. Añada el groupId recibido en la respuesta de la llamada anterior que desee eliminar en el cuadro groupId.

  4. Haga clic en Probar.

    Recibirá una respuesta como la siguiente una vez que se elimine el grupo: Sin contenido

Nota:

No puede eliminar un grupo que tenga asignado un usuario. Básicamente, solo puede eliminar el grupo vacío. Recibirá una respuesta como la siguiente si hay un usuario en el grupo.


{

  "code": "GROUP_NOT_EMPTY",

  "message": “No se puede eliminar el grupo porque no está vacío”.

}


Iniciando/Enviando acuerdos

Generación de un documento transitorio

  1. Haga clic en transientDocuments y amplíe el método POST /transientDocuments

  2. Haga clic en el botón del token de acceso de OAuth

    Método TransientDocument de la API

    • Habilite los Ámbitos para la transacción
    • Haga clic en Autorizar
    Ámbitos de OAuth

  3. Permitir acceso

    Si se le solicita, haga clic en Permitir acceso

  4. Volverá a la página de métodos de la API. Ahora se rellena el valor de Autorización.

    • Escriba el nombre del archivo en el campo Nombre de archivo
    • Haga clic en el botón Elegir archivo y, a continuación, cargue el documento para el acuerdo.
    • Haga clic en el botón Probar.
    ¡Pruebe!

  5. Se genera la respuesta.

    El transientDocumentID se encuentra en el cuerpo de respuesta:

    ID del documento transitorio

Generación de un acuerdo mediante el documento transitorio

  1. Haga clic en los acuerdos y amplíe el método POST /acuerdos 

    • Haga clic en el botón del token de acceso de OAuth
    • Activar el ámbito de OAuth
    • Haga clic en Autorizar
      • Si se le solicita, haga clic en Permitir acceso
  2. Volverá a la página de métodos de la API. Ahora se rellena el valor de Autorización.

    • Copie el siguiente script en un editor de texto (este script es solo un ejemplo con una configuración mínima; su código de producción será diferente)
    •  Inserte el valor de trasientDocumentId en el código donde se indique
    { "fileInfos": [ {"transientDocumentId":"PASTE YOUR TRANSIENTDOCUMENTID HERE"} ], "name": "test doc", "participantSetsInfo": [ { "memberInfos": [ { "email": "noreply@echosign.com" } ], "order": 1, "role": "SIGNER" } ], "signatureType": "ESIGN", "state": "DRAFT" }

     

    • Copie el script personalizado y, a continuación, péguelo en el campo AgreementInfo
    • Haga clic en el botón Probar.
    Método de acuerdo del POST

  3. Se genera la respuesta.

    El agreementID se encuentra en el cuerpo de la respuesta:

    Respuesta del método de acuerdo del POST

A continuación se indican los pasos que se deben seguir para agregar archivos en el parámetro FileInfo:

  1. Usar el ID transitorio:

    Vaya a POST/transientDocuments y cargue el documento que se va a utilizar desde el sistema local.
    Utilice el ID transitorio generado en la sección Información de archivo en POST/Acuerdos:

    "fileInfos": [ { "transientDocumentId": "" } ],
  2. Usar el ID del documento de la biblioteca:

    Vaya a Tablero. Haga clic en Añadir documento a la biblioteca y guarde la plantilla.
    En Documentación de la API REST, haga clic en GET /libraryDocuments y recupere el ID de la biblioteca para la plantilla que se está creando.
    En POST/Acuerdos, proporcione el ID del documento de la biblioteca:

    "libraryDocumentId": "", "libraryDocumentName": "",
  3. Usar la URL disponible públicamente:

    Proporcione la dirección URL de acceso público que se utilizará en el parámetro FileInfo:

    { "documentURL": { "mimeType": "", "name": "", "url": "" },
  1. Seleccione la opción Acuerdos > POST/Acuerdos. 

  2. Seleccione la opción Token de acceso de OAuth y proporcione los ámbitos necesarios.

  3. Una vez agregado el token de acceso, puede utilizar el siguiente código de solicitud:

    { "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*"} ] } }

En la llamada de POST/Acuerdos, para el parámetro signatureflow, puede establecer el valor SENDER_SIGNS_FIRST o SENDER_SIGNS_LAST para agregar al remitente como primer o último firmante respectivamente.

A continuación se muestra un ejemplo de la llamada en formato JSON:

{

  "documentCreationInfo": {

    "fileInfos": [

      {        "transientDocumentId":"3AAABLblqZ-yourIDGoesHere"

      }

    ],

    "name": "Test",

    "recipientSetInfos": [

      {

        "recipientSetMemberInfos": [

          {

            "email": "test@email.com"

          }

        ],

        "recipientSetRole": "SIGNER"

      }

    ],

    "signatureType": "ESIGN",

    "signatureFlow": "SENDER_SIGNS_FIRST"

  }

}

Nota:

La opción para enviar en nombre de otro usuario solo está disponible en la versión 6 de la API REST con uso compartido avanzado.

Si el permiso de envío no se proporciona al compartir o si la función de uso compartido avanzado no está activada, obtendrá una respuesta como la siguiente:

 

{"code":"PERMISSION_DENIED","message":"El usuario proporcionado en el encabezado en x en nombre del usuario no dispone de los permisos necesarios para realizar esta operación."}

 

Para disponer de la función de envío en nombre de otro usuario, habilite la función de uso compartido avanzado de cuentas para que los usuarios puedan conceder permisos de envío a otros usuarios al compartir su cuenta. Para obtener información sobre la función de uso compartido avanzado, consulte Activación de la función de uso compartido avanzado de cuentas.

Una vez que el uso compartido de usuarios esté activado, siga los pasos que se indican a continuación para realizar envíos en nombre de otro usuario:

Generación de un documento transitorio:

  1. En transientDocuments, haga clic en POST /transientDocuments.

  2. Para generar un token de autorización, haga clic en el botón TOKEN DE ACCESO DE OAUTH.

  3. En x en nombre del usuario, proporcione el correo electrónico del usuario en cuyo nombre desea realizar el envío con el siguiente formato: email:test@email.com

  4. Para seleccionar un archivo, haga clic en Seleccionar archivo y, a continuación, haga clic en Probar.

    Recibirá una respuesta como la siguiente con transientDocumentId:

    {"transientDocumentId":"3AAABLblqZhB9Mjo0mrIu_pSgrf5VsMaKM68_Vmn80cimaqiUAD2OxrPp2e5H8GvjfiOxj4d5B8bCPkUfvaozW3KLisp_wseGVOL8A7oNZni1DWyFi4uNoxLQu4nUO44Wh63GQv9_HEJMePust0Pk94vJ_rbS96R7ic-vl7jbOkN0b4EB5-JMqlC-Fl_Vpyz8I1EQUrM5I4nB9ztMov4ad00yiOtDw0tB-Y2t5JdzM07P-mpJmwYEl8Fq2IeDuWjcR2tV7qY7TNGX2CNyh9jt0aMyduHeYa0GABr69z8Hm76eKdtaM_1E1ggWj205fSrNcwJsnpSO278*"}

Generación de un acuerdo mediante el documento transitorio:

  1. En los acuerdos, haga clic en POST /acuerdos.

  2. Para generar un token de autorización, haga clic en el botón TOKEN DE ACCESO DE OAUTH.

  3. En x en nombre del usuario, proporcione el correo electrónico del usuario tal y como se ha hecho al crear el documento transitorio.

  4. En AgreementInfo, añada el siguiente código y, a continuación, haga clic en Probar.

    { "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" }

     

    Recibirá una respuesta como la siguiente con agreementId:

    { "id": "CBJCHBCAABAAUlen3l_fzlj1Kbn_wGZAhYcIgN0J7Qtq" }
  1. Inicie sesión en Adobe Sign.

  2. Vaya a  Cuenta>API de Adobe Sign>Información de API y, a continuación, haga clic en Documentación del método de API REST.

    Interfaz de usuario de Webhook

  3. POST /transientDocuments, cargue un archivo y cree un ID de documento transitorio.

  4. Copie el ID de documento transitorio y utilícelo en el método POST /acuerdos. Mencione la siguiente solicitud JSON en el cuadro:

    { "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": "Revise y firme este 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", "formFields": null, "fileInfos": [{ "libraryDocumentName": null, "transientDocumentId": "XXXXXXXXXXXX", "documentURL": null, "libraryDocumentId": null }] } }
  5. Para ejecutar la solicitud JSON, haga clic en el botón Probar.

    Interfaz de usuario de Webhook

    El JSON correcto devuelve la respuesta con el ID del acuerdo.

    Interfaz de usuario de Webhook

A continuación se indican los parámetros que puede aprobar en el código para ajustar la contraseña de 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": "Abrir la contraseña para ver el documento",

               "securityOptions": {        

            "openPassword": "1234",

                     "protectOpen": true   

        }  

    }]

}

 

Para crear un acuerdo mediante una API con el estado "AUTHORING", siga los pasos que se indican a continuación:

Vaya a POST /acuerdos y cree el token de acceso con los ámbitos necesarios.

Utilice el código de solicitud como se indica a continuación:

 

{

  "fileInfos": [

    {

      "transientDocumentId": "*********************"

    }

  ],

  "name": "A1",

  "participantSetsInfo": [

    {

      "memberInfos": [

        {

          "email": "abc@xyz.com"

        }

      ],

      "order": 1,

      "role": "SIGNER"

    }

  ],

  "signatureType": "ESIGN",

  "state": "AUTHORING"

}

 

La versión 6 incluye un conjunto de API de creación para crear un acuerdo. En la versión 5, los formFields se consumen directamente en la API de POST /acuerdos. Sin embargo, en la versión 6, el usuario puede crear un acuerdo en el estado AUTHORING (estado = AUTHORING) a través de POST /agreements de la versión 6 y utilizar el PUT /agreements/ID/formFields posteriormente en cualquier momento para agregar campos de formulario a los documentos de este acuerdo.

A continuación se indican los pasos:

  1. Vaya a la documentación de la versión 6 de API REST y seleccione el método POST/acuerdos.

  2. Utilice el siguiente código de solicitud:

    { "fileInfos": [ { "transientDocumentId": "***************************" } ], "name": "test", "participantSetsInfo": [ { "memberInfos": [ { "email": "abc@gmail.com" } ], "order": 1, "role": "SIGNER" } ], "signatureType": "ESIGN", "state": "AUTHORING" }
  3. Utilice el método put /agreements/{agreementId}/formFields con la siguiente solicitud como ejemplo:

    { "fields": [ { "locations": [ { "height": 36, "left": 75, "pageNumber": "1", "top": 200, "width": 150 } ], "contentType": "SIGNATURE_BLOCK", "name": "sigBlock1", "inputType": "SIGNATURE", "recipientIndex":1 } ]}

     

    Envía el acuerdo al destinatario mencionado una vez completada la solicitud.

  1. Inicie sesión en Adobe Sign.

  2. Vaya a  Cuenta>API de Adobe Sign>Información de API y, a continuación, haga clic en Documentación del método de API REST.

    Interfaz de usuario de Webhook

  3. POST /transientDocuments, cargue un archivo y cree un ID de documento transitorio.

  4. Copie el ID de documento transitorio y utilícelo en el método POST /acuerdos. Mencione la siguiente solicitud JSON en el cuadro:

    { "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": "Revise y firme este 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 } ] } }
  5. Para ejecutar la solicitud JSON, haga clic en el botón Probar.

    Interfaz de usuario de Webhook

    El JSON correcto devuelve la respuesta con el ID del acuerdo.

    Interfaz de usuario de Webhook

  1. Inicie sesión en Adobe Sign.

  2. Vaya a  Cuenta>API de Adobe Sign>Información de API y, a continuación, haga clic en Documentación del método de API REST.

    Fnord.

  3. POST /transientDocuments, cargue un archivo y cree un ID de documento transitorio.

  4. Copie el ID de documento transitorio y utilícelo en el método POST /acuerdos. Mencione la siguiente solicitud JSON en el cuadro:

    { "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": "Revise y firme este documento.", "locale": "en_US", "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED", "formFieldLayerTemplates": [], "name": "Adobe Sign Agreement", "formFields": null, "fileInfos": [{ "libraryDocumentName": null, "transientDocumentId": "XXXXXXXXXXXX" }] } }
  5. Para ejecutar la solicitud JSON, haga clic en el botón Probar.

    Fnord.

    El JSON correcto devuelve la respuesta con el ID del acuerdo.

    Fnord.

  6. Para abrir el acuerdo en el modo de Creación, copie la URL y péguela en la barra de direcciones de un navegador.

  7. Arrastre y suelte los campos de formulario  en la ubicación requerida.

  8. Para enviar el acuerdo para su posterior firma, haga clic en Enviar. 

Utilice POST/acuerdos para crear un acuerdo. Lo envía para que se firme y, a continuación, devuelve el agreementID en la respuesta al cliente. A continuación se muestra el formato JSON para enviar un acuerdo mediante el método de Autenticación telefónica.

 

{

"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,

"mensaje": "Revise y firme este 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"

}

}

 

Puede combinar directamente los datos en los campos del formulario mediante los siguientes métodos:

  • Con ayuda de una plantilla de biblioteca:

    Si utiliza un ID de plantilla de biblioteca en el parámetro FileInfo, asegúrese de proporcionar el nombre de campo exacto y sus datos asociados en la sección siguiente:

 

"mergeFieldInfo": [

     {

       "defaultValue": "",

       "fieldName": ""

     }

   ],

 

  • Mediante el uso de etiquetas de texto en un documento cargado como documento transitorio:

    Si carga un documento que tiene etiquetas de texto añadidas como documento transitorio, asegúrese de proporcionar el nombre exacto del campo y sus datos asociados en la sección siguiente: 

 

"mergeFieldInfo": [

     {

       "defaultValue": "",

       "fieldName": ""

     }

   ],

 

¿Cómo se envía un acuerdo utilizando una API que tiene valores previamente rellenados para los campos de formulario específicos (mergefield)?

El requisito previo de esta llamada es completar en primer lugar el paso "Carga transitoria" y, a continuación, obtener un "TransientDocumentId" (usando: secure.na1.echosign.com/public/docs/restapi/v5#/transientDocuments/createTransientDocument) para utilizarlo aquí.

  • Esta llamada incluye la sección "mergeFieldInfo", en la que se proporcionan los valores predeterminados para los campos de formulario específicos.
  • Esto rellena previamente los datos de otro sistema en la llamada de API.
  • Estos campos del acuerdo son editables o de solo lectura.

 

Requisitos previos:

  1. ID del documento transitorio
  2. Nombres de los campos y sus valores

 

Ejemplo de llamada de solicitud:

 

Solicitar:

POST /api/rest/v5/agreements HTTP/1.1

Host: api.na1.echosign.com (o puede especificar el nombre del recurso compartido, que puede encontrar mediante la llamada getbaseURis: https://secure.na1.echosign.com/public/docs/restapi/v5#!/base_uris/getBaseUris

Token de acceso: 2AAABLblqZhA_D1mluNKQP7py5vXtt-1UHl9NR25e_C3LnKTUH14IblbrXODbXGRozyr7ChBkJNM*

x-user-email: sender@yourdomain.com

Tipo de contenido: aplicación/json

Cache-Control: no-cache

 

{

   "documentCreationInfo": {

       "signatureType": "ESIGN",

       "recipientSetInfos": [

           {

               "recipientSetMemberInfos": [

                   {

                       "email": “signerEmail@domain.com"

                   }

               ],

               "recipientSetRole": "SIGNER"

           }

        ],

      

       "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED",

       "message": "Firme esto que le enviamos.",

       "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 respuesta a esta llamada es el "agreementId" que debe almacenar en el sistema para las llamadas posteriores (signingUrl, estado, formData, etc.)

 

Respuesta:

{

  "agreementId": "3AAABLblqZhCf_7xDcrOgKFwAabp1S-OFfvUdHf2wJsSMwlB95_x_WdUeab67jOkJi1IJzWuSJ0zdNNKugS1blZB4LT5vNVyJ"

}

 

Al ejecutar el método "post /megaSigns/{megaSignId}/vistas", se muestra un error como "La vista solicitada no está disponible para el recurso en el estado actual".

El error se muestra si el valor del parámetro de nombre proporcionado no es válido en el siguiente código de solicitud:

{
  "name": " "
}

Por ejemplo, si el acuerdo de MegaSign ya está "IN_PROCESS", al proporcionar un valor como "AUTHORING", se genera el error mencionado. Asegúrese de que el valor proporcionado se ajusta al estado actual del acuerdo.

Al ejecutar el método "put /megaSigns/{megaSignId}/state", se muestra un error como "No se ha proporcionado ningún valor para la información de cancelación de MegaSign."

El error se produce cuando al código de la solicitud le falta el parámetro: 

 "megaSignCancellationInfo": {
    "comment": "",
    "notifyOthers": false
  }

En lugar de utilizar el "Esquema mínimo", haga clic en "Esquema de modelo completo" y proporcione el código de solicitud completo para ejecutar la llamada de la API. 

Para cambiar el estado del acuerdo de MegaSign, utilice put /megaSigns/{megaSignId}/state y siga los pasos que se indican a continuación:

  1. Vaya a Documentación de la API de REST para la versión 6 y seleccione el método  
    put /megaSigns/{megaSignId}/state.
  2. Proporcione el valor de autorización y también los valores de If-Match y megasignID.
    • Para recuperar megasignID, utilice get /megaSigns
    • Para recuperar If-Match, utilice get /megaSigns/{megaSignId} y, debajo del encabezado, busque "Etag"
  3. {
      "state": "CANCELED",
      "megaSignCancellationInfo": {
       "comment": "cancel",
       "notifyOthers": false
      }

Para registrar correctamente un webhook, la URL de webhook responde a esta solicitud de verificación con un código de respuesta 2XX y, además, puede devolver el mismo valor de ID de cliente de una de las dos maneras siguientes:

  1. En un encabezado de respuesta X-AdobeSign-ClientId. Es el mismo encabezado, que se transfiere en la solicitud y se reproduce en la respuesta.
  2. En el cuerpo de la respuesta de JSON con la clave X-AdobeSign-ClientId y su valor es el mismo ID de cliente que se envía en la solicitud.

Adobe Sign recibe la respuesta 2xx con X-AdobeSign-ClientId. El usuario puede comprobar si está configurado correctamente en webhook o no.

La URL de webhook no responde según el comportamiento esperado. Por cada notificación de Post enviada por Adobe Sign, la dirección URL responde con un código de estado 2XX y devuelve el ID de cliente enviado en los encabezados de solicitud (X-AdobeSign-ClientId) en los encabezados de respuesta. 

Para obtener información completa, consulte el siguiente vínculo:
https://www.adobe.io/apis/documentcloud/sign/docs.html#!adobedocs/adobe-sign/master/webhooks/webhook_events.md

Cuando la dirección URL no cumple este protocolo, Adobe Sign considera que no ha reconocido la solicitud e intenta volver a programar según la política fiable.

Si el webhook no responde y se supera el tiempo máximo de reintento o el intervalo máximo de reintento, el webhook se deshabilita.

Esta obra obtiene su licencia de una Licencia de Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported  Las publicaciones de Twitter™ y Facebook no se incluyen en los términos de Creative Co


Administrar/Obtener información sobre acuerdos

Para cambiar el documento ya enviado para firmar, utilice el método como PUT /agreements/{agreementId} que le permite actualizar un acuerdo existente. Indique el ID transitorio junto con el ID del acuerdo en el siguiente código de solicitud:

 

{

  "documentUpdateInfo": {

    "fileInfos": [

      {

        "agreementDocumentId": "",

        "transientDocumentId": ""

      }

    ]

  }

}

 

A continuación se indican las instrucciones para actualizar el estado de "AUTHORING" a "IN_PROCESS" mediante Put /agreements/{agreementId}/state:

  1. Obtenga el ID del acuerdo recuperado mediante el método POST/Acuerdo.

  2. Utilice Get /agreements/{agreementId} para recuperar la última ETag.

  3. Vaya a Put /agreements/{agreementId}/state y, a continuación, proporcione la siguiente información: "estado": "IN_PROCESS"

No.

No hay ningún método para cargar una copia firmada en la API REST actual.

El remitente debe cargar la copia firmada desde la página Administrar.

DELETE /acuerdos/ID se utiliza para ocultar un acuerdo de la página de gestión.

Adobe tiene una nueva PUT /agreements/ID/me/visibility de la API para controlar la visibilidad de un acuerdo (en GET /agreements). Además de la funcionalidad proporcionada por DELETE /acuerdos/ID, el nuevo punto final de visibilidad también permite al usuario revertir la operación "ocultar", es decir, volver a hacer visible el acuerdo. 

También puede seguir los pasos detallados que se indican a continuación:

  1. Vaya al método get /agreements y recupere el ID del acuerdo.
  2. Haga clic en put /agreements/{agreementId}/me/visibility y, a continuación, proporcione la siguiente solicitud como ejemplo:
    {
      "visibility": "HIDE"
    }
    El ID del acuerdo solo está oculto en get /libraryDocuments; sin embargo, sigue visible en la interfaz de usuario de la pestaña Administrar.
Nota:

La función de retención de la API no está activada de forma predeterminada.

Para habilitar la operación DELETE/acuerdos, póngase en contacto con su administrador de éxito y solicite que se active la retención de API para la cuenta.

Para obtener más información sobre cómo habilitar las funciones de retención para su cuenta, consulte Adobe Sign - Retención de documentos.

  1. Inicie sesión como administrador de Adobe Sign y vaya a:  https://secure.adobesign.com/public/docs/restapi/v6

    • Haga clic en los acuerdos y amplíe el método GET /agreements 
    • Haga clic en el botón del TOKEN DE ACCESO DE OAUTH 
    • Active el ámbito agreement_read:self
    • Haga clic en el botón Autorizar
      • Si se le solicita, haga clic en Permitir acceso
    • Haga clic en el botón Probar. 
    Método de obtención de acuerdo

  2. Se genera la respuesta.

    El agreementId se encuentra en el cuerpo de la respuesta:

    Obtener respuesta del acuerdo

  3. DELETE /acuerdos/{agreementId}/documentos: Elimina todos los documentos relacionados con un acuerdo. El propio acuerdo permanece visible en la página Administrar.

    • Seleccione la operación DELETE/acuerdos que se va a ejecutar.
    • Haga clic en el botón TOKEN DE ACCESO DE OAUTH y cree el token de acceso con el ámbito agreement_retención.
    • Proporcione el agreementId del acuerdo que desea eliminar.
    • Una vez que se elimina el acuerdo, el cuerpo de respuesta "no tiene contenido".

Se obtiene la siguiente respuesta si la operación DELETE/acuerdos no está habilitada:

 "code": "DYNAMIC_DOCUMENT_EXPIRATION_NOT_ENABLED",

  "message": "Para llevar a cabo esta operación es necesario habilitar algunos valores de configuración de la cuenta. Póngase en contacto con el equipo de Adobe Sign para activar la configuración."

Cómo descargar el documento firmado junto con el informe de auditoría y el documento de respaldo a través de la API REST de Adobe Sign, en lugar de realizar una llamada por separado para descargar el informe de auditoría usando el siguiente método.

GET /agreements/{agreementId}/auditTrail

  1. Haga clic en GET /agreements/{agreementId}/combinedDocument.

  2. Haga clic en el botón del token de acceso de OAuth.

  3. El token de acceso se genera automáticamente una vez que se acepta su autorización.

  4. Proporcione el agreementId.

  5. En attachSupportingDocuments, seleccione true en el menú desplegable.

  6. En attachAuditReport, seleccione true en el menú desplegable.

  7. Haga clic en el botón Probar .

    Obtener documentos combinados

    Descarga el PDF combinado de los documentos firmados, los documentos de respaldo y el informe de auditoría.

Para descargar documentos en bloque, solo está disponible la herramienta de exportación de documentos y con la API solo es posible descargar documentos uno por uno. A continuación se muestra el método API para lo mismo:

https://secure.na1.adobesign.com/public/docs/restapi/v5#!/agreements/getCombinedDocument


Plantillas de biblioteca y formularios web

  1. Inicie sesión en Adobe Sign como administrador y vaya a: https://secure.na1.adobesign.com/public/docs/restapi/v6

    • Haga clic en los libraryDocuments y amplíe el método GET /libraryDocuments
    • Haga clic en el botón del TOKEN DE ACCESO DE OAUTH 
    • Active el ámbito library_read:self
    • Haga clic en el botón Autorizar
      • Si se le solicita, haga clic en Permitir acceso
    • Haga clic en el botón Probar. 
    Método de obtención de LibraryDocument

  2. Se genera la respuesta.

    El libraryDocumentId se encuentra en el cuerpo de la respuesta:

    Obtener respuesta de LibraryDocument

Adobe tiene una nueva PUT/libraryDocuments/ID/me/visibility de la API para controlar la visibilidad de un acuerdo (en GET /agreements). Además de la funcionalidad proporcionada por DELETE /acuerdos/ID, el nuevo punto final de visibilidad también permite al usuario revertir la operación "ocultar", es decir, volver a hacer visible el acuerdo.

Puede seguir los pasos detallados que se indican a continuación:

  1. Vaya al método get /libraryDocuments y recupere el ID del acuerdo.
  2. Haga clic en put /libraryDocuments/{libraryDocumentId}/me/visibility y, a continuación, proporcione la siguiente solicitud como ejemplo:
    {
      "visibility": "HIDE"
    }
    El ID del acuerdo solo está oculto en get /libraryDocuments; sin embargo, sigue visible en la interfaz de usuario de la pestaña Administrar.
Nota:
  • Envíe una solicitud al equipo de asistencia para habilitar el ámbito para la eliminación de biblioteca.
  • La API elimina el documento de la biblioteca. Sin embargo, los acuerdos creados con este documento de la biblioteca no se ven afectados.


Generación de un libraryDocumentID

  1. Vaya a https://secure.echosign.com/public/docs/restapi/v5.

  2. Haga clic en libraryDocuments.

  3. Haga clic en el botón del token de acceso de OAuth

    Autorizar acceso: token para usted, para su grupo o para su cuenta.

  4. Seleccione libraryTemplateType : documento o Form_field_layer.

  5. Haga clic en Probar.

    Puede recibir una respuesta como la siguiente para todas sus plantillas. (Copie libraryDocumentId para la plantilla de biblioteca que desea eliminar).

    { "libraryDocumentList": [ { "name": "testing fields", "modifiedDate": "2017-08-04T01:06:05-07:00", "scope": "PERSONAL", "libraryDocumentId": "3AAABLblqZhAK53Dvzq88Q1Ov0TEvMAySDPpIVjF1PWgUpy0H1uYggt4iwGiRSZYlWfl9ms_AcmgZ_uZMPPN2hNT9izwaspHc", "libraryTemplateTypes": [ "DOCUMENT" ] },


Eliminación de plantillas de biblioteca

  1. Copie libraryDocumentID del cuerpo de la respuesta.

  2. Vaya a Eliminar documentos de biblioteca.

  3. Haga clic en el botón del token de acceso de OAuth. Autorizar acceso: token para usted, para su grupo o para su cuenta.

  4. Pegue el libraryDocumentId en el campo Valor.

  5. Haga clic en Probar. 
    La plantilla se elimina.

    Se obtiene el siguiente código de respuesta: 204

Nota:

Solo se pueden actualizar los formularios web con un estado de Borrador.

  1. Cree el widget con post /widgets.

  2. Obtenga el ID del widget de get/widgets.

  3. Una vez creado mediante el método GET /widgets/{widgetId}, busque la etiqueta Etag desde el encabezado Respuesta.

    Foo

  4. En put  /widgets/{widgetId}, utilice la etiqueta Etag desde GET /widgets/{widgetId}. En el parámetro If-Match, introduzca widgetId y widgetInfo.

    Foo

    { "fileInfos": [ { "transientDocumentId": "******" } ], "name": "Widht_Name", "status": "DRAFT", "widgetParticipantSetInfo": { "memberInfos": [ { "email": "" } ], "role": "SIGNER" } }


Ejemplos de casos de uso

  1. Haga una llamada de get/acuerdos con el usuario x de api adecuado.

  2. En el cuerpo de la respuesta, localice el acuerdo para firmar para el que desea buscar la URL de firma y, a continuación, anote el ID del acuerdo

  3. Realice una llamada de get/acuerdos/{agreementId}/signingUrls, utilizando el ID de acuerdo que recibió de la llamada de get/acuerdos.

     

    Resultado

    El resultado devuelve la dirección de correo electrónico del firmante o los firmantes, así como la URL de la firma electrónica.

    Método de obtención de acuerdo

Logotipo de Adobe

Inicia sesión en tu cuenta