Create package
Creates a package and, optionally, everything it contains in a single request.
A package is the central object in NSEV: a container for one or more documents that are sent for signing, together with the stakeholders and actors who act on them.
There are two ways to create a package:
- Build it up incrementally. In its simplest form this call needs only the
package
Nameand theInitiator. The package is created empty (statusDraft) and you add documents, elements, stakeholders, actors and process steps afterwards with their respective calls. - Super call. Define every object in one request, mimicking the “Instant Package” behaviour of API v3: create the package, add documents, elements, stakeholders, actors and the process all at once. (Not applicable when creating from a template.)
When building a super call with multiple documents, you have not yet received
the document IDs, so elements reference their target document by position
using DocumentIndex (0 = first document in the call, 1 = second, and so on).
Creating from a template. Pass a TemplateCode to create a package that
is pre-populated from a saved template. When a template code is used, the only
other mandatory parameter is Initiator; Name, ExternalReference and
ProofCorrelationId are optional, and all other package settings are taken
from the template (any values you pass for them are overwritten by the
template).
Size limitations
- A package must not exceed 150 MB.
- A package must not contain more than 15 documents, and each document must not exceed 30 MB.
- An
.xmlfile must not contain more than 2 million characters, and a package must not contain more than 15.xmlfiles. - Large files may affect signing performance depending on the signer’s internet connection.
API requests never trigger a callback; callbacks fire only on end-user actions in the Portal or Signer application.
Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Body
- Create package
- Create package from template
Request for creating a package
Name of the package. It is shown in the NSEV WebPortal and used as the
file name when the package is downloaded as a .zip file, so do not add a file
extension.
Avoid forbidden file-name characters - slash (/), backslash (\), question
mark (?), percent (%), asterisk (*), colon (:), pipe (|), single
quote, double quote ("), less-than (<) and greater-than (>) - and
HTML-sensitive characters such as ampersand (&) and apostrophe. This list is
not exhaustive. When using itsme signing, use only characters supported by
ISO 8859-15; some software-generated characters such as curly apostrophes and
long dashes are not supported.
1 - 150"example package"
Email address of a known user of the webSigner portal
"hello@world.test"
Status the package will have once created. By default a package is created
in Draft. Set Pending to send it for signing immediately.
Draft, Pending Identifier of the document group the package is uploaded to. By default an
initiator uploads to their personal "My Documents" folder, which cannot be
shared. An NSEV admin can configure additional document groups so users
can collaborate on each other's packages. To use "My Documents", omit this
parameter or pass 00001; to use a specific group, pass its document group
code. Use the Get document groups call to discover the configured codes.
Date and time when the package (and every document in it) expires and can no longer be form filled, approved or signed. ISO 8601 date-time.
Parameters for creating a stakeholder
- Person stakeholder
- Group stakeholder
- Contact group stakeholder
The default legal notice that will be added to a signer when none was specified
- Custom legal notice text
- Named legal notice from Config Index
Theme code applied to the package's look and feel. When omitted, the theme configured at environment level in the Config Index - or at document-group level if applicable - is used.
Absolute URL, without query parameters, that NSEV calls with an HTTP POST whenever the package's status changes, so an external system can react. Callbacks fire on end-user actions such as: a user changing the package from Draft to Pending or revoking it in the Document Portal, confirming in a drag-and-drop editor, a signer completing all their fields or rejecting, all signers signing, an approver approving, form fillers completing fields, or the system setting the package to Failed. API requests never trigger a callback.
The POST body is application/json containing packageId and
packageStatus, e.g.
{"packageId":"d2912916-c555-47af-b666-1e8cf2eb9dfa","packageStatus":"Finished"}.
If the external system needs more information it can issue a Get package by
ID call. The callback has a 100-second timeout: if your service does not
respond in time, NSEV forces the timeout and finishes the flow as if
it had received 200 OK, so respond as quickly as possible and run any
follow-up work asynchronously. On error, NSEV retries the callback
3 times over 3 retry cycles by default (configurable by administrators).
URL called each time a signer requests a new signing URL. NSEV uses one-time signing URLs, so a link expires once clicked and a new one must be requested; when set, this URL lets a remote service decide what to do instead of sending the usual email.
The remote service is called once per user action (no retry unless the end
user requests another notification) with an application/json POST body
containing packageId, actorId, language and notificationTypeKey.
Current notificationTypeKey values are SendActionUrl (the single-use
action link was already used and a new one was requested) and
SendDownloadUrl (the single-use download link was already used and a new
one was requested); ignore other values without erroring, as the list may
grow. NSEV waits for the service to finish before returning control
to the end user, so it must respond within seconds. This is separate from
SuppressNotifications. On error, NSEV retries 3 times over 3 retry
cycles by default.
Default url to which stakeholders will be redirected after completing their actions. Set on package submit, when actor has no RedirectUrl.
Absolute URL, without query parameters, that the end user is redirected to after signing or rejecting all fields face to face in the Document Portal. Do not confuse this with a regular redirect URL - it applies only to face-to-face signing.
NSEV appends SessionID (the package signing session, i.e. the
package ID), Status (FINISHED, REJECTED or INVALIDTOKEN) and
PackageExternalReference (the package's ExternalReference). Because the
redirect happens client-side the end user can counterfeit it, so verify the
outcome through a second secure channel (the callback URL) or by checking
session state, then confirm with a Get package status call.
During asynchronous signing, configuring an F2fRedirectUrl removes the Close button (which would otherwise let the signer leave while signing continues in the background); signers instead see a message that they will be redirected.
Whether an actor can download the package from the WYSIWYS (What You See Is
What You Sign) page before form filling, approving, signing or rejecting -
for example to print and read it on paper. When omitted, the value of the
Config Index setting IsDownloadUnsignedFilesEnabled (Customization
Settings) is used.
Whether a stakeholder may reassign their action to another party. When
omitted, the value of the Config Index setting IsReassignEnabled
(Customization Settings) is used.
External reference to this resource set by the calling application. NSEV does not use this value itself. When filtering packages, this matches the package-level external reference only, not document or field references.
256Number of days after which unused action URLs expire. When omitted, the
value is taken from the Config Index setting IsActionUrlExpirationEnabled
(Customization Settings). The maximum equals the number of days left until
9999-12-31.
x >= 1Id for correlating with other resources in the proofs system
Whether the initiator is added as a receiver of the package automatically,
so you do not have to add them with a Create actor call. Overrides the environment-level
IsAddInitiatorAsReceiverEnabled setting; when that setting is already
true, every initiator is added as receiver and passing this is unnecessary.
Whether the package is sent to the external archive when it reaches the Finished status. Ignored when archiving is not configured at environment level; when archiving is configured, every package is archived by default, so passing this is unnecessary.
Whether the audit proofs are sent to the external archive when the package is Finished. Ignored when archiving is not configured or audit proofs are disabled in the audit tools or archive settings.
Whether the audit trail is sent to the external archive when the package is Finished. Ignored when archiving is not configured or the audit trail is disabled in the audit tools or archive settings.
Contains information about automatic reminder settings for the package which will be created. Please note that values are taken from configuration defaults for the response, if object is empty.
Contains information about expiration reminder settings for the package which will be created. Please note that values are taken from configuration defaults for the response, if object is empty.
Contains settings for the package OTP authentication
Response
Package was created
Response model for a created package
A package's unique identifier
"00000000-0000-0000-0000-000000000000"
Name of the package. It is shown in the NSEV WebPortal and used as the
file name when the package is downloaded as a .zip file, so do not add a file
extension.
Avoid forbidden file-name characters - slash (/), backslash (\), question
mark (?), percent (%), asterisk (*), colon (:), pipe (|), single
quote, double quote ("), less-than (<) and greater-than (>) - and
HTML-sensitive characters such as ampersand (&) and apostrophe. This list is
not exhaustive. When using itsme signing, use only characters supported by
ISO 8859-15; some software-generated characters such as curly apostrophes and
long dashes are not supported.
1 - 150"example package"
The status of a package
Draft, Pending, InProgress, Ending, Finished, Archived, Rejected, Revoked, Expired, Failed, Processing, ProcessingFailed When the resource was created
When the resource will expire
Date and time in UTC when the package got revoked. Will only be present for packages that are revoked.
Email address of a known user of the webSigner portal
"hello@world.test"
This package's elements that aren't placed aynywhere yet
A field that can be signed by an actor
- Signing field
- Check box field
- Text box field
- Radio group
This package's documents
This package's stakeholders
Unspecified stakeholder
- Undecided stakeholder
- Person stakeholder
- Group stakeholder
- Contact group stakeholder
The default legal notice that will be added to a signing field
External reference to this resource set by the calling application. NSEV does not use this value itself. When filtering packages, this matches the package-level external reference only, not document or field references.
256Identifier of the document group the package is uploaded to. By default an
initiator uploads to their personal "My Documents" folder, which cannot be
shared. An NSEV admin can configure additional document groups so users
can collaborate on each other's packages. To use "My Documents", omit this
parameter or pass 00001; to use a specific group, pass its document group
code. Use the Get document groups call to discover the configured codes.
identifier of the theme this package has
url that will be called each time a signature has been put on the document
url that will be called when the signer requests a new signing url
Link to the package which allows to start a face to face signing session
Link to the package which allows only a preview of documents
Default url to which stakeholders will be redirected after completing their actions. Set on package submit, when actor has no RedirectUrl.
Url to which the end user is redirected after all fields have been signed with ‘face to face’ signing.
Whether a signer can download the unsigned content of this package or not Default when not specified is taken from config ( Customization Settings > IsDownloadUnsignedFilesEnabled )
Whether a stakeholder can reassign his/her action ( actor ) to another party.
Default when not specified is taken from config ( Customization Settings > IsReassignEnabled )
This parameter determines after how many days the action URLs must expire when they are not used. When no value is entered, this parameter takes its value from the Config Index setting IsActionUrlExpirationEnabled under Customization Settings. The maximum value equals the number of days left until 9999-12-31.
x >= 1Id for correlating with other resources in the proofs system
If true, adds the initiator as a receiver on submit. This property is only available on draft packages.
If true, the package will be sent to the external archive when status is FINISHED.
If true, the audit proofs will be sent to the external archive when package status is FINISHED.
If true, the audit trail will be sent to the external archive when package status is FINISHED.
Warnings raised while creating the package
A warning about the process of a package.
E.g. group members that don't have the necessary data to sign with a signing method
- Process warning
- Package warning
- Document warning
- Process warning
- Package warning
- Document warning
- Process warning
- Package warning
- Document warning
Contains information about a package's automatic reminder settings. Please note that values are taken from configuration defaults, if request object is empty.
Contains information about a package's expiration reminder settings. Please note that values are taken from configuration defaults, if request object is empty.
Contains settings for the package OTP authentication