diff --git a/docs-src/src/set.md b/docs-src/src/set.md index 0dcf9cb9..ef6b1504 100644 --- a/docs-src/src/set.md +++ b/docs-src/src/set.md @@ -4,16 +4,20 @@ Set non-Data struct values for a NFT. -### Set Primary-Sale-Happened +### Set Secondary Sale -Set `primary_sale_happened` to be `true`. +Set `primary_sale_happened` to be `true`, enabling secondary sale royalties. ```bash -metaboss set primary-sale-happened --keypair --account +metaboss set secondary-sale --keypair --account ``` Outputs a TxId to the command line so you can check the result. +### Set Secondary Sale All + +Same as `set secondary-sale` but takes a mint list instead of a single account file. + ### Set Update-Authority Set `update_authority` to a different public key. diff --git a/docs-src/src/update.md b/docs-src/src/update.md index 06fcd44c..9d64e1c8 100644 --- a/docs-src/src/update.md +++ b/docs-src/src/update.md @@ -4,6 +4,8 @@ Update various aspects of an NFT. +See also **Set** commands for updatable values that cannot be reversed (e.g. set immutable). + ### Update Data Update the `Data` struct on a NFT from a JSON file. @@ -113,7 +115,17 @@ Update the on-chain symbol of a NFT, keeping the rest of the `Data` struct the s #### Usage ```bash - metaboss update name --keypair --account --new-symbol + metaboss update symbol --keypair --account --new-symbol + ``` + + ### Update Symbol All + +Update the on-chain symbol of a list of NFTs, keeping the rest of the `Data` struct the same. + +#### Usage + +```bash + metaboss update symbol-all --keypair -L --new-symbol ``` ### Update Creators @@ -136,6 +148,14 @@ metaboss update creators -k ~/.config/solana/devnet.json -a 4rxTT8pKeYFrFgNBgTsp Using the `--append` flag will set the shares to 0 and append to the existing creators list, otherwise the creators are overwritten with the list you pass in. +### Update Creators All + +Same as update creators but takes a mint list instead of a single account. + +```bash +metaboss update creators-all -k ~/.config/solana/devnet.json -L mints.json -c 42NevAWA6A8m9prDvZRUYReQmhNC3NtSZQNFUppPJDRB:70:false,AVdBTNhDqYgXGaaVkqiaUJ1Yqa61hMiFFaVRtqwzs5GZ:30:false +``` + ### Update URI Update the metadata URI, keeping the rest of the `Data` struct the same. @@ -167,4 +187,24 @@ metaboss update uri-all --keypair --json-file -a -n +``` + +### Update Seller Fee Basis Points All + +Update the seller fee basis points field on a a list of NFTs, keeping the rest of the `Data` struct the same. + +#### Usage + +```bash +metaboss update sfbp-all --keypair -L -n +``` diff --git a/docs/404.html b/docs/404.html index f1b1496e..2c5e73f5 100644 --- a/docs/404.html +++ b/docs/404.html @@ -82,7 +82,7 @@ diff --git a/docs/ayu-highlight.css b/docs/ayu-highlight.css index 0c45c6f1..32c94322 100644 --- a/docs/ayu-highlight.css +++ b/docs/ayu-highlight.css @@ -8,7 +8,6 @@ Original by Dempfi (https://github.com/dempfi/ayu) overflow-x: auto; background: #191f26; color: #e6e1cf; - padding: 0.5em; } .hljs-comment, diff --git a/docs/burn.html b/docs/burn.html index 5d99d6eb..7caf9cc3 100644 --- a/docs/burn.html +++ b/docs/burn.html @@ -81,7 +81,7 @@ diff --git a/docs/collections.html b/docs/collections.html index 9e1dcde6..49209938 100644 --- a/docs/collections.html +++ b/docs/collections.html @@ -81,7 +81,7 @@ diff --git a/docs/contact.html b/docs/contact.html index 5a67908e..61308969 100644 --- a/docs/contact.html +++ b/docs/contact.html @@ -81,7 +81,7 @@ diff --git a/docs/css/chrome.css b/docs/css/chrome.css index 21c08b93..53a54c85 100644 --- a/docs/css/chrome.css +++ b/docs/css/chrome.css @@ -208,24 +208,63 @@ pre { pre > .buttons { position: absolute; z-index: 100; - right: 5px; - top: 5px; + right: 0px; + top: 2px; + margin: 0px; + padding: 2px 0px; color: var(--sidebar-fg); cursor: pointer; + visibility: hidden; + opacity: 0; + transition: visibility 0.1s linear, opacity 0.1s linear; +} +pre:hover > .buttons { + visibility: visible; + opacity: 1 } pre > .buttons :hover { color: var(--sidebar-active); + border-color: var(--icons-hover); + background-color: var(--theme-hover); } pre > .buttons i { margin-left: 8px; } pre > .buttons button { - color: inherit; - background: transparent; - border: none; cursor: inherit; + margin: 0px 5px; + padding: 3px 5px; + font-size: 14px; + + border-style: solid; + border-width: 1px; + border-radius: 4px; + border-color: var(--icons); + background-color: var(--theme-popup-bg); + transition: 100ms; + transition-property: color,border-color,background-color; + color: var(--icons); } +@media (pointer: coarse) { + pre > .buttons button { + /* On mobile, make it easier to tap buttons. */ + padding: 0.3rem 1rem; + } +} +code { + padding: 1rem; +} + +/* FIXME: ACE editors overlap their buttons because ACE does absolute + positioning within the code block which breaks padding. The only solution I + can think of is to move the padding to the outer pre tag (or insert a div + wrapper), but that would require fixing a whole bunch of CSS rules. +*/ +.hljs.ace_editor { + padding: 0rem 0rem; +} + pre > .result { margin-top: 10px; } diff --git a/docs/css/general.css b/docs/css/general.css index ef2ba504..0e4f07a5 100644 --- a/docs/css/general.css +++ b/docs/css/general.css @@ -26,6 +26,16 @@ code { font-size: 0.875em; /* please adjust the ace font size accordingly in editor.js */ } +/* make long words/inline code not x overflow */ +main { + overflow-wrap: break-word; +} + +/* make wide tables scroll if they overflow */ +.table-wrapper { + overflow-x: auto; +} + /* Don't change font size in headers. */ h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { font-size: unset; @@ -80,8 +90,7 @@ h6:target::before { .content { overflow-y: auto; - padding: 0 15px; - padding-bottom: 50px; + padding: 0 5px 50px 5px; } .content main { margin-left: auto; diff --git a/docs/decode.html b/docs/decode.html index 74ebccd0..be04f681 100644 --- a/docs/decode.html +++ b/docs/decode.html @@ -81,7 +81,7 @@ diff --git a/docs/derive.html b/docs/derive.html index 1da97041..7cc507ae 100644 --- a/docs/derive.html +++ b/docs/derive.html @@ -81,7 +81,7 @@ diff --git a/docs/examples.html b/docs/examples.html index c9b318d0..f93628b4 100644 --- a/docs/examples.html +++ b/docs/examples.html @@ -3,7 +3,7 @@ - Examples - Metaboss + Recipes - Metaboss @@ -81,7 +81,7 @@ @@ -191,7 +191,7 @@

