Core拡張SDK

Core コレクションを検索

検索条件を指定してCore アセットのリストを返します。

コード例

この例では2つのフィルターが適用されています:

  1. オーナーの公開鍵
  2. メタデータURI jsonUri

これにより、そのウォレットが所有する指定されたURIを持つNFTのみが返されます。

追加の可能なパラメータは下記に記載されています。

import { publicKey } from '@metaplex-foundation/umi';
import { createUmi } from '@metaplex-foundation/umi-bundle-defaults';
import { dasApi } from '@metaplex-foundation/digital-asset-standard-api';
const umi = createUmi('<ENDPOINT>').use(dasApi());
const asset = await das.searchAssets(umi, {
owner: publicKey('AUtnbwWJQfYZjJ5Mc6go9UancufcAuyqUZzR1jSe4esx'),
jsonUri: 'https://arweave.net/TkklLLQKiO9t9_JPmt-eH_S-VBLMcRjFcgyvIrENBzA',
});
console.log(asset);

レスポンス例

[
{
publicKey: '8VrqN8b8Y7rqWsUXqUw7dxQw9J5UAoVyb6YDJs1mBCCz',
header: {
executable: false,
owner: 'CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d',
lamports: [Object],
rentEpoch: 18446744073709551616n,
exists: true
},
pluginHeader: { key: 3, pluginRegistryOffset: 179n },
royalties: {
authority: [Object],
offset: 138n,
basisPoints: 500,
creators: [Array],
ruleSet: [Object]
},
key: 1,
updateAuthority: {
type: 'Collection',
address: 'FgEKkVTSfLQ7a7BFuApypy4KaTLh65oeNRn2jZ6fiBav'
},
name: 'Number 1',
uri: 'https://arweave.net/TkklLLQKiO9t9_JPmt-eH_S-VBLMcRjFcgyvIrENBzA',
content: {
'$schema': 'https://schema.metaplex.com/nft1.0.json',
json_uri: 'https://arweave.net/TkklLLQKiO9t9_JPmt-eH_S-VBLMcRjFcgyvIrENBzA',
files: [Array],
metadata: [Object],
links: [Object]
},
owner: 'AUtnbwWJQfYZjJ5Mc6go9UancufcAuyqUZzR1jSe4esx',
seq: { __option: 'None' }
}
]

パラメータ

名前必須説明
negate検索条件を反転するかどうかを示します。
conditionType検索条件に一致するすべて("all")またはいずれか("any")のアセットを取得するかどうかを示します。
interfaceインターフェース値(["V1_NFT", "V1_PRINT" "LEGACY_NFT", "V2_NFT", "FungibleAsset", "Custom", "Identity", "Executable"]のいずれか)。
ownerAddressオーナーのアドレス。
ownerType所有権のタイプ ["single", "token"]
creatorAddressクリエイターのアドレス。
creatorVerifiedクリエイターが検証されている必要があるかどうかを示します。
authorityAddress権限のアドレス。
groupingグルーピング ["key", "value"] ペア。
delegateAddressデリゲートのアドレス。
frozenアセットが凍結されているかどうかを示します。
supplyアセットの供給量。
supplyMint供給ミントのアドレス。
compressedアセットが圧縮されているかどうかを示します。
compressibleアセットが圧縮可能かどうかを示します。
royaltyTargetTypeロイヤリティのタイプ ["creators", "fanout", "single"]
royaltyTargetロイヤリティのターゲットアドレス。
royaltyAmountロイヤリティの金額。
burntアセットがバーンされているかどうかを示します。
sortByソート条件。これはオブジェクト { sortBy: <value>, sortDirection: <value> } として指定され、sortBy["created", "updated", "recentAction", "none"] のいずれか、sortDirection["asc", "desc"] のいずれかです。
limit取得するアセットの最大数。
page取得する「ページ」のインデックス。
before指定されたID以前のアセットを取得します。
after指定されたID以降のアセットを取得します。
jsonUriJSON URIの値。

技術的には、これらすべてのパラメータは標準DASパッケージから継承されているため受け入れられますが、一部は使用が推奨されません。例えば、パッケージはMPL Coreのinterfaceをいずれにせよフィルタリングします。