Agregar un firmante al expediente

POST
/api/documentset/{uuid}/signer

Precarga un firmante para todo el expediente, sin ligarlo todavía a una página o posición. Desde la interfaz de Firmame arrastras después el recuadro de ese firmante sobre cada documento del expediente; una vez colocado en todos, cerrar el expediente arranca el flujo.

Devuelve el uuid del nuevo firmante; guárdalo para poder eliminarlo después.

Authorization<token>

Cada petición lleva Authorization: signmage {webId}:{firma}, donde firma es el Base64 de HMAC-SHA256(apiKey, cadenaFirmada).

Qué va dentro de cadenaFirmada depende de la petición:

PeticióncadenaFirmada
GETLa URI completa incluyendo el query string, exactamente como se envía
POST con JSONEl cuerpo JSON, re-serializado compacto (sin espacios ni salto de línea final)
POST multipartEl SHA-256 en Base64 del archivo, que además se manda en el header Content-SHA256

Dos detalles que conviene resolverlos desde el principio:

  1. En GET, la URI se firma tal como se envía, así que el orden y el encoding de los parámetros importan.
  2. En POST, la comparación se hace contra tu JSON re-serializado en forma compacta. Manda JSON compacto y canónico para que las firmas coincidan.

Una firma que no coincide devuelve 401 con el cuerpo vacío. Como la misma respuesta cubre un web ID desconocido, una llave inactiva y una firma que no coincide, revisa las tres cosas al diagnosticar.

En: header

Parámetros de ruta

uuid*string

El id del expediente.

Cuerpo de la petición

application/json

Definiciones de TypeScript

Usa el tipo request body en TypeScript.

Un recuadro de firma registrado en el expediente y no en un documento, para poder colocarlo manualmente en cada documento desde la interfaz de Firmame en lugar de repetirlo uno por uno.

A diferencia de un sticker normal, este todavía no lleva rect ni page: lleva width y height, y su posición en cada documento se define después, arrastrándolo en la interfaz.

Todas las propiedades de abajo son obligatorias — mándalas todas.

Cuerpo de la respuesta

application/json

curl -X POST "https://example.com/api/documentset/string/signer" \  -H "Content-Type: application/json" \  -d '{    "authority": "EMAIL_LINK",    "data": "[email protected]",    "email": "[email protected]",    "imageType": "stroke",    "stickerType": "rect",    "line": false,    "width": 200,    "height": 100  }'

{  "result": "success",  "uuid": "3f2b1a90-0c4e-4a11-9a3d-5c7e1b2f8d64"}