- @@ -205,7 +205,7 @@

- diff --git a/docs/find.html b/docs/find.html index 3de1cbc6..7864661f 100644 --- a/docs/find.html +++ b/docs/find.html @@ -81,7 +81,7 @@ diff --git a/docs/global_options.html b/docs/global_options.html index 0029ff7f..79fbbeb1 100644 --- a/docs/global_options.html +++ b/docs/global_options.html @@ -81,7 +81,7 @@ diff --git a/docs/highlight.css b/docs/highlight.css index c2343227..ba57b82b 100644 --- a/docs/highlight.css +++ b/docs/highlight.css @@ -61,7 +61,6 @@ overflow-x: auto; background: #f6f7f6; color: #000; - padding: 0.5em; } .hljs-emphasis { diff --git a/docs/index.html b/docs/index.html index c38cc57b..fae1a687 100644 --- a/docs/index.html +++ b/docs/index.html @@ -81,7 +81,7 @@ @@ -210,10 +210,10 @@

Insta git checkout main

Install or build with Rust:

-
cargo install --locked --path ./
+
cargo install --path ./
 

or

-
cargo build --locked --release
+
cargo build --release
 

Set Up Your Solana Config

If you have the Solana CLI installed (recommended) you can setup your RPC and keypair so you don't have to pass them into Metaboss:

