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).
tid
Timestamp-based ID
Properties
authorshipAttested
boolean
Required
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.
captureProvenance
string
Optional
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.
attested, selfAttested, unverifiedcompensation
string
Required
No description available.
none, creditOnly, monetarycreatedAt
string
datetime
Required
An RFC 3339 formatted timestamp.
expiresAt
string
datetime
Optional
Optional expiry; after this time the consent is no longer valid.
modalities
array
of
string
Required
No description available.
minLength: 1 itemsmodelClasses
array
of
string
Required
No description available.
minLength: 1 itemspurposes
array
of
string
Required
No description available.
minLength: 1 itemsrevocable
boolean
Required
No description available.
rightsBasis
string
Optional
Basis on which the contributor holds the right to grant consent: 'ownRecording' = they captured it, 'licensed' = licensed from the creator, 'otherRightsHolder' = other documented basis.
ownRecording, licensed, otherRightsHoldervideoUri
string
at-uri
Required
AT-URI of the org.consentvid.video record this consent applies to.
View raw schema
{
"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)."
}