{
"id": "org.consentvid.consent",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"videoUri",
"modalities",
"purposes",
"modelClasses",
"compensation",
"revocable",
"authorshipAttested",
"createdAt"
],
"properties": {
"purposes": {
"type": "array",
"items": {
"type": "string",
"knownValues": [
"training",
"evaluation",
"benchmarking",
"researchOnly"
]
},
"minLength": 1
},
"videoUri": {
"type": "string",
"format": "at-uri",
"description": "AT-URI of the org.consentvid.video record this consent applies to."
},
"createdAt": {
"type": "string",
"format": "datetime"
},
"expiresAt": {
"type": "string",
"format": "datetime",
"description": "Optional expiry; after this time the consent is no longer valid."
},
"revocable": {
"type": "boolean"
},
"modalities": {
"type": "array",
"items": {
"type": "string",
"knownValues": [
"video",
"audio",
"transcript",
"face",
"voice"
]
},
"minLength": 1
},
"rightsBasis": {
"type": "string",
"description": "Basis on which the contributor holds the right to grant consent: 'ownRecording' = they captured it, 'licensed' = licensed from the creator, 'otherRightsHolder' = other documented basis.",
"knownValues": [
"ownRecording",
"licensed",
"otherRightsHolder"
]
},
"compensation": {
"type": "string",
"knownValues": [
"none",
"creditOnly",
"monetary"
]
},
"modelClasses": {
"type": "array",
"items": {
"type": "string",
"knownValues": [
"academic",
"openWeights",
"commercial",
"foundationModel"
]
},
"minLength": 1
},
"captureProvenance": {
"type": "string",
"description": "Strength of the capture-provenance guarantee. 'attested' = capture-time cryptographic provenance (e.g. C2PA/CAWG) binds the recording to the contributor's DID; 'selfAttested' = signed authorship attestation only; 'unverified' = neither.",
"knownValues": [
"attested",
"selfAttested",
"unverified"
]
},
"authorshipAttested": {
"type": "boolean",
"description": "The contributor affirms, under their signing key, that they recorded this video themselves (or are otherwise its rightful author) and are authorized to grant this consent. A consent receipt is invalid unless this is true; uploading someone else's video and consenting to its use would be unlawful."
}
}
},
"description": "A consent receipt declaring permissions for AI training use of a referenced video record. Cryptographically signed by the user's repo key (inherent to ATproto records)."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}