Seal a document


A seal is a signature by a moral person. To activate the seal feature, your workspace must own a certificate for moral person (CPM), issued by Universign upon demand.

To request a document to be sealed by a moral person, you must first create a signature field and then, assign a seal ID to that field.

Create a signature field

To create a field, send a request to POST /v1/transactions/{transaction_id}/documents/document{id}/fields and pass signature in the type argument (note that this is the default value, so it is not mandatory to set the type.)

curl \
-d type=signature

You are returned a field ID in the API response:

    "id": "fld_a998",
    "type": "signature",
    "built_in": false,
    "consents": [],
    "updatable": true,
    "deletable": true

Assign a seal ID to the field

To request the document to be sealed, send a request to POST /v1/transactions/{transaction_id}/signatures and pass the field ID (via the field argument) and the seal ID (via the signer argument), as follows:

curl \
-d signer=scd_5x \
-d field=fld_a998

You may need to use a custom logo for the seal that will display on your document. You can use either the Universign logo, the issuing entity logo or even seal a document with no logo. This endpoint, allows you to define the logo that will display on your sealed document.

To update the logo that will display on your sealed document, send a request to POST /v1/transactions/{transaction_id}/seals/{seal_id} and pass the logo_display argument:

curl \
-d logo_display=issuing_entity

The logo_display accpeted values are as follows:

  • certifcate: if you want to use the Universign logo
  • issuing_entity: if you want to use the issuig_entity logo (default value)
  • none: if you don’t want to use any logo

The API returns a seal sub-object.

  "id": "scd_5x",
  "name": "scdName",
  "logo_display": "issuing_entity"

Remove a signer from a field

You can remove a signer from a field. To do so, add the delete boolean to your request and set it to true.

curl \
-d signer=scd_5x \
-d field=fld_a998 \
-d delete=true

Position a field

A seal can be visible or invisible in the PDF. When you create a field, it is by default invisible but you can specify its position on a document page.

You can specify the field position by setting its coordinates on the document page or by using an anchor:

With coordinates

A field’s position is defined by the page number as well as horizontal (x) and vertical (y) pixels coordinates. To specify the position, send a request to POST /v1/transactions/{transaction_id}/documents/{document_id}/fields/{field_id} and pass the position arguments:

curl \  
-d page=1 \ 
-d x=75 \ 
-d y=200  

With an anchor

Universign can search for a string in the document and automatically position the signature field underneath it. To position the field, send a request to POST /v1/transactions/{transaction_id}/documents/{document_id}/fields and pass the string value as the anchor argument:

curl \
-d anchor=client signature  

Note that the position of a field can be set upon field creation via the endpoint (POST /v1/transactions/{transaction_id}/documents/document{id}/fields), or when the field already exists via the endpoint (POST /v1/transactions/{transaction_id}/documents/{document_id}/fields/{field_id}).

Multiple fields

You can create as many signature fields as needed in the document.

For more options on fields, visit add a field.

Request document consultation
Request document validation
Developer tools
API reference