Atlantic API
L1/L2 Atlantic Query
These endpoints provide a complete workflow for generating trace, proof and verifying the proof on L1 and L2 respectively.
/v1/l1/atlantic-query
/v1/l2/atlantic-query
How to use?
There are two paths you can follow, as described in more detail in the /trace-generation
endpoint documentation:
- Using
programFile
: For new or modified programs, upload the compiledprogramFile
. - Using
programHash
: If the Cairo program is already registered, provide its uniqueprogramHash
.
Additionally, in case of L1, Sharp prover has to be used, while in case of L2, prover
can be customized and layout
has to be specified.
Also in all cases cairoVersion
and mockFactHash
are required.
Sending request
- Query parameters
apiKey
(string, required)
- Request Body
- For Option 1 (
programFile
)programFile
(file -.json
, required) - A compiled Cairo program in JSON format.
- For Option 2 (
programHash
)programHash
(string, required) - A unique hash representing Cairo program, which has been previously registered in program registry.
- In addition for both options
inputFile
(file -.json
, optional) - Input data for Cairo program if used.cairoVersion
(string, required, default:0
) - For now only version0
is supportedmockFactHash
(boolean, required) - Iftrue
the fact hash will be mocked, bypassing actual verification for testing purposes.
- In addition for L2 case
prover
(string, required, default:starkware_sharp
) - Prover to be used. If you want to use our stone instance - contact us.layout
(string, required, default:auto
) - Cairo layout of your program. Available layouts are:auto
- automatically detect layout based on builtins usagerecursive
recursive_with_poseidon
small
dex
starknet
starknet_with_keccak
dynamic
- For Option 1 (
Example Requests
L1, using programHash
:
L2, using programFile
: