Particles

messageParticle

Schema
References
Example
Schema
"messageParticle": {
"description": "A particle which represents arbitrary data message in an account from another account",
"type": "object",
"properties": {
"bytes": {"$ref": "#/definitions/bytes"},
"destinations": {
"minItems": 1,
"type": "array",
"items": {"$ref": "#/definitions/uid"}
},
"serializer": {
"type": "string",
"enum": ["radix.particles.message"]
},
"from": {"$ref": "#/definitions/address"},
"to": {"$ref": "#/definitions/address"},
"nonce": {"type": "number"}
},
"required": ["serializer"]
}
References

References

Example
"particle": {
"serializer": "radix.particles.message",
"bytes": ":byt:RXhhbXBsZSBtZXNzYWdl",
"destinations": [":uid:5f3b51bb456c7f5202c3489a798bec53",
":uid:fa2eee711e1854d045622cd3c012e13d"
],
"from": ":adr:JEWDNQAYJxwe27JrHSStupxatvaxrcrrR6hwzrAbLmDH7BgEFeZ",
"metaData": {
"application": ":str:test-app-id"
},
"nonce": 1566833127947,
"to": ":adr:JG2uTCDwMUw51Ph8FMHxzz65AuPC1saTKpKMzqwJmQGEdYkGEXw",
"version": 100
}

particle

Schema
References
Example
Schema
"particle": {
"oneOf": [
{"$ref": "#/definitions/rriParticle"},
{"$ref": "#/definitions/tokenDefinitionParticle"},
{"$ref": "#/definitions/messageParticle"},
{"$ref": "#/definitions/unallocatedTokensParticle"},
{"$ref": "#/definitions/transferrableTokensParticle"},
{"$ref": "#/definitions/uniqueParticle"}
],
"description": "A particle which is a component which represents a substate of the ledger."
}
Example
"particle": {
"serializer": "radix.particles.rri",
"destinations": [":uid:5f3b51bb456c7f5202c3489a798bec53"],
"nonce": 0,
"rri": ":rri:/JEWDNQAYJxwe27JrHSStupxatvaxrcrrR6hwzrAbLmDH7BgEFeZ/EXMPL",
"version": 100
}

particleGroup

Schema
References
Example
Schema
"particleGroup": {
"type": "object",
"properties": {
"serializer": {
"type": "string",
"enum": ["radix.particle_group"]
},
"particles": {
"minItems": 1,
"type": "array",
"items": {"$ref": "#/definitions/spunParticle"}
}
},
"required": ["particles"]
}
References

References

Example
{
"serializer": "radix.particle_group",
"particles": [{
"serializer": "radix.spun_particle",
"particle": {
"serializer": "radix.particles.rri",
"destinations": [":uid:5f3b51bb456c7f5202c3489a798bec53"],
"nonce": 0,
"rri": ":rri:/JEWDNQAYJxwe27JrHSStupxatvaxrcrrR6hwzrAbLmDH7BgEFeZ/EXMPL",
"version": 100
},
"spin": -1,
"version": 100
}, {
"serializer": "radix.spun_particle",
"particle": {
"serializer": "radix.particles.token_definition",
"address": ":adr:JEWDNQAYJxwe27JrHSStupxatvaxrcrrR6hwzrAbLmDH7BgEFeZ",
"description": ":str:Example token",
"destinations": [":uid:5f3b51bb456c7f5202c3489a798bec53"],
"granularity": ":u20:10000000000000000",
"iconUrl": ":str:http://example.icon.com/img.png",
"name": ":str:ExampleCoin",
"permissions": {
"mint": ":str:token_owner_only",
"burn": ":str:token_owner_only"
},
"symbol": ":str:EXMPL",
"version": 100
},
"spin": 1,
"version": 100
}, {
"serializer": "radix.spun_particle",
"particle": {
"serializer": "radix.particles.unallocated_tokens",
"amount": ":u20:115792089237316195423570985008687907853269984665640564039457584007913129639935",
"destinations": [":uid:5f3b51bb456c7f5202c3489a798bec53"],
"granularity": ":u20:10000000000000000",
"nonce": 1566833127941,
"permissions": {
"mint": ":str:token_owner_only",
"burn": ":str:token_owner_only"
},
"tokenDefinitionReference": ":rri:/JEWDNQAYJxwe27JrHSStupxatvaxrcrrR6hwzrAbLmDH7BgEFeZ/EXMPL",
"version": 100
},
"spin": 1,
"version": 100
}],
"version": 100
}

