An account, hydrated enough to render a byline without resolving the DID.
Properties
URL of the account's avatar image.
The account's DID, which is its permanent identity.
A chosen name, if the account has one.
maxLength: 256 bytesmaxGraphemes: 64 graphemes
The handle the DID document claims, as last seen. Absent until we have resolved one.
View raw schema
{
"type": "object",
"required": [
"did"
],
"properties": {
"did": {
"type": "string",
"format": "did",
"description": "The account's DID, which is its permanent identity."
},
"avatar": {
"type": "string",
"format": "uri",
"description": "URL of the account's avatar image."
},
"handle": {
"type": "string",
"format": "handle",
"description": "The handle the DID document claims, as last seen. Absent until we have resolved one."
},
"displayName": {
"type": "string",
"maxLength": 256,
"description": "A chosen name, if the account has one.",
"maxGraphemes": 64
}
},
"description": "An account, hydrated enough to render a byline without resolving the DID."
}
A submission with everything needed to render it: the record as written, its author, and the counts this board derived.
Properties
CID of the exact revision indexed. Absent for a record indexed before its CID was known.
When this board first saw the record. Ranking uses this rather than the record's own createdAt, which its author chose.
The pub.oysters.post record, rebuilt from the indexed fields. Fields this board does not index are not echoed; fetch the record from the author's repository if you need it byte-for-byte.
Tags from this board's curated vocabulary. The record may claim others; those are not echoed here.
Live upvotes. Not the ranking score, which is deliberately not exposed.
minimum: 0
The submission's AT-URI. This is the stable identifier; do not key on anything else.
View raw schema
{
"type": "object",
"required": [
"uri",
"author",
"record",
"indexedAt"
],
"properties": {
"cid": {
"type": "string",
"format": "cid",
"description": "CID of the exact revision indexed. Absent for a record indexed before its CID was known."
},
"uri": {
"type": "string",
"format": "at-uri",
"description": "The submission's AT-URI. This is the stable identifier; do not key on anything else."
},
"tags": {
"type": "array",
"items": {
"type": "string",
"maxLength": 128
},
"description": "Tags from this board's curated vocabulary. The record may claim others; those are not echoed here."
},
"author": {
"ref": "#actorView",
"type": "ref",
"description": "Who submitted it."
},
"record": {
"type": "unknown",
"description": "The pub.oysters.post record, rebuilt from the indexed fields. Fields this board does not index are not echoed; fetch the record from the author's repository if you need it byte-for-byte."
},
"indexedAt": {
"type": "string",
"format": "datetime",
"description": "When this board first saw the record. Ranking uses this rather than the record's own createdAt, which its author chose."
},
"upvoteCount": {
"type": "integer",
"minimum": 0,
"description": "Live upvotes. Not the ranking score, which is deliberately not exposed."
},
"commentCount": {
"type": "integer",
"minimum": 0,
"description": "Live comments, at any depth."
}
},
"description": "A submission with everything needed to render it: the record as written, its author, and the counts this board derived."
}
One tag in the board's curated vocabulary.
Properties
What the tag is for.
maxLength: 1024 bytes
The tag's display name.
maxLength: 256 bytes
The tag as it appears in a record and in /t/ URLs.
maxLength: 128 bytes
View raw schema
{
"type": "object",
"required": [
"slug",
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 256,
"description": "The tag's display name."
},
"slug": {
"type": "string",
"maxLength": 128,
"description": "The tag as it appears in a record and in /t/ URLs."
},
"description": {
"type": "string",
"maxLength": 1024,
"description": "What the tag is for."
}
},
"description": "One tag in the board's curated vocabulary."
}
A submission and its whole discussion.
Properties
The submission the discussion is about.
Top-level comments, each with their own replies.
View raw schema
{
"type": "object",
"required": [
"post"
],
"properties": {
"post": {
"ref": "#postView",
"type": "ref",
"description": "The submission the discussion is about."
},
"replies": {
"type": "array",
"items": {
"ref": "#threadViewComment",
"type": "ref"
},
"description": "Top-level comments, each with their own replies."
}
},
"description": "A submission and its whole discussion."
}