chitose.app.bsky.actor package#

Submodules#

chitose.app.bsky.actor.defs module#

class chitose.app.bsky.actor.defs.AdultContentPref(enabled: bool)#

Bases: Object

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.BskyAppProgressGuide(guide: str)#

Bases: Object

If set, an active progress guide. Once completed, can be set to undefined. Should have unspecced fields tracking progress.

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.BskyAppStatePref(active_progress_guide: BskyAppProgressGuide | None = None, queued_nudges: list[str] | None = None, nuxs: list[Nux] | None = None)#

Bases: Object

A grab bag of state that’s specific to the bsky.app program. Third-party apps shouldn’t use this.

Parameters:
  • queued_nudges – An array of tokens which identify nudges (modals, popups, tours, highlight dots) that should be shown to the user.

  • nuxs – Storage for NUXs the user has encountered.

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.ContentLabelPref(label: str, visibility: Literal['ignore', 'show', 'warn', 'hide'], labeler_did: str | None = None)#

Bases: Object

Parameters:

labeler_did – Which labeler does this preference apply to? If undefined, applies globally.

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.FeedViewPref(feed: str, hide_replies: bool | None = None, hide_replies_by_unfollowed: bool | None = None, hide_replies_by_like_count: int | None = None, hide_reposts: bool | None = None, hide_quote_posts: bool | None = None)#

Bases: Object

Parameters:
  • feed – The URI of the feed, or an identifier which describes the feed.

  • hide_replies – Hide replies in the feed.

  • hide_replies_by_unfollowed – Hide replies in the feed if they are not by followed users.

  • hide_replies_by_like_count – Hide replies in the feed if they do not have this number of likes.

  • hide_reposts – Hide reposts in the feed.

  • hide_quote_posts – Hide quote posts in the feed.

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.HiddenPostsPref(items: list[str])#

Bases: Object

Parameters:

items – A list of URIs of posts the account owner has hidden.

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.InterestsPref(tags: list[str])#

Bases: Object

Parameters:

tags – A list of tags which describe the account owner’s interests gathered during onboarding.

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.KnownFollowers(count: int, followers: list[ProfileViewBasic])#

Bases: Object

The subject’s followers whom you also follow

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.LabelerPrefItem(did: str)#

Bases: Object

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.LabelersPref(labelers: list[LabelerPrefItem])#

Bases: Object

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.MutedWord(value: str, targets: list[Literal['content', 'tag']], id: str | None = None, actor_target: Literal['all', 'exclude-following'] | None = None, expires_at: str | None = None)#

Bases: Object

A word that the account owner has muted.

Parameters:
  • value – The muted word itself.

  • targets – The intended targets of the muted word.

  • actor_target – Groups of users to apply the muted word to. If undefined, applies to all users.

  • expires_at – The date and time at which the muted word will expire and no longer be applied.

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.MutedWordsPref(items: list[MutedWord])#

Bases: Object

Parameters:

items – A list of words the account owner has muted.

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.Nux(id: str, completed: bool, data: str | None = None, expires_at: str | None = None)#

Bases: Object

A new user experiences (NUX) storage object

Parameters:
  • data – Arbitrary data for the NUX. The structure is defined by the NUX itself. Limited to 300 characters.

  • expires_at – The date and time at which the NUX will expire and should be considered completed.

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.PersonalDetailsPref(birth_date: str | None = None)#

Bases: Object

Parameters:

birth_date – The birth date of account owner.

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.ProfileAssociated(lists: int | None = None, feedgens: int | None = None, starter_packs: int | None = None, labeler: bool | None = None, chat: ProfileAssociatedChat | None = None)#

Bases: Object

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.ProfileAssociatedChat(allow_incoming: Literal['all', 'none', 'following'])#

Bases: Object

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.ProfileView(did: str, handle: str, display_name: str | None = None, description: str | None = None, avatar: str | None = None, associated: ProfileAssociated | None = None, indexed_at: str | None = None, created_at: str | None = None, viewer: ViewerState | None = None, labels: list[Label] | None = None)#

Bases: Object

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.ProfileViewBasic(did: str, handle: str, display_name: str | None = None, avatar: str | None = None, associated: ProfileAssociated | None = None, viewer: ViewerState | None = None, labels: list[Label] | None = None, created_at: str | None = None)#

Bases: Object

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.ProfileViewDetailed(did: str, handle: str, display_name: str | None = None, description: str | None = None, avatar: str | None = None, banner: str | None = None, followers_count: int | None = None, follows_count: int | None = None, posts_count: int | None = None, associated: ProfileAssociated | None = None, joined_via_starter_pack: StarterPackViewBasic | None = None, indexed_at: str | None = None, created_at: str | None = None, viewer: ViewerState | None = None, labels: list[Label] | None = None, pinned_post: StrongRef | None = None)#

