
Como buscar tokens recém-cunhados com a Helius
Índice
Introdução
As memecoins da Solana têm ganhado destaque ultimamente, com o $WIF ultrapassando US$ 3,5 bilhões e a Boden chegando a US$ 300 milhões. A Popcat e a Wen ultrapassaram recentemente a marca de US$ 350 milhões. A Slerf também superou todas as exchanges baseadas em Ethereum em volume de negociação no primeiro dia. Após a explosão da BONK em novembro passado, a Solana registra a criação de mais tokens novos do que nunca.
Este artigo explica como os tokens são criados na Solana, o que são tokens SPL e como monitorar novos tokens e obter seus metadados usando a Helius.
Como os tokens são criados na Solana?
A Solana oferece suporte tanto ao SOL nativo quanto a outros tokens. A Solana Program Library (SPL) define padrões comuns para tokens fungíveis e não fungíveis (NFTs) na Solana. Ao contrário da Ethereum, onde há padrões diferentes para cada tipo de token não fungível (ERC-721) e fungível (ERC-20), a Solana Program Library não tem um padrão específico para os diferentes tipos de token.
Token Program
A implementação padrão de tokens fungíveis e não fungíveis (NFTs) na Solana é o Token Program. Ele oferece recursos como criar novos tipos de token e contas, transferir e queimar tokens, entre outros. O Token Program está concluído, e não há planos para adicionar novos recursos. Mudanças ainda podem ocorrer para corrigir bugs importantes ou incompatíveis com versões anteriores.
No entanto, o Token Program é limitado: para adicionar novos recursos, os desenvolvedores precisam criar um fork, o que torna as transações mais complexas e arriscadas. Para resolver isso, a Solana lançou o Token-2022, um conjunto de recursos adicionais e melhorias, como:
- Extensões de mint: transferências confidenciais, taxas de transferência, fechamento de mint, tokens que rendem juros, tokens intransferíveis, delegado permanente, hook de transferência, ponteiro de metadados, metadados.
- Extensões de conta: memo obrigatório em transferências recebidas, propriedade imutável, estado padrão da conta, proteção de CPI.
Para saber mais sobre o Token-2022, consulte este artigo.
O Token Program da Solana permite criar contas de mint e contas de token. As contas de mint contêm informações globais sobre um token, enquanto as contas de token armazenam a relação entre uma carteira e uma conta de mint. Você pode criar tokens usando o código ou o spl-token-cli a seguir. Por exemplo, execute este comando na linha de comando para criar um token fungível, desde que o spl-token-cli esteja instalado:
spl-token create-tokenToken Metadata Program
As contas de mint contêm determinados atributos de dados, como o fornecimento atual do token. No entanto, elas não têm dados padronizados, como nome e símbolo. Para resolver isso, a Metaplex lançou o Token Metadata Program. Esse programa permite anexar dados adicionais a tokens fungíveis e não fungíveis usando PDAs (endereços derivados de programa) derivados do endereço de mint.
O Token Metadata Program foi criado inicialmente para simplificar a criação de NFTs na Solana. No entanto, ele também funciona com SFTs, que são tokens semifungíveis. Os SFTs combinam características de tokens fungíveis e não fungíveis. Inicialmente, eles se comportam como tokens fungíveis, o que significa que podem ser trocados por tokens idênticos sem perda de valor para nenhuma das partes. Depois de usados, eles perdem o valor de troca e adquirem os atributos de tokens não fungíveis colecionáveis. Os SFTs funcionam como um tipo exclusivo de conta à qual são anexados metadados para representar características em um jogo ou ambiente de metaverso. Em determinados contextos, os SFTs são preferíveis aos NFTs por sua eficiência, economia, flexibilidade e maior segurança das transações.
O Token Metadata Program também oferece suporte a NFTs programáveis (pNFTs). Esse novo padrão de ativo permite que os criadores definam regras personalizadas para operações específicas e façam delegações mais granulares a autoridades terceirizadas. A conta de token do pNFT fica sempre congelada no SPL Token program, independentemente de o pNFT ter sido delegado. Isso garante que ninguém possa contornar o Token Metadata Program interagindo diretamente com o SPL Token program.
Monitorar novos tokens
Para monitorar tokens recém-cunhados, vamos configurar um webhook. Os webhooks permitem acompanhar eventos on-chain e acionar ações específicas quando eles ocorrem. Configuraremos nosso webhook para acompanhar o tipo de transação TOKEN_MINT do Token Metadata Program. As fontes atualmente compatíveis com esse tipo de transação são (outras fontes serão marcadas como “UNKNOWN”):
"TOKEN_MINT": [ "CANDY_MACHINE_V1", "ATADIA", "SOLANA_PROGRAM_LIBRARY" ]Você pode criar webhooks usando o Dashboard da Helius ou por meio de código com a referência da API. Para criar um pelo Dashboard, acesse a seção Webhooks no painel esquerdo e clique em Novo webhook. Em seguida, configure o webhook fornecendo informações como:
- Rede: Mainnet/Devnet
- Tipo de webhook: você pode selecionar Enhanced, Raw ou Discord. Se escolher Discord, será necessário informar a URL do webhook, e a notificação será formatada e enviada diretamente pelo bot. Consulte aqui as etapas para obter a URL do webhook de um bot do Discord. Se você selecionar Raw, não poderá especificar o tipo de transação.
- Tipo de transação: selecione
TOKEN_MINTpara acompanhar tokens recém-cunhados*.* Você pode consultar aqui outros tipos de transação aceitos por um programa. - URL do webhook: adicione o endpoint que receberá as notificações (por exemplo, bot do Discord, site etc.)
- Cabeçalho de autenticação: insira um cabeçalho de autenticação para encaminhar as solicitações POST ao seu webhook. Esse campo é opcional.
- Endereço da conta: adicione aqui o endereço do Token Metadata Program:
metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s. Em outros casos, você pode adicionar mais de um endereço de conta, se necessário. Se quiser receber informações sobre um usuário específico na transação, inclua o endereço dele.
Após a confirmação, seu webhook estará pronto para uso, e você poderá criar o frontend adequado com base na URL do webhook. Aqui, selecionamos Discord como Tipo de webhook e informamos a URL do webhook de um bot do Discord, portanto não precisamos programar o bot. Receberemos notificações como esta:
Obter metadados do token
Você pode usar o ID do token (o endereço de mint do token) para obter os metadados de um token específico. Analise a notificação JSON enviada pelo webhook Enhanced (quando o tipo de webhook estiver definido como Enhanced). O endereço de mint pode ser encontrado no campo "mint" do primeiro objeto no array transferTokens. Após obter o ID do token, você pode usar o método getAsset, fornecido pela DAS API, para obter mais informações sobre o token.
Por exemplo, você pode usar o método getAsset para obter informações sobre o Jito Staked SOL (JitoSOL):
const url = `https://mainnet.helius-rpc.com/?api-key=<api_key>`
const getAsset = async () => {
const response = await fetch(url, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
jsonrpc: '2.0',
id: 'my-id',
method: 'getAsset',
params: {
id: 'J1toso1uCk3RLmjorhTtrVwY9HJ7X8V9yYac6Y7kGCPn',
displayOptions: {
showFungible: true //return details about a fungible token
}
},
}),
});
const { result } = await response.json();
console.log("Asset: ", result);
};
getAsset();Você pode encontrar mais exemplos da DAS API e um schema completo das solicitações e respostas desse método em nossa documentação.
Conclusão
Neste artigo, aprendemos como os tokens são criados na Solana, o que são tokens SPL e como monitorar novos tokens configurando um webhook e buscando seus metadados pela Helius. Se precisar de ajuda ou suporte, entre em contato conosco pelo Discord!
Insira seu endereço de e-mail abaixo para não perder nenhuma novidade sobre a Solana. Quer se aprofundar? Explore os artigos mais recentes no blog da Helius e continue hoje mesmo sua jornada pela Solana.
Recursos
Artigos relacionados
Assine a Helius
Acompanhe as novidades mais recentes do desenvolvimento Solana e receba atualizações quando publicarmos


