{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://api.tsrct.io/2222222222222222222222222.ddx-super-schema-v1/body",
"title": "ddx-super-schema-v1",
"description": "Complete schema for a ddx grant",
"type": "object",
"properties": {
"spec": {
"type": "object",
"description": "The spec of the ddx grant",
"properties": {
"category": {
"type": "string",
"description": "The category of the grant",
"items": [
"badge",
"card",
"cert",
"coupon",
"event",
"generic",
"loyalty",
"membership",
"transport"
]
},
"redeemable": {
"redeemableQty": {
"type": "integer",
"description": "The number of times the grant can be redeemed"
},
"allowValidation": {
"type": "boolean",
"description": "Whether the grant can be validated by a 3rd party that\u0027s not the src, redeemer, or tgt; this is different from challenge, that all ddxs can support"
},
"allowedRedeemingAcl": {
"type": "object",
"properties": {
"src": {
"type": "string",
"description": "The source of the acl"
},
"sub": {
"type": "string",
"description": "The subject of the acl ddx grant to whoever the redeeming tgt is"
}
}
}
},
"design": {
"type": "object",
"description": "The design of the visual card",
"properties": {
"logo": {
"type": "string",
"description": "The logo tsrct uid of the grant"
},
"title": {
"type": "string",
"description": "The title text of the grant"
},
"subtitle": {
"type": "string",
"description": "The subtitle text of the grant"
},
"primaryImage": {
"type": "string",
"description": "The primary image tsrct uid of the grant"
},
"primaryTitle": {
"type": "string",
"description": "The title text of the primary image"
},
"primarySubtitle": {
"type": "string",
"description": "The subtitle text of the primary image"
},
"primaryDescription": {
"type": "string",
"description": "The long form description of the grant"
},
"primaryMetadata": {
"type": "object",
"description": "The metadata of the primary item, can be any set of string key-value pairs, this will be shown in the card"
},
"backgroundImage": {
"type": "string",
"description": "The background image url of the grant"
},
"backgroundColor": {
"type": "string",
"description": "The color of the grant"
},
"foregroundColor": {
"type": "string",
"description": "The foreground color of the text; a a hex string showing rgb values, like #"
},
"eventDateTime": {
"type": "string",
"description": "The date and time of the event, if an event related grant"
},
"eventLocation": {
"type": "string",
"description": "The location of the event, if an event related grant"
},
"origin": {
"type": "object",
"description": "The origin of the ddx, if a transport related grant",
"properties": {
"code": {
"type": "string",
"description": "The origin code of the ddx, if a transport related grant"
},
"label": {
"type": "string",
"description": "The origin label of the ddx, if a transport related grant"
},
"time": {
"type": "string",
"description": "The origin time of the ddx, if a transport related grant"
},
"info": {
"type": "string",
"description": "other information about the origin of the ddx, if a transport related grant"
}
}
},
"destination": {
"type": "string",
"description": "The destination of the ddx, if a transport related grant",
"properties": {
"code": {
"type": "string",
"description": "The destination code of the ddx, if a transport related grant"
},
"label": {
"type": "string",
"description": "The destination label of the ddx, if a transport related grant"
},
"time": {
"type": "string",
"description": "The destination time of the ddx, if a transport related grant"
},
"info": {
"type": "string",
"description": "other information about the destination of the ddx, if a transport related grant"
}
}
}
},
"required": [
"logo",
"title",
"subtitle",
"primaryTitle"
]
},
"name": {
"type": "string",
"description": "The name of the grant"
}
},
"required": [
"category",
"design",
"name"
]
},
"data": {
"type": "object",
"description": "auxiliary data for the grant"
}
},
"required": [
"spec"
]
}