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

API Reference

Base URL: https://api.inkdprotocol.com

The Inkd API is a REST API over HTTPS. Read operations are free and require no authentication. Write operations require x402 USDC payment.


Endpoints

CategoryDescription
ProjectsCreate projects, push versions, read the registry
UploadUpload files to Arweave
ErrorsError codes reference

Free read endpoints

EndpointDescription
GET /v1/buybacksReturns recent $INKD buyback events from The Graph. Each event includes USDC spent, $INKD received, and a Basescan link.
GET /v1/statsProtocol stats: project count, token supply, total versions, total USDC volume.

Authentication

Inkd uses x402 for payment and identity — no API keys, no accounts.

For write operations, your wallet address becomes your identity. The API server verifies your EIP-3009 signature on-chain.

Read operations — no authentication required:

curl https://api.inkdprotocol.com/v1/projects

Write operations — x402 payment required:

import { ProjectsClient } from "@inkd/sdk"
 
const client = new ProjectsClient({ privateKey: process.env.INKD_PRIVATE_KEY })
await client.createProject({ name: "my-agent" })

Or use @x402/fetch directly to make raw HTTP requests with automatic payment handling.


Response format

All responses are JSON. Successful responses use 2xx status codes.

Success:
{
  "projectId": "10",
  "txHash":    "0xabc...",
  "status":    "success"
}
Error:
{
  "error": "name_taken",
  "message": "A project with the name 'my-agent' already exists."
}

Rate limits

TypeLimit
Read requests100 req/min per IP
Write requests20 req/min per wallet

Health & status

# Health check
curl https://api.inkdprotocol.com/v1/health
 
# Protocol status (network, contracts, project count)
curl https://api.inkdprotocol.com/v1/status
{
  "ok": true,
  "network": "mainnet",
  "rpcUrl": "https://base.publicnode.com",
  "rpcReachable": true,
  "contracts": {
    "registry": "0xEd3067dDa601f19A5737babE7Dd3AbfD4a783e5d",
    "treasury": "0x23012C3EF1E95aBC0792c03671B9be33C239D449",
    "deployed": true
  },
  "protocol": {
    "projectCount": "9",
    "totalSupply": "100000000000.0000 INKD"
  }
}

USDC on Base

All payments use USDC on Base Mainnet:

Token:   USD Coin (USDC)
Address: 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
Chain:   Base Mainnet (8453)