app.bsky.feed.post#

pydantic model atproto.xrpc_client.models.app.bsky.feed.post.Entity#

Bases: ModelBase

Definition model for app.bsky.feed.post. Deprecated: use facets instead.

Show JSON schema
{
   "title": "Entity",
   "description": "Definition model for :obj:`app.bsky.feed.post`. Deprecated: use facets instead.",
   "type": "object",
   "properties": {
      "index": {
         "$ref": "#/$defs/TextSlice"
      },
      "type": {
         "title": "Type",
         "type": "string"
      },
      "value": {
         "title": "Value",
         "type": "string"
      },
      "$type": {
         "const": "app.bsky.feed.post#entity",
         "default": "app.bsky.feed.post#entity",
         "title": "$Type"
      }
   },
   "$defs": {
      "TextSlice": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.feed.post`. Deprecated. Use app.bsky.richtext instead -- A text segment. Start is inclusive, end is exclusive. Indices are for utf16-encoded strings.",
         "properties": {
            "end": {
               "minimum": 0,
               "title": "End",
               "type": "integer"
            },
            "start": {
               "minimum": 0,
               "title": "Start",
               "type": "integer"
            },
            "$type": {
               "const": "app.bsky.feed.post#textSlice",
               "default": "app.bsky.feed.post#textSlice",
               "title": "$Type"
            }
         },
         "required": [
            "end",
            "start"
         ],
         "title": "TextSlice",
         "type": "object"
      }
   },
   "additionalProperties": false,
   "required": [
      "index",
      "type",
      "value"
   ]
}

Fields:
field index: models.AppBskyFeedPost.TextSlice [Required]#

Index.

field py_type: typing_extensions.Literal[app.bsky.feed.post#entity] = 'app.bsky.feed.post#entity' (alias '$type')#
field type: str [Required]#

Expected values are ‘mention’ and ‘link’.

field value: str [Required]#

Value.

pydantic model atproto.xrpc_client.models.app.bsky.feed.post.Main#

Bases: RecordModelBase

Record model for app.bsky.feed.post.

Show JSON schema
{
   "title": "Main",
   "description": "Record model for :obj:`app.bsky.feed.post`.",
   "type": "object",
   "properties": {
      "createdAt": {
         "title": "Createdat",
         "type": "string"
      },
      "text": {
         "maxLength": 3000,
         "title": "Text",
         "type": "string"
      },
      "embed": {
         "anyOf": [
            {
               "default": null,
               "discriminator": {
                  "mapping": {
                     "app.bsky.embed.external": "#/$defs/atproto__xrpc_client__models__app__bsky__embed__external__Main",
                     "app.bsky.embed.images": "#/$defs/atproto__xrpc_client__models__app__bsky__embed__images__Main",
                     "app.bsky.embed.record": "#/$defs/atproto__xrpc_client__models__app__bsky__embed__record__Main",
                     "app.bsky.embed.recordWithMedia": "#/$defs/atproto__xrpc_client__models__app__bsky__embed__record_with_media__Main"
                  },
                  "propertyName": "$type"
               },
               "oneOf": [
                  {
                     "$ref": "#/$defs/atproto__xrpc_client__models__app__bsky__embed__images__Main"
                  },
                  {
                     "$ref": "#/$defs/atproto__xrpc_client__models__app__bsky__embed__external__Main"
                  },
                  {
                     "$ref": "#/$defs/atproto__xrpc_client__models__app__bsky__embed__record__Main"
                  },
                  {
                     "$ref": "#/$defs/atproto__xrpc_client__models__app__bsky__embed__record_with_media__Main"
                  }
               ]
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Embed"
      },
      "entities": {
         "anyOf": [
            {
               "items": {
                  "$ref": "#/$defs/Entity"
               },
               "type": "array"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Entities"
      },
      "facets": {
         "anyOf": [
            {
               "items": {
                  "$ref": "#/$defs/atproto__xrpc_client__models__app__bsky__richtext__facet__Main"
               },
               "type": "array"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Facets"
      },
      "labels": {
         "anyOf": [
            {
               "default": null,
               "discriminator": {
                  "mapping": {
                     "com.atproto.label.defs#selfLabels": "#/$defs/SelfLabels"
                  },
                  "propertyName": "$type"
               },
               "oneOf": [
                  {
                     "$ref": "#/$defs/SelfLabels"
                  }
               ]
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Labels"
      },
      "langs": {
         "anyOf": [
            {
               "items": {
                  "type": "string"
               },
               "maxItems": 3,
               "type": "array"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Langs"
      },
      "reply": {
         "anyOf": [
            {
               "$ref": "#/$defs/ReplyRef"
            },
            {
               "type": "null"
            }
         ],
         "default": null
      },
      "tags": {
         "anyOf": [
            {
               "items": {
                  "type": "string"
               },
               "maxItems": 8,
               "type": "array"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Tags"
      },
      "$type": {
         "const": "app.bsky.feed.post",
         "default": "app.bsky.feed.post",
         "title": "$Type"
      }
   },
   "$defs": {
      "AspectRatio": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.embed.images`. width:height represents an aspect ratio. It may be approximate, and may not correspond to absolute dimensions in any given unit.",
         "properties": {
            "height": {
               "minimum": 1,
               "title": "Height",
               "type": "integer"
            },
            "width": {
               "minimum": 1,
               "title": "Width",
               "type": "integer"
            },
            "$type": {
               "const": "app.bsky.embed.images#aspectRatio",
               "default": "app.bsky.embed.images#aspectRatio",
               "title": "$Type"
            }
         },
         "required": [
            "height",
            "width"
         ],
         "title": "AspectRatio",
         "type": "object"
      },
      "BlobRef": {
         "additionalProperties": false,
         "description": "Blob reference.",
         "properties": {
            "mimeType": {
               "title": "Mimetype",
               "type": "string"
            },
            "size": {
               "title": "Size",
               "type": "integer"
            },
            "ref": {
               "$ref": "#/$defs/BlobRefLink"
            },
            "$type": {
               "const": "blob",
               "default": "blob",
               "title": "$Type"
            }
         },
         "required": [
            "mimeType",
            "size",
            "ref"
         ],
         "title": "BlobRef",
         "type": "object"
      },
      "BlobRefLink": {
         "description": "Blob reference link.",
         "properties": {
            "$link": {
               "title": "$Link",
               "type": "string"
            }
         },
         "required": [
            "$link"
         ],
         "title": "BlobRefLink",
         "type": "object"
      },
      "ByteSlice": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.richtext.facet`. A text segment. Start is inclusive, end is exclusive. Indices are for utf8-encoded strings.",
         "properties": {
            "byteEnd": {
               "minimum": 0,
               "title": "Byteend",
               "type": "integer"
            },
            "byteStart": {
               "minimum": 0,
               "title": "Bytestart",
               "type": "integer"
            },
            "$type": {
               "const": "app.bsky.richtext.facet#byteSlice",
               "default": "app.bsky.richtext.facet#byteSlice",
               "title": "$Type"
            }
         },
         "required": [
            "byteEnd",
            "byteStart"
         ],
         "title": "ByteSlice",
         "type": "object"
      },
      "Entity": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.feed.post`. Deprecated: use facets instead.",
         "properties": {
            "index": {
               "$ref": "#/$defs/TextSlice"
            },
            "type": {
               "title": "Type",
               "type": "string"
            },
            "value": {
               "title": "Value",
               "type": "string"
            },
            "$type": {
               "const": "app.bsky.feed.post#entity",
               "default": "app.bsky.feed.post#entity",
               "title": "$Type"
            }
         },
         "required": [
            "index",
            "type",
            "value"
         ],
         "title": "Entity",
         "type": "object"
      },
      "External": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.embed.external`.",
         "properties": {
            "description": {
               "title": "Description",
               "type": "string"
            },
            "title": {
               "title": "Title",
               "type": "string"
            },
            "uri": {
               "title": "Uri",
               "type": "string"
            },
            "thumb": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/BlobRef"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null
            },
            "$type": {
               "const": "app.bsky.embed.external#external",
               "default": "app.bsky.embed.external#external",
               "title": "$Type"
            }
         },
         "required": [
            "description",
            "title",
            "uri"
         ],
         "title": "External",
         "type": "object"
      },
      "Image": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.embed.images`.",
         "properties": {
            "alt": {
               "title": "Alt",
               "type": "string"
            },
            "image": {
               "$ref": "#/$defs/BlobRef"
            },
            "aspectRatio": {
               "anyOf": [
                  {
                     "$ref": "#/$defs/AspectRatio"
                  },
                  {
                     "type": "null"
                  }
               ],
               "default": null
            },
            "$type": {
               "const": "app.bsky.embed.images#image",
               "default": "app.bsky.embed.images#image",
               "title": "$Type"
            }
         },
         "required": [
            "alt",
            "image"
         ],
         "title": "Image",
         "type": "object"
      },
      "Link": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.richtext.facet`. A facet feature for links.",
         "properties": {
            "uri": {
               "title": "Uri",
               "type": "string"
            },
            "$type": {
               "const": "app.bsky.richtext.facet#link",
               "default": "app.bsky.richtext.facet#link",
               "title": "$Type"
            }
         },
         "required": [
            "uri"
         ],
         "title": "Link",
         "type": "object"
      },
      "Mention": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.richtext.facet`. A facet feature for actor mentions.",
         "properties": {
            "did": {
               "title": "Did",
               "type": "string"
            },
            "$type": {
               "const": "app.bsky.richtext.facet#mention",
               "default": "app.bsky.richtext.facet#mention",
               "title": "$Type"
            }
         },
         "required": [
            "did"
         ],
         "title": "Mention",
         "type": "object"
      },
      "ReplyRef": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.feed.post`.",
         "properties": {
            "parent": {
               "$ref": "#/$defs/atproto__xrpc_client__models__com__atproto__repo__strong_ref__Main"
            },
            "root": {
               "$ref": "#/$defs/atproto__xrpc_client__models__com__atproto__repo__strong_ref__Main"
            },
            "$type": {
               "const": "app.bsky.feed.post#replyRef",
               "default": "app.bsky.feed.post#replyRef",
               "title": "$Type"
            }
         },
         "required": [
            "parent",
            "root"
         ],
         "title": "ReplyRef",
         "type": "object"
      },
      "SelfLabel": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`com.atproto.label.defs`. Metadata tag on an atproto record, published by the author within the record. Note -- schemas should use #selfLabels, not #selfLabel.",
         "properties": {
            "val": {
               "maxLength": 128,
               "title": "Val",
               "type": "string"
            },
            "$type": {
               "const": "com.atproto.label.defs#selfLabel",
               "default": "com.atproto.label.defs#selfLabel",
               "title": "$Type"
            }
         },
         "required": [
            "val"
         ],
         "title": "SelfLabel",
         "type": "object"
      },
      "SelfLabels": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`com.atproto.label.defs`. Metadata tags on an atproto record, published by the author within the record.",
         "properties": {
            "values": {
               "items": {
                  "$ref": "#/$defs/SelfLabel"
               },
               "maxItems": 10,
               "title": "Values",
               "type": "array"
            },
            "$type": {
               "const": "com.atproto.label.defs#selfLabels",
               "default": "com.atproto.label.defs#selfLabels",
               "title": "$Type"
            }
         },
         "required": [
            "values"
         ],
         "title": "SelfLabels",
         "type": "object"
      },
      "Tag": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.richtext.facet`. A hashtag.",
         "properties": {
            "tag": {
               "maxLength": 640,
               "title": "Tag",
               "type": "string"
            },
            "$type": {
               "const": "app.bsky.richtext.facet#tag",
               "default": "app.bsky.richtext.facet#tag",
               "title": "$Type"
            }
         },
         "required": [
            "tag"
         ],
         "title": "Tag",
         "type": "object"
      },
      "TextSlice": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.feed.post`. Deprecated. Use app.bsky.richtext instead -- A text segment. Start is inclusive, end is exclusive. Indices are for utf16-encoded strings.",
         "properties": {
            "end": {
               "minimum": 0,
               "title": "End",
               "type": "integer"
            },
            "start": {
               "minimum": 0,
               "title": "Start",
               "type": "integer"
            },
            "$type": {
               "const": "app.bsky.feed.post#textSlice",
               "default": "app.bsky.feed.post#textSlice",
               "title": "$Type"
            }
         },
         "required": [
            "end",
            "start"
         ],
         "title": "TextSlice",
         "type": "object"
      },
      "atproto__xrpc_client__models__app__bsky__embed__external__Main": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.embed.external`.",
         "properties": {
            "external": {
               "$ref": "#/$defs/External"
            },
            "$type": {
               "const": "app.bsky.embed.external",
               "default": "app.bsky.embed.external",
               "title": "$Type"
            }
         },
         "required": [
            "external"
         ],
         "title": "Main",
         "type": "object"
      },
      "atproto__xrpc_client__models__app__bsky__embed__images__Main": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.embed.images`.",
         "properties": {
            "images": {
               "items": {
                  "$ref": "#/$defs/Image"
               },
               "maxItems": 4,
               "title": "Images",
               "type": "array"
            },
            "$type": {
               "const": "app.bsky.embed.images",
               "default": "app.bsky.embed.images",
               "title": "$Type"
            }
         },
         "required": [
            "images"
         ],
         "title": "Main",
         "type": "object"
      },
      "atproto__xrpc_client__models__app__bsky__embed__record__Main": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.embed.record`.",
         "properties": {
            "record": {
               "$ref": "#/$defs/atproto__xrpc_client__models__com__atproto__repo__strong_ref__Main"
            },
            "$type": {
               "const": "app.bsky.embed.record",
               "default": "app.bsky.embed.record",
               "title": "$Type"
            }
         },
         "required": [
            "record"
         ],
         "title": "Main",
         "type": "object"
      },
      "atproto__xrpc_client__models__app__bsky__embed__record_with_media__Main": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.embed.recordWithMedia`.",
         "properties": {
            "media": {
               "discriminator": {
                  "mapping": {
                     "app.bsky.embed.external": "#/$defs/atproto__xrpc_client__models__app__bsky__embed__external__Main",
                     "app.bsky.embed.images": "#/$defs/atproto__xrpc_client__models__app__bsky__embed__images__Main"
                  },
                  "propertyName": "$type"
               },
               "oneOf": [
                  {
                     "$ref": "#/$defs/atproto__xrpc_client__models__app__bsky__embed__images__Main"
                  },
                  {
                     "$ref": "#/$defs/atproto__xrpc_client__models__app__bsky__embed__external__Main"
                  }
               ],
               "title": "Media"
            },
            "record": {
               "$ref": "#/$defs/atproto__xrpc_client__models__app__bsky__embed__record__Main"
            },
            "$type": {
               "const": "app.bsky.embed.recordWithMedia",
               "default": "app.bsky.embed.recordWithMedia",
               "title": "$Type"
            }
         },
         "required": [
            "media",
            "record"
         ],
         "title": "Main",
         "type": "object"
      },
      "atproto__xrpc_client__models__app__bsky__richtext__facet__Main": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`app.bsky.richtext.facet`.",
         "properties": {
            "features": {
               "items": {
                  "discriminator": {
                     "mapping": {
                        "app.bsky.richtext.facet#link": "#/$defs/Link",
                        "app.bsky.richtext.facet#mention": "#/$defs/Mention",
                        "app.bsky.richtext.facet#tag": "#/$defs/Tag"
                     },
                     "propertyName": "$type"
                  },
                  "oneOf": [
                     {
                        "$ref": "#/$defs/Mention"
                     },
                     {
                        "$ref": "#/$defs/Link"
                     },
                     {
                        "$ref": "#/$defs/Tag"
                     }
                  ]
               },
               "title": "Features",
               "type": "array"
            },
            "index": {
               "$ref": "#/$defs/ByteSlice"
            },
            "$type": {
               "const": "app.bsky.richtext.facet",
               "default": "app.bsky.richtext.facet",
               "title": "$Type"
            }
         },
         "required": [
            "features",
            "index"
         ],
         "title": "Main",
         "type": "object"
      },
      "atproto__xrpc_client__models__com__atproto__repo__strong_ref__Main": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`com.atproto.repo.strongRef`.",
         "properties": {
            "cid": {
               "title": "Cid",
               "type": "string"
            },
            "uri": {
               "title": "Uri",
               "type": "string"
            },
            "$type": {
               "const": "com.atproto.repo.strongRef",
               "default": "com.atproto.repo.strongRef",
               "title": "$Type"
            }
         },
         "required": [
            "cid",
            "uri"
         ],
         "title": "Main",
         "type": "object"
      }
   },
   "additionalProperties": false,
   "required": [
      "createdAt",
      "text"
   ]
}

Fields:
field created_at: str [Required] (alias 'createdAt')#

Created at.

field embed: Optional[Union[models.AppBskyEmbedImages.Main, models.AppBskyEmbedExternal.Main, models.AppBskyEmbedRecord.Main, models.AppBskyEmbedRecordWithMedia.Main][Union[models.AppBskyEmbedImages.Main, models.AppBskyEmbedExternal.Main, models.AppBskyEmbedRecord.Main, models.AppBskyEmbedRecordWithMedia.Main]]] = None#
field entities: Optional[List[models.AppBskyFeedPost.Entity]] = None#

Deprecated: replaced by app.bsky.richtext.facet.

field facets: Optional[List[models.AppBskyRichtextFacet.Main]] = None#

Facets.

field labels: Optional[SelfLabels[models.ComAtprotoLabelDefs.SelfLabels]] = None#
field langs: Optional[List[str]] = None#

Langs.

Constraints:
  • max_length = 3

field py_type: typing_extensions.Literal[app.bsky.feed.post] = 'app.bsky.feed.post' (alias '$type')#
field reply: Optional[models.AppBskyFeedPost.ReplyRef] = None#

Reply.

field tags: Optional[List[str]] = None#

Additional non-inline tags describing this post.

Constraints:
  • max_length = 8

field text: str [Required]#

Text.

Constraints:
  • max_length = 3000

pydantic model atproto.xrpc_client.models.app.bsky.feed.post.ReplyRef#

Bases: ModelBase

Definition model for app.bsky.feed.post.

Show JSON schema
{
   "title": "ReplyRef",
   "description": "Definition model for :obj:`app.bsky.feed.post`.",
   "type": "object",
   "properties": {
      "parent": {
         "$ref": "#/$defs/Main"
      },
      "root": {
         "$ref": "#/$defs/Main"
      },
      "$type": {
         "const": "app.bsky.feed.post#replyRef",
         "default": "app.bsky.feed.post#replyRef",
         "title": "$Type"
      }
   },
   "$defs": {
      "Main": {
         "additionalProperties": false,
         "description": "Definition model for :obj:`com.atproto.repo.strongRef`.",
         "properties": {
            "cid": {
               "title": "Cid",
               "type": "string"
            },
            "uri": {
               "title": "Uri",
               "type": "string"
            },
            "$type": {
               "const": "com.atproto.repo.strongRef",
               "default": "com.atproto.repo.strongRef",
               "title": "$Type"
            }
         },
         "required": [
            "cid",
            "uri"
         ],
         "title": "Main",
         "type": "object"
      }
   },
   "additionalProperties": false,
   "required": [
      "parent",
      "root"
   ]
}

Fields:
field parent: models.ComAtprotoRepoStrongRef.Main [Required]#

Parent.

field py_type: typing_extensions.Literal[app.bsky.feed.post#replyRef] = 'app.bsky.feed.post#replyRef' (alias '$type')#
field root: models.ComAtprotoRepoStrongRef.Main [Required]#

Root.

pydantic model atproto.xrpc_client.models.app.bsky.feed.post.TextSlice#

Bases: ModelBase

Definition model for app.bsky.feed.post. Deprecated. Use app.bsky.richtext instead – A text segment. Start is inclusive, end is exclusive. Indices are for utf16-encoded strings.

Show JSON schema
{
   "title": "TextSlice",
   "description": "Definition model for :obj:`app.bsky.feed.post`. Deprecated. Use app.bsky.richtext instead -- A text segment. Start is inclusive, end is exclusive. Indices are for utf16-encoded strings.",
   "type": "object",
   "properties": {
      "end": {
         "minimum": 0,
         "title": "End",
         "type": "integer"
      },
      "start": {
         "minimum": 0,
         "title": "Start",
         "type": "integer"
      },
      "$type": {
         "const": "app.bsky.feed.post#textSlice",
         "default": "app.bsky.feed.post#textSlice",
         "title": "$Type"
      }
   },
   "additionalProperties": false,
   "required": [
      "end",
      "start"
   ]
}

Fields:
field end: int [Required]#

End.

Constraints:
  • ge = 0

field py_type: typing_extensions.Literal[app.bsky.feed.post#textSlice] = 'app.bsky.feed.post#textSlice' (alias '$type')#
field start: int [Required]#

Start.

Constraints:
  • ge = 0