{
"id": "place.wisp.v2.wh",
"defs": {
"main": {
"key": "any",
"type": "record",
"record": {
"type": "object",
"required": [
"scope",
"url",
"createdAt"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"maxLength": 2048,
"description": "HTTPS endpoint to POST the webhook payload to."
},
"scope": {
"ref": "#atUri",
"type": "ref",
"description": "What to watch. An AT-URI scopes to a specific DID, collection, or record."
},
"events": {
"type": "array",
"items": {
"enum": [
"create",
"update",
"delete"
],
"type": "string"
},
"maxLength": 3,
"description": "Which record events to trigger on. Defaults to all events if omitted."
},
"secret": {
"type": "string",
"maxLength": 256,
"description": "Optional secret used to sign the webhook payload with HMAC-SHA256. The signature is included in the 'X-Webhook-Signature' header of the webhook request."
},
"enabled": {
"type": "boolean",
"description": "Whether the webhook is active. Defaults to true if omitted."
},
"createdAt": {
"type": "string",
"format": "datetime",
"description": "Timestamp of when the webhook was created."
}
}
},
"description": "Webhook configuration for AT Protocol record events. Fires an HTTP POST to a URL when a matching record event is observed on the firehose."
},
"atUri": {
"type": "object",
"required": [
"aturi"
],
"properties": {
"aturi": {
"type": "string"
},
"backlinks": {
"type": "boolean",
"description": "If true, also watch for records in any repo that reference this DID and collection."
}
},
"description": "Watch by AT-URI. at://did watches all collections for a DID. at://did/collection watches all records of that collection for a DID. at://did/collection/record watches a specific record."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}