rriParticle

Schema
References
Example
Schema
"rriParticle": {
"description": "A particle which represents an RRI.",
"additionalProperties": false,
"type": "object",
"properties": {
"destinations": {
"minItems": 1,
"type": "array",
"items": {"$ref": "#/definitions/uid"}
},
"rri": {"$ref": "#/definitions/radixResourceIdentifier"},
"serializer": {
"type": "string",
"enum": ["radix.particles.rri"]
},
"nonce": {"type": "integer"},
"version": {"type": "number"}
},
"required": [
"rri",
"version",
"nonce",
"version"
]
}
References
Example
{
"serializer": "radix.particles.rri",
"destinations": [":uid:5f3b51bb456c7f5202c3489a798bec53"],
"nonce": 0,
"rri": ":rri:/JEWDNQAYJxwe27JrHSStupxatvaxrcrrR6hwzrAbLmDH7BgEFeZ/EXMPL",
"version": 100
}

spunParticle

Schema
References
Example
Schema
"spunParticle": {
"description": "A particle + spin pair. Describes an action on the ledger.",
"type": "object",
"properties": {
"spin": {"$ref": "#/definitions/spin"},
"serializer": {
"type": "string",
"enum": ["radix.spun_particle"]
},
"particle": {"$ref": "#/definitions/particle"}
},
"required": [
"spin",
"particle",
"serializer"
]
}
References

References

Example
{
"serializer": "radix.spun_particle",
"particle": {
"serializer": "radix.particles.token_definition",
"address": ":adr:JEWDNQAYJxwe27JrHSStupxatvaxrcrrR6hwzrAbLmDH7BgEFeZ",
"description": ":str:Example token",
"destinations": [":uid:5f3b51bb456c7f5202c3489a798bec53"],
"granularity": ":u20:10000000000000000",
"iconUrl": ":str:http://example.icon.com/img.png",
"name": ":str:ExampleCoin",
"permissions": {
"mint": ":str:token_owner_only",
"burn": ":str:token_owner_only"
},
"symbol": ":str:EXMPL",
"version": 100
},
"spin": 1,
"version": 100
}

tokenDefinitionParticle

Schema
References
Example
Schema
"tokenDefinitionParticle": {
"description": "A particle which represents a token class state.",
"additionalProperties": false,
"type": "object",
"properties": {
"symbol": {"$ref": "#/definitions/string"},
"address": {"$ref": "#/definitions/address"},
"permissions": {
"additionalProperties": false,
"type": "object",
"properties": {
"burn": {"$ref": "#/definitions/tokenActionPermission"},
"mint": {"$ref": "#/definitions/tokenActionPermission"}
},
"required": [
"burn",
"mint"
]
},
"granularity": {"$ref": "#/definitions/u20"},
"destinations": {
"minItems": 1,
"type": "array",
"items": {"$ref": "#/definitions/uid"}
},
"name": {"$ref": "#/definitions/string"},
"serializer": {
"type": "string",
"enum": ["radix.particles.token_definition"]
},
"description": {"$ref": "#/definitions/string"},
"iconUrl": {},
"version": {"type": "number"},
"scrypto": {"type": "object"}
},
"required": [
"serializer",
"version",
"name",
"description",
"permissions"
]
}
References

References

Example
{
"serializer": "radix.particles.token_definition",
"address": ":adr:JEWDNQAYJxwe27JrHSStupxatvaxrcrrR6hwzrAbLmDH7BgEFeZ",
"description": ":str:Example token",
"destinations": [":uid:5f3b51bb456c7f5202c3489a798bec53"],
"granularity": ":u20:10000000000000000",
"iconUrl": ":str:http://example.icon.com/img.png",
"name": ":str:ExampleCoin",
"permissions": {
"mint": ":str:token_owner_only",
"burn": ":str:token_owner_only"
},
"symbol": ":str:EXMPL",
"version": 100
}

transferrableTokensParticle

