fyi.opensocial.defs

lexicons.opensocial.fyi

Documentation

actorView object

A person, as a view names them: their handle from their DID document, their name and face from the Bluesky profile in their own repo.

Properties

avatar string uri Optional

Served renderably by the host, at /img/actor/{did}/{cid}.

did string did Required

A decentralized identifier (DID).

displayName string Optional

No description available.

handle string handle Optional

An AT Protocol handle (e.g., alice.bsky.social).

View raw schema
{
  "description": "A person, as a view names them: their handle from their DID document, their name and face from the Bluesky profile in their own repo.",
  "properties": {
    "avatar": {
      "description": "Served renderably by the host, at /img/actor/{did}/{cid}.",
      "format": "uri",
      "type": "string"
    },
    "did": {
      "format": "did",
      "type": "string"
    },
    "displayName": {
      "type": "string"
    },
    "handle": {
      "format": "handle",
      "type": "string"
    }
  },
  "required": [
    "did"
  ],
  "type": "object"
}
eventView object

No description available.

Properties

actor string did Optional

A decentralized identifier (DID).

createdAt string datetime Required

An RFC 3339 formatted timestamp.

note string Optional

No description available.

reason string Optional

No description available.

reasonType string Optional

No description available.

type string Required

No description available.

Known values: report, label, negate, resolve, escalate, note, eject
val string Optional

No description available.

View raw schema
{
  "properties": {
    "actor": {
      "format": "did",
      "type": "string"
    },
    "createdAt": {
      "format": "datetime",
      "type": "string"
    },
    "note": {
      "type": "string"
    },
    "reason": {
      "type": "string"
    },
    "reasonType": {
      "type": "string"
    },
    "type": {
      "knownValues": [
        "report",
        "label",
        "negate",
        "resolve",
        "escalate",
        "note",
        "eject"
      ],
      "type": "string"
    },
    "val": {
      "type": "string"
    }
  },
  "required": [
    "type",
    "createdAt"
  ],
  "type": "object"
}
groupRule object

No description available.

Properties

createdAt string datetime Optional

An RFC 3339 formatted timestamp.

rkey string Required

No description available.

text string Optional

No description available.

title string Required

No description available.

View raw schema
{
  "properties": {
    "createdAt": {
      "format": "datetime",
      "type": "string"
    },
    "rkey": {
      "type": "string"
    },
    "text": {
      "type": "string"
    },
    "title": {
      "type": "string"
    }
  },
  "required": [
    "rkey",
    "title"
  ],
  "type": "object"
}
groupView object

No description available.

Properties

avatar string Optional

CID of the avatar blob; the host serves it at /img/{did}/avatar.

banner string Optional

CID of the banner blob; the host serves it at /img/{did}/banner.

deactivated boolean Optional

Set while a steward has the group switched off. Its spaces cannot be read until one of the stewards who could switch it off switches it back on.

description string Optional

No description available.

did string did Required

A decentralized identifier (DID).

displayName string Optional

No description available.

handle string handle Required

An AT Protocol handle (e.g., alice.bsky.social).

joinPolicy string Optional

How new members get in, as the profile states it.

members string space-ref Required

No description available.

meta string space-ref Required

No description available.

rules array of ref#groupRule Optional

No description available.

url string uri Optional

The group's own site, if it keeps one.

