{
"id": "app.gainforest.evaluator.subscription",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"evaluator",
"createdAt"
],
"properties": {
"createdAt": {
"type": "string",
"format": "datetime",
"description": "Timestamp of when this subscription was created."
},
"evaluator": {
"type": "string",
"format": "did",
"description": "DID of the evaluator service to subscribe to."
},
"collections": {
"type": "array",
"items": {
"type": "string",
"maxGraphemes": 128
},
"maxLength": 20,
"description": "Which of the user's record collections should be evaluated (NSIDs). Must be a subset of the evaluator's subjectCollections. If omitted, all supported collections are evaluated."
},
"evaluationTypes": {
"type": "array",
"items": {
"type": "string",
"maxGraphemes": 64
},
"maxLength": 20,
"description": "Which evaluation types the user wants. If omitted, all types the evaluator supports are applied."
}
}
},
"description": "User subscription to an evaluator service. Published by the user (not the evaluator) to declare they want evaluations."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1,
"description": "A subscription record published by a user in their own repo to request evaluations from a specific evaluator service. The evaluator detects subscriptions via Jetstream and processes matching records. Deleting this record unsubscribes."
}