Mass Upload of NFTs

Step 2 - Edit CSV File

4min
in the previous step step 1 initialize collection docid\ nr4vcze1jdsiew5sccksa a template csv file 00000 nfts csv was created the purpose of this file is to provide all necessary information for each nft in your collection in an easy as possible way this requires, that the artist edits the csv file according to his nfts this can be done most efficiently within ms excel, google spreadsheet or similar tools structure of the csv each line within the document represents a single nft, and a file may look like this name,description,symbol,edition,royalties,identifier,image1,image2,image3,attribute1,attribute2,attribute3,attribute4,attribute5,attribute6,attribute7,attribute8,listingmode,price,offerprice,auctionend awesome nft #1,this is the most valuable nft ever,awesome,summer,10,1,/home/ohager/desktop/massup test data/1 png,,,key1\ value1,key2\ value2,key3\ value3,,,,,,fixedprice,1000,0, awesome nft #2,this is the most valuable nft ever,awesome,summer,10,2,/home/ohager/desktop/massup test data/2 png,,,key1\ value1,key2\ value2,key3\ value3,,,,,,fixedprice,1000,0, awesome nft #3,this is the most valuable nft ever,awesome,summer,10,3,/home/ohager/desktop/massup test data/3 png,,,key1\ value1,key2\ value2,key3\ value3,,,,,,fixedprice,1000,0, awesome nft #4,this is the most valuable nft ever,awesome,summer,10,4,/home/ohager/desktop/massup test data/4 png,,,,,,,,,,,fixedprice,1000,0, awesome nft #5,this is the most valuable nft ever,awesome,summer,10,5,/home/ohager/desktop/massup test data/5 png,,,,,,,,,,,fixedprice,1000,0, awesome nft #6,this is the most valuable nft ever,awesome,summer,10,6,/home/ohager/desktop/massup test data/6 png,,,,,,,,,,,fixedprice,1000,0, awesome nft #7,this is the most valuable nft ever,awesome,summer,10,7,/home/ohager/desktop/massup test data/7 png,,,,,,,,,,,onauction,500,1100,2022 05 30t10 00 00z awesome nft #8,this is the most valuable nft ever,awesome,summer,10,8,/home/ohager/desktop/massup test data/8 png,,,,,,,,,,,notforsale,1000,0, awesome nft #9,this is the most valuable nft ever,awesome,summer,10,9,/home/ohager/desktop/massup test data/9 png,,,,,,,,,,,fixedprice,1000,0, awesome nft #10,this is the most valuable nft ever,awesome,summer,10,9,/home/ohager/desktop/massup test data/10 png,,,,,,,,,,,fixedprice,1000,0, column description format example name the name of the nft string (min 4 max 32) cute monstas description the description of the nft string (min 16 max 512) this is the ultimate collection of cute monstas symbol a alphanumeric symbol string (max 16) monsta edition a alphanumeric edition string (max 24) season 1 royalties the royalties in percent you earn when sold number (max 25) 10 identifier some numeric identifier, usually an incremental value number 666 image1 the absolute file path to the first image string supported formats are png, jpg, webp, gif, svg /home/ohager/desktop/generated cute monstas/4 png (posix and windows paths are possible) image2 the absolute file path to the second image string supported formats are png, jpg, webp, gif, svg image3 the absolute file path to the third image string supported formats are png, jpg, webp, gif, svg attribute1 the attribute/trait of the nfts this value is used to calculate rarities within a collection it is a key value tuple and each nft can have up to eight attributes string pattern key\ value (separated by ) background\ green attribute2 attribute3 attribute4 attribute5 attribute6 attribute7 attribute8 listingmode the initial listing mode, i e for sale, for auction, or not for sale one of fixedprice onauction or notforsale onauction price only required if listingmode is onauction or fixedprice the initial price n signa only required if listingmode is onauction "buy now" price for auctions in signa only required if listingmode is onauction "buy now" price for auctions in signa only required if listingmode is onauction number 1000 offerprice only required if listingmode is onauction "buy now" price for auctions in signa only required if listingmode is onauction only required if listingmode is onauction number 1500 auctionend only required if listingmode is onauction date and time when auction ends the date will be converted in blocktime and might result in estimated targed time this way minute precision is not guaranteed date string in iso format yyyy mm ddthh\ mm\ ssz (best is to use utc 00 time aka gmt) 2022 05 30t10 00 00z validate the csv file editing so much data/lines can be error prone, so validation of the input data is necessary of course, the signumart massup tool provides validation simply use the collection commit command in trial mode like this $> signumart massup collection commit try \=================== trial run ==================== nothing will be generated \================================================ found collection ┌────────────────────┬─────────────────────────────────────────────────────────────┐ │ (index) │ values │ ├────────────────────┼─────────────────────────────────────────────────────────────┤ │ id │ '3267705388183728528' │ │ name │ 'massup logo test' │ │ description │ 'a lot of cool,signum logos' │ │ socials │ '' │ │ home page │ '' │ │ background │ 'qmrc1ihqadtnkalzhkmhwe1hl8snns9a5ot36iqjspfwdh\ image/webp' │ │ social media image │ 'qmvs4dcx5wbnyfuruvhufb3zach6vsizcfve9vyvcabeev\ image/webp' │ └────────────────────┴─────────────────────────────────────────────────────────────┘ ? do you want to continue preparing the nfts data for upload? yes ✔ congratulations all data is valid ┌─────────────────────────────┬──────────────┐ │ (index) │ values │ ├─────────────────────────────┼──────────────┤ │ count │ 10 │ │ auction count │ 1 │ │ for sale count │ 8 │ │ not for sale count │ 1 │ │ minimum total amount │ '9500 signa' │ │ attribute keys count │ 3 │ │ distinct attributes count │ 3 │ │ items with attributes count │ 3 │ │ validation errors │ 0 │ └─────────────────────────────┴──────────────┘ trial run finished no artifacts were created in case of errors they will be shown like in the following example $> signumart massup collection commit try \=================== trial run ==================== nothing will be generated \================================================ found collection ┌────────────────────┬─────────────────────────────────────────────────────────────┐ │ (index) │ values │ ├────────────────────┼─────────────────────────────────────────────────────────────┤ │ id │ '3267705388183728528' │ │ name │ 'massup logo test' │ │ description │ 'a lot of cool,signum logos' │ │ socials │ '' │ │ home page │ '' │ │ background │ 'qmrc1ihqadtnkalzhkmhwe1hl8snns9a5ot36iqjspfwdh\ image/webp' │ │ social media image │ 'qmvs4dcx5wbnyfuruvhufb3zach6vsizcfve9vyvcabeev\ image/webp' │ └────────────────────┴─────────────────────────────────────────────────────────────┘ ? do you want to continue preparing the nfts data for upload? yes ✖ found 2 errors found errors ┌─────────┬─────────────────────────────────────────────────────────────────────────────────┐ │ (index) │ values │ ├─────────┼─────────────────────────────────────────────────────────────────────────────────┤ │ 0 │ 'parse error in line 8 /name maxlength must not have more than 32 characters' │ │ 1 │ 'parse error in line 10 end date is invalid' │ └─────────┴─────────────────────────────────────────────────────────────────────────────────┘ ┌─────────────────────────────┬──────────────┐ │ (index) │ values │ ├─────────────────────────────┼──────────────┤ │ count │ 8 │ │ auction count │ 0 │ │ for sale count │ 7 │ │ not for sale count │ 1 │ │ minimum total amount │ '8000 signa' │ │ attribute keys count │ 0 │ │ distinct attributes count │ 0 │ │ items with attributes count │ 3 │ │ validation errors │ 2 │ └─────────────────────────────┴──────────────┘ found 2 validation errors in \[/home/ohager/code/signum/signum art massup/local tests/massup logo test/00000 nfts csv] you need to fix them before you can continue before you execute a command, you should select the folder in which the csv and the data are stored in the command line tool!