Skip to main content
GET
List IDL Versions
The path parameters, response schema, and examples on this page are generated from the OpenAPI definition. List IDL Versions returns the history of a program’s interface from the IDL catalog that Parsed Events and Parsed Streams use to decode instructions. Each item is one version, identified by the slot at which it became active. Items are sorted oldest first, so the last item is the current version. Pass any slot from the response to Get IDL to fetch that version’s IDL document. The Orb explorer uses these endpoints to show program IDLs.

Use Cases

  • Track interface changes. Poll List IDL Versions for a program you depend on. When a new version appears, fetch it and the previous one with Get IDL and compare their instructions. A new admin or authority instruction is worth a security review.
  • Check catalog coverage. A 404 means the catalog has no IDL for the program. Programs such as SPL Token are decoded by built-in decoders instead and also return 404.

Example: Detect a New IDL Version

This script lists a program’s IDL versions, fetches the latest two, and prints the instructions that were added or removed:
diff-idl-versions.js
To detect changes over time, store the slot of the last version you have seen and compare against it on each poll.

Credits

Each request costs 10 credits and is available on all plans. The example above makes three requests, so it costs 30 credits. See Credits.

Errors

Other errors return a JSON body with an error message, such as {"error": "no IDLs found for program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"}.

Request Parameters

string
required
Program address, base58-encoded.

Authorizations

api-key
string
query
required

Path Parameters

programId
string
required

Program address, base58-encoded.

Example:

"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"

Response

The program's IDL versions, sorted by slot ascending.

slot
integer<uint64>
required

Slot at which this IDL version became active. Pass it to Get IDL to fetch this version.

sources
string[]
required

Where Parsed Events found this version. Values include anchor, program_metadata, and github, and more may be added. A version can have more than one source.