pub.oysters.post

oysters.pub

Documentation

A submission to an Oysters board: a link, a text post, or both.

main record

A submission to an Oysters board: a link, a text post, or both.

Record Key tid Timestamp-based ID

Properties

createdAt string datetime Required

When the author made the submission. Client-declared, so an appview ranks on its own receipt time.

langs array of string language Optional

BCP-47 language codes for title and text.

maxLength: 3 items
tags array of string Optional

Author-chosen topic tags, lowercased. Boards may recognise only a subset.

maxLength: 5 items
text string Optional

The body, in plain text. Present on text posts and on link posts that add context.

maxLength: 40000 bytesmaxGraphemes: 10000 graphemes
title string Required

The headline shown in the feed.

maxLength: 480 bytesminLength: 1 bytesmaxGraphemes: 120 graphemes
url string uri Optional

The link being submitted. A post carries a url, a text body, or both; the lexicon cannot express that either-or, so consumers must not assume url is present.

View raw schema
{
  "key": "tid",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "title",
      "createdAt"
    ],
    "properties": {
      "url": {
        "type": "string",
        "format": "uri",
        "description": "The link being submitted. A post carries a url, a text body, or both; the lexicon cannot express that either-or, so consumers must not assume url is present."
      },
      "tags": {
        "type": "array",
        "items": {
          "type": "string",
          "maxLength": 128,
          "minLength": 1,
          "maxGraphemes": 32
        },
        "maxLength": 5,
        "description": "Author-chosen topic tags, lowercased. Boards may recognise only a subset."
      },
      "text": {
        "type": "string",
        "maxLength": 40000,
        "description": "The body, in plain text. Present on text posts and on link posts that add context.",
        "maxGraphemes": 10000
      },
      "langs": {
        "type": "array",
        "items": {
          "type": "string",
          "format": "language"
        },
        "maxLength": 3,
        "description": "BCP-47 language codes for title and text."
      },
      "title": {
        "type": "string",
        "maxLength": 480,
        "minLength": 1,
        "description": "The headline shown in the feed.",
        "maxGraphemes": 120
      },
      "createdAt": {
        "type": "string",
        "format": "datetime",
        "description": "When the author made the submission. Client-declared, so an appview ranks on its own receipt time."
      }
    }
  },
  "description": "A submission to an Oysters board: a link, a text post, or both."
}

Lexicon Garden

@