GET /v1/contracts
List contract projects for the organization
GET
/v1/contracts
List contract projects for the organization
Query Parameters
limit
integer
optional
query
Limit (default 20)
offset
integer
optional
query
Offset (default 0)
Responses
200
OK
application/jsoncode
integer
data
object
hasMore
boolean
items
object[]
Array of:
allDeployments
object[]
Array of:
address
string
blockNumber
integer
chainId
integer
deployedAt
string
deploymentMode
string
standard, create2, or create3
gasUsed
integer
isDeterministic
boolean
Whether CREATE2/CREATE3 was used
networkType
string
mainnet or testnet
predictedAddress
string
Pre-computed address for deterministic deployments
salt
string
CREATE2/CREATE3 salt for deterministic address
txHash
string
verificationStatus
string
Verification status
Enum:
pending, verified, failedverificationUrl
string
URL to view verified contract on block explorer
verified
boolean
Whether contract source is verified on block explorer
createdAt
string
currentStep
integer
deployments
object
Deployments is populated from the contract_deployments table, NOT from a DB column.
Kept for backward-compatible JSON serialization in API responses.
id
string
name
string
solVersion
string
status
string
Enum:
planned, generating, code_generated, testing, tested, auditing, audited, deploying, testnet_deployed, mainnet_deployed, failedtestResults
object
failed
integer
passed
integer
total
integer
updatedAt
string
limit
integer
offset
integer
message
string
requestId
string
500
Internal Server Error
curl -X GET 'https://api.example.com/v1/contracts' \ -H 'Authorization: Bearer YOUR_API_TOKEN'
const response = await fetch('https://api.example.com/v1/contracts', { method: 'GET', headers: { "Authorization": "Bearer YOUR_API_TOKEN" }});const data = await response.json();console.log(data);
import requestsheaders = { 'Authorization': 'Bearer YOUR_API_TOKEN'}response = requests.get('https://api.example.com/v1/contracts', headers=headers)print(response.json())
package mainimport ( "fmt" "io" "net/http")func main() { req, _ := http.NewRequest("GET", "https://api.example.com/v1/contracts", nil) req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN") resp, _ := http.DefaultClient.Do(req) defer resp.Body.Close() result, _ := io.ReadAll(resp.Body) fmt.Println(string(result))}
200
Response
{ "code": 0, "data": { "hasMore": true, "items": [ { "allDeployments": [ { "address": {}, "blockNumber": {}, "chainId": {}, "deployedAt": {}, "deploymentMode": {}, "gasUsed": {}, "isDeterministic": {}, "networkType": {}, "predictedAddress": {}, "salt": {}, "txHash": {}, "verificationStatus": {}, "verificationUrl": {}, "verified": {} } ], "createdAt": "<string>", "currentStep": 123, "deployments": "<object>", "id": "<string>", "name": "<string>", "solVersion": "<string>", "status": "planned", "testResults": { "failed": 123, "passed": 123, "total": 123 }, "updatedAt": "<string>" } ], "limit": 123, "offset": 123 }, "message": "successfully", "requestId": "<string>"}
API Playground
Try this endpoint
GET
/v1/contracts