diff --git a/docs/mint.html b/docs/mint.html index bcb21657..c4e9bcff 100644 --- a/docs/mint.html +++ b/docs/mint.html @@ -81,7 +81,7 @@ diff --git a/docs/overview.html b/docs/overview.html index 97d698a0..fae1a687 100644 --- a/docs/overview.html +++ b/docs/overview.html @@ -81,7 +81,7 @@ @@ -210,10 +210,10 @@

Insta git checkout main

Install or build with Rust:

-
cargo install --locked --path ./
+
cargo install --path ./
 

or

-
cargo build --locked --release
+
cargo build --release
 

Set Up Your Solana Config

If you have the Solana CLI installed (recommended) you can setup your RPC and keypair so you don't have to pass them into Metaboss:

diff --git a/docs/print.html b/docs/print.html index 77ea9b39..0c44771b 100644 --- a/docs/print.html +++ b/docs/print.html @@ -82,7 +82,7 @@ @@ -211,10 +211,10 @@

Insta git checkout main

Install or build with Rust:

-
cargo install --locked --path ./
+
cargo install --path ./
 

or

-
cargo build --locked --release
+
cargo build --release
 

Set Up Your Solana Config

If you have the Solana CLI installed (recommended) you can setup your RPC and keypair so you don't have to pass them into Metaboss:

@@ -235,7 +235,7 @@

Install Binary<

Or get the binary yourself: binary.

Install With Cargo

So you're a Rust dev. . .

-
cargo install --locked metaboss
+
cargo install metaboss
 

See Usage Commands

metaboss -h
@@ -286,6 +286,46 @@ 

Examples

+

Update the URI of an existing NFT

+
metaboss update uri -k ~/.config/solana/devnet.json -a CQNKXw1rw2eWwi812Exk4cKUjKuomZ2156STGRyXd2Mp -u https://arweave.net/N36gZYJ6PEH8OE11i0MppIbPG4VXKV4iuQw1zaq3rls
+
+

Mint a new NFT

+

Prepare a JSON file.

+
{
+    "name": "TestNFT2",
+    "symbol": "TNFT",
+    "uri": "https://arweave.net/FPGAv1XnyZidnqquOdEbSY6_ES735ckcDTdaAtI7GFw",
+    "seller_fee_basis_points": 200,
+    "creators": [
+        {
+            "address": "AVdBTNhDqYgXGaaVkqiaUJ1Yqa61hMiFFaVRtqwzs5GZ",
+            "verified": false,
+            "share": 50
+        },
+        {
+            "address": "42NevAWA6A8m9prDvZRUYReQmhNC3NtSZQNFUppPJDRB",
+            "verified": false,
+            "share": 50
+        }
+    ]
+}
+
+

Call command. In this case we do not set --receiver so we mint directly to the keypair address.

+
metaboss mint one -k ~/.config/solana/devnet.json -d ./new_nft.json
+
+

Snapshot Candy Machine Mint Accounts

+

We call the command with no output specified so it creates the file in the current directory.

+
metaboss snapshot mints -c BHZWQEtGRMs7voC7vDyVQCXawB1P6UvxG899ATGwxmaR
+
+

The file BHZWQEtGRMs7voC7vDyVQCXawB1P6UvxG899ATGwxmaR_mint_accounts.json is created with the contents:

+
[
+    "D5ycm2mgBWDR37QVkvM389x84V4ux48bSeHLeiHPtX28",
+    "4kYdMRRYtXjmkusgKEBntSXLDhqkHNE57GF3RPdtx6MW",
+    "J8xuCFCeBRESoXewtMwrrpVUGikUG3B1WznNdLffyymz",
+    "4gRtRjrbD7g5ZKUvSVA1tYMK9LZqz6uWuSc3rKeinySh"
+]
+

Global Options

These are the options that apply to all subcommands and can be passed in at any level.

metaboss <option> <subcommand> <subcommand>
@@ -495,11 +535,13 @@ 

Usage

Set

Warning: These commands modify your NFT and are for advanced users. Use with caution.

Set non-Data struct values for a NFT.

-

Set Primary-Sale-Happened

-

Set primary_sale_happened to be true.

-
metaboss set primary-sale-happened --keypair <PATH_TO_KEYPAIR> --account <MINT_ACCOUNT>
+

Set Secondary Sale

