Developer API

Read Registry evidence through one stable API.

Query artifacts, releases, deployments and LS-IDL without a wallet; use scoped authorisation only for writes.

Read endpoints

Service health
GET /v1/artifacts

Search and filter artifacts by kind, verification, deployment and availability.

GET /v1/artifacts/:namespace/:name

Read one artifact and all of its releases.

GET /v1/artifacts/:namespace/:name/releases/:release/evidence

Inspect immutable build, deployment and chain evidence for one release.

GET /v1/artifacts/:namespace/:name/releases/:release/commitment

Read the canonical Registry commitment, Cell data and accepted on-chain proof.

GET /v1/ckb/scripts/:code_hash/interfaces/ls-idl

Fetch exact LS-IDL bytes by deployed CKB Script identity and verify the executable suffix commitment.

GET /idl/:code_hash

Compatibility route for existing LS-IDL clients; it returns the same exact raw bytes.

GET /v1/capabilities/:key_id/check?namespace=:namespace&name=:name

Check whether a capability is active, scoped to one artifact and owned by its active namespace.

Authorised endpoints

POST /v1/artifacts/:namespace/:name/releases

Publish an immutable artifact release and its profile-bound bundle.

POST /v1/artifacts/:namespace/:name/releases/:release/deployments

Attach deployment facts from this Registry environment without changing artifact identity.

POST /v1/artifacts/:namespace/:name/releases/:release/availability

Set a release active, deprecated or yanked with its namespace-scoped publisher capability.

List request

The public list is cacheable JSON. No wallet or API token is required for reads.

curl --fail 'https://api.registry.cellscript.dev/v1/artifacts?kind=deployable_contract&deployment=chain_verified'

LS-IDL

LS-IDL responses are byte-preserving. Hash the response body directly; parsing and reserialising JSON changes the committed identity.

curl --fail 'https://api.registry.cellscript.dev/v1/ckb/scripts/0x<code_hash>/interfaces/ls-idl?network=mainnet&hash_type=data1' --output idl.json