Validate a site or tile record before writing it and, for an authorized caller, prepare bard to serve it. Returns the AT-URI and CID the record will have, and the canonical record to write with putRecord at that key.
Input
application/jsondryRun
boolean
Optional
Validate only, without preparing.
record
unknown
Required
A space.highport.sites.site or space.highport.sites.tile record, including $type.
rkey
string
Optional
Required for a site (the hostname). For a tile: an existing rkey for a new version, a TID the client chose, or absent to let bard mint one.
space
stringat-uri
Optional
Validate as a record in this space. The caller must be its authority.
Output
application/jsoncid
stringcid
Optional
A content identifier (CID) referencing immutable data.
entryCount
integer
Optional
No description available.
errors
array
Required
No description available.
expiresAt
stringdatetime
Optional
An RFC 3339 formatted timestamp.
missingBlobs
array
Required
No description available.
parameterErrors
array
Required
No description available.
prepared
boolean
Required
No description available.
reason
string
Optional
No description available.
DomainNotVerified, TileAuthorNotPermitted, PreparedQuotaExceeded, SpacePreparationUnsupported, DryRunrecord
unknown
Optional
The record as bard will serialize it. Write it exactly as returned.
state
refspace.highport.defs#indexState
Optional
No description available.
totalBytes
integer
Optional
No description available.
uri
stringat-uri
Optional
An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).
valid
boolean
Required
No description available.
Errors
InvalidRecordKey
A site without an rkey, or an rkey that is not a canonical hostname or valid TID. TileNotReady
The bound tile is still pending publication and cannot be bound yet. SpaceNotFound
Bard is not connected to that space. NotSpaceAuthority
Only the space's authority may publish in it. RateLimitExceeded
Too many preparations this hour. Try It
Requests are sent directly from your browser. Some servers may block requests due to CORS.
View raw schema
{
"type": "procedure",
"input": {
"schema": {
"type": "object",
"required": [
"record"
],
"properties": {
"rkey": {
"type": "string",
"description": "Required for a site (the hostname). For a tile: an existing rkey for a new version, a TID the client chose, or absent to let bard mint one."
},
"space": {
"type": "string",
"format": "at-uri",
"description": "Validate as a record in this space. The caller must be its authority."
},
"dryRun": {
"type": "boolean",
"description": "Validate only, without preparing."
},
"record": {
"type": "unknown",
"description": "A space.highport.sites.site or space.highport.sites.tile record, including $type."
}
}
},
"encoding": "application/json"
},
"errors": [
{
"name": "InvalidRecordKey",
"description": "A site without an rkey, or an rkey that is not a canonical hostname or valid TID."
},
{
"name": "TileNotReady",
"description": "The bound tile is still pending publication and cannot be bound yet."
},
{
"name": "SpaceNotFound",
"description": "Bard is not connected to that space."
},
{
"name": "NotSpaceAuthority",
"description": "Only the space's authority may publish in it."
},
{
"name": "RateLimitExceeded",
"description": "Too many preparations this hour."
}
],
"output": {
"schema": {
"type": "object",
"required": [
"valid",
"errors",
"parameterErrors",
"prepared",
"missingBlobs"
],
"properties": {
"cid": {
"type": "string",
"format": "cid"
},
"uri": {
"type": "string",
"format": "at-uri"
},
"state": {
"ref": "space.highport.defs#indexState",
"type": "ref"
},
"valid": {
"type": "boolean"
},
"errors": {
"type": "array",
"items": {
"ref": "space.highport.defs#validationError",
"type": "ref"
}
},
"reason": {
"type": "string",
"knownValues": [
"DomainNotVerified",
"TileAuthorNotPermitted",
"PreparedQuotaExceeded",
"SpacePreparationUnsupported",
"DryRun"
]
},
"record": {
"type": "unknown",
"description": "The record as bard will serialize it. Write it exactly as returned."
},
"prepared": {
"type": "boolean"
},
"expiresAt": {
"type": "string",
"format": "datetime"
},
"entryCount": {
"type": "integer"
},
"totalBytes": {
"type": "integer"
},
"missingBlobs": {
"type": "array",
"items": {
"ref": "space.highport.defs#missingBlob",
"type": "ref"
}
},
"parameterErrors": {
"type": "array",
"items": {
"ref": "space.highport.defs#validationError",
"type": "ref"
}
}
}
},
"encoding": "application/json"
},
"description": "Validate a site or tile record before writing it and, for an authorized caller, prepare bard to serve it. Returns the AT-URI and CID the record will have, and the canonical record to write with putRecord at that key."
}