Schema
References
Example
Schema
"transferrableTokensParticle": {
"description": "A particle which represents an amount of a token owned by an account.",
"additionalProperties": false,
"type": "object",
"properties": {
"amount": {"$ref": "#/definitions/u20"},
"address": {"$ref": "#/definitions/address"},
"permissions": {
"additionalProperties": false,
"type": "object",
"properties": {
"burn": {"$ref": "#/definitions/tokenActionPermission"},
"mint": {"$ref": "#/definitions/tokenActionPermission"}
},
"required": [
"burn",
"mint"
]
},
"granularity": {"$ref": "#/definitions/u20"},
"destinations": {
"minItems": 1,
"type": "array",
"items": {"$ref": "#/definitions/uid"}
},
"serializer": {
"type": "string",
"enum": ["radix.particles.transferrable_tokens"]
},
"nonce": {"type": "number"},
"version": {"type": "number"},
"tokenDefinitionReference": {"$ref": "#/definitions/radixResourceIdentifier"},
"planck": {"type": "number"}
},
"required": [
"version",
"serializer",
"amount",
"nonce",
"planck",
"tokenDefinitionReference"
]
}
References

References

Example
{
"serializer": "radix.particles.transferrable_tokens",
"address": ":adr:JEWDNQAYJxwe27JrHSStupxatvaxrcrrR6hwzrAbLmDH7BgEFeZ",
"amount": ":u20:1000000000000000000000",
"destinations": [":uid:5f3b51bb456c7f5202c3489a798bec53"],
"granularity": ":u20:10000000000000000",
"nonce": 1566833127941,
"permissions": {
"mint": ":str:token_owner_only",
"burn": ":str:token_owner_only"
},
"planck": 26173885,
"tokenDefinitionReference": ":rri:/JEWDNQAYJxwe27JrHSStupxatvaxrcrrR6hwzrAbLmDH7BgEFeZ/EXMPL",
"version": 100
}

unallocatedTokensParticle

Schema
References
Example
Schema
"unallocatedTokensParticle": {
"description": "A particle which represents an unallocated amount of tokens.",
"additionalProperties": false,
"type": "object",
"properties": {
"amount": {"$ref": "#/definitions/u20"},
"granularity": {"$ref": "#/definitions/u20"},
"permissions": {
"additionalProperties": false,
"type": "object",
"properties": {
"burn": {"$ref": "#/definitions/tokenActionPermission"},
"mint": {"$ref": "#/definitions/tokenActionPermission"}
},
"required": [
"burn",
"mint"
]
},
"destinations": {
"minItems": 1,
"type": "array",
"items": {"$ref": "#/definitions/uid"}
},
"serializer": {
"type": "string",
"enum": ["radix.particles.unallocated_tokens"]
},
"nonce": {"type": "number"},
"version": {"type": "number"},
"tokenDefinitionReference": {"$ref": "#/definitions/radixResourceIdentifier"}
},
"required": [
"version",
"serializer",
"amount",
"nonce",
"tokenDefinitionReference"
]
}
References
Example
{
"serializer": "radix.particles.unallocated_tokens",
"amount": ":u20:115792089237316195423570985008687907853269984665640564038457584007913129639935",
"destinations": [":uid:5f3b51bb456c7f5202c3489a798bec53"],
"granularity": ":u20:10000000000000000",
"nonce": 1566833127941,
"permissions": {
"mint": ":str:token_owner_only",
"burn": ":str:token_owner_only"
},
"tokenDefinitionReference": ":rri:/JEWDNQAYJxwe27JrHSStupxatvaxrcrrR6hwzrAbLmDH7BgEFeZ/EXMPL",
"version": 100
}

uniqueParticle

Schema
References
Example
Schema
"uniqueParticle": {
"description": "A particle which makes the containing Atom unique.",
"type": "object",
"properties": {
"address": {"$ref": "#/definitions/address"},
"destinations": {
"minItems": 1,
"type": "array",
"items": {"$ref": "#/definitions/uid"}
},
"name": {"$ref": "#/definitions/string"},
"serializer": {
"type": "string",
"enum": ["radix.particles.unique"]
},
"nonce": {"type": "number"}
}
}
References

References

Example
{
"serializer": "radix.particles.unique",
"address": ":adr:JEWDNQAYJxwe27JrHSStupxatvaxrcrrR6hwzrAbLmDH7BgEFeZ",
"destinations": [":uid:5f3b51bb456c7f5202c3489a798bec53"],
"name": ":str:example-unique-id",
"nonce": 1566833127947,
"version": 100
}