{
"$type": "com.atproto.lexicon.schema",
"defs": {
"blobFailure": {
"properties": {
"cid": {
"format": "cid",
"type": "string"
},
"error": {
"description": "One of BlobUnavailable, CidMismatch or FetchFailed.",
"type": "string"
},
"role": {
"knownValues": [
"manifest",
"tile",
"parameter",
"notFound"
],
"type": "string"
},
"sourceDid": {
"format": "did",
"type": "string"
}
},
"required": [
"cid",
"role",
"sourceDid",
"error"
],
"type": "object"
},
"defaultTileView": {
"description": "A base's default tile: what unclaimed names under it serve. The binding pins a CID, so a later version of the tile does not change what they serve.",
"properties": {
"appliedTo": {
"description": "How many names under the base are serving it now. Names whose subject has published their own site are not counted.",
"type": "integer"
},
"cid": {
"description": "The pinned version.",
"format": "cid",
"type": "string"
},
"name": {
"description": "The tile's declared name, as it was when this was read.",
"type": "string"
},
"setAt": {
"description": "When the base owner bound it.",
"format": "datetime",
"type": "string"
},
"uri": {
"description": "The tile record's AT-URI.",
"format": "at-uri",
"type": "string"
}
},
"required": [
"uri",
"cid"
],
"type": "object"
},
"delegationState": {
"description": "Where a base's delegation stands. probing: the wildcard has not been shown to route yet. enabled: it has. routing-lapsed: the wildcard stopped routing for longer than the grace period, and names under the base are suspended until it routes again.",
"knownValues": [
"probing",
"enabled",
"routing-lapsed"
],
"type": "string"
},
"delegationView": {
"description": "What a base's owner has enabled and granted. Fields other than certMode are absent when they do not apply.",
"properties": {
"certMode": {
"description": "How names under the base get certificates. Every base starts as per-name.",
"knownValues": [
"per-name",
"wildcard"
],
"type": "string"
},
"challengeTarget": {
"description": "Where the base's _acme-challenge CNAME must point, exactly as the certificate issuer writes it. Present only while a wildcard grant is live.",
"type": "string"
},
"defaultTile": {
"description": "The tile served on names under this base whose subject has not published a site. Absent when the base has set none.",
"ref": "#defaultTileView",
"type": "ref"
},
"grantedAt": {
"description": "When the live wildcard grant was made.",
"format": "datetime",
"type": "string"
},
"maxNames": {
"description": "The most names the base can reserve.",
"type": "integer"
},
"probeHostname": {
"description": "A random name under the base, used to prove the wildcard routes.",
"maxLength": 253,
"type": "string"
},
"state": {
"description": "Absent if the base has not enabled delegation.",
"ref": "#delegationState",
"type": "ref"
},
"wildcardObservedAt": {
"description": "When the base's wildcard certificate first appeared in certificate storage.",
"format": "datetime",
"type": "string"
}
},
"required": [
"certMode"
],
"type": "object"
},
"denylistEntry": {
"properties": {
"actor": {
"type": "string"
},
"createdAt": {
"format": "datetime",
"type": "string"
},
"kind": {
"knownValues": [
"domain",
"did",
"uri",
"cid",
"pattern",
"space"
],
"type": "string"
},
"reason": {
"type": "string"
},
"subject": {
"type": "string"
}
},
"required": [
"subject",
"kind",
"createdAt"
],
"type": "object"
},
"dnsInstruction": {
"properties": {
"name": {
"description": "Fully-qualified record name.",
"type": "string"
},
"purpose": {
"knownValues": [
"ownership",
"certificate",
"traffic"
],
"type": "string"
},
"required": {
"type": "boolean"
},
"ttl": {
"type": "integer"
},
"type": {
"knownValues": [
"TXT",
"CNAME",
"ALIAS",
"ANAME",
"A",
"AAAA"
],
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"type",
"name",
"value"
],
"type": "object"
},
"domainEvent": {
"properties": {
"actor": {
"type": "string"
},
"createdAt": {
"format": "datetime",
"type": "string"
},
"detail": {
"type": "unknown"
},
"event": {
"type": "string"
}
},
"required": [
"event",
"createdAt"
],
"type": "object"
},
"domainStatus": {
"knownValues": [
"pending",
"verifying",
"verified",
"active",
"failed",
"suspended",
"released"
],
"type": "string"
},
"domainView": {
"properties": {
"activatedAt": {
"format": "datetime",
"type": "string"
},
"activeCid": {
"format": "cid",
"type": "string"
},
"activeRev": {
"type": "string"
},
"activeUri": {
"format": "at-uri",
"type": "string"
},
"createdAt": {
"format": "datetime",
"type": "string"
},
"delegatedBase": {
"description": "For a name reserved under a delegation base: that base. In this case did is the identity the name was reserved for, not the base's owner.",
"type": "string"
},
"delegation": {
"description": "For a base: what its owner has enabled and granted. Absent on any other domain.",
"ref": "#delegationView",
"type": "ref"
},
"did": {
"format": "did",
"type": "string"
},
"domain": {
"type": "string"
},
"entryCount": {
"type": "integer"
},
"pendingCid": {
"description": "A validated record waiting to be committed, if there is one.",
"format": "cid",
"type": "string"
},
"pendingState": {
"knownValues": [
"preparing",
"pending-publication"
],
"type": "string"
},
"sourceKind": {
"knownValues": [
"inline",
"tile"
],
"type": "string"
},
"space": {
"description": "The space the domain is registered to. Absent for a domain registered to a DID. The record served is the space authority's.",
"format": "at-uri",
"type": "string"
},
"status": {
"ref": "#domainStatus",
"type": "ref"
},
"tileCid": {
"format": "cid",
"type": "string"
},
"tileUri": {
"format": "at-uri",
"type": "string"
},
"tls": {
"ref": "#tlsStatus",
"type": "ref"
},
"totalBytes": {
"type": "integer"
},
"verifiedAt": {
"format": "datetime",
"type": "string"
}
},
"required": [
"domain",
"did",
"status",
"createdAt"
],
"type": "object"
},
"edgeReachStatus": {
"description": "Whether bard's edge routes a serving hostname to this deployment. unknown: not probed yet, which is not a fault. routed: the probe reached this deployment's bard-origin. foreign: something else answered. unreachable: nothing answered. other-deployment: a different bard deployment answered. unproven: the answer looked like this deployment's but failed the reachability challenge, so something may be imitating it.",
"knownValues": [
"unknown",
"routed",
"foreign",
"unreachable",
"other-deployment",
"unproven"
],
"type": "string"
},
"edgeReachability": {
"description": "What this deployment's edge answered for a hostname, probed over the network. A site can be indexed and active while the edge has nowhere to send it, and only this field shows that.",
"properties": {
"checkedAt": {
"description": "When the probe was made. Absent when status is unknown.",
"format": "datetime",
"type": "string"
},
"detail": {
"description": "What answered, as a status line or a transport error. Meant for people; do not branch on it.",
"type": "string"
},
"domain": {
"description": "The hostname that was probed.",
"maxLength": 253,
"type": "string"
},
"status": {
"ref": "#edgeReachStatus",
"type": "ref"
}
},
"required": [
"status",
"domain"
],
"type": "object"
},
"indexState": {
"knownValues": [
"preparing",
"pending-publication",
"expired",
"queued",
"fetching",
"materializing",
"active",
"superseded",
"rejected",
"failed"
],
"type": "string"
},
"jobView": {
"properties": {
"action": {
"type": "string"
},
"attempts": {
"type": "integer"
},
"finishedAt": {
"format": "datetime",
"type": "string"
},
"id": {
"type": "integer"
},
"lastError": {
"type": "string"
},
"scheduledAt": {
"format": "datetime",
"type": "string"
},
"startedAt": {
"format": "datetime",
"type": "string"
},
"state": {
"type": "string"
},
"uri": {
"type": "string"
}
},
"required": [
"id",
"uri",
"action",
"state",
"attempts",
"scheduledAt"
],
"type": "object"
},
"malwareFinding": {
"description": "One malware detection. It is recorded before anything is denied or deleted, because quarantine destroys the sample.",
"properties": {
"cid": {
"description": "The content address, or `-` for a detection at upload, when nothing was stored.",
"type": "string"
},
"class": {
"description": "`unwanted` is a PUA match. Under the default policy, the response stops short of the publishing identity.",
"knownValues": [
"malware",
"unwanted"
],
"type": "string"
},
"did": {
"description": "The repository the bytes came from. For a tile resource, that is the tile's author, not the site owner. Absent for content bard authored.",
"format": "did",
"type": "string"
},
"domain": {
"description": "The hostname the content would have been served at.",
"type": "string"
},
"foundAt": {
"format": "datetime",
"type": "string"
},
"id": {
"description": "The finding's ID. The matching denylist entry's reason refers to it.",
"type": "integer"
},
"path": {
"description": "The manifest path the bytes were mapped to, which identifies the file. Absent when there is no path: the notFound resource, an upload refused before any record referenced it, or a rescan.",
"type": "string"
},
"quarantinedAt": {
"description": "When the response finished. Absent while it is still underway: the content is denied but may still be served.",
"format": "datetime",
"type": "string"
},
"signature": {
"description": "The signature name, exactly as the scanner reported it.",
"type": "string"
},
"source": {
"description": "Where the detection happened. `rescan`: the content was clean on arrival and a newer signature caught it. `admin`: an operator asked for this CID to be scanned.",
"knownValues": [
"fetch",
"upload",
"rescan",
"admin"
],
"type": "string"
},
"uri": {
"description": "The record that referenced the content.",
"format": "at-uri",
"type": "string"
}
},
"required": [
"id",
"cid",
"signature",
"class",
"source",
"foundAt"
],
"type": "object"
},
"missingBlob": {
"properties": {
"cid": {
"format": "cid",
"type": "string"
},
"role": {
"knownValues": [
"manifest",
"tile",
"parameter",
"notFound"
],
"type": "string"
},
"sourceDid": {
"format": "did",
"type": "string"
}
},
"required": [
"cid",
"role",
"sourceDid"
],
"type": "object"
},
"preparationStatus": {
"properties": {
"cid": {
"format": "cid",
"type": "string"
},
"expiresAt": {
"format": "datetime",
"type": "string"
},
"failed": {
"items": {
"ref": "#blobFailure",
"type": "ref"
},
"type": "array"
},
"fetched": {
"type": "integer"
},
"pending": {
"type": "integer"
},
"state": {
"knownValues": [
"preparing",
"pending-publication",
"expired"
],
"type": "string"
}
},
"required": [
"state",
"cid",
"fetched",
"pending",
"failed"
],
"type": "object"
},
"siteView": {
"properties": {
"activatedAt": {
"format": "datetime",
"type": "string"
},
"cid": {
"format": "cid",
"type": "string"
},
"did": {
"format": "did",
"type": "string"
},
"domain": {
"type": "string"
},
"rev": {
"type": "string"
},
"sourceKind": {
"knownValues": [
"inline",
"tile"
],
"type": "string"
},
"space": {
"description": "Present for a site published from a space.",
"format": "at-uri",
"type": "string"
},
"tile": {
"ref": "#tileView",
"type": "ref"
},
"uri": {
"format": "at-uri",
"type": "string"
},
"webTile": {
"description": "Present when the site binds an ing.dasl.masl Web Tile. tile is absent then, because nothing indexes a Web Tile.",
"ref": "#webTileView",
"type": "ref"
}
},
"required": [
"domain",
"did",
"uri",
"cid",
"rev",
"activatedAt",
"sourceKind"
],
"type": "object"
},
"spaceEvent": {
"properties": {
"actor": {
"format": "did",
"type": "string"
},
"at": {
"format": "datetime",
"type": "string"
},
"cid": {
"format": "cid",
"type": "string"
},
"kind": {
"knownValues": [
"record.created",
"record.updated",
"record.deleted",
"site.activated",
"site.deactivated",
"tile.ready",
"tile.incomplete",
"tile.deleted",
"access.granted",
"access.expired",
"registration.renewed",
"registration.lapsed",
"app-not-allowed",
"space.deleted"
],
"type": "string"
},
"seq": {
"type": "integer"
},
"space": {
"format": "at-uri",
"type": "string"
},
"subject": {
"type": "string"
}
},
"required": [
"seq",
"space",
"kind",
"at"
],
"type": "object"
},
"spaceSyncState": {
"knownValues": [
"connecting",
"syncing",
"synced",
"credential-expired",
"registration-lapsed",
"app-not-allowed",
"authority-unreachable",
"deleted",
"disconnected"
],
"type": "string"
},
"spaceView": {
"properties": {
"accessExpiresAt": {
"description": "When bard's current credential for the space expires. Absent if bard holds none.",
"format": "datetime",
"type": "string"
},
"accessGrantedBy": {
"format": "did",
"type": "string"
},
"appAccess": {
"knownValues": [
"open",
"allow-list",
"unknown"
],
"type": "string"
},
"authority": {
"format": "did",
"type": "string"
},
"connectedAt": {
"format": "datetime",
"type": "string"
},
"domainCount": {
"type": "integer"
},
"headRev": {
"type": "string"
},
"lastCheckedAt": {
"format": "datetime",
"type": "string"
},
"lastNotifiedAt": {
"format": "datetime",
"type": "string"
},
"policy": {
"knownValues": [
"public",
"member-list",
"managing-app",
"unknown"
],
"type": "string"
},
"queuedNotifications": {
"description": "Notification receipts waiting for a credential.",
"type": "integer"
},
"registrationExpiresAt": {
"format": "datetime",
"type": "string"
},
"skey": {
"type": "string"
},
"syncState": {
"ref": "#spaceSyncState",
"type": "ref"
},
"tileCount": {
"type": "integer"
},
"uri": {
"format": "at-uri",
"type": "string"
}
},
"required": [
"uri",
"authority",
"skey",
"syncState",
"connectedAt"
],
"type": "object"
},
"tileView": {
"properties": {
"cid": {
"format": "cid",
"type": "string"
},
"description": {
"type": "string"
},
"did": {
"format": "did",
"type": "string"
},
"entryCount": {
"type": "integer"
},
"handle": {
"description": "The author's handle, present only if it resolves back to did. Often absent, for example right after a handle change or when DNS is unreachable. Show did instead.",
"format": "handle",
"type": "string"
},
"iconUrl": {
"description": "https://highport.space/xrpc/space.highport.sites.getTileIcon?cid={cid}; absent if the tile has no icon.",
"format": "uri",
"type": "string"
},
"indexedAt": {
"format": "datetime",
"type": "string"
},
"latestCid": {
"description": "The newest indexed version at this URI, when it differs from cid.",
"format": "cid",
"type": "string"
},
"name": {
"type": "string"
},
"params": {
"items": {
"ref": "space.highport.sites.tile#param",
"type": "ref"
},
"type": "array"
},
"space": {
"description": "Present for a space tile. Never shown on the public surface.",
"format": "at-uri",
"type": "string"
},
"state": {
"knownValues": [
"indexing",
"ready",
"incomplete",
"rejected",
"suspended",
"deleted"
],
"type": "string"
},
"totalBytes": {
"type": "integer"
},
"uri": {
"format": "at-uri",
"type": "string"
}
},
"required": [
"uri",
"cid",
"did",
"name",
"state",
"indexedAt"
],
"type": "object"
},
"tlsStatus": {
"knownValues": [
"none",
"pending",
"issued",
"renewing",
"failed"
],
"type": "string"
},
"tlsView": {
"properties": {
"expiresAt": {
"format": "datetime",
"type": "string"
},
"issuedAt": {
"format": "datetime",
"type": "string"
},
"lastError": {
"type": "string"
},
"status": {
"ref": "#tlsStatus",
"type": "ref"
}
},
"required": [
"status"
],
"type": "object"
},
"validationError": {
"properties": {
"message": {
"type": "string"
},
"name": {
"description": "A validation error name, such as DuplicatePath, RedirectTargetNotFound or ParameterTypeMismatch.",
"type": "string"
},
"path": {
"description": "JSON Pointer to the field or entry the error is about, if there is one.",
"type": "string"
}
},
"required": [
"name",
"message"
],
"type": "object"
},
"verificationCheck": {
"properties": {
"checkedAt": {
"format": "datetime",
"type": "string"
},
"detail": {
"type": "string"
},
"name": {
"knownValues": [
"ownership",
"traffic",
"conflict",
"certificate"
],
"type": "string"
},
"passed": {
"type": "boolean"
}
},
"required": [
"name",
"passed",
"checkedAt"
],
"type": "object"
},
"verificationView": {
"properties": {
"checks": {
"items": {
"ref": "#verificationCheck",
"type": "ref"
},
"type": "array"
},
"lastCheckedAt": {
"format": "datetime",
"type": "string"
},
"status": {
"ref": "#domainStatus",
"type": "ref"
}
},
"required": [
"status",
"checks"
],
"type": "object"
},
"webTileView": {
"description": "An ing.dasl.masl Web Tile a site binds, as the site's snapshot and bard's stored copy of the record describe it.",
"properties": {
"cid": {
"description": "The record CID the site pins.",
"format": "cid",
"type": "string"
},
"description": {
"description": "tile.description from the record, when it has one.",
"type": "string"
},
"did": {
"description": "The tile's author.",
"format": "did",
"type": "string"
},
"name": {
"description": "tile.name from the record. Absent if bard cannot read its copy of the record.",
"type": "string"
},
"uri": {
"format": "at-uri",
"type": "string"
}
},
"required": [
"uri",
"cid",
"did"
],
"type": "object"
}
},
"id": "space.highport.defs",
"lexicon": 1
}