Digital Passport Schema
The Json Schema contains the digital passport content structure.
Keys cannot start with
$
, except schema. Example: { $schema: "http://myschema.com", name:'my name', $ref:'my internalref '}.
Overview
Parameter | Optional | Displayed in wallet | Description |
---|---|---|---|
$schema | Required | Not applicable | Content file |
name | Required | ✅ | Product name |
sku | Optional | ❌ | Stock keeping unit |
gtin | Optional | ❌ | Product identification number |
brandInternalId | Optional | ❌ | Brand identification |
category | Optional | ❌ | Product category |
intended | Optional | ❌ | Info on target customers |
serialNumber | Optional | ✅ | Product serial number |
subBrand | Optional | ❌ | Sub-brand name |
model | Optional | ❌ | Product model |
language | Required | ❌ | Digital passport main language |
description | Required | ✅ | Digital passport description |
subDescription | Optional | ❌ | Digital passport sub-description |
externalContents | Optional | ✅ | External contents attached to a digital passport |
i18n | Optional | ❌ | Other languages |
msrp | Optional | ❌ | Manufacturer suggested a retail price |
medias | Optional | ✅ | Media integration such as pictures |
customAttributes | Optional | ❌ | Specific attributes of the product |
attributes | Optional | ❌ | Product specific attributes |
materials | Optional | ❌ | Product materials |
size | Optional | ❌ | Product size |
manufacturingCountry | Optional | ❌ | Product manufacturing country |
Schema file content
$Schema
- URL of the Schema JSON file.
{
"$schema": "https://cert.arianee.org/version5/ArianeeProductCertificate-i18n.json",
...
{
"$id": "https://cert.arianee.org/version5/ArianeeProductCertificate-i18n.json",
"$schema": "https://cert.arianee.org/version5/ArianeeProductCertificate-i18n.json",
"title": "Arianee Certificate",
"type": "object",
"properties": {
"$schema": {
"title": "$schema",
"type": "string",
"default": "https://cert.arianee.org/version5/ArianeeProductCertificate-i18n.json",
"description": "Arianee Certificate i18n"
},
...
Product name
name
- First information displayed on the owner's wallet.
...
"name": "The Navyclock [DEMO]",
...
...
"name": {
"type": "string",
"title": "Name",
"default": "",
"description": "Name of the product.\n Likely to be the first thing displayed on a wallet app."
},
...
Stock-keeping unit
sku
- Alphanumeric code assigned to a product by a business to identify the price, product options, and manufacturer.
...
"sku": "NAC-BB-LS20-06",
...
...
"sku": {
"type": "string",
"title": "SKU",
"default": "",
"description": "The stock keeping unit (SKU) is an alphanumeric code assigned to a product by a business to identify the price, product options and manufacturer of the merchandise."
},
...
Global Trade Item Number
gtin
- Unique 14-digit number used to identify trade items, products, or services.
...
"gtin": "0 00 12345 60001 2",
...
...
"gtin": {
"type": "string",
"title": "GTIN",
"default": "",
"description": "The Global Trade Item Number (GTIN) is a globally unique 14-digit number used to identify trade items, products, or services. GTIN is also an umbrella term that refers to the entire family of UCC. EAN data structures. The entire family of data structures within the GTIN is: GTIN-12 (UPC)."
},
...
Brand ID
brandInternalId
- Identification number of the brand.
...
"brandInternalId": "NYC12345",
...
...
"brandInternalId": {
"type": "string",
"title": "Brand Internal ID",
"default": "",
"description": "Identification number that end customers will not have access to."
},
...
Product category
category
- Information on the category to which the product belongs.
...
"category": "accessory",
...
Targets
intended
- Information on the target customer for the product.
...
"intended": "womens",
...
...
"intended": {
"type": "string",
"title": "Intended",
"description":"Information on the target customer market of the product.",
"temp": "Women's Men's Youth-Girls Youth-Boys Toddler-Girls Todder-Boys Infant-Girls Infant-Boys Adult Gender Neutral/Non-binary",
"oneOf": [
{
"description": "Women's",
"title": "Women's",
"enum": [
"womens"
]
},
{
"description": "Men's",
"title": "Men's",
"enum": [
"mens"
]
},
{
"description": "Adult Gender Neutral",
"title": "Adult Gender Neutral",
"enum": [
"neutral"
]
}
]
},
...
Serial number
serialnumber
- Identification number of the product.
...
"serialnumber": [{
"type": "serialnumber",
"value": "5040505 [demo]"
}, {
"type": "casenumber",
"value": "85290CA12 [demo]"
}, {
"type": "movementnumber",
"value": "85QR18 [demo]"
}],
...
...
"serialnumber": {
"type": "array",
"title": "Serial Number",
"description": "Identification numbers that end customers will have access to.",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"title": "Type",
"oneOf": [
{
"description": "Serial Number",
"title": "Serial Number",
"enum": [
"serialnumber"
]
},
{
"description": "Case Number",
"title": "Case Number",
"enum": [
"casenumber"
]
},
{
"description": "Movement Number",
"title": "Movement Number",
"enum": [
"movementnumber"
]
},
{
"description": "Vehicle Identification Number",
"title": "Vehicle Identification Number",
"enum": [
"vin"
]
}
]
},
"value": {
"type": "string",
"title": "Value"
}
}
}
},
...
Sub-brand
subBrand
- When a brand is owned by another brand, the sub-brand can be filled in.
...
"subBrand": "Arianee watches",
...
...
"subBrand": {
"type": "string",
"title": "Sub Brand",
"description": "This field may be used when a product is part of a sub Brand owned by the Brand who creates the certificate."
},
...
Model
model
- It gives details about the product name. The second information is displayed in the wallet.
...
"model": "Limited serie 2020",
...
...
"model": {
"type": "string",
"title": "Model",
"description": "Model of the product to bring precisions to the Name.\n Likely to be the second thing displayed on a wallet app."
},
...
Language
language
- The main language of the digital passport, is displayed as the default language when the translation is not available.
...
"language": "en-US",
...
...
"language": {
"type": "string",
"title": "Language",
"description": "Descriptions and external contents can be stored in different languages",
"oneOf": [
{
"title": "French",
"description": "French",
"enum": [
"fr-FR"
]
},
{
"title": "English (US)",
"description": "English (US)",
"enum": [
"en-US"
]
},
{
"title": "Chinese (traditional)",
"description": "Chinese (traditional)",
"enum": [
"zh-TW"
]
},
{
"title": "Chinese (simplified)",
"description": "Chinese (simplified)",
"enum": [
"zh-CN"
]
},
{"enum": ["ko-KR"], "title":"Korean", "description": "Korean"},
{"enum": ["ja-JP"], "title":"Japanese", "description": "Japanese"},
{"enum": ["de_DE"], "title":"German", "description": "German"}
]
},
...
Description
description
- Description of the digital passport.
HTML format is allowed.
...
"description": "<b>Description</b>\nThe Navyclock by Arianee watch, small model, quartz movement. Case in 18k pink gold, beaded crown in 18k pink gold set with a synthetic cabochon-shaped spinel, strap in leather. \n\n<b>Case dimensions</b>\ndiameter: 29.5 mm, thickness: 6.35 mm, water-resistant to 3 bar (approx. 30 meters/100 feet).",
...
...
"description": {
"type": "string",
"title": "Description",
"description": "Description of the product. (HTML Accepted)\n A description can be stored for each language"
},
...
Sub-description
subDescription
- Digital passport sub description. Array of typed sub-description.
HTML format is supported.
...
"subDescription": [{
"type": "other",
"title": "The Navyclock watchmaking process",
"content": "The Navyclock preserves the perfectly pitched classical elegance and signature Arianee features. The brand has been producing its own in-house movements since 2017. The movements boast a host of features but are designed to be thin by incorporating various complications into the mainplate.",
"order": 1
}, {
"type": "service",
"title": "Customer service information",
"content": "The Navyclock is rarely down. When it happens you can be sure our network will be here for you. ",
"order": 2
}],
...
...
"subDescription": {
"required": false,
"type": "array",
"title": "Description (more)",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"title": "Type",
"oneOf": [
{
"enum": [
"service"
],
"title": "Servicing",
"description": "Servicing"
},
{
"enum": [
"recycling"
],
"title": "Recycling",
"description": "Recycling"
},
{
"enum": [
"other"
],
"title": "other",
"description": "other"
}
]
},
"title": {
"type": "string",
"title": "Title"
},
"content": {
"type": "string",
"title": "Content"
},
"order": {
"type": "number",
"title": "Order (number)"
}
}
}
},
...
External contents
externalContent
- Storing of links to external contents your brand wishes to introduce to owners in the wallet. Find below some examples of external content that can be integrated into your digital passport.
External website: Regular link to an external website.
...
"externalContents": [{
"type": "website",
"title": "About Arianee",
"url": "https://www.arianee.org/",
"order":1
},
Link with proof of ownership: Link to a proof of ownership.
...
"externalContents": [{
"type": "proofLinkAction",
"title": "Link with a proof of ownership",
"url": "https://test.arian.ee/proofLinkAction.html"
"order":2
}],
Transparency: Option to display general information about the physical origin of your products.
- To use transparency, use this Schema.
- The
description
is HTML compliant.- Icons can be customized.
...
"transparencyItems":
[
{
"category": "assembly",
"type": "production_chain",
"subtype": "processing_steps_and_places",
"title": "End-to-end transparency information",
"subtitle": "Upstream blockchain expertise by IBM",
"description": "<h2 style=\"text-align: center\">End-to-end transparency information</h2><p>As the leader in blockchain technology, over the last years, IBM has been delivering numerous blockchain-based solutions for improving the traceability of goods across industries. Together with IBM, we combine our expertise to offer the most complete blockchain solution for brands, linking supply chain visibility with bespoke brand-consumer engagement. From materials to production and shipment, IBM enables us to gather transparency information directly from the brands, thus enhancing our passports with data integrity and ultimate trust. Every qualitative information you see in this passport comes from IBM business platform. For more information: <a href=\"https://www.ibm.com/blockchain\"> https://www.ibm.com/blockchain </a> </p>",
"medias":[{
"mediaType":"picture",
"type":"icon",
"url":"https://documentation.arianee.com/pub/1669922391060-téléchargement.png"}],
},
{
"category": "assembly",
"type": "production_chain",
"subtype": "processing_steps_and_places",
"title": "Production",
"subtitle": "Made in France",
"description": "<h2 style=\"text-align: center\">Production</h2><p>Traceability information verified by IBM Hyperledger: <ul><li>Garment Construction: 30/08/2021 - 02/09/21 in Aubervilliers by Wiltee <li> Dyeing: 07/09/21 in Aubervilliers by Wiltee <li> Printing: 07/09/21 in Aubervilliers by Wiltee. </ul>This hoodie was made by WILTEE Paris. WILTEE is Paris-based textile atelier that prides itself on zero stock thanks to a print-on-demand approach, and great working conditions for employees. For more information: <a href=\"https://wiltee.com/\"> https://wiltee.com </a> </p>"
},
{
"category": "material",
"type": "eco_design",
"subtype": "material-responsible_procurement-organic organic",
"title": "Material",
"subtitle": "100% organic cotton",
"description": "<h2 style=\"text-align: center\">Material</h2><p></p><p>Traceability information verified by IBM Hyperledger: <ul><li>Cotton: 100% organic<li>Country of origin: Produced in Portugal <li>Certification: GOTS</ul>The <a href=\"https://www.youtube.com/watch?v=xhQiGhnbDqw\">(GOTS)</a> label is a reliable guarantee for consumers of the organic origin of the textile they buy. Each step of the textile production chain is independently certified using strict criteria. From the harvest of raw materials, through environmentally and socially responsible manufacturing, to labeling, everything is controlled with the aim of respecting the environment, workers and consumers. For more information: <a href=\"https://global-standard.org/\">https://global-standard.org </a> </p>",
"externalContents":
[
{
"type": "website",
"title": "What is GOTS ?",
"url": "https://global-standard.org/"
}
]
},
{
"category": "material",
"type": "eco_design",
"subtype": "material-responsible_procurement-organic organic",
"title": "Limited edition collection",
"subtitle": "Original designs by Kitten Production",
"description": "<h2 style=\"text-align: center\">Limited edition collection</h2><p></p><p>Traceability information verified by IBM Hyperledger:<ul> <li>Garment Design: %ibm_garmentDesignDate in Paris by Kitten Production. The creative design for this hoodie was made by Kitten Production.</ul> Kitten is a creative agency producing stills, motion and digital content for the fashion, beauty, and luxury industries. Kitten is an official partner of the Fédération de la Haute Couture et de la Mode & Paris Fashion Week, and an active member of the Institut Français de la Mode Foundation. For more information: <a href=\"https://www.kittenproduction.com/\">https://www.kittenproduction.com/ </a> </p>"
},
{
"category": "impact",
"type": "environmental_impact",
"subtype": "environmental_training",
"title": "Innovative savoir faire",
"subtitle": "NFC chips by ISRA, Label Tags by Neyret",
"description": "<h2 style=\"text-align: center\">Innovative savoir faire</h2><p></p><p> NFC chips by Neyret & ISRA Traceability information verified by IBM Hyperledger: <ul> <li>Label Tags Design: 30/08/21 in Saint-Etienne by Neyret <li>Label Tags Creation: 06/09/21 in Saint-Etienne by Neyret <li>NFC Chips Creation: 02/09/21 in Romans by ISRA</ul></p><img src=\"https://api.bdh-arianee-showroom.arianee.com/pub/1631283884274-tisseur.png\"></p> Manufacturer of high-end textile labels, ribbons and accessories. Neyret has been integrating intelligent technologies into their products to meet the needs of brands in terms of identification, authentication, traceability and digital communication (RFID, woven QR code, NFC, augmented reality, etc.) Neyret's core know-how combined with cutting-edge technologies, perfectly integrated into the products, offer their customers tailor-made solutions to functionalize their items, while respecting their visual identity and their creative inspirations. For more information:<a href=\"http://neyret.com/\">http://neyret.com </a></p><img src=\"https://api.bdh-arianee-showroom.arianee.com/pub/1631283879056-1524151744590.jpeg\"></p><p>ISRA is an independent French company specialising in the design and manufacture of cards, customised media and IOT products, mainly dedicated to trade, access control, identification, and luxury universe. As well as its products, ISRA offers a wide range of services such as printing, customisation, contact or contactless chip integration, card programming and routing operations. For more information: <a href=\"https://www.isra.fr/\">https://www.isra.fr </a> </p>"
},
{
"category": "impact",
"type": "social_impact",
"subtype": "qualified_employment_support",
"title": "Customer relationship 3.0",
"subtitle": "NFT encrypted on blockchain by Arianee",
"description": "<h2 style=\"text-align: center\">Customer relationship 3.0</h2><p>The NFT for this hoodie was created by Arianee. Founded in 2018, Arianee is the leading NFT platform for the luxury and fashion industries. Arianee combines an Association - Arianee Project - gathering major brands and tech companies around its open source protocol & a tech company - Arianee SAS - focused on developing and distributing the most advanced software as a service platform based on the Arianee open source blockchain technology. The Arianee protocol makes it possible to associate each luxury product with its own unique, unforgeable NFT (digital passport). It opens up a secure and trusted communication channel between brands and owners. For more information: <a href=\"https://www.arianee.org/\">https://www.arianee.org </a> </p>"
}
]
Youtube video: Redirect your customers to a YouTube video.
...
"externalContents":
[{"type":"youtube",
"title":"From the street to metaverse",
"url":"https://www.youtube.com/watch?v=7wPUW5HHR-I&t=29s",
"order":3
}],
Link to another claimable digital passport: Redirect your customers to another claimable digital passport.
...
"externalContents": [{
"type": "authRedirectTo",
"title": "Link to another claimable NFT",
"url":"https://test.arian.ee/316330319,90ah88byzpr1"
}],
Localize contents
i18n
- Storing of international content. Specific content can be stored for each language:
language
description
subDescription
externalContents
The displayed language is based on the device language. If not available, the main language of the digital passport is displayed.
...
"i18n": [{
"language": "fr-FR",
"description": "<b>Description</b>\nLa montre The Navyclock d'Arianee est un petit modèle utilisant le mouvement à quartz. Boitier en or rose 18 carats, Couronne perlée en or rose 18 carats sertie d'un spinelle synthétique en forme de cabochon, bracelet en cuir.\n\n<b>Dimensions</b>\ndiamètre: 29.5 mm, épaisseur: 6.35 mm, étanche à 3 bar (environ 30 mètres/100 pieds).",
"subDescription": [],
"externalContents": [{
"type": "website",
"title": "Site",
"url": "https://www.arianee.org/",
"order": 1
}, {
"type": "website",
"title": "Arianee",
"url": "https://www.arianee.org/about-arianee",
"order": 3
}, {
"type": "website",
"title": "L'Histoires des montres ",
"url": "https://fr.wikipedia.org/wiki/Montre_(horlogerie)",
"order": 2
}, {
"type": "proofLinkAction",
"title": "Link with a proof of ownership",
"url": "https://test.arian.ee/proofLinkAction.html"
}]
}, {
"language": "zh-CN",
"description": "<b>描述</b>\nThe Navyclock by Arianee 手表,小型款,石英机芯. 18k玫瑰金表壳,18k玫瑰金串珠状表冠,镶有凸圆形人造合成尖晶石,皮革表带.\n\n<b>外壳尺寸</b>\n直径:29.5毫米,厚度:6.35毫米,防水深度达3巴(约30米/ 100英尺\n",
"subDescription": [],
"externalContents": [{
"type": "website",
"title": " 网站",
"url": "https://www.arianee.org/",
"order": 1
}, {
"type": "website",
"title": " 关于 Arianee",
"url": "https://www.arianee.org/about-arianee",
"order": 3
}, {
"type": "website",
"title": " 手表的历史",
"url": "https://zh.wikipedia.org/wiki/%E6%89%8B%E8%A1%A8",
"order": 2
}]
}],
...
...
"i18n": {
"type": "array",
"title": "Other languages : description / external contents",
"items": {
"type": "object",
"properties": {
"language": {
"type": "string",
"title": "Language",
"oneOf": [
{
"description": "French",
"title": "French",
"enum": [
"fr-FR"
]
},
{
"description": "English (US)",
"title": "English (US)",
"enum": [
"en-US"
]
},
{
"description": "Chinese (traditional)",
"title": "Chinese (traditional)",
"enum": [
"zh-TW"
]
},
{
"description": "Chinese (simplified)",
"title": "Chinese (simplified)",
"enum": [
"zh-CN"
]
},
{"enum": ["ko-KR"], "title":"Korean", "description": "Korean"},
{"enum": ["ja-JP"], "title":"Japanese", "description": "Japanese"},
{"enum": ["de_DE"], "title":"German", "description": "German"}
]
},
"description": {
"type": "string",
"title": "Description"
},
"subDescription": {
"required": false,
"type": "array",
"title": "Description (more)",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"title": "Type",
"oneOf": [
{
"enum": [
"service"
],
"title": "Servicing",
"description": "Additional descriptions linked to the product. \nSub descriptions can be stored for each language"
},
{
"enum": [
"recycling"
],
"title": "Recycling",
"description": "Recycling"
},
{
"enum": [
"other"
],
"title": "other",
"description": "Additional descriptions linked to the product. \nSub descriptions can be stored for each language"
}
]
},
"title": {
"type": "string",
"title": "Title"
},
"content": {
"type": "string",
"title": "Content"
},
"order": {
"type": "number",
"title": "Order (number)"
}
}
}
},
"externalContents": {
"required": false,
"type": "array",
"title": "External Contents",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"title": "Type",
"oneOf": [
{
"enum": [
"website"
],
"title": "Website (main)",
"description": "Regular link"
},
{
"enum": [
"proofLinkAction"
],
"title": "proofLinkAction",
"description": "Link with a proof of ownership"
},
{
"enum": [
"transparency"
],
"title": "transparency",
"description": "Url of transparency events json"
}
]
},
"title": {
"type": "string",
"title": "Title"
},
"url": {
"type": "string",
"title": "Url"
},
"order": {
"type": "number",
"title": "Order (number)"
}
}
}
}
}
}
},
...
Retail price
msrp
- The manufacturer's suggested retail price (MSRP) is the price a product's producer recommends it be sold for in retail stores. MSRP Country should respect ISO 3166 alpha-3.
...
"msrp": [{
"msrp": "35000",
"currency": "EUR",
"msrpCountry": "Europe"
}, {
"msrp": "32000",
"currency": "GBP",
"msrpCountry": "United Kingdom"
}, {
"msrp": "40000",
"currency": "USD",
"msrpCountry": "USA"
}],
...
...
"msrp": {
"type": "array",
"title": "Manufacturers suggested retail price",
"description":"The manufacturer's suggested retail price (MSRP) is the price a product's producer recommends it be sold for in retail stores. MSRP Country should respect ISO 3166 alpha-3",
"items": {
"type": "object",
"properties": {
"msrp": {
"type": "string",
"title": "MSRP",
"default": "",
"description": "Manufacturers suggested retail price (number)"
},
"currency": {
"type": "string",
"title": "Currency",
"default": "",
"description": "Currency",
"oneOf": [
{
"title": "US Dollar",
"description": "US Dollar",
"enum": [
"USD"
]
},
{
"title": "Euro",
"description": "Euro",
"enum": [
"EUR"
]
},
{
"title": "Pound",
"description": "Pound",
"enum": [
"GBP"
]
}
]
},
"msrpCountry": {
"type": "string",
"title": "Country (msrp)",
"default": "",
"description": "Country of Intended Original Sale (ISO 3166 alpha-3)"
}
}
}
},
...
Media
medias
- Pictures and media are used to support the presentation of the product in the wallet.
Prefer square .png format with transparent background. Size < 1 Mo.
A media is an object:
mediaType
- picture, youtubetype
- product (digital passport media)brandItemBackgroundPicture
(media for digital passport list)itemBackgroundPicture
(media for digital passport background)certificateBackgroundPicture
(media for digital passport background share-transfer)url
- media URLorder
- media order
...
"medias": [{
"mediaType": "picture",
"type": "product",
"url": "https://documentation.arianee.com/pub/-Lzfbb6qGXMN3LVhPRWG_arianeeResized",
"order": 1
}, {
"mediaType": "picture",
"type": "product",
"url": "https://documentation.arianee.com/pub/-LzfbcJwhZPNES_2NK1h_arianeeResized",
"order": 3
}, {
"mediaType": "picture",
"type": "product",
"url": "https://documentation.arianee.com/pub/-LzfbdNMkhOxvu5n_cPv_arianeeResized",
"order": 2
}, {
"mediaType": "picture",
"type": "brandItemBackgroundPicture",
"url": "https://documentation.arianee.com/pub/-LtzQIIK-FD65qAFCBEm"
},
{
"mediaType": "picture",
"type": "itemBackgroundPicture",
"url": "https://documentation.arianee.com/pub/-LzI78FCrDVaPk8tQkl9"
}, {
"mediaType": "picture",
"type": "certificateBackgroundPicture",
"url": "https://documentation.arianee.com/pub/-LzI7CrFW31aP_hyx1ZE"
}],
...
...
"medias": {
"type": "array",
"title": "Medias",
"description": "Picture & media used to support the presentation of the product in the wallet app. (ideally .png with transparent background and square, less than 1mo)",
"items": {
"type": "object",
"properties": {
"mediaType": {
"type": "string",
"title": "Media Type",
"oneOf": [
{
"enum": [
"picture"
],
"title": "Picture (png / jpg)",
"description": "Picture (png / jpg)"
},
{
"enum": [
"youtube"
],
"title": "Youtube video",
"description": "Youtube video"
},
{
"enum": [
"3dModel"
],
"title": "3D Model",
"description": "A 3D Model (glb / gltf)"
},
{
"enum": [
"video"
],
"title": "Video",
"description": "A video (mp4)"
}
]
},
"type": {
"type": "string",
"title": "Type",
"oneOf": [
{
"enum": [
"product"
],
"title": "Product media / picture",
"description": "used to support the presentation of the product in the wallet app. (ideally .png with transparent background and square, less than 1mo)"
},
{
"enum": [
"brandItemBackgroundPicture"
],
"title": "Brand Item Background Picture (3200x1900) ratioed",
"description": "(3200x1900), format : jpg/png, max 400ko created for the certificate in the list of certificates someone has. It should include a product picture."
},
{
"enum": [
"itemBackgroundPicture"
],
"title": "Item Background Picture (3000x3000) ratioed",
"description": "dark, format .jpg, (3000x3000) max 400ko created for the background of the certificate screen"
},
{
"enum": [
"certificateBackgroundPicture"
],
"title": "Certificate Background Picture (1900x3200 TBD) preferably dark - with logo on top",
"description": "dark, no logo, format .jpg, (1900x3200), max 400ko created for the background of the transfer/proof of certificate screens"
},
{
"enum": [
"3dModelPreview"
],
"title": "3D model preview image, displayed in the media list in the wallet application",
"description": "[3D model / 1] Preview image (ideally .png of the model in idle state)"
},
{
"enum": [
"3dModelAsset"
],
"title": "3D model asset, rendered in the wallet application",
"description": "[3D model / 2] Model file (.glb, .gltf, can contain animations), requires [3D Model / 1] to be set right before"
},
{
"enum": [
"videoPreview"
],
"title": "Video preview image, displayed in the media list in the wallet application",
"description": "[Video / 1] Preview image (ideally .png of a frame of the video)"
},
{
"enum": [
"videoSource"
],
"title": "Video source, played in the wallet application",
"description": "[Video / 2] Video source (.mp4), requires [Video / 1] to be set right before"
}
]
},
"url": {
"type": "string",
"title": "URL"
},
"hash": {
"type": "string",
"title": "Media Hash"
},
"order": {
"type": "number",
"title": "Media Order (number)"
}
}
}
},
...
Custom attributes
customAttributes
- Custom attributes to define the product.
...
"customAttributes": {
"title": "Custom attributes",
"description": "Information on the specific attributes of the product.",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"title": "Type"
},
...
...
"customAttributes": {
"type": "array",
"title": "Custom attributes",
"description": "Information on the specific attributes of the product.",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"title": "Type"
},
"value": {
"type": "string",
"title": "Value"
}
}
}
},
...
Specific attributes
attributes
- Information on the product material used.
...
"attributes": [{
"type": "color",
"value": "Gold"
}],
...
...
"attributes": {
"type": "array",
"title": "Attributes",
"description": "Information on the specific attributes of the product that are aimed to be shared with partners.",
"items": {
"type": "object",
"properties": {
"trait_type": {
"type": "string",
"title": "Trait Type (for external service like opensea)"
},
"type": {
"type": "string",
"title": "Type",
"oneOf": [
{
"title": "Color",
"description": "Color",
"enum": [
"color"
]
},
{
"title": "Printed",
"description": "Printed",
"enum": [
"printed"
]
},
{
"title": "Complication",
"description": "Complication",
"enum": [
"complication"
]
}
]
},
"value": {
"type": "string",
"title": "Value"
}
}
}
},
...
Product materials
material
- Detailed information on the product material used.
A material is an object:
material
- Material name valuepourcentage
- Pourcentage value
...
"materials": [{
"material": "gold",
"pourcentage": "50%"
}],
...
...
"materials": {
"type": "array",
"title": "Materials",
"description":"Information on the materials used to manufacture the product.",
"items": {
"type": "object",
"properties": {
"material": {
"type": "string",
"title": "Material",
"temp": "Cashmere / Cotton / Denim - Jeans / Exotic leathers / Faux fur / Fur /Leather / Linen / Polyester / Silk / Suede / Synthetic / Tweed / Velvet / Viscose / Wool",
"oneOf": [
{
"title": "Cashmere",
"description": "Cashmere",
"enum": [
"cashmere"
]
},
{
"title": "Cotton",
"description": "Cotton",
"enum": [
"cotton"
]
},
{
"title": "Denim - Jeans",
"description": "Denim - Jeans",
"enum": [
"denim-jeans"
]
},
{
"title": "Gold",
"description": "Gold",
"enum": [
"gold"
]
},
{
"title": "Silver",
"description": "Silver",
"enum": [
"silver"
]
}
]
},
"value": {
"type": "string",
"title": "Value"
},
"pourcentage": {
"type": "string",
"title": "Pourcentage",
"description": "Pourcentage without % (numeric)"
}
}
}
},
...
Product size
size
- Information on the size of the product.
A size is an object :
type
: size type (height / width / depth / size)value
: size value unit : sizeunit
(inch / centimer / millimeter / EU / UK / US)
...
"size": [{
"type": "depth",
"value": "6",
"unit": "in"
}, {
"type": "depth",
"value": "3,6",
"unit": "cm"
}],
...
...
"size": {
"type": "array",
"title": "Sizes",
"description":"Information on the size of the product.",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"title": "Type",
"oneOf": [
{
"title": "Height",
"description": "Height",
"enum": [
"height"
]
},
{
"title": "Width",
"description": "Width",
"enum": [
"width"
]
},
{
"title": "Depth",
"description": "Depth",
"enum": [
"depth"
]
},
{
"title": "Size",
"description": "Size",
"enum": [
"size"
]
}
]
},
"value": {
"type": "string",
"title": "Value"
},
"unit": {
"type": "string",
"title": "Unit",
"oneOf": [
{
"title": "Inch",
"description": "Inch",
"enum": [
"in"
]
},
{
"title": "Centimer",
"description": "Centimer",
"enum": [
"cm"
]
},
{
"title": "Millimeter",
"description": "Millimeter",
"enum": [
"mm"
]
},
{
"title": "EU",
"description": "EU",
"enum": [
"eu"
]
},
{
"title": "UK",
"description": "UK",
"enum": [
"uk"
]
},
{
"title": "US",
"description": "US",
"enum": [
"us"
]
}
]
}
}
}
},
...
Product manufacturing country
manufacturingCountry
- Country of manufacture in final assembly stage (ISO 3166 alpha-3).
...
"manufacturingCountry": "Switzerland",
...
...
"manufacturingCountry": {
"type": "string",
"title": "Country (manufacturing)",
"default": "",
"description": "Country of manufacture in final assembly stage. (ISO 3166 alpha-3)"
},
...
Updated 7 months ago