+

Set primary_sale_happened to be true, enabling secondary sale royalties.

+
metaboss set secondary-sale --keypair <PATH_TO_KEYPAIR> --account <MINT_ACCOUNT>
 

Outputs a TxId to the command line so you can check the result.

+

Set Secondary Sale All

+

Same as set secondary-sale but takes a mint list instead of a single account file.

Set Update-Authority

Set update_authority to a different public key.

metaboss set update-authority --keypair <PATH_TO_KEYPAIR> --account <MINT_ACCOUNT> --new-update-authority <NEW_UPDATE_AUTHORITY>
@@ -639,12 +681,23 @@ 

Usage

"8GcRqxy4VAocTcAkoxCXkPCEmM36HMtjBc8ZarWhAD6o" ]
+

Indexed Data

+

Metaboss now has experimental support for running snapshot commands using off-chain, indexed data from https://theindex.io/. Other indexers or methods may be supported later. To use this feature, you need to sign up for a free account with TheIndex to get an API key.

+

Snapshot Indexed Mints

+

Usage

+
metaboss snapshot indexed-mints --creator <FIRST_VERIFIED_CREATOR> --api-key <THEINDEX.IO_API_KEY>
+
+

Snapshot Indexed Holders

+

Usage

+
metaboss snapshot indexed-holders --creator <FIRST_VERIFIED_CREATOR> --api-key <THEINDEX.IO_API_KEY>
+

Update

Warning: These commands modify your NFT and are for advanced users. Use with caution.

Update various aspects of an NFT.

+

See also Set commands for updatable values that cannot be reversed (e.g. set immutable).

Update Data

Update the Data struct on a NFT from a JSON file.

-

Usage

+

Usage

metaboss update data --keypair <PATH_TO_KEYPAIR> --account <MINT_ACCOUNT> --new-data-file <PATH_TO_NEW_DATA_FILE>
 

The JSON file should include all the fields of the metadata Data struct and should match creator verified bools for existing creators. E.g. if your NFT was minted by the Metaplex Candy Machine program, and you wish to keep your candy machine as a verified creator you must add the candy machine to your creators array with verified set to true.

@@ -677,7 +730,7 @@

Usage

Outputs a TxId to the command line so you can check the result.

Update Data All

Update the Data struct on a list of NFTs from JSON files.

-

Usage

+

Usage

metaboss update data-all --keypair <PATH_TO_KEYPAIR> --data-dir <PATH_TO_DATA_DIR>
 

Each JSON file in the data directory should include the mint account and all the fields of the metadata Data struct and should match creator verified bools for existing creators. E.g. if your NFT was minted by the Metaplex Candy Machine program, and you wish to keep your candy machine as a verified creator you must add the candy machine to your creators array with verified set to true.

@@ -713,17 +766,22 @@

Usage

Outputs a TxId to the command line so you can check the result.

Update Name

Update the on-chain name of a NFT, keeping the rest of the Data struct the same.

-

Usage

+

Usage

 metaboss update name --keypair <PATH_TO_KEYPAIR> --account <MINT_ACCOUNT> --new-name <NEW_NAME>
 

Update Symbol

Update the on-chain symbol of a NFT, keeping the rest of the Data struct the same.

-

Usage

-
 metaboss update name --keypair <PATH_TO_KEYPAIR> --account <MINT_ACCOUNT> --new-symbol <NEW_SYMBOL>
+

Usage

+
 metaboss update symbol --keypair <PATH_TO_KEYPAIR> --account <MINT_ACCOUNT> --new-symbol <NEW_SYMBOL>
+
+

Update Symbol All

+

Update the on-chain symbol of a list of NFTs, keeping the rest of the Data struct the same.

+

Usage

+
 metaboss update symbol-all --keypair <PATH_TO_KEYPAIR> -L <PATH_TO_LIST_MINT_ADDRESSES> --new-symbol <NEW_SYMBOL>
 

Update Creators

Update the creators of a NFT, keeping the rest of the Data struct the same.

-

Usage

+

Usage

metaboss update creators -k <PATH_TO_KEYPAIR> -a <MINT_ACCOUNT> -c <CREATOR1:SHARE:VERIFIED,CREATOR2:SHARE:VERIFIED>
 

Creators should be a comma-delimited list of creator:share:verified. E.g.

