Create Proof for Circuit
POST/api/v1/circuit/:circuit_id/prove
Prove a circuit with specific inputs.
Request​
Path Parameters
<CIRCUIT_ID>
- The unique UUID4 ID for an exact version of a compiled circuit.<CIRCUIT_NAME>
- The name of a circuit owned by the authenticated team. This will default to the most recent version of the circuit tagged aslatest
.<CIRCUIT_NAME>:<TAG>
- The name of a circuit owned by the authenticated team and an explicit tag. This corresponds to the most recent compilation of the circuit with the specified tag.<TEAM_NAME>/<CIRCUIT_NAME>
- The name of a circuit owned by the specified team. This will default to the most recent version of the circuit tagged aslatest
.<TEAM_NAME>/<CIRCUIT_NAME>:<TAG>
- The name of a circuit owned by a specified team and an explicit tag. This corresponds to the most recent compilation of the team's circuit with the specified tag.
The circuit identifer of the circuit. This can take one of the following forms:
- application/x-www-form-urlencoded
Body
required
A string representing proof input which may be formatted as JSON for any framework. Noir circuits optionally accept TOML formatted proof input.
A boolean indicating whether to perform an internal verification check during the proof creation.
Internal prover implementation setting.
Responses​
- 201
- 404
- 412
- 501
- application/json
- Schema
- Example (from schema)
Schema
A unique identifier generated for the proof. UUID4 format.
The name of the circuit associated with this proof.
The circuit_id of the circuit associated with this proof. UUID4 format.
Possible values: [boojum
, circom
, gnark
, halo2
, noir
]
CircuitType choices
The UTC datetime the circuit was uploaded in ISO8601 format.
A boolean indicating whether an internal verification check occurred during the proof creation.
Possible values: [Queued
, In Progress
, Ready
, Failed
]
JobStatus choices
The user/team that owns this proof.
Total compute time in ISO8601 format.
Total compute time in seconds.
Detailed compute times for the proof generation.
Total size of stored file(s) in bytes.
The succinct argument(s) of knowledge.
The public outputs of the circuit.
Queue time in ISO8601 format.
Queue time in seconds.
The proof and public formatted as calldata for the smart contract verifier.
The verification key of this circuit.
The error message for a failed proof.
{
"proof_id": "string",
"circuit_name": "string",
"circuit_id": "string",
"circuit_type": "boojum",
"date_created": "2024-04-15T22:57:47.785Z",
"perform_verify": true,
"status": "Queued",
"team": "string",
"compute_time": 0,
"compute_time_sec": 0,
"file_size": 0,
"proof": {},
"queue_time": 0,
"queue_time_sec": 0,
"smart_contract_calldata": "string",
"verification_key": {},
"error": "string"
}
- application/json
- Schema
- Example (from schema)
Schema
- MOD1
- MOD2
circuit_idobjectrequired
string
string
{
"error": "string",
"circuit_id": "string",
"message": "string"
}
- application/json
- Schema
- Example (from schema)
Schema
- MOD1
- MOD2
circuit_idobjectrequired
string
string
Default value: Proof cannot be created.
{
"error": "string",
"circuit_id": "string",
"message": "Proof cannot be created."
}
- application/json
- Schema
- Example (from schema)
Schema
Default value: Coming soon!
{
"message": "Coming soon!"
}