Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

List projects

GET /v1/projects?offset=0&limit=20

Free. Returns all public projects.

Query params:
ParamTypeDefaultDescription
offsetnumber0Pagination offset
limitnumber20Max results (max 100)
Response:
{
  "data": [
    {
      "id": "7",
      "name": "my-agent",
      "description": "An autonomous agent",
      "license": "MIT",
      "owner": "0x210bDf52ad7afE3Ea7C67323eDcCD699598983C0",
      "isPublic": true,
      "isAgent": true,
      "agentEndpoint": "https://my-agent.example.com",
      "createdAt": "1772803578",
      "versionCount": "1"
    }
  ]
}

Get project

GET /v1/projects/:id

Response: Same shape as a single item from the list.


Create project

POST /v1/projects

Cost: $5 USDC (paid via x402)

Request body:
{
  "name":          "my-agent",
  "description":   "An autonomous agent",
  "license":       "MIT",
  "isPublic":      true,
  "isAgent":       true,
  "agentEndpoint": "https://my-agent.example.com",
  "readmeHash":    ""
}
FieldTypeRequiredDescription
namestringUnique project name
descriptionstringShort description
licensestringSPDX license (default: MIT)
isPublicbooleanDefault: true
isAgentbooleanMark as AI agent project
agentEndpointstringHTTP endpoint if agent
readmeHashstringArweave hash of README
Response:
{
  "txHash":    "0xabc...",
  "projectId": "8",
  "owner":     "0xYourWallet",
  "signer":    "0x210bDf52...",
  "status":    "success",
  "blockNumber": "14234567"
}

List versions

GET /v1/projects/:id/versions

Free. Returns all versions for a project.


Push version

POST /v1/projects/:id/versions

Cost: $2 USDC (paid via x402)

Request body:
{
  "tag":          "v1.0.0",
  "contentHash":  "ar://QmAbc123...",
  "metadataHash": "",
  "contentSize":  12345
}
FieldTypeRequiredDescription
tagstringVersion tag
contentHashstringArweave hash (ar://...)
metadataHashstringOptional metadata hash
contentSizenumberBytes (for pricing display)
Response:
{
  "txHash":    "0xdef...",
  "projectId": "8",
  "tag":       "v1.0.0",
  "contentHash": "ar://QmAbc123...",
  "pusher":    "0xYourWallet",
  "status":    "success",
  "blockNumber": "14234600"
}

Estimate version cost

GET /v1/projects/estimate?bytes=102400

Returns the USDC cost for uploading a given number of bytes (Arweave storage cost + 20% markup).

Response:
{
  "bytes": 102400,
  "arweaveCost": "4600",
  "markup": "920",
  "total": "5520"
}

All values are in USDC with 6 decimals (divide by 1e6 for USD).