OK dokument version 1.3 implemented (#3186)

* OK document files via upload

* Updated swagger

* Fix JSON format

* Fix validation errors from build

* connector category fix

* solved issues found in review

* Extended feature signature request

Added new paramater for signature request with option to disable feature "Sign Anywhere"
Fixed response result 200 from Download document action.

* Add files via upload

New version of OK dokument API implemented. Currect version 1.2

* Fixed JSON format

* Fixed JSON Format

* Update apiDefinition.swagger.json

New API version
Added new field manupulation into signature request
Modified Additional rules according to documentation v 1.3

* Update README.md

extended description how to work with signature request rules

* Delete Security.md file

* Update README.md

Added # Deployment Instructions to README.md

---------

Co-authored-by: tomisko6677 <42766898+tomisko6677@users.noreply.github.com>
This commit is contained in:
Seyfor Slovensko, a.s 2024-03-08 13:21:06 +01:00 коммит произвёл GitHub
Родитель 57ab72cd73
Коммит b2152120f6
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
3 изменённых файлов: 864 добавлений и 669 удалений

Просмотреть файл

@ -2,7 +2,7 @@
*OK dokument* delivers an easy to use and customizable electronic signature and digital content distribution platform that integrates seamlessly with your existing systems.
# Publisher
Solitea Slovensko, a.s.
Seyfor Slovensko, a.s.
# Prerequisites
You need to have an account at https://app.okdokument.com and a valid API key generated by the *OK dokument* service.
@ -12,24 +12,153 @@ You need to have an account at https://app.okdokument.com and a valid API key ge
## 1. Document Upload
Action used for uploading a PDF file to the document signature service. This action takes a base64 string and uploads it to the *OK dokument* API platform.
You can choose between two types of operations:
- tosign
- preprocessing_tags
Document passes several states during its lifetime. OK dokument API uses the following
document states:
- tags – state that searches text tags and inserts signature acrofields. After successful insertion of acrofields it automatically changes state to tosign
- tostamp – state that insert digital stamp into the document
- tosign – document ready to be signed
- signed – signed document (within given signatureRequestID)
- errorsendinfo – error while calling info service
- canceled – canceled document – signer pressed the “Cancel” button in the document
**tosign** document operation uploads a document and prepares the document for electronic signature.
**preprocessing_tags** document operation will check your document for unique strings `_sig1_, _sig2_, _sig3_, _sig4_, _sig5_`. If these strings exist in your document, *OK dokument* will automatically inserts signature acrofields in the original place of the unique string location.
#### Signature acrofields
Acrofield is a type of active field supported in PDF. A signature acrofield is a special type of active field that allows a signature to be inserted into a document at a fixed location.
Acrofields can be inserted into PDFs with specialized PDF tools such as Adobe PRO, or with template tools such as JasperReport.
#### Tags
A tag represents a unique text value that the API server scans. If it finds it, it inserts the
signature acrofield in its place. The tag lookup is provided by the "tags" document state,
which must be set when the JSON/document service is called.
OKdokument API supports the following tags for optional signature:
` _SO1_`
`_SO2_`
`_SO3_ `
`_SO4_`
`_SO5_`
OKdokument API supports the following tags for mandatory signature:
` _SC1_`
`_SC2_`
`_SC3_ `
`_SC4_`
`_SC5_`
If mandatory tags are used, all visible mandatory signature acrofields must signed before
submitting the document.
In case it is not possible to prepare documents with signature acrofields or tags when
registering signatureRequest, it is possible to enable "sign anywhere" functionality, which
will allow the user to sign the document at any location, simple where the user clicks/taps
#### Convert document to PDF
OKdokument API supports conversion of .doc, .docx, .xls, .xlsx into PDF file format. The source file can contain also tags, OKdokument API will first do the file conversion and then automatically inserts signature acrofields.
To convert file into PDF you must fill name of the document. This parameter is mandatory if you want to do the file conversion to PDF format. For conversion the file postfix must be:
- contract.doc
- contract.docx
- contract.xls
- contract.xlsx
#### Storing and deleting documents
OK dokument API does not serve the role of a permanent archive of signed document.
Following rules are applied:
1. Signed document is automatically deleted 10 days after signing
2. Unsigned document is automatically deleted after 30 days after uploading
## 2. Signature Request
This action is used for generating signature request ID. Within this action you have to use Document ID. The Document ID is a result from Document upload action.
In this action you can transform your signature process into a multistage signature process. Adding additional parameter "Signature fields" allows you to manage what should be available in each signature request. You can use acrofields with internal names `_sig1_, _sig2_, _sig3_, _sig4_, _sig5_`.
In this action you can transform your signature process into a multistage signature process. Adding additional parameter "Signature fields" allows you to manage what should be available in each signature request. You can use acrofields with internal names
` _SO1_`
`_SO2_`
`_SO3_ `
`_SO4_`
`_SO5_`
OR
` _SC1_`
`_SC2_`
`_SC3_ `
`_SC4_`
`_SC5_`
This action can be used multiple times in your process. Signature request action is generated in *OK dokument* service as "Signature request" and this ID is unique for every "Sign" action.
To send request for document signature you use response attribute URL and use it in email, push notification or MS Teams to ask someone to sign specific document.
Once document is signed you can use “Signature request” to change the document state to “to sign” and create new signatureRequestId and prepare the document for next signature. Than the process repeats steps 3 – 5.
Once document is signed you can use “Signature request” to change the document state to “tosign” and create new signatureRequestId and prepare the document for next signature. Than the process repeats steps 3 – 5.
To disable Sign Anywhere feature you can use parameter Additional rules with value `signAnywhere-false`. This parameter disable Sign Anywhere in signature request.
*Example of Signature request with one mandatory acrofield*
`_SC1_`
*Example of Signature request with one mandatory acrofield and on optional acrofield in one signature request*
`_SC1_;_SO2_`
### Additional rules in Signature request
Additional rules can be used to:
- Disable or enable Sign Anywhere feature
- Predefine value for signer name
- enabling the input for signer name
- enabling sending signature request from OK Dokument
- enable email reminder
- OTP (one time password) configuration via email or SMS
- sign document with OTP
- disable signing with the mouse
|Rule Name|Parameter|Description|
| ------------ | ------------ | ------------ |
| signAnywhereEnabled| true/false | parameter for disabling sign anywhere function |
| guiRequestSignerName| true/false | parameter for enabling the input for signer name |
| guiSignerName| Signer name | predefined value for signer name, max 40 characters. If guiRequestSignerName is enabled, signer name can be changed by signer. |
| signAnywhereEnabled| true/false | parameter for disabling sign anywhere function |
emailTo | Signer email | Signers email to which signature request url will
be delivered. |
emailFrom | Sender email | Senders email. Mandatory if emailTo rule is used |
nameFrom | Sender name | Senders name, that will be used in the email templates |
emailNotification | | Rule that enables email reminder. Email reminder sends email every morning at 7:00 for signature requests that are not signed. The email is sent to emailTo and emailFrom – according to - signatureRequest configuration. |
emailFinal | Signer email | Email to deliver the signed document. If emailFinal is without parameter, the signed document will be sent to emailTo. |
openOtpPhone | Signer phone | Signers phone number to which the one-time password for accessing the document will be delivered. To use SMS OTP, you must buy signature request package with SMS. |
openOtpEmail | Signer email | Signers email to which the one-time password for accessing the document will be delivered. |
signOtpPhone | Signer phone | Signers phone number to which the one-time password for signing the document will be delivered. OTP signature requires signature acrofield.
signOtpEmail | Signer email | Signers email to which the one-time password for signing the document will be delivered. OTP signature requires signature acrofield.
lang | sk, cs, en, ro, uk, pl, pt, hu | Language of email and SMS template, If the rule is not set, Slovak as a default language is used.
mouseSignature | false | Rule for disabling signing with the mouse. |
*Syntaxt for writing signature request rules*\
`RuleName-Value`
*Syntaxt for writing multiple signature request rules*\
`RuleName1-Value_RuleName2-Value_RuleName3-Value`
*Example of Signature request with enabled Sign Anywhere*\
`signAnywhereEnabled-true`
*Example of Signature request with disabled Sign Anywhere and enabled Signer name with prefilled value*\
`guiSignerName-John Doe_guiRequestSignerName-true_signAnywhereEnabled-false`
*Example of Signature request with disabled Sign Anywhere, enabled Signer name with prefilled value, defined OTP email to open signature request, email where signature request is sent, email template language, signature request sender email*\
`guiSignerName-John Doe_guiRequestSignerName-true_signAnywhereEnabled-false_openOtpEmail-john.doe@somefakeemail.com_emailTo-john.doe@somefakeemail.com_lang-sk_emailFrom-sender@someofficetenant.onmicrosoft.com_mouseSignature-false`
### Expiration time
Default value for signature request expiration is 24 hours. You can extend this time range up to 10 days using this parameter **expirationTime**. Signature request ID expiration time. Time in Milliseconds since Jan 1, 1970 00:00:00 UTC
### Email
OKdokument API allows you to share signatureRequest url via e-mail. To send email you have to use rules:
- emailTo – email of the signer
- emailFrom – email of the sender
- nameFrom – name of the sender
Email will be delivered from okdokument@okdokument.sk, but when the signer hits reply/reply all button, the response will be sent directly to the sender (emailFrom). We recommend also using the following rules for additional setup in the signing process:
- emailFinal – email for sending the signed document. By default, emailTo is used, but
it can be changed. In case of multi-round signing, use this rule in the last signing
round and fill all singers email addresses. Example: _emailFinalemail@address.com|email2@address.com_
- emailNotification - email for sending reminder that document is awaiting signature.
- language – language of the email template
- filename – document name, that will be used in the email template. If filename is not
filled, technical document ID will be used as a document name
## 3. Wait for Signature
Trigger action „Wait for Signature“ can be used in your process. „Wait for Signature“ action is waiting till document signature is confirmed in *OK dokument* service by clicking the Submit button. Once signature is submitted this trigger action is completed. You can use this action if you need to wait for document signature confirmation in your process.
@ -41,7 +170,33 @@ This action allows you to download signed document and process the document in a
Once your document is signed, you can delete the document from *OK dokument* service using action delete manually. All uploaded documents are deleted automatically after 60 days and signed documents are deleted after 10 days.
# Obtaining Credentials
You can get the API key required to use *OK dokument* service by subscribing at https://app.okdokument.com.
You can get the API key required to use *OK dokument* service by subscribing at https://okdokument.com/en/about/api/.
# Limitations
Currently there are limitations to using acrofields and tags. The only possible use of tags or acrofields is predefined string format in your process: `_sig1_, _sig2_, _sig3_, _sig4_, _sig5_`. Custom acrofield internal names or tags are not supported in current version.
# Known Issues and Limitations
Currently there are limitations to using acrofields and tags. The only possible use of tags or acrofields is predefined string format in your process: `_SC1_, _SC2_, _SC3_, _SC4_, _SC5_` or `_SO1_, _SO2_, _SO3_, _SO4_, _SO5_` .
Custom acrofield internal names are currently in use:
| Checkbox| Acrofield |
| ------------ | ------------ |
|Optional Checkbox| CO|
|Compulsory Checkbox |CR|
| Text Field | Acrofield |
| ------------ | ------------ |
|Optional TextField| TO|
|Compulsory Text Field |TC|
| Radio Button Group | Acrofield |
| ------------ | ------------ |
|Optional Radio button Group| RO|
|Compulsory Radio button Group| RC|
| Combo Box| Acrofield |
| ------------ | ------------ |
|Optional combobox |CBO|
|Compulsory combobox| CBC|
# Deployment Instructions
Please use the instructions located [here](https://docs.microsoft.com/en-us/connectors/custom-connectors/paconn-cli) to deploy this connector as custom connector in Microsoft Power Automate, Power Apps or Azure LogicApps.

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -17,7 +17,7 @@
},
"iconBrandColor": "#da3b01",
"capabilities": [],
"publisher": "Solitea Slovensko, a.s.",
"publisher": "Seyfor Slovensko, a.s.",
"stackOwner": "ANASOFT APR, spol. s r.o."
}
}
}