Skip to content

JSON Schema for ISCC Metadata#


The ISCC JSON-LD Context and JSON Schema reference


Name Type Default Definition
@context string-uri The JSON-LD Context URI for ISCC metadata.


Name Type Default Definition
@type string CreativeWork The type of digital content according to classes (TextDigitalDocument, ImageObject, AudioObject, VideoObject).


Name Type Default Definition
$schema string-uri The JSON Schema URI for ISCC metadata.


Minimal required ISCC Metadata




Name Type Default Definition
iscc string none An ISCC-CODE in canonical representation. This is the minimal required field for a valid ISCC Metadata object.



Basic user presentable ISCC Metadata essential for Meta-Code and Meta-Hash generation.


  "name": "The Never Ending Story",
  "description": "a 1984 fantasy film co-written and directed by *Wolfgang Petersen*",
  "image": ""


Name Type Default Definition
name string none The title or name of the intangible creation manifested by the identified digital content. Used as input for ISCC Meta-Code generation.

Example: The Never Ending Story


Name Type Default Definition
description string none Description of the digital content identified by the ISCC. Used as input for ISCC Meta-Code generation. Any user presentable text string (including Markdown text) indicative of the identity of the referent may be used.

Example: a 1984 fantasy film co-written and directed by *Wolfgang Petersen*


Name Type Default Definition
meta string none Subject, industry, or use-case specific metadata encoded as Data-URL.

Example: data:application/json;charset=utf-8;base64,eyJleHRlbmRlZCI6Im1ldGFkYXRhIn0=


Metadata intended to be embedded into the media asset.


Name Type Default Definition
creator None none An entity primarily responsible for making the resource.

Example: Joanne K. Rowling


Name Type Default Definition
license string-uri none URI of license for the identified digital content.



Name Type Default Definition
acquire string-uri none This field must contain a valid URL referring to a page showing information about how one can acquire a license for the item. This may be a page of a web shop or NFT marketplace ready for providing a license.



Name Type Default Definition
credit string none A line of text that you expect users of the image (such as Google Images) to display alongside the image.

Example: Frank Farian - Getty Images


Name Type Default Definition
rights string none Contains any necessary copyright notice and should identify the current owner of the copyright of this work with associated intellectual property rights.

Example: © Copyright 2022 ISCC Foundation -


Extended ISCC Metadata


  "content": "",
  "identifier": "urn:isbn:3-8273-7019-1",
  "creator": "Frank Fancy",
  "license": "",
  "redirect": ""


Name Type Default Definition
media_id string none Vendor specific (internal) identifier for the source media file.

Example: 05VQ3BGTGFCJA


Name Type Default Definition
iscc_id string none The ISCC-ID of the digital content in canonical representation.



Name Type Default Definition
image string-uri none URI for a user-presentable image that serves as a preview of the digital content. The URI may be a Data-URL RFC2397. If ISCC metadata is used as NFT metadata according to ERC-721 or ERC-1155 the URI should reference the actual digital content represented by the NFT.



Name Type Default Definition
identifier None none Other identifier(s) referencing the work, product or other abstraction of which the referenced digital content is a full or partial manifestation.


Name Type Default Definition
content string-uri none URI of the digital content that was used to create this ISCC.


Name Type Default Definition
keywords None none Keywords or tags used to describe this content. Either a list of keywords or a sting with comma separated keywords.


Name Type Default Definition
previous string none ISCC of the preceding version of this item.


Name Type Default Definition
version ['integer', 'string'] none The version of the CreativeWork embodied by a specified resource.