View raw schema
{
  "properties": {
    "avatar": {
      "description": "CID of the avatar blob; the host serves it at /img/{did}/avatar.",
      "type": "string"
    },
    "banner": {
      "description": "CID of the banner blob; the host serves it at /img/{did}/banner.",
      "type": "string"
    },
    "deactivated": {
      "description": "Set while a steward has the group switched off. Its spaces cannot be read until one of the stewards who could switch it off switches it back on.",
      "type": "boolean"
    },
    "description": {
      "type": "string"
    },
    "did": {
      "format": "did",
      "type": "string"
    },
    "displayName": {
      "type": "string"
    },
    "handle": {
      "format": "handle",
      "type": "string"
    },
    "joinPolicy": {
      "description": "How new members get in, as the profile states it.",
      "type": "string"
    },
    "members": {
      "format": "space-ref",
      "type": "string"
    },
    "meta": {
      "format": "space-ref",
      "type": "string"
    },
    "rules": {
      "items": {
        "ref": "#groupRule",
        "type": "ref"
      },
      "type": "array"
    },
    "url": {
      "description": "The group's own site, if it keeps one.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "did",
    "handle",
    "meta",
    "members"
  ],
  "type": "object"
}
groupViewDetailed object

A group in full, as the viewer may see it. Profile fields and rules are present only when the viewer may read the meta space.

Properties

avatar string Optional

CID of the avatar blob; the host serves it at /img/{did}/avatar.

banner string Optional

CID of the banner blob; the host serves it at /img/{did}/banner.

deactivated boolean Optional

Set while a steward has the group switched off. Its spaces cannot be read until one of the stewards who could switch it off switches it back on.

description string Optional

No description available.

did string did Required

A decentralized identifier (DID).

displayName string Optional

No description available.

handle string handle Required

An AT Protocol handle (e.g., alice.bsky.social).

joinPolicy string Optional

How new members get in, as the profile states it.

members string space-ref Required

No description available.

meta string space-ref Required

No description available.

rules array of ref#groupRule Optional

In the order they are presented. Absent when the meta space is closed to the viewer.

url string uri Optional

The group's own site, if it keeps one.

viewer ref #viewerState Optional

No description available.

View raw schema
{
  "description": "A group in full, as the viewer may see it. Profile fields and rules are present only when the viewer may read the meta space.",
  "properties": {
    "avatar": {
      "description": "CID of the avatar blob; the host serves it at /img/{did}/avatar.",
      "type": "string"
    },
    "banner": {
      "description": "CID of the banner blob; the host serves it at /img/{did}/banner.",
      "type": "string"
    },
    "deactivated": {
      "description": "Set while a steward has the group switched off. Its spaces cannot be read until one of the stewards who could switch it off switches it back on.",
      "type": "boolean"
    },
    "description": {
      "type": "string"
    },
    "did": {
      "format": "did",
      "type": "string"
    },
    "displayName": {
      "type": "string"
    },
    "handle": {
      "format": "handle",
      "type": "string"
    },
    "joinPolicy": {
      "description": "How new members get in, as the profile states it.",
      "type": "string"
    },
    "members": {
      "format": "space-ref",
      "type": "string"
    },
    "meta": {
      "format": "space-ref",
      "type": "string"
    },
    "rules": {
      "description": "In the order they are presented. Absent when the meta space is closed to the viewer.",
      "items": {
        "ref": "#groupRule",
        "type": "ref"
      },
      "type": "array"
    },
    "url": {
      "description": "The group's own site, if it keeps one.",
      "format": "uri",
      "type": "string"
    },
    "viewer": {
      "ref": "#viewerState",
      "type": "ref"
    }
  },
  "required": [
    "did",
    "handle",
    "meta",
    "members"
  ],
  "type": "object"
}
inviteView object

No description available.

Properties

createdAt string datetime Required

An RFC 3339 formatted timestamp.

expiresAt string datetime Optional

An RFC 3339 formatted timestamp.

invitee string did Required

A decentralized identifier (DID).

message string Optional

No description available.

uri string at-uri Required

An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).

View raw schema
{
  "properties": {
    "createdAt": {
      "format": "datetime",
      "type": "string"
    },
    "expiresAt": {
      "format": "datetime",
      "type": "string"
    },
    "invitee": {
      "format": "did",
      "type": "string"
    },
    "message": {
      "type": "string"
    },
    "uri": {
      "format": "at-uri",
      "type": "string"
    }
  },
  "required": [
    "uri",
    "invitee",
    "createdAt"
  ],
  "type": "object"
}
joinRequestView object

No description available.

Properties

actor ref #actorView Optional

Who is asking, as a view names them.

createdAt string datetime Required

An RFC 3339 formatted timestamp.

did string did Required

A decentralized identifier (DID).

invite string at-uri Optional

An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).

message string Optional

No description available.

