com.getorbyt.community.defs

getorbyt.com

Schema Diff

+321 -1

From

CID
bafyreig2tntxwmr...
Indexed At
2026-09-01 05:23 UTC
View this version

To

CID
bafyreidyrybnxxu...
Indexed At
2026-09-17 13:18 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

27 breaking changes, 77 non-breaking changes.

Breaking Changes (27)
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.authorDid", kind: "prop", name: Some("authorDid") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.community", kind: "prop", name: Some("community") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.createdAt", kind: "prop", name: Some("createdAt") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.removalActionId", kind: "prop", name: Some("removalActionId") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.status", kind: "prop", name: Some("status") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.post", kind: "prop", name: Some("post") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.text", kind: "prop", name: Some("text") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.id", kind: "prop", name: Some("id") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#auditEvent", src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.id", kind: "prop", name: Some("id") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#auditEvent", src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.community", kind: "prop", name: Some("community") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#auditEvent", src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.createdAt", kind: "prop", name: Some("createdAt") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#auditEvent", src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.kind", kind: "prop", name: Some("kind") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#auditEvent", src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.actorDid", kind: "prop", name: Some("actorDid") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.toDid", kind: "prop", name: Some("toDid") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.status", kind: "prop", name: Some("status") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.community", kind: "prop", name: Some("community") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.createdAt", kind: "prop", name: Some("createdAt") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.expiresAt", kind: "prop", name: Some("expiresAt") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.id", kind: "prop", name: Some("id") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.fromDid", kind: "prop", name: Some("fromDid") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.status", kind: "prop", name: Some("status") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.createdAt", kind: "prop", name: Some("createdAt") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.community", kind: "prop", name: Some("community") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.id", kind: "prop", name: Some("id") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.reporterDid", kind: "prop", name: Some("reporterDid") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.post", kind: "prop", name: Some("post") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.reason", kind: "prop", name: Some("reason") }
Non-Breaking Changes (77)
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.authorDid" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.community" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.createdAt" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.id" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.post" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.removalActionId" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.resolution" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.resolutionNote" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.resolvedAt" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.resolvedByDid" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.status" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.text" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.actorDid" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.community" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.createdAt" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.id" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.kind" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.subjectDid" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.subjectUri" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.summary" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#feedItem.playbackToken" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#feedItem.removalActionId" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.community" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.createdAt" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.id" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.post" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.reason" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.reporterDid" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.resolution" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.resolutionNote" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.resolvedAt" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.resolvedByDid" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.status" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.cancelledByDid" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.community" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.createdAt" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.expiresAt" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.fromDid" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.id" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.replacementDeclarationUri" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.status" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.toDid" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.updatedAt" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#view.access" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#view.avatarFallback" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#view.avatarVideo" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#view.declarationUri" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#view.publicationState" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#view.viewerActions" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.defs#view.viewerActions:items" }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.resolution", kind: "prop", name: Some("resolution") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.resolutionNote", kind: "prop", name: Some("resolutionNote") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.resolvedAt", kind: "prop", name: Some("resolvedAt") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.resolvedByDid", kind: "prop", name: Some("resolvedByDid") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.subjectDid", kind: "prop", name: Some("subjectDid") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.subjectUri", kind: "prop", name: Some("subjectUri") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.summary", kind: "prop", name: Some("summary") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#feedItem", tgt: "com.getorbyt.community.defs#feedItem.playbackToken", kind: "prop", name: Some("playbackToken") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#feedItem", tgt: "com.getorbyt.community.defs#feedItem.removalActionId", kind: "prop", name: Some("removalActionId") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.resolution", kind: "prop", name: Some("resolution") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.resolutionNote", kind: "prop", name: Some("resolutionNote") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.resolvedAt", kind: "prop", name: Some("resolvedAt") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.resolvedByDid", kind: "prop", name: Some("resolvedByDid") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.cancelledByDid", kind: "prop", name: Some("cancelledByDid") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.replacementDeclarationUri", kind: "prop", name: Some("replacementDeclarationUri") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.updatedAt", kind: "prop", name: Some("updatedAt") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#view", tgt: "com.getorbyt.community.defs#view.access", kind: "prop", name: Some("access") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#view", tgt: "com.getorbyt.community.defs#view.avatarFallback", kind: "prop", name: Some("avatarFallback") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#view", tgt: "com.getorbyt.community.defs#view.avatarVideo", kind: "prop", name: Some("avatarVideo") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#view", tgt: "com.getorbyt.community.defs#view.declarationUri", kind: "prop", name: Some("declarationUri") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#view", tgt: "com.getorbyt.community.defs#view.publicationState", kind: "prop", name: Some("publicationState") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#view", tgt: "com.getorbyt.community.defs#view.viewerActions", kind: "prop", name: Some("viewerActions") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.defs#view.viewerActions", tgt: "com.getorbyt.community.defs#view.viewerActions:items", kind: "items", name: None }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.authorDid" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.community" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.createdAt" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.id" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.post" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.removalActionId" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.resolution" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.resolutionNote" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.resolvedAt" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.resolvedByDid" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.status" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#appealView.text" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.actorDid" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.community" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.createdAt" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.id" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.kind" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.subjectDid" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.subjectUri" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#auditEvent.summary" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#feedItem.playbackToken" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#feedItem.removalActionId" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.community" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.createdAt" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.id" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.post" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.reason" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.reporterDid" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.resolution" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.resolutionNote" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.resolvedAt" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.resolvedByDid" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#reportView.status" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.cancelledByDid" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.community" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.createdAt" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.expiresAt" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.fromDid" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.id" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.replacementDeclarationUri" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.status" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.toDid" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#transferView.updatedAt" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#view.access" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#view.avatarFallback" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#view.avatarVideo" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#view.declarationUri" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#view.publicationState" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#view.viewerActions" }
  • AddedVertex { vertex_id: "com.getorbyt.community.defs#view.viewerActions:items" }