Technical ISCC Metadata automaticaly inferred from the digital content by an ISCC Processor


  "filename": "the-file.png",
  "filesize": 46356,
  "mediatype": "image/png",
  "width": 640,
  "height": 480,
  "keywords": [


Name Type Default Definition
mode string none The perceptual mode used to create the ISCC-CODE.

Example: video


Name Type Default Definition
created string-date-time none Datetime the ISCC was created for the item.


Name Type Default Definition
filename string none Filename of the referenced digital content (automatically used as fallback if the name field was not specified for ISCC processing)


Name Type Default Definition
filesize integer none File size of media asset in number of bytes.


Name Type Default Definition
mediatype string none An IANA Media Type (MIME type)

Example: image/png


Name Type Default Definition
duration integer none Duration of audio-visual media in secondes.


Name Type Default Definition
fps number-float none Frames per second of video assets.

Example: 24


Name Type Default Definition
width integer-int32 none Width of visual media in number of pixels.

Example: 640


Name Type Default Definition
height integer-int32 none Height of visual media in number of pixels.

Example: 480


Name Type Default Definition
characters integer none Number of text characters (code points after Unicode normalization)

Example: 55689


Name Type Default Definition
pages integer none Number of pages (for paged documents only)

Example: 77


Name Type Default Definition
language None none Language(s) of content BCP 47.

Example: en-US


Name Type Default Definition
parts array none Indicates items that are part of this item via Content-Codes (inverse-property belongs).


Name Type Default Definition
part_of array none Indicates that this item is part of other items via their Content-Code.


Name Type Default Definition
features array none Granular features of the digital content.


Name Type Default Definition
generator string none Name and version of the software that generated the ISCC


Name Type Default Definition
thumbnail string-uri none URI an autogenerated user-presentable thumbnail-image that serves as a preview of the digital content. The URI may be a Data-URL RFC2397.



Metadata for NFT Marketplaces


Name Type Default Definition
external_url string-uri none This is the URL that will appear below the asset's image on some NFT Marketplaces and will allow users to leave the site and view the item on your site. Supports URI template (iscc-id).


Name Type Default Definition
animation_url string-uri none A URL to a multi-media attachment for the item.


Name Type Default Definition
properties object none Arbitrary properties. Values may be strings, numbers, object or arrays. Properties defined here may show up on NFT marketplaces. See ERC-1155

Example: {'simple_property': 'example value', 'rich_property': {'name': 'Name', 'value': '123', 'display_value': '123 Example Value', 'class': 'emphasis', 'css': {'color': '#ffffff', 'font-weight': 'bold', 'text-decoration': 'underline'}}, 'array_property': {'name': 'Name', 'value': [1, 2, 3, 4], 'class': 'emphasis'}}


Name Type Default Definition
attributes array none Similar to properties but as an array of objects. These attributes will show up on some NFT marketplaces.

Example: [{'trait_type': 'METAL', 'value': 'SILVER'}, {'display_type': 'number', 'trait_type': 'GENERATION', 'value': 1}]


Name Type Default Definition
nft string-uri none A unique URI for a non-fungible token of the identified content. The URI must contain references to the blockchain, smart-contract and token. The recommended schemes are CAIP-22 and CAIP-29.

Example: eip155:1/erc721:0x06012c8cf97BEaD5deAe237070F9587f8E7A266d/771769


Cryptography related ISCC Metadata


Name Type Default Definition
tophash string none A Multihash of the concatenation (binding) of metahash and datahash (default blake3).

Example: bdyqnosmb56tqudeibogyygmf2b25xs7wpg4zux4zcts2v6llqmnj4ja


Name Type Default Definition
metahash string none A Multiformats multihash or IPFS CIDv1 of the supplied metadata. The hash is created from name and description fields or meta if supplied.

Example: f01551220b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9


Name Type Default Definition
datahash string none A Multihash of the digital content (default blake3).

Example: bdyqk6e2jxh27tingubae32rw3teutg6lexe23qisw7gjve6k4qpteyq


Field relevant in context with public ISCC declerations


Name Type Default Definition
original boolean none The signee of the declaring transaction claims to be the original creator of the work manifested by the identified digital content.

Example: True


Name Type Default Definition
redirect string-uri none URL to which an ISCC resolver should redirect the ISCC-ID. Supports URI template (iscc-id)



Name Type Default Definition
chain string none The blockchain on which an ISCC-CODE is declared.



Name Type Default Definition
wallet string none The wallet-address that signs an ISCC declaration.

Example: 0xb794f5ea0ba39494ce839613fffba74279579268


Name Type Default Definition
credentials None none One or more Verifiable Credentials or one ore more URIs pointing to one or more VCs. A reader of ISCC metadata must interpret the value according to the following rules
  • If the value is a JSON string interpret it as an URI. The expectation is that the URI dereferences to a response with Content-type application/json where the data is a VC or an array of VCs.
  • If the value is a JSON object interpret it as a VC according to the Verifiable Credentials JSON Schema.
  • If the value is an array and an item in the array is a JSON object interpret it as a VC.
  • If the value is an array and an items is a string interpret the item as an URI that dereferences to VC(s)
  • Credentials should only be taken into account if the credentialSubject matches with the declarer (e.g. did:pkh representation of the declarers address).



Name Type Default Definition
verifications array none A list of self-verifications. Self-verifications are public URLs under the account/authority of the signee. The verification URL must respond to a GET request with text that contains a multihash of the ISCC declaration signees wallet address in the format of verify:<multihash-of-wallet-address>:verify.

Example: [{'url': ''}]