Provers

List Provers

List Provers

GET https://privacy.provide.services/api/v1/provers

Returns a list of Prover instances in the authorized scope

Headers

Name
Type
Description

authorization

string

bearer <JWT> scoped to an Application

Create Prover

Create Prover

POST https://privacy.provide.services/api/v1/provers

Creates a Prover using the given parameters

Headers

Name
Type
Description

authorization

string

bearer <JWT> scoped to an Application

Request Body

Name
Type
Description

curve

string

pairing-friendly elliptic curve

identifier

string

prover identifier; i.e. cubic

name

string

name of Prover to be created

provider

string

prover provider, i.e., gnark

proving_scheme

string

proving scheme to be used; i.e., groth16

type

string

type of prover

Retrieve Prover Details

Get Prover Details

GET https://privacy.provide.services/api/v1/provers/:id

Returns detailed information for a specified Prover

Path Parameters

Name
Type
Description

id

string

id of target Prover

Headers

Name
Type
Description

authorization

string

bearer <JWT> scoped to an Application

Retrieve Note Value

Get Note Value

GET https://privacy.provide.services/api/v1/provers/:id/notes/:index

Returns the note store value of the specified Prover; the response contains the decrypted note

Path Parameters

Name
Type
Description

id

string

id of target prover

index

string

index of the leaf in the merkle tree for the underlying data structure

Headers

Name
Type
Description

authorization

string

bearer <JWT> scoped to an Application

        id: bbc1195e-d131-4b2f-b1a8-1b6f34b55d3e
        created_at: '2021-03-30T02:50:17.155Z'
        user_id: 7c8fe6f1-38c3-4da1-b4b7-7591c6d0ca7c
        vault_id: 190822c9-62f5-4caf-a419-df735a793b2f
        key_id: db9e6e21-23b0-497d-a02c-8a8813f8bf2d
        purpose: 44
        public_key: xpub661MyMwAqRbcGdYXwwnwcnrH51AxyF3kkTeEt6iZfNDXsg4MLPgV7bEZ2v4uCx9djAboy6vSv3VbHPc6hf4Do8wb7FpJCuG7aMBwH2QgLJu

Retrieve Nullifier Value

Get Nullifier Value

GET https://privacy.provide.services/api/v1/provers/:id/nullifiers/:index

Path Parameters

Name
Type
Description

id

string

id of the prover

index

string

index of the leaf in the merkle tree for the underlying data structure

Generate Proof

Generate Proof

POST https://privacy.provide.services/api/v1/provers/:id/prove

Once you have provisioned a prover, this API can be used to generate a proof given valid witness parameters. Calling this API has an implicit side-effect of writing the hash of generated proof to the persistent store associated with the Prover.

Path Parameters

Name
Type
Description

id

string

id of Prover requiring proof

Headers

Name
Type
Description

authorization

string

bearer <JWT> scoped to an Application

Request Body

Name
Type
Description

witness

object

Public and private inputs used to generate the Proof. Payload can be delivered as a JSON object or chunked and streamed.

Verify Proof

Verify Proof

POST https://privacy.provide.services/api/v1/provers/:id/verify

Verifies a Proof using the given Witness parameters

Path Parameters

Name
Type
Description

id

string

id of Prover to be verified

Headers

Name
Type
Description

authorization

string

bearer <JWT> scoped to an Application

Request Body

Name
Type
Description

proof

string

the hex-formatted proof to verify

store

boolean

when true, the verified note is written to the configured store and the nullified note is written to the nullifier store, if applicable

witness

object

public and private inputs used to generate the Proof . Payload can be delivered as a JSON object or chunked and streamed.

Last updated