API Reference

JSON over HTTP. CORS open to all origins. No auth. No rate limits beyond Cloudflare's edge defaults.

Free to use. The API is free for any purpose โ€” personal, research, commercial. No registration, no quotas. If it's helpful, a tweet crediting @metasal or @programwatch is appreciated ๐Ÿ™
Live program alerts: join t.me/programwatch.
Base URL: https://programwatch.dev
Format: JSON, all timestamps ISO 8601 UTC
Address format: base58, 32โ€“44 chars (^[1-9A-HJ-NP-Za-km-z]{32,44}$)
Boolean filters: string true or false
For LLMs / agents: /llms.txt contains a structured intro to this API.
GET/api/program/{address}

Single program record by address.

ParamDescription
addressrequiredBase58 Solana program address (32โ€“44 chars).
GET/api/database

Paginated, sortable, filterable list of programs.

ParamDescription
pagePage number (default 1).
limitPage size (default 10).
querySearch by program name or address (partial match).
sortByname | size | slot | deployed | last_activity_at
sortOrderasc | desc
executabletrue | false
mutabletrue | false (upgradeable)
verifiedtrue | false
idltrue | false (has IDL)
deployedSinceISO 8601 cutoff โ€” returns programs deployed at or after.
activeSinceISO 8601 cutoff โ€” returns programs active at or after.
GET/api/check

Live on-chain check for a single program โ€” fetches PDA, authority, slot, deploy time.

ParamDescription
addressrequiredBase58 Solana program address.
GET/api/verification

Verification status for a program (source โ†” on-chain bytecode match) via verify.osec.io.

ParamDescription
addressrequiredBase58 Solana program address.
GET/api/stats

Aggregate counts: total / executable / verified / mutable / frozen / has IDL.

GET/api/deploy

Monthly deployment histogram across the dataset.

GET/api/sync-status

Last sync timestamps and counts.

GET/idl/{address}.json

IDL file for a program when available (Anchor or Codama format).

Issues or suggestions? t.me/metasalxyz ยท [email protected] ยท Source on GitHub.