openapi: 3.1.0 info: title: Bluesky Social Actor Profiles Conversations API description: "The Bluesky Social API provides programmatic access to the Bluesky social network built on the AT Protocol. \n\nThis API enables developers to:\n- Manage user profiles and preferences\n- Create, read, and interact with posts and feeds\n- Handle social graph operations (follows, blocks, mutes)\n- Process notifications and conversations\n- Moderate content and manage labels\n- Synchronize repository data\n\nAuthentication is handled via Bearer tokens. Public endpoints can be accessed directly at https://public.api.bsky.app, while authenticated requests should be made to the user's Personal Data Server (PDS).\n\nFor more information, visit the [Bluesky API Documentation](https://docs.bsky.app)." version: 1.0.0 contact: name: Bluesky Support url: https://bsky.app license: name: MIT url: https://opensource.org/licenses/MIT servers: - url: https://bsky.social/xrpc description: Bluesky Social PDS - url: https://public.api.bsky.app/xrpc description: Public Bluesky AppView API (unauthenticated endpoints) tags: - name: Conversations description: Operations for managing direct message conversations. paths: /xrpc/chat.bsky.convo.deleteMessageForSelf: post: operationId: chatConvoDeleteMessageForSelf summary: Bluesky Operation description: '*This endpoint is part of the Bluesky Chat (DMs) APIs. Requests usually require authentication, are directed to the user''s PDS intance, and proxied to the single central chat service by setting the appropriate service DID (`did:web:api.bsky.chat`) in the service proxying header.* *To learn more about calling atproto API endpoints like this one, see the [API Hosts and Auth](/docs/advanced-guides/api-directory) guide.*' tags: - Conversations x-microcks-operation: delay: 100 dispatcher: FALLBACK dispatcherRules: '' security: - Bearer: [] requestBody: required: true content: application/json: schema: type: object required: - convoId - messageId properties: convoId: type: string messageId: type: string examples: ChatConvoDeleteMessageForSelfRequestExample: $ref: '#/components/examples/ChatConvoDeleteMessageForSelfRequestExample' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ChatBskyConvoDefsDeletedMessageView' examples: ChatConvoDeleteMessageForSelfResponse200Example: $ref: '#/components/examples/ChatConvoDeleteMessageForSelfResponse200Example' '400': description: Bad Request content: application/json: schema: type: object required: - error - message properties: error: type: string enum: - InvalidRequest - ExpiredToken - InvalidToken message: type: string '401': description: Unauthorized content: application/json: schema: type: object required: - error - message properties: error: const: AuthMissing message: type: string /xrpc/chat.bsky.convo.getConvo: get: operationId: chatConvoGetConvo summary: Bluesky Operation description: '*This endpoint is part of the Bluesky Chat (DMs) APIs. Requests usually require authentication, are directed to the user''s PDS intance, and proxied to the single central chat service by setting the appropriate service DID (`did:web:api.bsky.chat`) in the service proxying header.* *To learn more about calling atproto API endpoints like this one, see the [API Hosts and Auth](/docs/advanced-guides/api-directory) guide.*' tags: - Conversations x-microcks-operation: delay: 100 dispatcher: FALLBACK dispatcherRules: '' security: - Bearer: [] parameters: - name: convoId in: query required: true schema: type: string example: example-convoId responses: '200': description: OK content: application/json: schema: type: object required: - convo properties: convo: $ref: '#/components/schemas/ChatBskyConvoDefsConvoView' examples: ChatConvoGetConvoResponse200Example: $ref: '#/components/examples/ChatConvoGetConvoResponse200Example' '400': description: Bad Request content: application/json: schema: type: object required: - error - message properties: error: type: string enum: - InvalidRequest - ExpiredToken - InvalidToken message: type: string '401': description: Unauthorized content: application/json: schema: type: object required: - error - message properties: error: const: AuthMissing message: type: string /xrpc/chat.bsky.convo.getConvoForMembers: get: operationId: chatConvoGetConvoForMembers summary: Bluesky Operation description: '*This endpoint is part of the Bluesky Chat (DMs) APIs. Requests usually require authentication, are directed to the user''s PDS intance, and proxied to the single central chat service by setting the appropriate service DID (`did:web:api.bsky.chat`) in the service proxying header.* *To learn more about calling atproto API endpoints like this one, see the [API Hosts and Auth](/docs/advanced-guides/api-directory) guide.*' tags: - Conversations x-microcks-operation: delay: 100 dispatcher: FALLBACK dispatcherRules: '' security: - Bearer: [] parameters: - name: members in: query required: true schema: type: array items: type: string format: did maxItems: 10 example: - did:plc:example123abc responses: '200': description: OK content: application/json: schema: type: object required: - convo properties: convo: $ref: '#/components/schemas/ChatBskyConvoDefsConvoView' examples: ChatConvoGetConvoForMembersResponse200Example: $ref: '#/components/examples/ChatConvoGetConvoForMembersResponse200Example' '400': description: Bad Request content: application/json: schema: type: object required: - error - message properties: error: type: string enum: - InvalidRequest - ExpiredToken - InvalidToken message: type: string '401': description: Unauthorized content: application/json: schema: type: object required: - error - message properties: error: const: AuthMissing message: type: string /xrpc/chat.bsky.convo.getLog: get: operationId: chatConvoGetLog summary: Bluesky Operation description: '*This endpoint is part of the Bluesky Chat (DMs) APIs. Requests usually require authentication, are directed to the user''s PDS intance, and proxied to the single central chat service by setting the appropriate service DID (`did:web:api.bsky.chat`) in the service proxying header.* *To learn more about calling atproto API endpoints like this one, see the [API Hosts and Auth](/docs/advanced-guides/api-directory) guide.*' tags: - Conversations x-microcks-operation: delay: 100 dispatcher: FALLBACK dispatcherRules: '' security: - Bearer: [] parameters: - name: cursor in: query required: false schema: type: string example: eyJsYXN0SWQiOiIxMjM0NTYifQ responses: '200': description: OK content: application/json: schema: type: object required: - logs properties: cursor: type: string logs: type: array items: oneOf: - $ref: '#/components/schemas/ChatBskyConvoDefsLogBeginConvo' - $ref: '#/components/schemas/ChatBskyConvoDefsLogLeaveConvo' - $ref: '#/components/schemas/ChatBskyConvoDefsLogCreateMessage' - $ref: '#/components/schemas/ChatBskyConvoDefsLogDeleteMessage' examples: ChatConvoGetLogResponse200Example: $ref: '#/components/examples/ChatConvoGetLogResponse200Example' '400': description: Bad Request content: application/json: schema: type: object required: - error - message properties: error: type: string enum: - InvalidRequest - ExpiredToken - InvalidToken message: type: string '401': description: Unauthorized content: application/json: schema: type: object required: - error - message properties: error: const: AuthMissing message: type: string /xrpc/chat.bsky.convo.getMessages: get: operationId: chatConvoGetMessages summary: Bluesky Operation description: '*This endpoint is part of the Bluesky Chat (DMs) APIs. Requests usually require authentication, are directed to the user''s PDS intance, and proxied to the single central chat service by setting the appropriate service DID (`did:web:api.bsky.chat`) in the service proxying header.* *To learn more about calling atproto API endpoints like this one, see the [API Hosts and Auth](/docs/advanced-guides/api-directory) guide.*' tags: - Conversations x-microcks-operation: delay: 100 dispatcher: FALLBACK dispatcherRules: '' security: - Bearer: [] parameters: - name: convoId in: query required: true schema: type: string example: example-convoId - name: limit in: query required: false schema: type: integer minimum: 1 maximum: 100 default: 50 example: 50 - name: cursor in: query required: false schema: type: string example: eyJsYXN0SWQiOiIxMjM0NTYifQ responses: '200': description: OK content: application/json: schema: type: object required: - messages properties: cursor: type: string messages: type: array items: oneOf: - $ref: '#/components/schemas/ChatBskyConvoDefsMessageView' - $ref: '#/components/schemas/ChatBskyConvoDefsDeletedMessageView' examples: ChatConvoGetMessagesResponse200Example: $ref: '#/components/examples/ChatConvoGetMessagesResponse200Example' '400': description: Bad Request content: application/json: schema: type: object required: - error - message properties: error: type: string enum: - InvalidRequest - ExpiredToken - InvalidToken message: type: string '401': description: Unauthorized content: application/json: schema: type: object required: - error - message properties: error: const: AuthMissing message: type: string /xrpc/chat.bsky.convo.leaveConvo: post: operationId: chatConvoLeaveConvo summary: Bluesky Operation description: '*This endpoint is part of the Bluesky Chat (DMs) APIs. Requests usually require authentication, are directed to the user''s PDS intance, and proxied to the single central chat service by setting the appropriate service DID (`did:web:api.bsky.chat`) in the service proxying header.* *To learn more about calling atproto API endpoints like this one, see the [API Hosts and Auth](/docs/advanced-guides/api-directory) guide.*' tags: - Conversations x-microcks-operation: delay: 100 dispatcher: FALLBACK dispatcherRules: '' security: - Bearer: [] requestBody: required: true content: application/json: schema: type: object required: - convoId properties: convoId: type: string examples: ChatConvoLeaveConvoRequestExample: $ref: '#/components/examples/ChatConvoLeaveConvoRequestExample' responses: '200': description: OK content: application/json: schema: type: object required: - convoId - rev properties: convoId: type: string rev: type: string examples: ChatConvoLeaveConvoResponse200Example: $ref: '#/components/examples/ChatConvoLeaveConvoResponse200Example' '400': description: Bad Request content: application/json: schema: type: object required: - error - message properties: error: type: string enum: - InvalidRequest - ExpiredToken - InvalidToken message: type: string '401': description: Unauthorized content: application/json: schema: type: object required: - error - message properties: error: const: AuthMissing message: type: string /xrpc/chat.bsky.convo.listConvos: get: operationId: chatConvoListConvos summary: Bluesky Operation description: '*This endpoint is part of the Bluesky Chat (DMs) APIs. Requests usually require authentication, are directed to the user''s PDS intance, and proxied to the single central chat service by setting the appropriate service DID (`did:web:api.bsky.chat`) in the service proxying header.* *To learn more about calling atproto API endpoints like this one, see the [API Hosts and Auth](/docs/advanced-guides/api-directory) guide.*' tags: - Conversations x-microcks-operation: delay: 100 dispatcher: FALLBACK dispatcherRules: '' security: - Bearer: [] parameters: - name: limit in: query required: false schema: type: integer minimum: 1 maximum: 100 default: 50 example: 50 - name: cursor in: query required: false schema: type: string example: eyJsYXN0SWQiOiIxMjM0NTYifQ responses: '200': description: OK content: application/json: schema: type: object required: - convos properties: cursor: type: string convos: type: array items: $ref: '#/components/schemas/ChatBskyConvoDefsConvoView' examples: ChatConvoListConvosResponse200Example: $ref: '#/components/examples/ChatConvoListConvosResponse200Example' '400': description: Bad Request content: application/json: schema: type: object required: - error - message properties: error: type: string enum: - InvalidRequest - ExpiredToken - InvalidToken message: type: string '401': description: Unauthorized content: application/json: schema: type: object required: - error - message properties: error: const: AuthMissing message: type: string /xrpc/chat.bsky.convo.muteConvo: post: operationId: chatConvoMuteConvo summary: Bluesky Operation description: '*This endpoint is part of the Bluesky Chat (DMs) APIs. Requests usually require authentication, are directed to the user''s PDS intance, and proxied to the single central chat service by setting the appropriate service DID (`did:web:api.bsky.chat`) in the service proxying header.* *To learn more about calling atproto API endpoints like this one, see the [API Hosts and Auth](/docs/advanced-guides/api-directory) guide.*' tags: - Conversations x-microcks-operation: delay: 100 dispatcher: FALLBACK dispatcherRules: '' security: - Bearer: [] requestBody: required: true content: application/json: schema: type: object required: - convoId properties: convoId: type: string examples: ChatConvoMuteConvoRequestExample: $ref: '#/components/examples/ChatConvoMuteConvoRequestExample' responses: '200': description: OK content: application/json: schema: type: object required: - convo properties: convo: $ref: '#/components/schemas/ChatBskyConvoDefsConvoView' examples: ChatConvoMuteConvoResponse200Example: $ref: '#/components/examples/ChatConvoMuteConvoResponse200Example' '400': description: Bad Request content: application/json: schema: type: object required: - error - message properties: error: type: string enum: - InvalidRequest - ExpiredToken - InvalidToken message: type: string '401': description: Unauthorized content: application/json: schema: type: object required: - error - message properties: error: const: AuthMissing message: type: string /xrpc/chat.bsky.convo.sendMessage: post: operationId: chatConvoSendMessage summary: Bluesky Operation description: '*This endpoint is part of the Bluesky Chat (DMs) APIs. Requests usually require authentication, are directed to the user''s PDS intance, and proxied to the single central chat service by setting the appropriate service DID (`did:web:api.bsky.chat`) in the service proxying header.* *To learn more about calling atproto API endpoints like this one, see the [API Hosts and Auth](/docs/advanced-guides/api-directory) guide.*' tags: - Conversations x-microcks-operation: delay: 100 dispatcher: FALLBACK dispatcherRules: '' security: - Bearer: [] requestBody: required: true content: application/json: schema: type: object required: - convoId - message properties: convoId: type: string message: $ref: '#/components/schemas/ChatBskyConvoDefsMessageInput' examples: ChatConvoSendMessageRequestExample: $ref: '#/components/examples/ChatConvoSendMessageRequestExample' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ChatBskyConvoDefsMessageView' examples: ChatConvoSendMessageResponse200Example: $ref: '#/components/examples/ChatConvoSendMessageResponse200Example' '400': description: Bad Request content: application/json: schema: type: object required: - error - message properties: error: type: string enum: - InvalidRequest - ExpiredToken - InvalidToken message: type: string '401': description: Unauthorized content: application/json: schema: type: object required: - error - message properties: error: const: AuthMissing message: type: string /xrpc/chat.bsky.convo.sendMessageBatch: post: operationId: chatConvoSendMessageBatch summary: Bluesky Operation description: '*This endpoint is part of the Bluesky Chat (DMs) APIs. Requests usually require authentication, are directed to the user''s PDS intance, and proxied to the single central chat service by setting the appropriate service DID (`did:web:api.bsky.chat`) in the service proxying header.* *To learn more about calling atproto API endpoints like this one, see the [API Hosts and Auth](/docs/advanced-guides/api-directory) guide.*' tags: - Conversations x-microcks-operation: delay: 100 dispatcher: FALLBACK dispatcherRules: '' security: - Bearer: [] requestBody: required: true content: application/json: schema: type: object required: - items properties: items: type: array items: $ref: '#/components/schemas/ChatBskyConvoSendMessageBatchBatchItem' maxItems: 100 examples: ChatConvoSendMessageBatchRequestExample: $ref: '#/components/examples/ChatConvoSendMessageBatchRequestExample' responses: '200': description: OK content: application/json: schema: type: object required: - items properties: items: type: array items: $ref: '#/components/schemas/ChatBskyConvoDefsMessageView' examples: ChatConvoSendMessageBatchResponse200Example: $ref: '#/components/examples/ChatConvoSendMessageBatchResponse200Example' '400': description: Bad Request content: application/json: schema: type: object required: - error - message properties: error: type: string enum: - InvalidRequest - ExpiredToken - InvalidToken message: type: string '401': description: Unauthorized content: application/json: schema: type: object required: - error - message properties: error: const: AuthMissing message: type: string /xrpc/chat.bsky.convo.unmuteConvo: post: operationId: chatConvoUnmuteConvo summary: Bluesky Operation description: '*This endpoint is part of the Bluesky Chat (DMs) APIs. Requests usually require authentication, are directed to the user''s PDS intance, and proxied to the single central chat service by setting the appropriate service DID (`did:web:api.bsky.chat`) in the service proxying header.* *To learn more about calling atproto API endpoints like this one, see the [API Hosts and Auth](/docs/advanced-guides/api-directory) guide.*' tags: - Conversations x-microcks-operation: delay: 100 dispatcher: FALLBACK dispatcherRules: '' security: - Bearer: [] requestBody: required: true content: application/json: schema: type: object required: - convoId properties: convoId: type: string examples: ChatConvoUnmuteConvoRequestExample: $ref: '#/components/examples/ChatConvoUnmuteConvoRequestExample' responses: '200': description: OK content: application/json: schema: type: object required: - convo properties: convo: $ref: '#/components/schemas/ChatBskyConvoDefsConvoView' examples: ChatConvoUnmuteConvoResponse200Example: $ref: '#/components/examples/ChatConvoUnmuteConvoResponse200Example' '400': description: Bad Request content: application/json: schema: type: object required: - error - message properties: error: type: string enum: - InvalidRequest - ExpiredToken - InvalidToken message: type: string '401': description: Unauthorized content: application/json: schema: type: object required: - error - message properties: error: const: AuthMissing message: type: string /xrpc/chat.bsky.convo.updateRead: post: operationId: chatConvoUpdateRead summary: Bluesky Operation description: '*This endpoint is part of the Bluesky Chat (DMs) APIs. Requests usually require authentication, are directed to the user''s PDS intance, and proxied to the single central chat service by setting the appropriate service DID (`did:web:api.bsky.chat`) in the service proxying header.* *To learn more about calling atproto API endpoints like this one, see the [API Hosts and Auth](/docs/advanced-guides/api-directory) guide.*' tags: - Conversations x-microcks-operation: delay: 100 dispatcher: FALLBACK dispatcherRules: '' security: - Bearer: [] requestBody: required: true content: application/json: schema: type: object required: - convoId properties: convoId: type: string messageId: type: string examples: ChatConvoUpdateReadRequestExample: $ref: '#/components/examples/ChatConvoUpdateReadRequestExample' responses: '200': description: OK content: application/json: schema: type: object required: - convo properties: convo: $ref: '#/components/schemas/ChatBskyConvoDefsConvoView' examples: ChatConvoUpdateReadResponse200Example: $ref: '#/components/examples/ChatConvoUpdateReadResponse200Example' '400': description: Bad Request content: application/json: schema: type: object required: - error - message properties: error: type: string enum: - InvalidRequest - ExpiredToken - InvalidToken message: type: string '401': description: Unauthorized content: application/json: schema: type: object required: - error - message properties: error: const: AuthMissing message: type: string components: examples: ChatConvoSendMessageResponse200Example: summary: Successful response for chatConvoSendMessage value: id: example-id rev: example-rev text: Example text content sender: did: did:plc:example123abc sentAt: '2024-01-15T12:00:00.000Z' facets: - index: byteStart: {} byteEnd: {} features: [] embed: record: {} ChatConvoGetLogResponse200Example: summary: Successful response for chatConvoGetLog value: logs: - rev: example-rev convoId: example-convoId cursor: eyJsYXN0SWQiOiIxMjM0NTYifQ ChatConvoGetConvoForMembersResponse200Example: summary: Successful response for chatConvoGetConvoForMembers value: convo: id: example-id rev: example-rev members: - did: did:plc:example123abc handle: user.bsky.social displayName: Example Name avatar: https://example.com/resource associated: {} viewer: {} labels: [] chatDisabled: true muted: true unreadCount: 50 lastMessage: id: example-id rev: example-rev text: Example text content sender: {} sentAt: '2024-01-15T12:00:00.000Z' facets: [] embed: {} opened: true ChatConvoLeaveConvoResponse200Example: summary: Successful response for chatConvoLeaveConvo value: convoId: example-convoId rev: example-rev ChatConvoDeleteMessageForSelfRequestExample: summary: Example request for chatConvoDeleteMessageForSelf value: convoId: example-convoId messageId: example-messageId ChatConvoListConvosResponse200Example: summary: Successful response for chatConvoListConvos value: convos: - id: example-id rev: example-rev members: - did: {} handle: {} displayName: {} avatar: {} associated: {} viewer: {} labels: {} chatDisabled: {} muted: true unreadCount: 50 lastMessage: id: {} rev: {} text: {} sender: {} sentAt: {} facets: {} embed: {} opened: true cursor: eyJsYXN0SWQiOiIxMjM0NTYifQ ChatConvoUnmuteConvoResponse200Example: summary: Successful response for chatConvoUnmuteConvo value: convo: id: example-id rev: example-rev members: - did: did:plc:example123abc handle: user.bsky.social displayName: Example Name avatar: https://example.com/resource associated: {} viewer: {} labels: [] chatDisabled: true muted: true unreadCount: 50 lastMessage: id: example-id rev: example-rev text: Example text content sender: {} sentAt: '2024-01-15T12:00:00.000Z' facets: [] embed: {} opened: true ChatConvoUpdateReadRequestExample: summary: Example request for chatConvoUpdateRead value: convoId: example-convoId messageId: example-messageId ChatConvoSendMessageRequestExample: summary: Example request for chatConvoSendMessage value: convoId: example-convoId message: text: Example text content facets: - index: {} features: [] embed: record: {} ChatConvoMuteConvoResponse200Example: summary: Successful response for chatConvoMuteConvo value: convo: id: example-id rev: example-rev members: - did: did:plc:example123abc handle: user.bsky.social displayName: Example Name avatar: https://example.com/resource associated: {} viewer: {} labels: [] chatDisabled: true muted: true unreadCount: 50 lastMessage: id: example-id rev: example-rev text: Example text content sender: {} sentAt: '2024-01-15T12:00:00.000Z' facets: [] embed: {} opened: true ChatConvoGetMessagesResponse200Example: summary: Successful response for chatConvoGetMessages value: messages: - id: example-id rev: example-rev text: Example text content sender: did: {} sentAt: '2024-01-15T12:00:00.000Z' facets: [] embed: {} cursor: eyJsYXN0SWQiOiIxMjM0NTYifQ ChatConvoGetConvoResponse200Example: summary: Successful response for chatConvoGetConvo value: convo: id: example-id rev: example-rev members: - did: did:plc:example123abc handle: user.bsky.social displayName: Example Name avatar: https://example.com/resource associated: {} viewer: {} labels: [] chatDisabled: true muted: true unreadCount: 50 lastMessage: id: example-id rev: example-rev text: Example text content sender: {} sentAt: '2024-01-15T12:00:00.000Z' facets: [] embed: {} opened: true ChatConvoUnmuteConvoRequestExample: summary: Example request for chatConvoUnmuteConvo value: convoId: example-convoId ChatConvoSendMessageBatchRequestExample: summary: Example request for chatConvoSendMessageBatch value: items: - convoId: example-convoId message: text: Example text content facets: [] embed: {} ChatConvoLeaveConvoRequestExample: summary: Example request for chatConvoLeaveConvo value: convoId: example-convoId ChatConvoUpdateReadResponse200Example: summary: Successful response for chatConvoUpdateRead value: convo: id: example-id rev: example-rev members: - did: did:plc:example123abc handle: user.bsky.social displayName: Example Name avatar: https://example.com/resource associated: {} viewer: {} labels: [] chatDisabled: true muted: true unreadCount: 50 lastMessage: id: example-id rev: example-rev text: Example text content sender: {} sentAt: '2024-01-15T12:00:00.000Z' facets: [] embed: {} opened: true ChatConvoSendMessageBatchResponse200Example: summary: Successful response for chatConvoSendMessageBatch value: items: - id: example-id rev: example-rev text: Example text content sender: did: did:plc:example123abc sentAt: '2024-01-15T12:00:00.000Z' facets: - index: {} features: {} embed: record: {} ChatConvoMuteConvoRequestExample: summary: Example request for chatConvoMuteConvo value: convoId: example-convoId ChatConvoDeleteMessageForSelfResponse200Example: summary: Successful response for chatConvoDeleteMessageForSelf value: id: example-id rev: example-rev sender: did: did:plc:example123abc sentAt: '2024-01-15T12:00:00.000Z' schemas: AppBskyFeedDefsBlockedAuthor: type: object required: - did properties: did: type: string format: did viewer: $ref: '#/components/schemas/AppBskyActorDefsViewerState' AppBskyGraphDefsListViewBasic: type: object required: - uri - cid - name - purpose properties: uri: type: string format: at-uri cid: type: string format: cid name: type: string minLength: 1 maxLength: 64 purpose: $ref: '#/components/schemas/AppBskyGraphDefsListPurpose' avatar: type: string format: uri listItemCount: type: integer minimum: 0 labels: type: array items: $ref: '#/components/schemas/ComAtprotoLabelDefsLabel' viewer: $ref: '#/components/schemas/AppBskyGraphDefsListViewerState' indexedAt: type: string format: date-time ComAtprotoLabelDefsLabel: type: object description: Metadata tag on an atproto resource (eg, repo or record). required: - src - uri - val - cts properties: ver: type: integer src: type: string description: DID of the actor who created this label. format: did uri: type: string description: AT URI of the record, repository (account), or other resource that this label applies to. format: uri cid: type: string description: Optionally, CID specifying the specific version of 'uri' resource this label applies to. format: cid val: type: string description: The short string name of the value or type of this label. maxLength: 128 neg: type: boolean description: If true, this is a negation label, overwriting a previous label. cts: type: string description: Timestamp when this label was created. format: date-time exp: type: string description: Timestamp at which this label expires (no longer applies). format: date-time sig: type: string format: byte description: Signature of dag-cbor encoded label. ChatBskyConvoDefsConvoView: type: object required: - id - rev - members - muted - unreadCount properties: id: type: string rev: type: string members: type: array items: $ref: '#/components/schemas/ChatBskyActorDefsProfileViewBasic' lastMessage: oneOf: - $ref: '#/components/schemas/ChatBskyConvoDefsMessageView' - $ref: '#/components/schemas/ChatBskyConvoDefsDeletedMessageView' muted: type: boolean opened: type: boolean unreadCount: type: integer AppBskyEmbedImagesView: type: object required: - images properties: images: type: array items: $ref: '#/components/schemas/AppBskyEmbedImagesViewImage' maxItems: 4 AppBskyRichtextFacetLink: type: object description: Facet feature for a URL. The text URL may have been simplified or truncated, but the facet reference should be a complete URL. required: - uri properties: uri: type: string format: uri AppBskyActorDefsProfileView: type: object required: - did - handle properties: did: type: string format: did handle: type: string format: handle displayName: type: string maxLength: 640 description: type: string maxLength: 2560 avatar: type: string format: uri associated: $ref: '#/components/schemas/AppBskyActorDefsProfileAssociated' indexedAt: type: string format: date-time createdAt: type: string format: date-time viewer: $ref: '#/components/schemas/AppBskyActorDefsViewerState' labels: type: array items: $ref: '#/components/schemas/ComAtprotoLabelDefsLabel' ChatBskyConvoDefsMessageInput: type: object required: - text properties: text: type: string maxLength: 10000 facets: type: array items: $ref: '#/components/schemas/AppBskyRichtextFacet' embed: oneOf: - $ref: '#/components/schemas/AppBskyEmbedRecord' AppBskyFeedDefsGeneratorViewerState: type: object properties: like: type: string format: at-uri AppBskyRichtextFacetMention: type: object description: Facet feature for mention of another account. The text is usually a handle, including a '@' prefix, but the facet reference is a DID. required: - did properties: did: type: string format: did AppBskyActorDefsProfileAssociatedChat: type: object required: - allowIncoming properties: allowIncoming: type: string enum: - all - none - following AppBskyEmbedRecordView: type: object required: - record properties: record: oneOf: - $ref: '#/components/schemas/AppBskyEmbedRecordViewRecord' - $ref: '#/components/schemas/AppBskyEmbedRecordViewNotFound' - $ref: '#/components/schemas/AppBskyEmbedRecordViewBlocked' - $ref: '#/components/schemas/AppBskyEmbedRecordViewDetached' - $ref: '#/components/schemas/AppBskyFeedDefsGeneratorView' - $ref: '#/components/schemas/AppBskyGraphDefsListView' - $ref: '#/components/schemas/AppBskyLabelerDefsLabelerView' - $ref: '#/components/schemas/AppBskyGraphDefsStarterPackViewBasic' ChatBskyConvoDefsMessageView: type: object required: - id - rev - text - sender - sentAt properties: id: type: string rev: type: string text: type: string maxLength: 10000 facets: type: array items: $ref: '#/components/schemas/AppBskyRichtextFacet' embed: oneOf: - $ref: '#/components/schemas/AppBskyEmbedRecordView' sender: $ref: '#/components/schemas/ChatBskyConvoDefsMessageViewSender' sentAt: type: string format: date-time AppBskyActorDefsViewerState: type: object description: Metadata about the requesting account's relationship with the subject account. Only has meaningful content for authed requests. properties: muted: type: boolean mutedByList: $ref: '#/components/schemas/AppBskyGraphDefsListViewBasic' blockedBy: type: boolean blocking: type: string format: at-uri blockingByList: $ref: '#/components/schemas/AppBskyGraphDefsListViewBasic' following: type: string format: at-uri followedBy: type: string format: at-uri knownFollowers: $ref: '#/components/schemas/AppBskyActorDefsKnownFollowers' AppBskyActorDefsProfileAssociated: type: object properties: lists: type: integer feedgens: type: integer starterPacks: type: integer labeler: type: boolean chat: $ref: '#/components/schemas/AppBskyActorDefsProfileAssociatedChat' AppBskyEmbedExternalViewExternal: type: object required: - uri - title - description properties: uri: type: string format: uri title: type: string description: type: string thumb: type: string format: uri AppBskyEmbedVideoView: type: object required: - cid - playlist properties: cid: type: string format: cid playlist: type: string format: uri thumbnail: type: string format: uri alt: type: string maxLength: 10000 aspectRatio: $ref: '#/components/schemas/AppBskyEmbedDefsAspectRatio' ComAtprotoRepoStrongRef: type: object required: - uri - cid properties: uri: type: string format: at-uri cid: type: string format: cid ChatBskyConvoSendMessageBatchBatchItem: type: object required: - convoId - message properties: convoId: type: string message: $ref: '#/components/schemas/ChatBskyConvoDefsMessageInput' AppBskyActorDefsKnownFollowers: type: object description: The subject's followers whom you also follow required: - count - followers properties: count: type: integer followers: type: array items: $ref: '#/components/schemas/AppBskyActorDefsProfileViewBasic' maxItems: 5 AppBskyGraphDefsListView: type: object required: - uri - cid - creator - name - purpose - indexedAt properties: uri: type: string format: at-uri cid: type: string format: cid creator: $ref: '#/components/schemas/AppBskyActorDefsProfileView' name: type: string minLength: 1 maxLength: 64 purpose: $ref: '#/components/schemas/AppBskyGraphDefsListPurpose' description: type: string maxLength: 3000 descriptionFacets: type: array items: $ref: '#/components/schemas/AppBskyRichtextFacet' avatar: type: string format: uri listItemCount: type: integer minimum: 0 labels: type: array items: $ref: '#/components/schemas/ComAtprotoLabelDefsLabel' viewer: $ref: '#/components/schemas/AppBskyGraphDefsListViewerState' indexedAt: type: string format: date-time AppBskyActorDefsProfileViewBasic: type: object required: - did - handle properties: did: type: string format: did handle: type: string format: handle displayName: type: string maxLength: 640 avatar: type: string format: uri associated: $ref: '#/components/schemas/AppBskyActorDefsProfileAssociated' viewer: $ref: '#/components/schemas/AppBskyActorDefsViewerState' labels: type: array items: $ref: '#/components/schemas/ComAtprotoLabelDefsLabel' createdAt: type: string format: date-time AppBskyGraphDefsListPurpose: oneOf: - $ref: '#/components/schemas/AppBskyGraphDefsModlist' - $ref: '#/components/schemas/AppBskyGraphDefsCuratelist' - $ref: '#/components/schemas/AppBskyGraphDefsReferencelist' AppBskyLabelerDefsLabelerView: type: object required: - uri - cid - creator - indexedAt properties: uri: type: string format: at-uri cid: type: string format: cid creator: $ref: '#/components/schemas/AppBskyActorDefsProfileView' likeCount: type: integer minimum: 0 viewer: $ref: '#/components/schemas/AppBskyLabelerDefsLabelerViewerState' indexedAt: type: string format: date-time labels: type: array items: $ref: '#/components/schemas/ComAtprotoLabelDefsLabel' ChatBskyConvoDefsDeletedMessageView: type: object required: - id - rev - sender - sentAt properties: id: type: string rev: type: string sender: $ref: '#/components/schemas/ChatBskyConvoDefsMessageViewSender' sentAt: type: string format: date-time ChatBskyConvoDefsLogCreateMessage: type: object required: - rev - convoId - message properties: rev: type: string convoId: type: string message: oneOf: - $ref: '#/components/schemas/ChatBskyConvoDefsMessageView' - $ref: '#/components/schemas/ChatBskyConvoDefsDeletedMessageView' AppBskyRichtextFacetByteSlice: type: object description: 'Specifies the sub-string range a facet feature applies to. Start index is inclusive, end index is exclusive. Indices are zero-indexed, counting bytes of the UTF-8 encoded text. NOTE: some languages, like Javascript, use UTF-16 or Unicode codepoints for string slice indexing; in these languages, convert to byte arrays before working with facets.' required: - byteStart - byteEnd properties: byteStart: type: integer minimum: 0 byteEnd: type: integer minimum: 0 AppBskyRichtextFacet: type: object description: Annotation of a sub-string within rich text. required: - index - features properties: index: $ref: '#/components/schemas/AppBskyRichtextFacetByteSlice' features: type: array items: oneOf: - $ref: '#/components/schemas/AppBskyRichtextFacetMention' - $ref: '#/components/schemas/AppBskyRichtextFacetLink' - $ref: '#/components/schemas/AppBskyRichtextFacetTag' AppBskyLabelerDefsLabelerViewerState: type: object properties: like: type: string format: at-uri AppBskyEmbedRecordViewRecord: type: object required: - uri - cid - author - value - indexedAt properties: uri: type: string format: at-uri cid: type: string format: cid author: $ref: '#/components/schemas/AppBskyActorDefsProfileViewBasic' value: {} labels: type: array items: $ref: '#/components/schemas/ComAtprotoLabelDefsLabel' replyCount: type: integer repostCount: type: integer likeCount: type: integer quoteCount: type: integer embeds: type: array items: oneOf: - $ref: '#/components/schemas/AppBskyEmbedImagesView' - $ref: '#/components/schemas/AppBskyEmbedVideoView' - $ref: '#/components/schemas/AppBskyEmbedExternalView' - $ref: '#/components/schemas/AppBskyEmbedRecordView' - $ref: '#/components/schemas/AppBskyEmbedRecordWithMediaView' indexedAt: type: string format: date-time AppBskyEmbedImagesViewImage: type: object required: - thumb - fullsize - alt properties: thumb: type: string description: Fully-qualified URL where a thumbnail of the image can be fetched. For example, CDN location provided by the App View. format: uri fullsize: type: string description: Fully-qualified URL where a large version of the image can be fetched. May or may not be the exact original blob. For example, CDN location provided by the App View. format: uri alt: type: string description: Alt text description of the image, for accessibility. aspectRatio: $ref: '#/components/schemas/AppBskyEmbedDefsAspectRatio' AppBskyEmbedRecordViewDetached: type: object required: - uri - detached properties: uri: type: string format: at-uri detached: type: boolean default: true ChatBskyConvoDefsMessageViewSender: type: object required: - did properties: did: type: string format: did AppBskyGraphDefsCuratelist: type: string format: token description: A list of actors used for curation purposes such as list feeds or interaction gating. AppBskyEmbedDefsAspectRatio: type: object description: width:height represents an aspect ratio. It may be approximate, and may not correspond to absolute dimensions in any given unit. required: - width - height properties: width: type: integer minimum: 1 height: type: integer minimum: 1 ChatBskyConvoDefsLogLeaveConvo: type: object required: - rev - convoId properties: rev: type: string convoId: type: string AppBskyEmbedRecordWithMediaView: type: object required: - record - media properties: record: $ref: '#/components/schemas/AppBskyEmbedRecordView' media: oneOf: - $ref: '#/components/schemas/AppBskyEmbedImagesView' - $ref: '#/components/schemas/AppBskyEmbedVideoView' - $ref: '#/components/schemas/AppBskyEmbedExternalView' ChatBskyConvoDefsLogDeleteMessage: type: object required: - rev - convoId - message properties: rev: type: string convoId: type: string message: oneOf: - $ref: '#/components/schemas/ChatBskyConvoDefsMessageView' - $ref: '#/components/schemas/ChatBskyConvoDefsDeletedMessageView' AppBskyGraphDefsReferencelist: type: string format: token description: A list of actors used for only for reference purposes such as within a starter pack. AppBskyFeedDefsGeneratorView: type: object required: - uri - cid - did - creator - displayName - indexedAt properties: uri: type: string format: at-uri cid: type: string format: cid did: type: string format: did creator: $ref: '#/components/schemas/AppBskyActorDefsProfileView' displayName: type: string description: type: string maxLength: 3000 descriptionFacets: type: array items: $ref: '#/components/schemas/AppBskyRichtextFacet' avatar: type: string format: uri likeCount: type: integer minimum: 0 acceptsInteractions: type: boolean labels: type: array items: $ref: '#/components/schemas/ComAtprotoLabelDefsLabel' viewer: $ref: '#/components/schemas/AppBskyFeedDefsGeneratorViewerState' indexedAt: type: string format: date-time AppBskyEmbedRecord: type: object required: - record properties: record: $ref: '#/components/schemas/ComAtprotoRepoStrongRef' ChatBskyConvoDefsLogBeginConvo: type: object required: - rev - convoId properties: rev: type: string convoId: type: string AppBskyGraphDefsModlist: type: string format: token description: A list of actors to apply an aggregate moderation action (mute/block) on. ChatBskyActorDefsProfileViewBasic: type: object required: - did - handle properties: did: type: string format: did handle: type: string format: handle displayName: type: string maxLength: 640 avatar: type: string format: uri associated: $ref: '#/components/schemas/AppBskyActorDefsProfileAssociated' viewer: $ref: '#/components/schemas/AppBskyActorDefsViewerState' labels: type: array items: $ref: '#/components/schemas/ComAtprotoLabelDefsLabel' chatDisabled: type: boolean description: Set to true when the actor cannot actively participate in converations AppBskyRichtextFacetTag: type: object description: Facet feature for a hashtag. The text usually includes a '#' prefix, but the facet reference should not (except in the case of 'double hash tags'). required: - tag properties: tag: type: string maxLength: 640 AppBskyGraphDefsListViewerState: type: object properties: muted: type: boolean blocked: type: string format: at-uri AppBskyEmbedRecordViewNotFound: type: object required: - uri - notFound properties: uri: type: string format: at-uri notFound: type: boolean default: true AppBskyGraphDefsStarterPackViewBasic: type: object required: - uri - cid - record - creator - indexedAt properties: uri: type: string format: at-uri cid: type: string format: cid record: {} creator: $ref: '#/components/schemas/AppBskyActorDefsProfileViewBasic' listItemCount: type: integer minimum: 0 joinedWeekCount: type: integer minimum: 0 joinedAllTimeCount: type: integer minimum: 0 labels: type: array items: $ref: '#/components/schemas/ComAtprotoLabelDefsLabel' indexedAt: type: string format: date-time AppBskyEmbedExternalView: type: object required: - external properties: external: $ref: '#/components/schemas/AppBskyEmbedExternalViewExternal' AppBskyEmbedRecordViewBlocked: type: object required: - uri - blocked - author properties: uri: type: string format: at-uri blocked: type: boolean default: true author: $ref: '#/components/schemas/AppBskyFeedDefsBlockedAuthor' securitySchemes: Bearer: type: http scheme: bearer