Create Digital Passports using CSV
Mint multiple digital passports in one go by uploading a CSV file containing the necessary data. This feature allows you to efficiently create multiple passports simultaneously.
- Before uploading the CSV file, it's essential to create the digital passports group to which your digital passports will be assigned.
- Each digital passport costs 1 credit.
- Recovery time is automatically 5 years.
- When you upload your CSV, the NFT Management Platform will check digital passports information line by line. When an error is detected, it is added in the CSV. Fetch your CSV after uploading to see potential errors.
CSV Compliance
File name
To retrieve your CSV following the file upload, the name must comply with our standards.
The naming must not include any special characters or spaces: csvOriginalName
: [a-zA-Z0-9].*.csv*
CSV format
The provided CSV file must respect the following format:
product_group_id | product_id | tags | mint | public_content | content |
---|---|---|---|---|---|
ProductGroupId1 | product1 | [“tag1”,“tag2"] | true | false | {} |
ProductGroupId1 | product2 | [“tag1”,“tag2"] | true | false | { "content": { "serialNumber": "newSerialNumber" } } |
- Special characters are accepted for the product_group_id and product_id.
- If you don't want your digital passport to inherit the content of the digital passport group, add {}.
- Upper and lower case are accepted for booleans: true/TRUE and false/FALSE.
Parameter
Parameter | Type | Required | Description |
---|---|---|---|
product_group_id | String | ✅ | Digital passport group identifier of the group previously created. |
product_id | String | ✅ | Identifier of the digital passport. |
tags | String | ❌ | Tags associated with the digital passport. To add several tags, separate them using a comma. |
mint | Boolean | ✅ | Whether to create the digital passport directly on the blockchain. |
public_content | Boolean | ❌ | Visibility on platforms like OpenSea. |
content | Object | ❌ | Content is optional. It is automatically inherited from the product group created above. However, you may want to add or update an element for this particular digital passport (e.g. SKU). ⚠️ This content will overwrite the data if it is defined in the product group. |
Upload CSV file
URL
To upload your CSV, use /productManagement/product/batch/upload
.
POST - https://{{nmpUrl}}/productManagement/product/batch/upload
Parameter
Parameter | Type | Required | Description |
---|---|---|---|
file | multipart/form | ✅ | CSV file. |
Return Payload
Status Code | Success | Error Message |
---|---|---|
200 | true | Success |
{
"message": "File uploaded successfully."
}
Errors
Status Code | Success | Code | Error Message |
---|---|---|---|
400 | false | npm.productManagement.formatErrror | The CSV file is not formatted correctly. |
400 | false | npm.productManagement.formatErrror | The CSV file already exists. |
422 | false | npm.productManagement.formatErrror | Only one CSV file must be uploaded per request. |
500 | false | npm.productManagement.UnknownError | An unknown error has occurred. |
{
"message": "File with same name file.csv already exists.",
"code": "npm.productManagement.formatErrror"
}
{
"code": "npm.productManagement.formatErrror",
"message": "Missing required columns: product_id"
}
{
"message": "You should send only one file.",
"code": "npm.productManagement.formatErrror"
}
{
"code": "npm.productManagement.UnknownError",
"message": "An error occurred while parsing the form data."
}
Fetch CSV file
URL
To fetch a specific CSV file uploaded on your NFT Management Platform, use /productManagement/product/batch/:csvOriginalName
.
GET - https://{{nmpUrl}}/productManagement/product/batch/:csvOriginalName
Parameter
Path Parameter | Type | Required | Description |
---|---|---|---|
csvOriginalName | String | ✅ | Name of the file. |
Return Payload
Status Code | Success | Description |
---|---|---|
200 | true | The CSV file is returned. |
Field | Description |
---|---|
token_id | Identification number of the digital passport on the network. |
passphrase | Digital passport passphrase. |
error | Boolean returning if an error occurred while minting the digital passport. ⚠️ - When an error occurs, the explanation is returned and the status is not displayed. - When there is no error, the field is empty. |
status | Minting status of the digital passport on the network: - draft : The digital passport has not been minted, the draft was created only.- waiting : The transaction is waiting in the queue to be minted.- pending : The minting is in progress.- mint : The digital passport has been minted on the blockchain.⚠️ - The status is returned empty if an error occurred. |
group_id,product_id,content,tags,mint,public_content,error,status,tokenId,passphrase
groupTestBatch_CSV-1,productTestBatchCSV_2-20,"{""$schema"":""https://cert.arianee.org/version5/ArianeeProductCertificate-i18n.json"",""name"":""TestBatchCSV3"",""description"":""this is a description"",""sku"":""sku1""}","[""test1"",""test2""]",true,true,,minted,330502713,r2z235gzd7c7
groupTestBatch_CSV-1,productTestBatchCSV_2-21,"{""$schema"":""https://cert.arianee.org/version5/ArianeeProductCertificate-i18n.json"",""name"":""TestBatchCSV3"",""description"":""this is a description"",""sku"":""sku1""}","[""test1"",""testv2""]",true,true,,minted,885483253,su0v8uomwcnt
Errors
Status Code | Success | Description |
---|---|---|
404 | false | The CSV file name does not exist. |
{
"message": "CSV file wrongCsvFileName not found."
}
Updated 6 days ago