View raw schema
{
  "properties": {
    "actor": {
      "description": "Who is asking, as a view names them.",
      "ref": "#actorView",
      "type": "ref"
    },
    "createdAt": {
      "format": "datetime",
      "type": "string"
    },
    "did": {
      "format": "did",
      "type": "string"
    },
    "invite": {
      "format": "at-uri",
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  },
  "required": [
    "did",
    "createdAt"
  ],
  "type": "object"
}
memberView object

No description available.

Properties

actor ref #actorView Required

No description available.

roles array of string Required

No description available.

View raw schema
{
  "properties": {
    "actor": {
      "ref": "#actorView",
      "type": "ref"
    },
    "roles": {
      "items": {
        "type": "string"
      },
      "type": "array"
    }
  },
  "required": [
    "actor",
    "roles"
  ],
  "type": "object"
}
roleView object

No description available.

Properties

description string Optional

No description available.

key string Required

The role id: its record key.

name string Optional

No description available.

View raw schema
{
  "properties": {
    "description": {
      "type": "string"
    },
    "key": {
      "description": "The role id: its record key.",
      "type": "string"
    },
    "name": {
      "type": "string"
    }
  },
  "required": [
    "key"
  ],
  "type": "object"
}
spaceView object

No description available.

Properties

name string Optional

No description available.

readableBy array of string Optional

The space's read gate, when the viewer may read the space.

type string nsid Required

A namespaced identifier (e.g., app.bsky.feed.post).

uri string space-ref Required

No description available.

View raw schema
{
  "properties": {
    "name": {
      "type": "string"
    },
    "readableBy": {
      "description": "The space's read gate, when the viewer may read the space.",
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "type": {
      "format": "nsid",
      "type": "string"
    },
    "uri": {
      "format": "space-ref",
      "type": "string"
    }
  },
  "required": [
    "uri",
    "type"
  ],
  "type": "object"
}
subjectView object

No description available.

Properties

createdAt string datetime Required

An RFC 3339 formatted timestamp.

lastReportedAt string datetime Optional

An RFC 3339 formatted timestamp.

reportCount integer Optional

No description available.

status string Required

No description available.

Known values: open, escalated, resolved
subject string uri Required

A record's at-uri, or an account's DID.

updatedAt string datetime Optional

An RFC 3339 formatted timestamp.

View raw schema
{
  "properties": {
    "createdAt": {
      "format": "datetime",
      "type": "string"
    },
    "lastReportedAt": {
      "format": "datetime",
      "type": "string"
    },
    "reportCount": {
      "type": "integer"
    },
    "status": {
      "knownValues": [
        "open",
        "escalated",
        "resolved"
      ],
      "type": "string"
    },
    "subject": {
      "description": "A record's at-uri, or an account's DID.",
      "format": "uri",
      "type": "string"
    },
    "updatedAt": {
      "format": "datetime",
      "type": "string"
    }
  },
  "required": [
    "subject",
    "status",
    "createdAt"
  ],
  "type": "object"
}
viewerState object

The requesting account's standing in the group. Only present for authed requests.

Properties

accepted boolean Optional

For a member: whether their own acceptance is in the members space.

member boolean Required

No description available.

request ref #joinRequestView Optional

The viewer's own pending request to join, when they are not a member and have one.

roles array of string Required

No description available.

View raw schema
{
  "description": "The requesting account's standing in the group. Only present for authed requests.",
  "properties": {
    "accepted": {
      "description": "For a member: whether their own acceptance is in the members space.",
      "type": "boolean"
    },
    "actions": {
      "description": "The union of actions across the viewer's roles: what the host would let them do.",
      "items": {
        "ref": "fyi.opensocial.permissions#action",
        "type": "ref"
      },
      "type": "array"
    },
    "member": {
      "type": "boolean"
    },
    "request": {
      "description": "The viewer's own pending request to join, when they are not a member and have one.",
      "ref": "#joinRequestView",
      "type": "ref"
    },
    "roles": {
      "items": {
        "type": "string"
      },
      "type": "array"
    }
  },
  "required": [
    "member",
    "roles",
    "actions"
  ],
  "type": "object"
}

Lexicon Garden

@