@@ -731,14 +789,18 @@

Usage

metaboss update creators -k ~/.config/solana/devnet.json -a 4rxTT8pKeYFrFgNBgTspBWVEnMnsAZGwChkjRUtP4Xpi -c 42NevAWA6A8m9prDvZRUYReQmhNC3NtSZQNFUppPJDRB:70:false,AVdBTNhDqYgXGaaVkqiaUJ1Yqa61hMiFFaVRtqwzs5GZ:30:false
 

Using the --append flag will set the shares to 0 and append to the existing creators list, otherwise the creators are overwritten with the list you pass in.

+

Update Creators All

+

Same as update creators but takes a mint list instead of a single account.

+
metaboss update creators-all  -k ~/.config/solana/devnet.json -L mints.json -c 42NevAWA6A8m9prDvZRUYReQmhNC3NtSZQNFUppPJDRB:70:false,AVdBTNhDqYgXGaaVkqiaUJ1Yqa61hMiFFaVRtqwzs5GZ:30:false
+

Update URI

Update the metadata URI, keeping the rest of the Data struct the same.

-

Usage

+

Usage

metaboss update uri --keypair <PATH_TO_KEYPAIR> --account <MINT_ACCOUNT> --new-uri <NEW_URI>
 

Update URI All

Update the metadata URI for a list of mint accounts, keeping the rest of the Data struct the same.

-

Usage

+

Usage

metaboss update uri-all --keypair <PATH_TO_KEYPAIR> --json-file <PATH_TO_JSON_FILE>
 
[
@@ -752,6 +814,16 @@ 

Usage

} ]
+

Update Seller Fee Basis Points

+

Update the seller fee basis points field on an NFT, keeping the rest of the Data struct the same.

+

Usage

+
metaboss update sfbp --keypair <PATH_TO_KEYPAIR> -a <MINT_ACCOUNT> -n <NEW_SELLER_FEE_BASIS_POINTS_VALUE>
+
+

Update Seller Fee Basis Points All

+

Update the seller fee basis points field on a a list of NFTs, keeping the rest of the Data struct the same.

+

Usage

+
metaboss update sfbp-all --keypair <PATH_TO_KEYPAIR> -L <PATH_TO_MINT_LIST.json> -n <NEW_SELLER_FEE_BASIS_POINTS_VALUE>
+

Withdraw (Deprecated)

Use Metaplex's Sugar tool for withdrawing from candy machines instead.

Contact

diff --git a/docs/quick_start.html b/docs/quick_start.html index 3438e452..925a475e 100644 --- a/docs/quick_start.html +++ b/docs/quick_start.html @@ -81,7 +81,7 @@ @@ -157,7 +157,7 @@

Install Binary<

Or get the binary yourself: binary.

Install With Cargo

So you're a Rust dev. . .

-
cargo install --locked metaboss
+
cargo install metaboss
 

See Usage Commands

