Skip to main content

Approve Contract

Approve and sign a BlockVault contract envelope


Used by additional participants in a multi-party contract execution to respond with approval by executing the BlockVault contract and updating the scope to include their approval, sending the record of their approval to the Provenance Blockchain network for memorialization.

Approval creates an ephemeral Authz grant on behalf of the approver, allowing the proposing party to submit the fully-formed, signed transaction to the Provenance Blockchain network prior to the expiration date set by the approver.

Upon successful approval, contract execution passes back to the original proposing party via the Object Store's mailbox feature.


URL: https://{host}/api/v1/cee/approve

Method: POST


:::info Supply one `x-uuid` header when running locally. :::
x-uuid\<Provenance Member UUID>

Request Body:

"config": {
"account": {
"partyType": ""
"client": {
"objectStoreUrl": ""
"provenanceConfig": {
"chainId": "",
"nodeEndpoint": "",
"gasAdjustment": 1.5
"envelope": [
"expiration": "YYYY-MM-DDTHH:mm:ss.SSSZ"
FieldDescriptionData Type
account/partyTypeParty type of the provenance member invoking the contract. This type should be associated with the UUID (or API Key) passed in the header.String
client/objectStoreUrlURL to the encrypted object store to run against.String
provenanceConfig/chainIdUnique identifier (name) of the Provenance Blockchain network.String
provenanceConfig/nodeEndpointURL to the Provenance Blockchain node where the transaction will be submitted.String
provenanceConfig/gasAdjustmentMultiplier applied to estimated gas prior to submitting the transaction.Double
envelopeList of objects containing signatures and information about the contract execution including its status and expiration.List\<String>
expirationExpiration date and time of the approvalTimestamp

Response Status Codes:

204Transaction approved
400Illegal arguments
500Server error


Sample Request

Coming Soon!