On 19th November 2024 it will be dismissed.
The documentation is available in the new Confluence Site: - https://namirial.atlassian.net/wiki
Section |
---|
On this page you will find the eSAW API description. First we start with a basic overview of the API. Before you use the Api Reference, we recommend you to read the API Documenation, to get an overview about our programming interface, data types and basic concepts. If you are looking for examples we recommend the Postman Sample, REST Guide and our Stories and Examples. |
Table of Contents | ||||
---|---|---|---|---|
|
Section | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
AuthorizationThis section covers a the authorization options for REST-integrationAPI integrations. For the authorization you need the OrganizationKey and the UserLoginName of your organization. You can find this two keys in Settings->Organization.have different options with REST API; as described in the next chapters. If you are authorized you will get a HTTP/200 Ok info. Otherwise you will get a 401 Unauthorized error. UserKey Header AuthorizationWe recommend to use user-specific API tokens. Therefore, each user can create several tokens for different application integrations. The apiToken has to be provided as HTTP Header.
Such an organization key can be created in Settings→API Tokens and Apps; Section "API Tokens". Tokens created by eSAW are currently 66-digit alphanumeric strings - but the length and set of allowed characters may be changed with future product versions. The User Key can also be retrieved, for integration scenarios, by implementing an OAuth Authorization Code Flow. Bearer token AuthorizationCurrently avaiable for just some API methods (e.g. sspfile/uploadtemporary). OrganizationKey and UserLogin HeaderYou can set the userlogin name and an organization-wide organization key in the HTTP headers. We recommend to avoid using organization key authorization in scenarios where the organization key has to be shared with users, as it may be misused to gain access to other sender's envelopes. Note that the key can be any 32digit alphanum value; not necessarily following the GUID format! The length and set of allowed characters may be changed with future product versions.
Such an organization key can be created in Settings→API Tokens and Apps; Section "Organization API Tokens". Note that it is necessary to activate Organizationkey feature flag to get the option to create an organization key, if the instance was set up with a newer product version; otherwise the section will not be visible. CallbacksThe API allows the definition of several callbacks. Please note, that only the envelope callback (directly from eSignAnyWhere) is fired, when the envelope is in a final state. The status update callback is fired by a sub-component and you may require to wait a post-processing time that the envelope reaches its final state. Callback Types
Envelope CallbackThis is the basic callback (“CallbackUrl”: “”), which is fired if the envelope reaches a final state (completed, rejected). If you integrate eSAW, please have a look at the Envelope Status Callback (directly below documented), because it might deliver more details about the envelope and might so be more useful for integrating. Placehoder
Sample: https://www.mycallback.at?envelope=##EnvelopeId## Envelope Status CallbackEnvelopes status callbacks (“StatusUpdateCallbackUrl”: “”,) are fired, based on envelope events/actions. There are also detailed callbacks available based on events. Consider, that our system expects the full callback url, including the parameter list you expect, with the placeholders that should be replaced by values at runtime. You can also add your own paramter for that envelope (e.g. internal references). Moreover, on our shared SaaS environments only HTTPS (port 443) callbacks are allowed. Placehoder for callback URL:
Consider, that our system expects the full callback url, including the parameter list you expect, with the placeholders that should be replaced by values at runtime. You can also add your own paramter for that envelope (e.g. internal references). Moreover, on our shared SaaS environments only HTTPS (port 443) callbacks are allowed. Sample: https://www.mycallback.at?envelope=##EnvelopeId##&action=##Action## Sample with custom parameter “internalid“: https://www.mycallback.at?envelope=##EnvelopeId##&action=##Action##&internalid=1234 Workstep Event CallbacksThe workstep event callbacks are specific event callbacks fired on events caused by the underlying "SIGNificant Server Platform" component, but also routed through the notification system of eSignAnyWhere. Those callbacks inform in a way more detailled way about the workstep events - but note that those events are not necessarily time-synced to the envelope events. To trigger activities on the eSignAnyWhere API, always consider the envelope or envelope status callbacks. |
Info | |||||||
---|---|---|---|---|---|---|---|
Detailed callbacks on specific events Note: You can configure a proxy for all callbacks. Please see the next sample:
|
Section | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
You can forward all eventtyps to your callback url or use a
Do not use blacklist and withlist at the same time! If you only want to use the event callbacks, use an empty envelope callback in the configuration ( The following placeholders are defined:
Definition without black-/whitelist:
Blacklist-Definition
Whitelist-Definition
These events are fired by the Workstep Controller (internal component) and are fired before the data in eSAW is complete updated (some postprocessing is required). Therefore this event callbacks are used only in rare integrations. Available Event TypesConfirmTransactionCode – A transaction code was sent Draft CallbacksDraft callbacks are fired, if a draft is used or deleted. The draft callback is set in the “CreateDraftOptions” (“AfterSendCallbackUrl”: “”), via the following call: https://demo.xyzmo.com/Api/v4.0/envelope/create
Sample: https://www.mycallback.at?draft=##DraftId## ErrorIn general, our REST endpoint returns different HTTP status codes:
|