Additional Notes

  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#auditEvent", src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.id", kind: "prop", name: Some("id") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#auditEvent", src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.community", kind: "prop", name: Some("community") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#auditEvent", src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.createdAt", kind: "prop", name: Some("createdAt") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#auditEvent", src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.kind", kind: "prop", name: Some("kind") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#auditEvent", src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.actorDid", kind: "prop", name: Some("actorDid") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.status", kind: "prop", name: Some("status") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.createdAt", kind: "prop", name: Some("createdAt") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.community", kind: "prop", name: Some("community") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.id", kind: "prop", name: Some("id") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.reporterDid", kind: "prop", name: Some("reporterDid") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.post", kind: "prop", name: Some("post") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#reportView", src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.reason", kind: "prop", name: Some("reason") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.authorDid", kind: "prop", name: Some("authorDid") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.community", kind: "prop", name: Some("community") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.createdAt", kind: "prop", name: Some("createdAt") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.removalActionId", kind: "prop", name: Some("removalActionId") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.status", kind: "prop", name: Some("status") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.post", kind: "prop", name: Some("post") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.text", kind: "prop", name: Some("text") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#appealView", src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.id", kind: "prop", name: Some("id") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.toDid", kind: "prop", name: Some("toDid") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.status", kind: "prop", name: Some("status") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.community", kind: "prop", name: Some("community") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.createdAt", kind: "prop", name: Some("createdAt") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.expiresAt", kind: "prop", name: Some("expiresAt") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.id", kind: "prop", name: Some("id") }
  • Breaking: RequiredEdgeAdded { vertex_id: "com.getorbyt.community.defs#transferView", src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.fromDid", kind: "prop", name: Some("fromDid") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.resolution", kind: "prop", name: Some("resolution") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.resolutionNote", kind: "prop", name: Some("resolutionNote") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.resolvedAt", kind: "prop", name: Some("resolvedAt") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#appealView", tgt: "com.getorbyt.community.defs#appealView.resolvedByDid", kind: "prop", name: Some("resolvedByDid") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.subjectDid", kind: "prop", name: Some("subjectDid") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.subjectUri", kind: "prop", name: Some("subjectUri") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#auditEvent", tgt: "com.getorbyt.community.defs#auditEvent.summary", kind: "prop", name: Some("summary") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#feedItem", tgt: "com.getorbyt.community.defs#feedItem.playbackToken", kind: "prop", name: Some("playbackToken") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#feedItem", tgt: "com.getorbyt.community.defs#feedItem.removalActionId", kind: "prop", name: Some("removalActionId") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.resolution", kind: "prop", name: Some("resolution") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.resolutionNote", kind: "prop", name: Some("resolutionNote") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.resolvedAt", kind: "prop", name: Some("resolvedAt") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#reportView", tgt: "com.getorbyt.community.defs#reportView.resolvedByDid", kind: "prop", name: Some("resolvedByDid") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.cancelledByDid", kind: "prop", name: Some("cancelledByDid") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.replacementDeclarationUri", kind: "prop", name: Some("replacementDeclarationUri") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#transferView", tgt: "com.getorbyt.community.defs#transferView.updatedAt", kind: "prop", name: Some("updatedAt") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#view", tgt: "com.getorbyt.community.defs#view.access", kind: "prop", name: Some("access") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#view", tgt: "com.getorbyt.community.defs#view.avatarFallback", kind: "prop", name: Some("avatarFallback") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#view", tgt: "com.getorbyt.community.defs#view.avatarVideo", kind: "prop", name: Some("avatarVideo") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#view", tgt: "com.getorbyt.community.defs#view.declarationUri", kind: "prop", name: Some("declarationUri") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#view", tgt: "com.getorbyt.community.defs#view.publicationState", kind: "prop", name: Some("publicationState") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#view", tgt: "com.getorbyt.community.defs#view.viewerActions", kind: "prop", name: Some("viewerActions") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.defs#view.viewerActions", tgt: "com.getorbyt.community.defs#view.viewerActions:items", kind: "items", name: None }
1 1
{
2 2
  "id": "com.getorbyt.community.defs",
3 3
  "defs": {
4 4
    "rule": {
5 5
      "type": "object",
6 6
      "required": [
7 7
        "text"
8 8
      ],
9 9
      "properties": {
10 10
        "text": {
11 11
          "type": "string",
12 12
          "maxLength": 500
13 13
        }
14 14
      },
15 15
      "description": "One Community rule. An object rather than a bare string so a title, an ordinal or a createdAt can be added later without a schema break."
16 16
    },
17 17
    "view": {
18 18
      "type": "object",
19 19
      "required": [
20 20
        "uri",
21 21
        "cid",
22 22
        "name",
23 23
        "ownerDid",
24 24
        "createdAt"
25 25
      ],
26 26
      "properties": {
27 27
        "cid": {
28 28
          "type": "string",
29 29
          "format": "cid"
30 30
        },
31 31
        "uri": {
32 32
          "type": "string",
33 33
          "format": "at-uri"
34 34
        },
35 35
        "name": {
36 36
          "type": "string",
37 37
          "maxLength": 63,
38 38
          "minLength": 2
39 39
        },
40 40
        "rules": {
41 41
          "type": "array",
42 42
          "items": {
43 43
            "ref": "#rule",
44 44
            "type": "ref"
45 45
          },
46 46
          "maxLength": 20
47 47
        },
48 +
        "access": {
49 +
          "type": "string",
50 +
          "description": "How Community content is accessed. Public is the only enabled value; clients must fail closed for unknown values.",
51 +
          "knownValues": [
52 +
            "public"
53 +
          ]
54 +
        },
48 55
        "avatar": {
49 56
          "type": "string",
50 -
          "format": "uri"
57 +
          "format": "uri",
58 +
          "description": "The Community's artwork as an image. Animated where the source was, and the only artwork field a client without a video player should read."
51 59
        },
52 60
        "labels": {
53 61
          "type": "array",
54 62
          "items": {
55 63
            "ref": "com.atproto.label.defs#label",
56 64
            "type": "ref"
57 65
          },
58 66
          "description": "Labels applied to this Community. Clients moderate against these exactly as they do app.bsky.feed.defs#postView labels."
59 67
        },
60 68
        "viewer": {
61 69
          "ref": "#viewerState",
62 70
          "type": "ref"
63 71
        },
64 72
        "ownerDid": {
65 73
          "type": "string",
66 74
          "format": "did",
67 75
          "description": "The account whose repository holds the Community declaration record. Clients hydrate it to a profile through their authenticated Bluesky AppView."
68 76
        },
69 77
        "createdAt": {
70 78
          "type": "string",
71 79
          "format": "datetime"
72 80
        },
73 81
        "postCount": {
74 82
          "type": "integer",
75 83
          "minimum": 0
76 84
        },
77 85
        "updatedAt": {
78 86
          "type": "string",
79 87
          "format": "datetime"
80 88
        },
81 89
        "postPolicy": {
82 90
          "type": "string",
83 91
          "description": "The raw value its owner wrote, not the value this service resolved. Absent means anyone, which is also how a server that predates this field behaves.",
84 92
          "knownValues": [
85 93
            "anyone",
86 94
            "members",
87 95
            "moderators"
88 96
          ]
89 97
        },
90 98
        "accentColor": {
91 99
          "type": "string",
92 100
          "maxLength": 32
93 101
        },
102 +
        "avatarVideo": {
103 +
          "type": "string",
104 +
          "format": "uri",
105 +
          "description": "A looping, silent MP4 rendition of the same artwork, when the owner supplied one. Clients that can play video use it for a full-bleed header and fall back to `avatar`; clients that cannot ignore it. It never replaces `avatar`, which stays the still or animated image every surface that is not a video player renders."
106 +
        },
94 107
        "description": {
95 108
          "type": "string",
96 109
          "maxLength": 2000
97 110
        },
98 111
        "memberCount": {
99 112
          "type": "integer",
100 113
          "minimum": 0
114 +
        },
115 +
        "viewerActions": {
116 +
          "type": "array",
117 +
          "items": {
118 +
            "type": "string",
119 +
            "knownValues": [
120 +
              "edit",
121 +
              "unpublish",
122 +
              "publish",
123 +
              "transfer",
124 +
              "delete",
125 +
              "view-reports",
126 +
              "view-audit-log"
127 +
            ]
128 +
          },
129 +
          "maxLength": 32,
130 +
          "description": "Actions the authenticated viewer may perform, decided by the service. Clients render only recognized values and infer nothing from role."
131 +
        },
132 +
        "avatarFallback": {
133 +
          "type": "string",
134 +
          "format": "uri",
135 +
          "description": "A still JPEG or WebP rendition of avatar for constrained or reduced-data connections. Full-capability clients continue to prefer avatar for animated image surfaces."
136 +
        },
137 +
        "declarationUri": {
138 +
          "type": "string",
139 +
          "format": "at-uri",
140 +
          "description": "The live declaration record. Absent means it is the same as uri."
141 +
        },
142 +
        "publicationState": {
143 +
          "type": "string",
144 +
          "description": "Service-owned lifecycle state. Absent means published. Unknown values must be treated as unavailable.",
145 +
          "knownValues": [
146 +
            "published",
147 +
            "unpublished",
148 +
            "deleting",
149 +
            "deleted"
150 +
          ]
101 151
        }
102 152
      },
103 153
      "description": "A hydrated Community. Only the fields that identify the Community are required; counts and viewer state are optional so a cheaper view can omit them without a schema break."
104 154
    },
105 155
    "feedItem": {
106 156
      "type": "object",
107 157
      "required": [
108 158
        "post"
109 159
      ],
110 160
      "properties": {
111 161
        "post": {
112 162
          "type": "string",
113 163
          "format": "at-uri",
114 164
          "description": "The linked app.bsky.feed.post URI. Clients hydrate it through their authenticated Bluesky AppView."
115 165
        },
116 166
        "pinned": {
117 167
          "type": "boolean",
118 168
          "default": false
119 169
        },
120 170
        "status": {
121 171
          "type": "string",
122 172
          "description": "Community-level state; absent means visible. `removed` is a moderator removal scoped to this Community; the underlying app.bsky.feed.post remains live on the network. Only the author and Community moderators receive removed items.",
123 173
          "knownValues": [
124 174
            "visible",
125 175
            "removed"
126 176
          ]
127 177
        },
128 178
        "removedAt": {
129 179
          "type": "string",
130 180
          "format": "datetime"
131 181
        },
132 182
        "removedBy": {
133 183
          "type": "string",
134 184
          "format": "did"
135 185
        },
186 +
        "playbackToken": {
187 +
          "type": "string",
188 +
          "description": "Server-issued, viewer-bound token proving this item was served to this viewer for this post. Clients pass it back to com.getorbyt.video.recordLoop after a completed playback."
189 +
        },
136 190
        "removedReason": {
137 191
          "type": "string",
138 192
          "maxLength": 1000,
139 193
          "description": "Present only for the post author and Community moderators."
194 +
        },
195 +
        "removalActionId": {
196 +
          "type": "string",
197 +
          "maxLength": 128,
198 +
          "description": "Stable identifier for this specific removal. Present to the author and moderators and used to bind one appeal to one removal."
199 +
        }
200 +
      }
201 +
    },
202 +
    "appealView": {
203 +
      "type": "object",
204 +
      "required": [
205 +
        "id",
206 +
        "community",
207 +
        "post",
208 +
        "removalActionId",
209 +
        "authorDid",
210 +
        "text",
211 +
        "status",
212 +
        "createdAt"
213 +
      ],
214 +
      "properties": {
215 +
        "id": {
216 +
          "type": "string",
217 +
          "maxLength": 128
218 +
        },
219 +
        "post": {
220 +
          "type": "string",
221 +
          "format": "at-uri"
222 +
        },
223 +
        "text": {
224 +
          "type": "string",
225 +
          "maxLength": 2000
226 +
        },
227 +
        "status": {
228 +
          "type": "string",
229 +
          "knownValues": [
230 +
            "open",
231 +
            "resolved"
232 +
          ]
233 +
        },
234 +
        "authorDid": {
235 +
          "type": "string",
236 +
          "format": "did"
237 +
        },
238 +
        "community": {
239 +
          "type": "string",
240 +
          "format": "at-uri"
241 +
        },
242 +
        "createdAt": {
243 +
          "type": "string",
244 +
          "format": "datetime"
245 +
        },
246 +
        "resolution": {
247 +
          "type": "string",
248 +
          "knownValues": [
249 +
            "upheld",
250 +
            "restored"
251 +
          ]
252 +
        },
253 +
        "resolvedAt": {
254 +
          "type": "string",
255 +
          "format": "datetime"
256 +
        },
257 +
        "resolvedByDid": {
258 +
          "type": "string",
259 +
          "format": "did"
260 +
        },
261 +
        "resolutionNote": {
262 +
          "type": "string",
263 +
          "maxLength": 2000
264 +
        },
265 +
        "removalActionId": {
266 +
          "type": "string",
267 +
          "maxLength": 128
268 +
        }
269 +
      }
270 +
    },
271 +
    "auditEvent": {
272 +
      "type": "object",
273 +
      "required": [
274 +
        "id",
275 +
        "community",
276 +
        "kind",
277 +
        "actorDid",
278 +
        "createdAt"
279 +
      ],
280 +
      "properties": {
281 +
        "id": {
282 +
          "type": "string",
283 +
          "maxLength": 128
284 +
        },
285 +
        "kind": {
286 +
          "type": "string",
287 +
          "knownValues": [
288 +
            "published",
289 +
            "unpublished",
290 +
            "deletion-begun",
291 +
            "deletion-cancelled",
292 +
            "deleted",
293 +
            "transfer-invited",
294 +
            "transfer-accepted",
295 +
            "transfer-cancelled",
296 +
            "transfer-completed",
297 +
            "member-role-changed",
298 +
            "member-muted",
299 +
            "member-unmuted",
300 +
            "member-banned",
301 +
            "member-unbanned",
302 +
            "post-removed",
303 +
            "post-restored",
304 +
            "post-pinned",
305 +
            "post-unpinned",
306 +
            "report-created",
307 +
            "report-resolved",
308 +
            "appeal-created",
309 +
            "appeal-resolved"
310 +
          ]
311 +
        },
312 +
        "summary": {
313 +
          "type": "string",
314 +
          "maxLength": 2000
315 +
        },
316 +
        "actorDid": {
317 +
          "type": "string",
318 +
          "format": "did"
319 +
        },
320 +
        "community": {
321 +
          "type": "string",
322 +
          "format": "at-uri"
323 +
        },
324 +
        "createdAt": {
325 +
          "type": "string",
326 +
          "format": "datetime"
327 +
        },
328 +
        "subjectDid": {
329 +
          "type": "string",
330 +
          "format": "did"
331 +
        },
332 +
        "subjectUri": {
333 +
          "type": "string",
334 +
          "format": "at-uri"
140 335
        }
141 336
      }
142 337
    },
143 338
    "memberView": {
144 339
      "type": "object",
145 340
      "required": [
146 341
        "did"
147 342
      ],
148 343
      "properties": {
149 344
        "did": {
150 345
          "type": "string",
151 346
          "format": "did"
152 347
        },
153 348
        "role": {
154 349
          "type": "string",
155 350
          "description": "Absent means member.",
156 351
          "knownValues": [
157 352
            "owner",
158 353
            "moderator",
159 354
            "member"
160 355
          ]
161 356
        },
162 357
        "status": {
163 358
          "type": "string",
164 359
          "description": "Absent means active.",
165 360
          "knownValues": [
166 361
            "active",
167 362
            "muted",
168 363
            "banned"
169 364
          ]
170 365
        },
171 366
        "joinedAt": {
172 367
          "type": "string",
173 368
          "format": "datetime"
174 369
        },
175 370
        "membershipUri": {
176 371
          "type": "string",
177 372
          "format": "at-uri"
178 373
        },
179 374
        "viewerActions": {
180 375
          "type": "array",
181 376
          "items": {
182 377
            "type": "string",
183 378
            "knownValues": [
184 379
              "setRole",
185 380
              "mute",
186 381
              "unmute",
187 382
              "ban",
188 383
              "unban"
189 384
            ]
190 385
          },
191 386
          "maxLength": 16,
192 387
          "description": "The manageMember actions this viewer may take on this member, decided by the service. A client renders only the values it recognises and offers nothing else, so a change to who may do what reaches installed clients without a release. Absent means the service predates this field, not that no action is permitted — a client should fall back to its own rules only then."
193 388
        }
194 389
      }
195 390
    },
391 +
    "reportView": {
392 +
      "type": "object",
393 +
      "required": [
394 +
        "id",
395 +
        "community",
396 +
        "post",
397 +
        "reporterDid",
398 +
        "reason",
399 +
        "status",
400 +
        "createdAt"
401 +
      ],
402 +
      "properties": {
403 +
        "id": {
404 +
          "type": "string",
405 +
          "maxLength": 128
406 +
        },
407 +
        "post": {
408 +
          "type": "string",
409 +
          "format": "at-uri"
410 +
        },
411 +
        "reason": {
412 +
          "type": "string",
413 +
          "maxLength": 2000
414 +
        },
415 +
        "status": {
416 +
          "type": "string",
417 +
          "knownValues": [
418 +
            "open",
419 +
            "resolved"
420 +
          ]
421 +
        },
422 +
        "community": {
423 +
          "type": "string",
424 +
          "format": "at-uri"
425 +
        },
426 +
        "createdAt": {
427 +
          "type": "string",
428 +
          "format": "datetime"
429 +
        },
430 +
        "resolution": {
431 +
          "type": "string",
432 +
          "knownValues": [
433 +
            "removed",
434 +
            "dismissed"
435 +
          ]
436 +
        },
437 +
        "resolvedAt": {
438 +
          "type": "string",
439 +
          "format": "datetime"
440 +
        },
441 +
        "reporterDid": {
442 +
          "type": "string",
443 +
          "format": "did"
444 +
        },
445 +
        "resolvedByDid": {
446 +
          "type": "string",
447 +
          "format": "did"
448 +
        },
449 +
        "resolutionNote": {
450 +
          "type": "string",
451 +
          "maxLength": 2000
452 +
        }
453 +
      }
454 +
    },
196 455
    "viewerState": {
197 456
      "type": "object",
198 457
      "properties": {
199 458
        "role": {
200 459
          "type": "string",
201 460
          "knownValues": [
202 461
            "owner",
203 462
            "moderator",
204 463
            "member"
205 464
          ]
206 465
        },
207 466
        "canPost": {
208 467
          "type": "boolean",
209 468
          "default": false
210 469
        },
211 470
        "canManage": {
212 471
          "type": "boolean",
213 472
          "default": false
214 473
        },
215 474
        "canModerate": {
216 475
          "type": "boolean",
217 476
          "default": false
218 477
        },
219 478
        "membershipUri": {
220 479
          "type": "string",
221 480
          "format": "at-uri"
222 481
        },
223 482
        "canAssignRoles": {
224 483
          "type": "boolean",
225 484
          "default": false,
226 485
          "description": "Whether this viewer may promote or demote another member. Separate from canManage, which is authority over the declaration record itself and belongs only to the repository that holds it. A service may grant administration to an account that does not hold the record."
227 486
        },
228 487
        "membershipStatus": {
229 488
          "type": "string",
230 489
          "description": "Absent means none.",
231 490
          "knownValues": [
232 491
            "none",
233 492
            "active",
234 493
            "muted",
235 494
            "banned"
236 495
          ]
237 496
        },
238 497
        "canListRestrictedMembers": {
239 498
          "type": "boolean",
240 499
          "default": false,
241 500
          "description": "Whether listMembers will answer this viewer for a status other than active. Stated rather than inferred from canModerate so the rule can change without a client release; a client that predates this field may fall back to canModerate."
242 501
        }
243 502
      },
244 503
      "description": "The requesting account's relationship to a Community. Every field is optional; an absent field means the viewer holds no membership and no privilege."
245 504
    },
246 505
    "writeStatus": {
247 506
      "type": "object",
248 507
      "required": [
249 508
        "uri",
250 509
        "status"
251 510
      ],
252 511
      "properties": {
253 512
        "uri": {
254 513
          "type": "string",
255 514
          "format": "at-uri"
256 515
        },
257 516
        "error": {
258 517
          "type": "string",
259 518
          "maxLength": 1000,
260 519
          "description": "Why the record was rejected. Present only for `rejected`."
261 520
        },
262 521
        "status": {
263 522
          "type": "string",
264 523
          "description": "`pending` means the record has not reached this service yet, which is the normal state for a few seconds after a write. `rejected` means it will never be indexed as written.",
265 524
          "knownValues": [
266 525
            "indexed",
267 526
            "pending",
268 527
            "rejected",
269 528
            "deleted"
270 529
          ]
271 530
        },
272 531
        "indexedAt": {
273 532
          "type": "string",
274 533
          "format": "datetime"
275 534
        }
276 535
      },
277 536
      "description": "The fate of one record the caller wrote to their own repository."
537 +
    },
538 +
    "transferView": {
539 +
      "type": "object",
540 +
      "required": [
541 +
        "id",
542 +
        "community",
543 +
        "fromDid",
544 +
        "toDid",
545 +
        "status",
546 +
        "expiresAt",
547 +
        "createdAt"
548 +
      ],
549 +
      "properties": {
550 +
        "id": {
551 +
          "type": "string",
552 +
          "maxLength": 128
553 +
        },
554 +
        "toDid": {
555 +
          "type": "string",
556 +
          "format": "did"
557 +
        },
558 +
        "status": {
559 +
          "type": "string",
560 +
          "knownValues": [
561 +
            "pending",
562 +
            "accepted",
563 +
            "completed",
564 +
            "cancelled",
565 +
            "expired"
566 +
          ]
567 +
        },
568 +
        "fromDid": {
569 +
          "type": "string",
570 +
          "format": "did"
571 +
        },
572 +
        "community": {
573 +
          "type": "string",
574 +
          "format": "at-uri"
575 +
        },
576 +
        "createdAt": {
577 +
          "type": "string",
578 +
          "format": "datetime"
579 +
        },
580 +
        "expiresAt": {
581 +
          "type": "string",
582 +
          "format": "datetime"
583 +
        },
584 +
        "updatedAt": {
585 +
          "type": "string",
586 +
          "format": "datetime"
587 +
        },
588 +
        "cancelledByDid": {
589 +
          "type": "string",
590 +
          "format": "did",
591 +
          "description": "Who ended the invitation. Present only once status is cancelled, and the one thing that tells a withdrawal by the inviting account apart from a decline by the invited one."
592 +
        },
593 +
        "replacementDeclarationUri": {
594 +
          "type": "string",
595 +
          "format": "at-uri"
596 +
        }
597 +
      }
278 598
    }
279 599
  },
280 600
  "$type": "com.atproto.lexicon.schema",
281 601
  "lexicon": 1
282 602
}

Compare Other Versions

Lexicon Garden

@