Coleções e verificação
Coleções agrupam NFTs sob uma identidade compartilhada. Verificação prova que um asset realmente pertence àquela coleção - crítico porque campos de coleção não verificados podem ser falsificados por qualquer pessoa.
Busque em todas as páginas da documentação
Coleções agrupam NFTs sob uma identidade compartilhada. Verificação prova que um asset realmente pertence àquela coleção - crítico porque campos de coleção não verificados podem ser falsificados por qualquer pessoa.
// Core: criar Collection, mintar Asset com plugin de coleção, verificar
import { createCollection, create, addPlugin } from "@metaplex-foundation/mpl-core";
// Token Metadata: definir coleção nos metadados + verifyCollectionV1Quando usar:
getAssetsByGroupimport { createUmi } from "@metaplex-foundation/umi-bundle-defaults";
import { mplCore } from "@metaplex-foundation/mpl-core";
import {
createCollection,
create,
fetchCollection,
ruleSetNone,
} from "@metaplex-foundation/mpl-core";
import { generateSigner } from "@metaplex-foundation/umi";
const umi = createUmi("https://api.devnet.solana.com").use(mplCore());
const collection = generateSigner(umi);
await createCollection(umi, {
collection,
name: "Demo Collection",
uri: "https://arweave.net/collection.json",
}).sendAndConfirm(umi);
const asset = generateSigner(umi);
await create(umi, {
asset,
name: "Item #1",
uri: "https://arweave.net/1.json",
collection: collection.publicKey,
}).sendAndConfirm(umi);
const col = await fetchCollection(umi, collection.publicKey);
console.log(col.name, col.numMinted);// DAS: consulta por coleção
await dasRpc("getAssetsByGroup", {
groupKey: "collection",
groupValue: collection.publicKey.toString(),
page: 1,
limit: 100,
});O que isso demonstra:
collection nos metadados + verified: bool após autoridade assinar verifygrouping / collection para conjuntos verificados| Estado | Confiança do marketplace |
|---|---|
| Não verificado | Baixa - qualquer um pode definir o campo |
| Verificado | Alta - collection authority assinou |
| Sem coleção | 1/1 independente |
// Após mint, execute instrução verify se não for auto-verificado no fluxo do SDK
// Token-gate: getAssetsByOwner + filtrar grouping.key === "collection"| Alternativa | Use quando | Não use quando |
|---|---|---|
| ID de coleção off-chain | Apenas MVP | Verificação on-chain exigida |
| Allowlist merkle | Apenas gate de mint | Exibição de proveniência pós-mint |
| Trait compartilhado único no JSON | Hack de analytics | Gating crítico de segurança |
Sem verificação, atacantes definem o campo de coleção com nomes de coleções famosas em NFTs não relacionados.
Tipos de conta diferentes - escolha um padrão por projeto.
Update authority da coleção / collection authority conforme regras do programa.
Sim - metadados de grouping incluem flag verified quando aplicável.
Geralmente exige operações de autoridade - não é edição casual de metadados.
getAssetsByGroup ou filtrar assets do owner por grouping de coleção.
Sem limite rígido on-chain - limites operacionais de rent e desempenho do indexador.
Padrão de produto - frequentemente contas de coleção separadas ou convenções de traits.
Sim - instruções de verify em lote são comuns em fluxos de reveal.
Muitas leem DAS - garanta que sua coleção verifique on-chain para exibir selo.
Reexecute verify com autoridade correta se mint teve sucesso mas tx de verify falhou.
Bubblegum suporta metadados de coleção em mint comprimido - veja seção cNFT.
Versões da stack: Esta página foi escrita para Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0 e LiteSVM 0.6.x.
Revisado por Chris St. John·Última atualização: 16 de jul. de 2026