Bases: Object

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.SavedFeed(id: str, type: Literal['feed', 'list', 'timeline'], value: str, pinned: bool)#

Bases: Object

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.SavedFeedsPref(pinned: list[str], saved: list[str], timeline_index: int | None = None)#

Bases: Object

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.SavedFeedsPrefV2(items: list[SavedFeed])#

Bases: Object

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.ThreadViewPref(sort: Literal['oldest', 'newest', 'most-likes', 'random'] | None = None, prioritize_followed_users: bool | None = None)#

Bases: Object

Parameters:
  • sort – Sorting mode for threads.

  • prioritize_followed_users – Show followed users at the top of all replies.

to_dict() dict[str, Any]#
class chitose.app.bsky.actor.defs.ViewerState(muted: bool | None = None, muted_by_list: ListViewBasic | None = None, blocked_by: bool | None = None, blocking: str | None = None, blocking_by_list: ListViewBasic | None = None, following: str | None = None, followed_by: str | None = None, known_followers: KnownFollowers | None = None)#

Bases: Object

Metadata about the requesting account’s relationship with the subject account. Only has meaningful content for authed requests.

to_dict() dict[str, Any]#

chitose.app.bsky.actor.get_preferences module#

chitose.app.bsky.actor.get_profile module#

chitose.app.bsky.actor.get_profiles module#

chitose.app.bsky.actor.get_suggestions module#

chitose.app.bsky.actor.profile module#

class chitose.app.bsky.actor.profile.Profile(display_name: str | None = None, description: str | None = None, avatar: Blob | None = None, banner: Blob | None = None, labels: SelfLabels | None = None, joined_via_starter_pack: StrongRef | None = None, pinned_post: StrongRef | None = None, created_at: str | None = None)#

Bases: Record

Parameters:
  • description – Free-form profile description text.

  • avatar – Small image to be displayed next to posts from account. AKA, ‘profile picture’

  • banner – Larger horizontal image to display behind profile view.

  • labels – Self-label values, specific to the Bluesky application, on the overall account.

to_dict() dict[str, Any]#

chitose.app.bsky.actor.put_preferences module#

chitose.app.bsky.actor.search_actors module#

chitose.app.bsky.actor.search_actors_typeahead module#

Module contents#

class chitose.app.bsky.actor.Actor_(call: Callable[[str, list[tuple[str, str | None | int | list[str]]], bytes | dict[str, Any] | None, dict[str, str]], bytes], subscribe: Callable[[str, list[tuple[str, str | None | int | list[str]]], Callable[[str | bytes], None]], None])#

Bases: object

We recommend calling methods in this class via the chitose.BskyAgent class instead of creating instances of this class directly.

get_preferences() bytes#

Get private preferences attached to the current account. Expected use is synchronization between multiple devices, and import/export during account migration. Requires auth.

get_profile(actor: str) bytes#

Get detailed profile view of an actor. Does not require auth, but contains relevant metadata with auth.

Parameters:

actor – Handle or DID of account to fetch profile of.

get_profiles(actors: list[str]) bytes#

Get detailed profile views of multiple actors.

get_suggestions(limit: int | None = None, cursor: str | None = None) bytes#

Get a list of suggested actors. Expected use is discovery of accounts to follow during new account onboarding.

put_preferences(preferences: list[AdultContentPref | ContentLabelPref | SavedFeedsPref | SavedFeedsPrefV2 | PersonalDetailsPref | FeedViewPref | ThreadViewPref | InterestsPref | MutedWordsPref | HiddenPostsPref | BskyAppStatePref | LabelersPref]) bytes#

Set the private preferences attached to the account.

search_actors(term: str | None = None, q: str | None = None, limit: int | None = None, cursor: str | None = None) bytes#

Find actors (profiles) matching search criteria. Does not require auth.

Parameters:
  • term – DEPRECATED: use ‘q’ instead.

  • q – Search query string. Syntax, phrase, boolean, and faceting is unspecified, but Lucene query syntax is recommended.

search_actors_typeahead(term: str | None = None, q: str | None = None, limit: int | None = None) bytes#

Find actor suggestions for a prefix search term. Expected use is for auto-completion during text field entry. Does not require auth.

Parameters:
  • term – DEPRECATED: use ‘q’ instead.

  • q – Search query prefix; not a full query string.