{
"id": "at.marque.dns",
"defs": {
"main": {
"key": "any",
"type": "record",
"record": {
"type": "object",
"required": [
"domain",
"records",
"createdAt"
],
"properties": {
"domain": {
"type": "string",
"maxLength": 253,
"description": "Fully qualified domain name this zone belongs to."
},
"records": {
"type": "array",
"items": {
"ref": "#entry",
"type": "ref"
},
"description": "The DNS resource records in this zone."
},
"createdAt": {
"type": "string",
"format": "datetime",
"description": "Client-declared timestamp when this record was last written."
}
}
},
"description": "Record containing the DNS zone entries for a domain managed by Marque. The record key matches the corresponding at.marque.domain record key (the FQDN)."
},
"entry": {
"type": "object",
"required": [
"name",
"recordType",
"value",
"ttl"
],
"properties": {
"ttl": {
"type": "integer",
"minimum": 60,
"description": "Time-to-live in seconds."
},
"name": {
"type": "string",
"maxLength": 253,
"description": "Record name relative to the zone apex. Use '@' for the apex itself."
},
"value": {
"type": "string",
"maxLength": 4096,
"description": "Record value / rdata."
},
"priority": {
"type": "integer",
"description": "Priority value for MX and SRV records."
},
"recordType": {
"type": "string",
"description": "DNS record type.",
"knownValues": [
"A",
"AAAA",
"CNAME",
"MX",
"TXT",
"SRV",
"NS",
"CAA"
]
}
},
"description": "A single DNS resource record."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1,
"description": "DNS zone records for a domain where Marque handles the nameservers. Stored in the user's repository."
}