app.thesocialwire.preferences

samclemente.me

Documentation

Account-level preferences for The Social Wire. This record stores non-sensitive preferences only; third-party access tokens and secrets must not be stored in ATProto repos.

main record

Account-level preferences for The Social Wire. This record stores non-sensitive preferences only; third-party access tokens and secrets must not be stored in ATProto repos.

Record Key literal:self Fixed literal value

Properties

createdAt string datetime Required

ISO 8601 timestamp when this preferences record was created.

maxLength: 64 bytes
feedsWithUnreadCounts array of string Optional

Top-level reader feeds whose unread badges are shown. Values should also appear in visibleFeeds.

readLaterConnections object Optional

Non-sensitive connection metadata for read-later providers. Do not store API tokens, passwords, refresh tokens, or secrets here.

readLaterService string Optional

The read-later provider used by the /saved surface.

maxLength: 32 bytes
Known values: latr-link, latrkit, instapaper, omnivore, readwise-reader, raindrop
rssArticleOpenMode string Optional

Whether RSS articles open in The Social Wire's native feed-content reader or on the publisher's original site.

maxLength: 16 bytes
Known values: reader, original
showTopLevelFeedUnreadCounts boolean Optional

Legacy global switch for aggregate unread badges. New clients use feedsWithUnreadCounts.

updatedAt string datetime Required

ISO 8601 timestamp when this preferences record was last updated.

maxLength: 64 bytes
visibleFeeds array of string Optional

Ordered top-level reader feeds shown in clients. At least one value must be retained by clients.

View raw schema
{
  "key": "literal:self",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "createdAt",
      "updatedAt"
    ],
    "properties": {
      "createdAt": {
        "type": "string",
        "format": "datetime",
        "maxLength": 64,
        "description": "ISO 8601 timestamp when this preferences record was created."
      },
      "updatedAt": {
        "type": "string",
        "format": "datetime",
        "maxLength": 64,
        "description": "ISO 8601 timestamp when this preferences record was last updated."
      },
      "visibleFeeds": {
        "type": "array",
        "items": {
          "type": "string",
          "maxLength": 32,
          "knownValues": [
            "readLater",
            "archive",
            "subscribed",
            "following"
          ]
        },
        "description": "Ordered top-level reader feeds shown in clients. At least one value must be retained by clients."
      },
      "readLaterService": {
        "type": "string",
        "maxLength": 32,
        "description": "The read-later provider used by the /saved surface.",
        "knownValues": [
          "latr-link",
          "latrkit",
          "instapaper",
          "omnivore",
          "readwise-reader",
          "raindrop"
        ]
      },
      "rssArticleOpenMode": {
        "type": "string",
        "maxLength": 16,
        "description": "Whether RSS articles open in The Social Wire's native feed-content reader or on the publisher's original site.",
        "knownValues": [
          "reader",
          "original"
        ]
      },
      "readLaterConnections": {
        "type": "object",
        "properties": {
          "omnivore": {
            "ref": "#connection",
            "type": "ref"
          },
          "raindrop": {
            "ref": "#connection",
            "type": "ref"
          },
          "instapaper": {
            "ref": "#connection",
            "type": "ref"
          },
          "readwise-reader": {
            "ref": "#connection",
            "type": "ref"
          }
        },
        "description": "Non-sensitive connection metadata for read-later providers. Do not store API tokens, passwords, refresh tokens, or secrets here."
      },
      "feedsWithUnreadCounts": {
        "type": "array",
        "items": {
          "type": "string",
          "maxLength": 32,
          "knownValues": [
            "readLater",
            "archive",
            "subscribed",
            "following"
          ]
        },
        "description": "Top-level reader feeds whose unread badges are shown. Values should also appear in visibleFeeds."
      },
      "showTopLevelFeedUnreadCounts": {
        "type": "boolean",
        "description": "Legacy global switch for aggregate unread badges. New clients use feedsWithUnreadCounts."
      }
    }
  },
  "description": "Account-level preferences for The Social Wire. This record stores non-sensitive preferences only; third-party access tokens and secrets must not be stored in ATProto repos."
}
connection object

Non-sensitive provider connection metadata.

Properties

accountLabel string Optional

User-visible account identifier, such as a username or email. Do not store credentials.

maxLength: 320 bytes
connectedAt string datetime Optional

ISO 8601 timestamp when the provider was connected.

maxLength: 64 bytes
View raw schema
{
  "type": "object",
  "properties": {
    "connectedAt": {
      "type": "string",
      "format": "datetime",
      "maxLength": 64,
      "description": "ISO 8601 timestamp when the provider was connected."
    },
    "accountLabel": {
      "type": "string",
      "maxLength": 320,
      "description": "User-visible account identifier, such as a username or email. Do not store credentials."
    }
  },
  "description": "Non-sensitive provider connection metadata."
}

Lexicon Garden

@