metaboss -h
diff --git a/docs/searchindex.js b/docs/searchindex.js
index 17885d4c..ae207471 100644
--- a/docs/searchindex.js
+++ b/docs/searchindex.js
@@ -1 +1 @@
-Object.assign(window.search, {"doc_urls":["overview.html#metaboss","overview.html#recommended-way-to-install","overview.html#binaries","overview.html#install-from-source","overview.html#set-up-your-solana-config","quick_start.html#quick-start","quick_start.html#install-binary","quick_start.html#install-with-cargo","quick_start.html#see-usage-commands","examples.html#examples","examples.html#update-the-uri-of-an-existing-nft","examples.html#mint-a-new-nft","examples.html#snapshot-candy-machine-mint-accounts","global_options.html#global-options","global_options.html#options","burn.html#burn","burn.html#burn-one","collections.html#collections","collections.html#migrate","collections.html#running-the-commands","collections.html#output-file","collections.html#get-and-check-collection-items","collections.html#get-items","collections.html#check-items","decode.html#decode","decode.html#decode-mint","derive.html#derive","derive.html#derive-candy-machine-v2-creator","derive.html#derive-edition","derive.html#derive-metadata","derive.html#derive-pda","find.html#find","find.html#error","find.html#missing-editions","mint.html#mint","mint.html#mint-one","mint.html#mint-list","set.html#set","set.html#set-primary-sale-happened","set.html#set-update-authority","set.html#set-update-authority-all","set.html#set-immutable","set.html#set-immutable-all","sign.html#sign","sign.html#sign-one","sign.html#sign-all","snapshot.html#snapshot","snapshot.html#snapshot-cm-accounts","snapshot.html#snapshot-holders","snapshot.html#snapshot-mints","update.html#update","update.html#update-data","update.html#update-data-all","update.html#update-name","update.html#update-symbol","update.html#update-creators","update.html#update-uri","update.html#update-uri-all","withdraw.html#withdraw-deprecated","contact.html#contact"],"index":{"documentStore":{"docInfo":{"0":{"body":107,"breadcrumbs":2,"title":1},"1":{"body":86,"breadcrumbs":4,"title":3},"10":{"body":8,"breadcrumbs":5,"title":4},"11":{"body":40,"breadcrumbs":4,"title":3},"12":{"body":21,"breadcrumbs":6,"title":5},"13":{"body":17,"breadcrumbs":4,"title":2},"14":{"body":63,"breadcrumbs":3,"title":1},"15":{"body":0,"breadcrumbs":2,"title":1},"16":{"body":26,"breadcrumbs":3,"title":2},"17":{"body":0,"breadcrumbs":2,"title":1},"18":{"body":102,"breadcrumbs":2,"title":1},"19":{"body":265,"breadcrumbs":3,"title":2},"2":{"body":12,"breadcrumbs":2,"title":1},"20":{"body":38,"breadcrumbs":3,"title":2},"21":{"body":0,"breadcrumbs":4,"title":3},"22":{"body":68,"breadcrumbs":2,"title":1},"23":{"body":46,"breadcrumbs":3,"title":2},"24":{"body":0,"breadcrumbs":2,"title":1},"25":{"body":100,"breadcrumbs":3,"title":2},"26":{"body":0,"breadcrumbs":2,"title":1},"27":{"body":14,"breadcrumbs":6,"title":5},"28":{"body":9,"breadcrumbs":3,"title":2},"29":{"body":9,"breadcrumbs":3,"title":2},"3":{"body":52,"breadcrumbs":3,"title":2},"30":{"body":13,"breadcrumbs":3,"title":2},"31":{"body":0,"breadcrumbs":2,"title":1},"32":{"body":60,"breadcrumbs":2,"title":1},"33":{"body":12,"breadcrumbs":3,"title":2},"34":{"body":23,"breadcrumbs":2,"title":1},"35":{"body":225,"breadcrumbs":3,"title":2},"36":{"body":80,"breadcrumbs":3,"title":2},"37":{"body":14,"breadcrumbs":2,"title":1},"38":{"body":18,"breadcrumbs":5,"title":4},"39":{"body":17,"breadcrumbs":4,"title":3},"4":{"body":20,"breadcrumbs":5,"title":4},"40":{"body":34,"breadcrumbs":4,"title":3},"41":{"body":13,"breadcrumbs":3,"title":2},"42":{"body":14,"breadcrumbs":3,"title":2},"43":{"body":12,"breadcrumbs":2,"title":1},"44":{"body":19,"breadcrumbs":3,"title":2},"45":{"body":103,"breadcrumbs":2,"title":1},"46":{"body":4,"breadcrumbs":2,"title":1},"47":{"body":49,"breadcrumbs":4,"title":3},"48":{"body":130,"breadcrumbs":3,"title":2},"49":{"body":89,"breadcrumbs":3,"title":2},"5":{"body":0,"breadcrumbs":4,"title":2},"50":{"body":12,"breadcrumbs":2,"title":1},"51":{"body":120,"breadcrumbs":3,"title":2},"52":{"body":126,"breadcrumbs":3,"title":2},"53":{"body":20,"breadcrumbs":3,"title":2},"54":{"body":20,"breadcrumbs":3,"title":2},"55":{"body":47,"breadcrumbs":3,"title":2},"56":{"body":19,"breadcrumbs":3,"title":2},"57":{"body":28,"breadcrumbs":3,"title":2},"58":{"body":8,"breadcrumbs":3,"title":2},"59":{"body":9,"breadcrumbs":2,"title":1},"6":{"body":29,"breadcrumbs":4,"title":2},"7":{"body":7,"breadcrumbs":4,"title":2},"8":{"body":21,"breadcrumbs":5,"title":3},"9":{"body":0,"breadcrumbs":2,"title":1}},"docs":{"0":{"body":"Stars Forks Crate Downloads The Solana Metaplex NFT 'Swiss Army Knife' tool. Current supported features: Decode the metadata of a token mint account Mint new NFTs from a JSON file Set primary_sale_happened bool on an NFT's metadata Set update_authorty address on an NFT's metadata Verify a creator by signing the metadata accounts for all tokens in a list, for a given candy machine id or a single mint account Get a snapshot of current NFT holders for a given candy machine ID or update authority Get a list of mint accounts for a given candy machine ID or update authority Get a list of all candy machine state and config accounts for a given update authority Update all metadata Data struct fields for a NFT Update just the URI for a NFT Suggestions and PRs welcome! Note: This is experimental software for a young ecosystem. Use at your own risk. The author is not responsible for misuse of the software or failing to test specific commands before using on production NFTs.","breadcrumbs":"Overview » Metaboss","id":"0","title":"Metaboss"},"1":{"body":"For non-technical users, the recommended way to install is to use the install script to install on MacOs , Ubuntu , or other Unix-like OS , by copying the following into a terminal: bash <(curl -sSf https://raw.githubusercontent.com/samuelvanderwaal/metaboss/main/scripts/install.sh) This will download the appropriate binary for your system and install it. Feel free to inspect the install script directly at the link to see what you are running before you run the command. For Windows , either use the prebuilt binary in the following section, or install Windows Subsystem Linux (WSL) to use the Ubuntu terminal to run the above installation script. To install WSL on Windows, either run wsl --install -d ubuntu in the cmd prompt terminal, or install \"Ubuntu\" from the Windows app store. Once you have that set up you can simply run the install script in the WSL terminal. You will then run all your Metaboss commands from WSL as well.","breadcrumbs":"Overview » Recommended Way to Install","id":"1","title":"Recommended Way to Install"},"10":{"body":"metaboss update uri -k ~/.config/solana/devnet.json -a CQNKXw1rw2eWwi812Exk4cKUjKuomZ2156STGRyXd2Mp -u https://arweave.net/N36gZYJ6PEH8OE11i0MppIbPG4VXKV4iuQw1zaq3rls","breadcrumbs":"Examples » Update the URI of an existing NFT","id":"10","title":"Update the URI of an existing NFT"},"11":{"body":"Prepare a JSON file. { \"name\": \"TestNFT2\", \"symbol\": \"TNFT\", \"uri\": \"https://arweave.net/FPGAv1XnyZidnqquOdEbSY6_ES735ckcDTdaAtI7GFw\", \"seller_fee_basis_points\": 200, \"creators\": [ { \"address\": \"AVdBTNhDqYgXGaaVkqiaUJ1Yqa61hMiFFaVRtqwzs5GZ\", \"verified\": false, \"share\": 50 }, { \"address\": \"42NevAWA6A8m9prDvZRUYReQmhNC3NtSZQNFUppPJDRB\", \"verified\": false, \"share\": 50 } ]\n} Call command. In this case we do not set --receiver so we mint directly to the keypair address. metaboss mint one -k ~/.config/solana/devnet.json -d ./new_nft.json","breadcrumbs":"Examples » Mint a new NFT","id":"11","title":"Mint a new NFT"},"12":{"body":"We call the command with no output specified so it creates the file in the current directory. metaboss snapshot mints -c BHZWQEtGRMs7voC7vDyVQCXawB1P6UvxG899ATGwxmaR The file BHZWQEtGRMs7voC7vDyVQCXawB1P6UvxG899ATGwxmaR_mint_accounts.json is created with the contents: [ \"D5ycm2mgBWDR37QVkvM389x84V4ux48bSeHLeiHPtX28\", \"4kYdMRRYtXjmkusgKEBntSXLDhqkHNE57GF3RPdtx6MW\", \"J8xuCFCeBRESoXewtMwrrpVUGikUG3B1WznNdLffyymz\", \"4gRtRjrbD7g5ZKUvSVA1tYMK9LZqz6uWuSc3rKeinySh\"\n]","breadcrumbs":"Examples » Snapshot Candy Machine Mint Accounts","id":"12","title":"Snapshot Candy Machine Mint Accounts"},"13":{"body":"These are the options that apply to all subcommands and can be passed in at any level. metaboss