Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The response contains the documents file-id fileId id which can now be used to attach the document to the previously initiated contract session:

Code Block
languagebash
curl '{baseurl}/api/v2/collaboration/contracts/contracts/sessions/{sessionId}/documents/attach' \
  --request GETPOST \
  -H 'Accept: application/json' \
  -H 'x-user-id: {flexperto_account_id}' \
  -H 'api-key: {Your.Api.Key}' \
  --data '{"fileId": "12853e74-d2a0-4c38-867c-41edea7069a6"}'

Synchronous Flow

TBDAs a response, you will obtain the Documents ID, which in turn you should keep a reference of:

Code Block
{
    "id": 1362,
    "name": "document-1.pdf",
    "status": "ATTACHED",
    "original_file_id": "12853e74-d2a0-4c38-867c-41edea7069a6",
    "failure_reason": "",
    "created_at": "2021-10-29T10:12:57+0200",
    "updated_at": "2021-10-29T10:12:57+0200"
}

Using the Endpoint GET {baseurl}/api/v2/collaboration/contracts/contracts/documents?sessionId={sessionId} you can query for all the documents and check on their status at a later point in time. A few words about the status of a document, possible values are:

  • ATTACHED - The document has been attached to a session

  • UPLOADED - The related session has been handed over for signature / additional documents can not be attached to the session

  • UPDATED - The document has been changed within the signature session (eg. a signature has been placed)

  • FINISHED - All signatures have been placed on the document and the session has been finished

  • DELETED - The document has been deleted

  • FAILED - Only occurs for ves / qes sessions. If the identification process as part of these sessions fails, the document will transition to the FAILED state, and the reason for failure will be populated in failure_reason.

Once you have attached all documents that should be signed to the session, it is time to hand over the document for signature:

Code Block
curl '{baseurl}/api/v2/collaboration/contracts/contracts/sessions/{sessionId}/handover' \
  --request GET \
  -H 'Accept: application/json' \
  -H 'x-user-id: {flexperto_account_id}' \
  -H 'api-key: {Your.Api.Key}'

The Response contains the link for the signing party. Flexperto does not deliver an email to that party, this is up to you:

Code Block
{
    "url": "https://.../index?sessionid=2f887465f956b3d9fff7fe79&lang=de"
}

Once the signing party has placed all signatures, the related contract sessions transaction_completed property changes to true.

Info

As of now, using the API individual Contract Sessions can not be obtained. We suggest, on a nightly basis, obtaining the full list of Contract Sessions and downloading contract data individually.

There are several ways to obtain signed Documents:

  • Downloading the Archive of a Conference (see the Conference Archiving Section of this Documentation below)

  • Downloading the Signature Sessions Archive

  • Downloading individual documents

Downloading the Signature Sessions Archive

Using the documents-archive endpoint, you can download an Archive of the Signature Session:

Code Block
curl '{baseurl}/api/v2/collaboration/contracts/contracts/sessions/{sessionId}/documents-archive' \
  --request GET \
  -H 'Accept: application/json' \
  -H 'x-user-id: {flexperto_account_id}' \
  -H 'api-key: {Your.Api.Key}'

As a response, you will receive a ZIP-File that contains all signed documents as well as an audit report. You can obtain the audit report individually using:

Code Block
curl '{baseurl}/api/v2/collaboration/contracts/contracts/sessions/{sessionId}/audit-report' \
  --request GET \
  -H 'Accept: application/json' \
  -H 'x-user-id: {flexperto_account_id}' \
  -H 'api-key: {Your.Api.Key}'
Downloading Individual Documents

Once documents are signed, you can use the document download endpoint to download the signed version of a document:

Code Block
curl '{baseurl}/api/v2/collaboration/contracts/contracts/documents/{documentId}/download?signed=true' \
  --request GET \
  -H 'Accept: application/json' \
  -H 'api-key: {Your.Api.Key}'

Synchronous Flow

The Synchronous Flow works in a very similar way to the Asynchronous Flow. Notable differences are:

  • When initiating a Contract Session, in the request payload, you have to provide the meeting_id property, providing the id of the related meeting

  • Be aware that the Contract Modal of your employee in the Meeting Room does not obtain live updates when you add documents. He has to close and open the Contract Modal again for obtaining live updates

  • Be aware that until you hand over a session via the API, your employee is able to attach additional documents to the Contract Session using the Contract Modal in the Meeting Room

  • For these reasons, we generally suggest that you request the new Meeting, then perform the API Calls to initiate the Contract Session, attach documents, and hand over the session, before redirecting your employee into the Meeting Room.

  • Be aware that once a Contract Session has been handed over, the Employee will be able to join the Contract Session and place additional signature fields on the documents. In this flow, it should also be the employees' responsibility to explain the documents to other participants and to hand them over to them for signature (you can ignore the Contract Session URL in this case)

Recording conferences

Flexperto affords experts to record conferences in one of two ways: automated, or manual. Administrators of a platform can enable either by toggling the enableAutomaticRecording (for automatic) or enableRecordingVerbalConsent (for manual) configuration settings. Note that these are mutually exclusive. Recordings include all streamed media (video, audio, shared screens) in one combined video file (codec information: video: h264, audio acc, format: mp4).

...