Pular para o conteúdo principal
GET
Listar versões de IDL
Os parâmetros de caminho, o esquema de resposta e os exemplos desta página são gerados com base na definição OpenAPI. Listar versões de IDL retorna o histórico da interface de um programa presente no catálogo de IDLs que o Parsed Events e o Parsed Streams usam para decodificar instruções. Cada item corresponde a uma versão, identificada pelo slot em que ela se tornou ativa. Os itens são ordenados do mais antigo para o mais recente; portanto, o último item é a versão atual. Passe qualquer slot da resposta para Obter IDL a fim de buscar o documento IDL dessa versão. O explorador Orb usa esses endpoints para mostrar as IDLs dos programas.

Casos de uso

  • Acompanhe alterações na interface. Consulte periodicamente Listar versões de IDL para um programa do qual você depende. Quando uma nova versão aparecer, busque essa versão e a anterior com Obter IDL e compare os respectivos instructions. Uma nova instrução de administrador ou autoridade merece uma análise de segurança.
  • Verifique a cobertura do catálogo. Um 404 significa que o catálogo não tem uma IDL para o programa. Programas como o SPL Token são decodificados por decodificadores integrados e também retornam 404.

Exemplo: detectar uma nova versão de IDL

Este script lista as versões de IDL de um programa, busca as duas mais recentes e exibe as instruções que foram adicionadas ou removidas:
diff-idl-versions.js
Para detectar alterações ao longo do tempo, armazene o slot da última versão que você viu e compare-o a cada consulta periódica.

Créditos

Cada solicitação custa 10 créditos e está disponível em todos os planos. O exemplo acima faz três solicitações, portanto custa 30 créditos. Consulte Créditos.

Erros

Outros erros retornam um corpo JSON com uma mensagem error, como {"error": "no IDLs found for program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"}.

Parâmetros da solicitação

string
obrigatório
Endereço do programa, codificado em base58.

Autorizações

api-key
string
query
obrigatório

Parâmetros de caminho

programId
string
obrigatório

Endereço do programa, codificado em base58.

Exemplo:

"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"

Resposta

As versões de IDL do programa, ordenadas por slot em ordem crescente.

slot
integer<uint64>
obrigatório

Slot em que esta versão de IDL se tornou ativa. Passe-o para Obter IDL a fim de buscar esta versão.

sources
string[]
obrigatório

Onde Eventos analisados encontrou esta versão. Os valores incluem anchor, program_metadata e github, e outros podem ser adicionados. Uma versão pode ter mais de uma fonte.