Versions Compared

Key

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

...

Every call to the Web API interfaces require HTTP Authorization header with a Bearer authentication scheme: Authorization: Bearer BgV57K7vCwGE2vXex7BcgahRMeYoBQgdSJWhcQoJXhF4. Authorization tokens for this header can be obtained by an administrator from Web API Keys tab in the Contract Signatures Apps page. Every key is associated with the following security attributes which define its:

  • Privileges - to which interfaces the key may be used

  • Not valid before - from when the key may be used

  • Not valid after - till when the key may be used

  • Allowed IPs - from what IPs (ranges) the key may be used

When any of the above criteria is not meet met 401 Unauthorized or 403 Forbidden HTTP status codes are returned.

...

Note

Key secret tokens should be placed in files on destination instances only with a maximally restricted file access attributes and loaded into the application on a start. Even better would be to use some secret management utility sometimes provided by cloud operators.

...

GET https://contract-signatures.com/webapi/contracts/{contract-id}

Returns Contract Object with signers' personal data or 404 Not Found HTTP status.

...

field name

format /
presence

description /
value example

totalCount

non negative integer

Number of all contracts matching the search parameters.

always

0

contracts

array of Contract Objects

Not present when selected page has no contracts. Does not contain signers' data.

optional

...

field name

format /
presence

description /
value example

templateId

printable US-ASCII string

Confluence page or Jira issue identifier from which a contract will be created.

required

"1234567"

name

printable Unicode string

Name of a contract.

required

"NDA"

sequentialSigning

boolean

Will the invitation email be sent after a previous signer decision ? Defaults to false.

optional

true

signers

array of Signer Creation Objects

At least one signer is required. No more then 26 signers are allowed.

required

...

field name

format /
presence

description /
value example

id

UUID

This contract identifier.

always

15f5b906-1076-4539-a9ac-0be80bdef973

templateId

printable US-ASCII string

Confluence page or Jira issue identifier.

always

"654321"

collectionId

printable US-ASCII string

Confluence space or Jira project identifier.

always

"123456"

name

printable Unicode string

This contract name.

always

"NDA"

createdById

printable US-ASCII string

Atlassian user identifier of this contract creator.

always

"123456:b84aeffd-32e5-4b4b-a012-89bf06cae06e"

creationTimestamp

ISO 8601

Time at which this contract creation has been requested.

always

"2022-09-16T13:28:37.4951Z"

expirationTimestamp

ISO 8601

Time at which this contract become expired.

always

"2022-09-23T13:28:37.4951Z"

sequentialSigning

boolean

Is an invitation email sent after a previous signer decision ?

always

false

archivalTimestamp

ISO 8601

Time at which this contract has been move to the archive.

conditional

"2022-09-30T13:28:37.932523Z"

status

"sent" or
"ongoing" or
"rejected" or
"signed" or
"expired"

This contract status:

  • "sent" - URLs to signing page are available but no signature or rejection has been made.

  • "ongoing" - at least one signature is collected

  • "rejected" - one of the signers rejected the contract

  • "signed" - all signatures have been collected

  • "expired" - not all signatures have been collected before expiration timestamp

always

"signed"

signers

array of Signer Objects

Present only in the GET /webapi/contracts/{contract-id} responses.

conditional

finalizedPdf

Attachment Object

Present if there is an attachment in the Confluence/Jira containing PDF with the final version of the contract.

conditional

certificatePdf

Attachment Object

Present if there is an attachment in the Confluence/Jira containing PDF certificate for the final version of the contract.

conditional

...

field name

format /
presence

description /
value example

fullName

printable Unicode string

Full name of a signer provided by a contract creator.

always

"Janie Doe"

accessKind

"email" or "url"

The way a signer may access to a signing page.

always

"email"

otpMethod

“email” or “sms” or “none”

The way a signer may obtain one time password required for signing the contract.

always

“sms”

email

email address

Email address of a signer provided by a contract creator. Required when "accessKind" is "email". Optional otherwise.

conditional

"janie.doe@hotmail.com"

phone

E.164

International mobile phone number of a signer provided by a contract creator.

optional

"+33639987654"

accessUrl

URL

Personal URL (with a secret) to the page on which the signer may sign/reject this contract. Present only when a web API key owner is the same as the contractor creator and "accessKind" is set to "url".

conditional

"https://contract-signatures.com/sign/6a39cfb4-0cf8-4adf-a0fd-8a20052562eb/NDA?s=YouXiRodTgCZKHgJ5H3DkfkL6akHcDH3wnHEH9ZHR46C&no-otp&mode=sign&active=Person%20A "

decision

"signed" or "rejected"

Is present only when a signer already signed/rejected this contract.

conditional

"signed"

decisionTimestamp

ISO 8601

Is present only when a signer already signed/rejected this contract.

conditional

"2022-09-16T13:36:34.971644Z"

decisionIp

IP address

IPv4 or IPv6 address from which signing/rejecting request has come.

conditional

"198.51.100.123"

...