AEM Forms as a Cloud Service - DocAssurance Synchronous APIs (0.0.1)

You can write to mailto:aem-forms-ea@adobe.com from your official email id to join the early adopter program and request access to the capability.

Introduction

The DocAssurance service provides the ability to perform various digital signature or encryption operations with PDF documents, such as signing, certification, addition of signature fields, encryption, decryption etc.

You can find out more information about DocAssurance at Overview of AEM DocAssurance Services. Several APIs perform intricate operations on PDF documents and may employ specific terminology to accurately convey their intent. To understand these better, refer to the PDF Specification.

Before you start

Create a user account for your developer or technical account member in the forms-user group. If you do not have a technical account, make a call to AEM as a Cloud Service. When you use a service credential, a technical account is created on the first call.

BearerAuth

In token-based authentication, an access token (Bearer authentication token) is required to make requests to AEM as a Cloud Service. AEM Forms as a Cloud Service provides APIs to securely retrieve the access token. The end-to-end workflow for retrieving and using the token to authenticate a request is:

Security Scheme Type: HTTP
HTTP Authorization Scheme: bearer
Bearer format: JWT

DocAssurance

Digital signature and encryption-related operations with PDF documents.

Remove the Password based encryption from the supplied PDF document.

Authorizations:
BearerAuth
Request Body schema: multipart/form-data

A multipart request representing a PDF document decryption operation.

required
HttpUrl (string) or InlineDocument (string) or (RepoDocument (RepoPath (string) or RepoUrl (string)))

A PDF document to be decrypted. Use content-type as "text/plain" to specify a URL or a repository path.

config
required
string <password>

Document open or permission password for removing encryption from the document

Responses

Response samples

Content type
application/problem+json
{
  • "type": "string",
  • "title": "string",
  • "status": 100,
  • "detail": "string",
  • "instance": "string"
}

Encrypt the supplied PDF document using Password based encryption.

Authorizations:
BearerAuth
Request Body schema: multipart/form-data

A multipart request representing a PDF document encryption operation.

required
HttpUrl (string) or InlineDocument (string) or (RepoDocument (RepoPath (string) or RepoUrl (string)))

A PDF document to be encrypted. Use content-type as "text/plain" to specify a URL or a repository path.

required
object (EncryptConfig)

Specifies how to encrypt the document.

object (EncryptOptions)

Specifies miscellaneous encryption options.

Responses

Response samples

Content type
application/problem+json
{
  • "type": "string",
  • "title": "string",
  • "status": 100,
  • "detail": "string",
  • "instance": "string"
}

Fetch the type of security used in the supplied PDF document.

Authorizations:
BearerAuth
Request Body schema: multipart/form-data

A multipart request representing a PDF security type retrieval operation.

required
HttpUrl (string) or InlineDocument (string) or (RepoDocument (RepoPath (string) or RepoUrl (string)))

A PDF document whose security type should be retrieved. Use content-type as "text/plain" to specify a URL or a repository path.

Responses

Response samples

Content type
application/json
{
  • "mode": "NONE"
}

Sign the specified signature field in the supplied PDF document.

Authorizations:
BearerAuth
Request Body schema: multipart/form-data

A multipart request representing a sign operation.

required
HttpUrl (string) or InlineDocument (string) or (RepoDocument (RepoPath (string) or RepoUrl (string)))

A PDF document to be signed. Use content-type as "text/plain" to specify a URL or a repository path.

required
object (CredentialInfo)

Provides information about a credential.

field
required
string

The name of the signature field to be signed.

The fully qualified name of the signature field should be specified. When using a PDF document that is based on an XFA form, then the partial name of the signature field can be used. For example, form1[0].#subform[1].SignatureField3[3] can be specified as SignatureField3[3].

object (SignOptions)

Specifies configuration for signing and certification.

Responses

Response samples

Content type
application/problem+json
{
  • "type": "string",
  • "title": "string",
  • "status": 100,
  • "detail": "string",
  • "instance": "string"
}

Certify the supplied PDF document.

Authorizations:
BearerAuth
Request Body schema: multipart/form-data

A multipart request representing a certification operation.

required
HttpUrl (string) or InlineDocument (string) or (RepoDocument (RepoPath (string) or RepoUrl (string)))

A PDF document to be certified. Use content-type as "text/plain" to specify a URL or a repository path.

required
object (CredentialInfo)

Provides information about a credential.

field
required
string

The name of the certifying signature field.

The fully qualified name of the signature field should be specified. When using a PDF document that is based on an XFA form, then the partial name of the signature field can also be used. For example, form1[0].#subform[1].SignatureField3[3] can be specified as SignatureField3[3].

object (CertifyOptions)

Specific configuration to control certification behavior.

Responses

Response samples

Content type
application/problem+json
{
  • "type": "string",
  • "title": "string",
  • "status": 100,
  • "detail": "string",
  • "instance": "string"
}

Add a signature field to the supplied PDF document.

Authorizations:
BearerAuth
Request Body schema: multipart/form-data

A multipart request representing a signature field addition operation.

required
HttpUrl (string) or InlineDocument (string) or (RepoDocument (RepoPath (string) or RepoUrl (string)))

A PDF document to which this signature field should be added. Use content-type as "text/plain" to specify a URL or a repository path.

field
required
string

The name of the signature field to be added to the supplied PDF document.

object (Rectangle)

Defines the co-ordinates of the signature field.
The default position indicates an invisible signature field.

page
integer >= 1
Default: 1

The page number of the supplied PDF document to which the visible signature field should be added.

object (SignFieldOptions)

Options to control the behavior of the signature field modification operation.

Responses

Response samples

Content type
application/problem+json
{
  • "type": "string",
  • "title": "string",
  • "status": 100,
  • "detail": "string",
  • "instance": "string"
}