Client (API)
The reference for atproto_client: the clients, the generated namespaces, and the utilities around them. If you are looking for how to do something rather than for a signature, the guides are the better entry point.
There are three layers here, and you can move between them freely:
- Client / AsyncClient
The high-level, hand-written layer.
send_post,like,get_timeline,login, and the session and header machinery. Covers what people do most often, and nothing more. See Posting and Reading content.- Namespaces
The generated layer, and the real API. Every lexicon method on the network, reachable by its NSID:
client.com.atproto.repo.create_record(...),client.app.bsky.graph.get_follows(...). The high-level client is built out of these. See Records and repositories.- ClientRaw
The namespace roots with no convenience layer at all, for when you want nothing but XRPC.
Underneath all three sits Request, which wraps httpx and is where timeouts, proxies, retries, and headers are configured. See HTTP and transport.
- class atproto_client.AsyncClient(base_url: str | None = None, *args: Any, **kwargs: Any)
High-level client for XRPC of ATProto.
- class AtprotoServiceType(*values)
The type of atproto service.
- ATPROTO_LABELER = 'atproto_labeler'
- BSKY_CHAT = 'bsky_chat'
- BSKY_CHAT_DID: t.ClassVar[t.Literal['did:web:api.bsky.chat']] = 'did:web:api.bsky.chat'
- BSKY_LABELER_DID: t.ClassVar[t.Literal['did:plc:ar7c4by46qjdydhdevvrndac']] = 'did:plc:ar7c4by46qjdydhdevvrndac'
- clone() Self
Clone the client instance.
Used to customize atproto proxy and set of labeler services.
Note
The clone shares the session and its dispatcher with the original, so it stays authenticated even when it is created before the first login.
- Returns:
Cloned client instance.
- configure_labelers_header(labeler_dids: List[str]) None
Configure the atproto-labelers header to be applied on requests.
- Parameters:
labeler_dids – The DIDs of the labelers.
- configure_proxy_header(service_type: AtprotoServiceType | str, did: str) None
Configure the atproto-proxy header to be applied on requests.
- Parameters:
service_type – The type of service.
did – The DID of the proxy.
- async delete_follow(follow_uri: str) bool
Unfollow the profile.
- Parameters:
follow_uri – AT URI of the follow.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async delete_like(like_uri: str) bool
Unlike the post.
- Parameters:
like_uri – AT URI of the like.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async delete_post(post_uri: str) bool
Delete post.
- Parameters:
post_uri – AT URI of the post.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async delete_repost(repost_uri: str) bool
Unrepost the post (delete repost).
- Parameters:
repost_uri – AT URI of the repost.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- export_session_string() str
Export session string.
Note
This method is useful for storing the session and reusing it later.
Warning
You should use it if you create the client instance often. Because of server rate limits for createSession. Rate limited by handle. 30/5 min, 300/day.
Attention
You must export session at the end of the Client`s life cycle! Alternatively, you can subscribe to the session change event. Use
on_session_change()to register handler.Example
>>> from atproto import Client >>> # the first time login with login and password >>> client = Client() >>> client.login('login', 'password') >>> session_string = client.export_session_string() >>> # store session_string somewhere. >>> # for example, in env and next time use it for login >>> client2 = Client() >>> client2.login(session_string=session_string)- Returns:
Session string.
- Return type:
- async follow(subject: str) CreateRecordResponse
Follow the profile.
- Parameters:
subject – DID of the profile.
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async get_author_feed(actor: str, cursor: str | None = None, filter: str | None = None, limit: int | None = None, include_pins: bool = False) Response
Get author (profile) feed.
- Parameters:
actor – Actor (handle or DID).
cursor – Cursor of the last like in the previous page.
filter – Filter.
limit – Limit count of likes to return.
include_pins – Include pins.
- Returns:
Feed.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- get_current_time() datetime
Get current time in Server Timezone (UTC).
- get_current_time_iso() str
Get current time in Server Timezone (UTC) and ISO format.
- async get_followers(actor: str, cursor: str | None = None, limit: int | None = None) Response
Get followers of the profile.
- Parameters:
actor – Actor (handle or DID).
cursor – Cursor of the next page.
limit – Limit count of followers to return.
- Returns:
Followers.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async get_follows(actor: str, cursor: str | None = None, limit: int | None = None) Response
Get follows of the profile.
- Parameters:
actor – Actor (handle or DID).
cursor – Cursor of the next page.
limit – Limit count of follows to return.
- Returns:
Follows.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async get_likes(uri: str, cid: str | None = None, cursor: str | None = None, limit: int | None = None) Response
Get likes.
- Parameters:
uri – AT URI.
cid – CID.
cursor – Cursor of the last like in the previous page.
limit – Limit count of likes to return.
- Returns:
Likes.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async get_post(post_rkey: str, profile_identify: str | None = None, cid: str | None = None) GetRecordResponse
Get post.
- Parameters:
post_rkey – ID (slug) of the post.
profile_identify – Handler or DID. Who created the post.
cid – The CID of the version of the post.
- Returns:
Post.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async get_post_thread(uri: str, depth: int | None = None, parent_height: int | None = None) Response
Get post thread.
- Parameters:
uri – AT URI.
depth – Depth of the thread.
parent_height – Height of the parent post.
- Returns:
Post thread.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async get_posts(uris: List[str]) Response
Get posts.
- Parameters:
uris – Uris (AT URI).
Example
client.get_posts(['at://did:plc:kvwvcn5iqfooopmyzvb4qzba/app.bsky.feed.post/3k2yihcrp6f2c'])- Returns:
Posts.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async get_profile(actor: str) ProfileViewDetailed
Get profile.
- Parameters:
actor – Actor (handle or DID).
- Returns:
Profile.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async get_profiles(actors: List[str]) Response
Get profiles.
- Parameters:
actors – List of actors (handles or DIDs).
- Returns:
Profiles.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async get_reposted_by(uri: str, cid: str | None = None, cursor: str | None = None, limit: int | None = None) Response
Get reposted by (reposts).
- Parameters:
uri – AT URI.
cid – CID.
cursor – Cursor of the last like in the previous page.
limit – Limit count of likes to return.
- Returns:
Reposts.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- get_time_from_timestamp(timestamp: int) datetime
Get datetime from timestamp in Server Timezone (UTC).
- async get_timeline(algorithm: str | None = None, cursor: str | None = None, limit: int | None = None) Response
Get home timeline.
- Parameters:
algorithm – Algorithm.
cursor – Cursor of the last like in the previous page.
limit – Limit count of likes to return.
- Returns:
Home timeline.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async invoke_procedure(nsid: str, params: ParamsModelBase | None = None, data: DataModelBase | bytes | None = None, **kwargs: Any) Response
- async invoke_query(nsid: str, params: ParamsModelBase | None = None, data: DataModelBase | bytes | None = None, **kwargs: Any) Response
- async like(uri: str, cid: str) CreateRecordResponse
Like the record.
- Parameters:
cid – The CID of the record.
uri – The URI of the record.
Note
Record could be post, custom feed, etc.
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async login(login: str | None = None, password: str | None = None, session_string: str | None = None, auth_factor_token: str | None = None, fetch_bsky_profile: bool = True) ProfileViewDetailed | None
Authorize a client and get profile info.
- Parameters:
login – Handle/username of the account.
password – Main or app-specific password of the account.
session_string – Session string (use
export_session_string()to get it).auth_factor_token – Auth factor token (for Email 2FA).
fetch_bsky_profile – Look up the Bluesky profile of the account after authorizing.
Note
Either session_string or login and password should be provided.
Note
Authorization itself uses only
com.atproto.server. The profile lookup isapp.bsky.actor.getProfile, which not every PDS serves. A PDS that does not serve it does not fail the login:meisNoneand a warning is emitted. Any other failure of the lookup, such as an expired session, propagates. Passfetch_bsky_profile=Falseon a PDS withoutapp.bskyto skip the request and the warning.- Returns:
Profile information, or
Nonewhen it was not fetched.- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async mute(actor: str) bool
Mute actor (profile).
- Parameters:
actor – Actor (handle or DID).
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- on_session_change(callback: Callable[[SessionEvent, Session], Coroutine[Any, Any, None]] | Callable[[SessionEvent, Session], None]) None
Register a callback for session change event.
- Parameters:
callback – A callback to be called when the session changes. The callback must accept two arguments: event and session.
Note
Possible events: SessionEvent.IMPORT, SessionEvent.CREATE, SessionEvent.REFRESH.
Note
You can register both synchronous and asynchronous callbacks.
Tip
You should save the session string to persistent storage on SessionEvent.CREATE and SessionEvent.REFRESH event.
Example
>>> from atproto import AsyncClient, SessionEvent, Session >>> >>> client = AsyncClient() >>> >>> @client.on_session_change >>> async def on_session_change(event: SessionEvent, session: Session): >>> print(event, session) >>> >>> # or you can use this syntax: >>> # client.on_session_change(on_session_change)- Returns:
- async post(text: str | TextBuilder, profile_identify: str | None = None, reply_to: ReplyRef | None = None, embed: Main | Main | Main | Main | Main | None = None, langs: List[str] | None = None, facets: List[Main] | None = None) CreateRecordResponse
Send post.
Note
If profile_identify is not provided will be sent to the current profile.
The async default language is
en. Available languages are async defined inatproto.xrpc_client.models.languages.- Parameters:
text – Text of the post.
profile_identify – Handle or DID. Where to send post.
reply_to – Root and parent of the post to reply to.
embed – Embed models that should be attached to the post.
langs – List of used languages in the post.
facets – List of facets (rich text items).
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async repost(uri: str, cid: str) CreateRecordResponse
Repost post.
- Parameters:
cid – The CID of the post.
uri – The URI of the post.
- Returns:
Reference to the reposted record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- property request: AsyncRequest
- async resolve_handle(handle: str) Response
Resolve the handle.
- Parameters:
handle – Handle.
- Returns:
Resolved handle (DID).
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async send_image(text: str | TextBuilder, image: bytes, image_alt: str, profile_identify: str | None = None, reply_to: ReplyRef | None = None, langs: List[str] | None = None, facets: List[Main] | None = None, image_aspect_ratio: AspectRatio | None = None) CreateRecordResponse
Send post with attached image.
Note
If profile_identify is not provided will be sent to the current profile.
- Parameters:
text – Text of the post.
image – Binary image to attach.
image_alt – Text version of the image.
profile_identify – Handle or DID. Where to send post.
reply_to – Root and parent of the post to reply to.
langs – List of used languages in the post.
facets – List of facets (rich text items).
image_aspect_ratio – Aspect ratio of the image.
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async send_images(text: str | TextBuilder, images: List[bytes], image_alts: List[str] | None = None, profile_identify: str | None = None, reply_to: ReplyRef | None = None, langs: List[str] | None = None, facets: List[Main] | None = None, image_aspect_ratios: List[AspectRatio] | None = None) CreateRecordResponse
Send post with multiple attached images (up to 4 images).
Note
If profile_identify is not provided will be sent to the current profile.
- Parameters:
text – Text of the post.
images – List of binary images to attach. The length must be less than or equal to 4.
image_alts – List of text version of the images. The length should be shorter than or equal to the length of images.
profile_identify – Handle or DID. Where to send post.
reply_to – Root and parent of the post to reply to.
langs – List of used languages in the post.
facets – List of facets (rich text items).
image_aspect_ratios – List of aspect ratios of the images. The length should be shorter than or equal to the length of images.
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async send_post(text: str | TextBuilder, profile_identify: str | None = None, reply_to: ReplyRef | None = None, embed: Main | Main | Main | Main | Main | None = None, langs: List[str] | None = None, facets: List[Main] | None = None) CreateRecordResponse
Send post.
Note
If profile_identify is not provided will be sent to the current profile.
The async default language is
en. Available languages are async defined inatproto.xrpc_client.models.languages.- Parameters:
text – Text of the post.
profile_identify – Handle or DID. Where to send post.
reply_to – Root and parent of the post to reply to.
embed – Embed models that should be attached to the post.
langs – List of used languages in the post.
facets – List of facets (rich text items).
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async send_video(text: str | TextBuilder, video: bytes, video_alt: str | None = None, profile_identify: str | None = None, reply_to: ReplyRef | None = None, langs: List[str] | None = None, facets: List[Main] | None = None, video_aspect_ratio: AspectRatio | None = None) CreateRecordResponse
Send post with attached video.
Note
If profile_identify is not provided will be sent to the current profile.
- Parameters:
text – Text of the post.
video – Binary video to attach.
video_alt – Text version of the video.
profile_identify – Handle or DID. Where to send post.
reply_to – Root and parent of the post to reply to.
langs – List of used languages in the post.
facets – List of facets (rich text items).
video_aspect_ratio – Aspect ratio of the video.
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async unfollow(follow_uri: str) bool
Unfollow the profile.
- Parameters:
follow_uri – AT URI of the follow.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async unlike(like_uri: str) bool
Unlike the post.
- Parameters:
like_uri – AT URI of the like.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async unmute(actor: str) bool
Unmute actor (profile).
- Parameters:
actor – Actor (handle or DID).
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async unrepost(repost_uri: str) bool
Unrepost the post (delete repost).
- Parameters:
repost_uri – AT URI of the repost.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async unsend(post_uri: str) bool
Delete post.
- Parameters:
post_uri – AT URI of the post.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- update_base_url(base_url: str | None = None) None
Update XRPC base URL.
Typically used for switching between PDSs.
- Parameters:
base_url – New base URL. Defaults to bsky.social.
- async update_handle(handle: str) bool
Update the handle.
- Parameters:
handle – New handle.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- async upload_blob(data: bytes) Response
Upload blob.
- Parameters:
data – Binary data.
- Returns:
Uploaded blob reference.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- with_bsky_chat_proxy() Self
Get a new client instance with the atproto-proxy header configured for bsky.chat.
- Returns:
Configured client instance.
- Return type:
self
- with_bsky_labeler() Self
Get a new client instance with the atproto-accept-labelers header configured for Bluesky Labeler.
- Returns:
Configured client instance.
- Return type:
self
- with_labelers(labeler_dids: List[str]) Self
Get a new client instance with the atproto-accept-labelers header configured.
- Parameters:
labeler_dids – The DIDs of the labelers.
- Returns:
Configured client instance.
- Return type:
self
- with_proxy(service_type: AtprotoServiceType | str, did: str) Self
Get a new client instance with the atproto-proxy header configured.
- Parameters:
service_type – The type of service.
did – The DID of the proxy.
- Returns:
Configured client instance.
- Return type:
self
- me: t.Optional[models.AppBskyActorDefs.ProfileViewDetailed]
Profile of the logged-in account, when it was fetched at login.
- chat: async_ns.ChatNamespace
- internal: async_ns.InternalNamespace
- network: async_ns.NetworkNamespace
- site: async_ns.SiteNamespace
- tools: async_ns.ToolsNamespace
- class atproto_client.Client(base_url: str | None = None, *args: Any, **kwargs: Any)
High-level client for XRPC of ATProto.
- class AtprotoServiceType(*values)
The type of atproto service.
- ATPROTO_LABELER = 'atproto_labeler'
- BSKY_CHAT = 'bsky_chat'
- BSKY_CHAT_DID: t.ClassVar[t.Literal['did:web:api.bsky.chat']] = 'did:web:api.bsky.chat'
- BSKY_LABELER_DID: t.ClassVar[t.Literal['did:plc:ar7c4by46qjdydhdevvrndac']] = 'did:plc:ar7c4by46qjdydhdevvrndac'
- clone() Self
Clone the client instance.
Used to customize atproto proxy and set of labeler services.
Note
The clone shares the session and its dispatcher with the original, so it stays authenticated even when it is created before the first login.
- Returns:
Cloned client instance.
- configure_labelers_header(labeler_dids: List[str]) None
Configure the atproto-labelers header to be applied on requests.
- Parameters:
labeler_dids – The DIDs of the labelers.
- configure_proxy_header(service_type: AtprotoServiceType | str, did: str) None
Configure the atproto-proxy header to be applied on requests.
- Parameters:
service_type – The type of service.
did – The DID of the proxy.
- delete_follow(follow_uri: str) bool
Unfollow the profile.
- Parameters:
follow_uri – AT URI of the follow.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- delete_like(like_uri: str) bool
Unlike the post.
- Parameters:
like_uri – AT URI of the like.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- delete_post(post_uri: str) bool
Delete post.
- Parameters:
post_uri – AT URI of the post.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- delete_repost(repost_uri: str) bool
Unrepost the post (delete repost).
- Parameters:
repost_uri – AT URI of the repost.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- export_session_string() str
Export session string.
Note
This method is useful for storing the session and reusing it later.
Warning
You should use it if you create the client instance often. Because of server rate limits for createSession. Rate limited by handle. 30/5 min, 300/day.
Attention
You must export session at the end of the Client`s life cycle! Alternatively, you can subscribe to the session change event. Use
on_session_change()to register handler.Example
>>> from atproto import Client >>> # the first time login with login and password >>> client = Client() >>> client.login('login', 'password') >>> session_string = client.export_session_string() >>> # store session_string somewhere. >>> # for example, in env and next time use it for login >>> client2 = Client() >>> client2.login(session_string=session_string)- Returns:
Session string.
- Return type:
- follow(subject: str) CreateRecordResponse
Follow the profile.
- Parameters:
subject – DID of the profile.
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- get_author_feed(actor: str, cursor: str | None = None, filter: str | None = None, limit: int | None = None, include_pins: bool = False) Response
Get author (profile) feed.
- Parameters:
actor – Actor (handle or DID).
cursor – Cursor of the last like in the previous page.
filter – Filter.
limit – Limit count of likes to return.
include_pins – Include pins.
- Returns:
Feed.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- get_current_time() datetime
Get current time in Server Timezone (UTC).
- get_current_time_iso() str
Get current time in Server Timezone (UTC) and ISO format.
- get_followers(actor: str, cursor: str | None = None, limit: int | None = None) Response
Get followers of the profile.
- Parameters:
actor – Actor (handle or DID).
cursor – Cursor of the next page.
limit – Limit count of followers to return.
- Returns:
Followers.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- get_follows(actor: str, cursor: str | None = None, limit: int | None = None) Response
Get follows of the profile.
- Parameters:
actor – Actor (handle or DID).
cursor – Cursor of the next page.
limit – Limit count of follows to return.
- Returns:
Follows.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- get_likes(uri: str, cid: str | None = None, cursor: str | None = None, limit: int | None = None) Response
Get likes.
- Parameters:
uri – AT URI.
cid – CID.
cursor – Cursor of the last like in the previous page.
limit – Limit count of likes to return.
- Returns:
Likes.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- get_post(post_rkey: str, profile_identify: str | None = None, cid: str | None = None) GetRecordResponse
Get post.
- Parameters:
post_rkey – ID (slug) of the post.
profile_identify – Handler or DID. Who created the post.
cid – The CID of the version of the post.
- Returns:
Post.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- get_post_thread(uri: str, depth: int | None = None, parent_height: int | None = None) Response
Get post thread.
- Parameters:
uri – AT URI.
depth – Depth of the thread.
parent_height – Height of the parent post.
- Returns:
Post thread.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- get_posts(uris: List[str]) Response
Get posts.
- Parameters:
uris – Uris (AT URI).
Example
client.get_posts(['at://did:plc:kvwvcn5iqfooopmyzvb4qzba/app.bsky.feed.post/3k2yihcrp6f2c'])- Returns:
Posts.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- get_profile(actor: str) ProfileViewDetailed
Get profile.
- Parameters:
actor – Actor (handle or DID).
- Returns:
Profile.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- get_profiles(actors: List[str]) Response
Get profiles.
- Parameters:
actors – List of actors (handles or DIDs).
- Returns:
Profiles.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- get_reposted_by(uri: str, cid: str | None = None, cursor: str | None = None, limit: int | None = None) Response
Get reposted by (reposts).
- Parameters:
uri – AT URI.
cid – CID.
cursor – Cursor of the last like in the previous page.
limit – Limit count of likes to return.
- Returns:
Reposts.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- get_time_from_timestamp(timestamp: int) datetime
Get datetime from timestamp in Server Timezone (UTC).
- get_timeline(algorithm: str | None = None, cursor: str | None = None, limit: int | None = None) Response
Get home timeline.
- Parameters:
algorithm – Algorithm.
cursor – Cursor of the last like in the previous page.
limit – Limit count of likes to return.
- Returns:
Home timeline.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- invoke_procedure(nsid: str, params: ParamsModelBase | None = None, data: DataModelBase | bytes | None = None, **kwargs: Any) Response
- invoke_query(nsid: str, params: ParamsModelBase | None = None, data: DataModelBase | bytes | None = None, **kwargs: Any) Response
- like(uri: str, cid: str) CreateRecordResponse
Like the record.
- Parameters:
cid – The CID of the record.
uri – The URI of the record.
Note
Record could be post, custom feed, etc.
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- login(login: str | None = None, password: str | None = None, session_string: str | None = None, auth_factor_token: str | None = None, fetch_bsky_profile: bool = True) ProfileViewDetailed | None
Authorize a client and get profile info.
- Parameters:
login – Handle/username of the account.
password – Main or app-specific password of the account.
session_string – Session string (use
export_session_string()to get it).auth_factor_token – Auth factor token (for Email 2FA).
fetch_bsky_profile – Look up the Bluesky profile of the account after authorizing.
Note
Either session_string or login and password should be provided.
Note
Authorization itself uses only
com.atproto.server. The profile lookup isapp.bsky.actor.getProfile, which not every PDS serves. A PDS that does not serve it does not fail the login:meisNoneand a warning is emitted. Any other failure of the lookup, such as an expired session, propagates. Passfetch_bsky_profile=Falseon a PDS withoutapp.bskyto skip the request and the warning.- Returns:
Profile information, or
Nonewhen it was not fetched.- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- mute(actor: str) bool
Mute actor (profile).
- Parameters:
actor – Actor (handle or DID).
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- on_session_change(callback: Callable[[SessionEvent, Session], None]) None
Register a callback for session change event.
- Parameters:
callback – A callback to be called when the session changes. The callback must accept two arguments: event and session.
Note
Possible events: SessionEvent.IMPORT, SessionEvent.CREATE, SessionEvent.REFRESH.
Tip
You should save the session string to persistent storage on SessionEvent.CREATE and SessionEvent.REFRESH event.
Example
>>> from atproto import Client, SessionEvent, Session >>> >>> client = Client() >>> >>> @client.on_session_change >>> def on_session_change(event: SessionEvent, session: Session): >>> print(event, session) >>> >>> # or you can use this syntax: >>> # client.on_session_change(on_session_change)- Returns:
- post(text: str | TextBuilder, profile_identify: str | None = None, reply_to: ReplyRef | None = None, embed: Main | Main | Main | Main | Main | None = None, langs: List[str] | None = None, facets: List[Main] | None = None) CreateRecordResponse
Send post.
Note
If profile_identify is not provided will be sent to the current profile.
The default language is
en. Available languages are defined inatproto.xrpc_client.models.languages.- Parameters:
text – Text of the post.
profile_identify – Handle or DID. Where to send post.
reply_to – Root and parent of the post to reply to.
embed – Embed models that should be attached to the post.
langs – List of used languages in the post.
facets – List of facets (rich text items).
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- repost(uri: str, cid: str) CreateRecordResponse
Repost post.
- Parameters:
cid – The CID of the post.
uri – The URI of the post.
- Returns:
Reference to the reposted record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- property request: Request
- resolve_handle(handle: str) Response
Resolve the handle.
- Parameters:
handle – Handle.
- Returns:
Resolved handle (DID).
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- send_image(text: str | TextBuilder, image: bytes, image_alt: str, profile_identify: str | None = None, reply_to: ReplyRef | None = None, langs: List[str] | None = None, facets: List[Main] | None = None, image_aspect_ratio: AspectRatio | None = None) CreateRecordResponse
Send post with attached image.
Note
If profile_identify is not provided will be sent to the current profile.
- Parameters:
text – Text of the post.
image – Binary image to attach.
image_alt – Text version of the image.
profile_identify – Handle or DID. Where to send post.
reply_to – Root and parent of the post to reply to.
langs – List of used languages in the post.
facets – List of facets (rich text items).
image_aspect_ratio – Aspect ratio of the image.
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- send_images(text: str | TextBuilder, images: List[bytes], image_alts: List[str] | None = None, profile_identify: str | None = None, reply_to: ReplyRef | None = None, langs: List[str] | None = None, facets: List[Main] | None = None, image_aspect_ratios: List[AspectRatio] | None = None) CreateRecordResponse
Send post with multiple attached images (up to 4 images).
Note
If profile_identify is not provided will be sent to the current profile.
- Parameters:
text – Text of the post.
images – List of binary images to attach. The length must be less than or equal to 4.
image_alts – List of text version of the images. The length should be shorter than or equal to the length of images.
profile_identify – Handle or DID. Where to send post.
reply_to – Root and parent of the post to reply to.
langs – List of used languages in the post.
facets – List of facets (rich text items).
image_aspect_ratios – List of aspect ratios of the images. The length should be shorter than or equal to the length of images.
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- send_post(text: str | TextBuilder, profile_identify: str | None = None, reply_to: ReplyRef | None = None, embed: Main | Main | Main | Main | Main | None = None, langs: List[str] | None = None, facets: List[Main] | None = None) CreateRecordResponse
Send post.
Note
If profile_identify is not provided will be sent to the current profile.
The default language is
en. Available languages are defined inatproto.xrpc_client.models.languages.- Parameters:
text – Text of the post.
profile_identify – Handle or DID. Where to send post.
reply_to – Root and parent of the post to reply to.
embed – Embed models that should be attached to the post.
langs – List of used languages in the post.
facets – List of facets (rich text items).
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- send_video(text: str | TextBuilder, video: bytes, video_alt: str | None = None, profile_identify: str | None = None, reply_to: ReplyRef | None = None, langs: List[str] | None = None, facets: List[Main] | None = None, video_aspect_ratio: AspectRatio | None = None) CreateRecordResponse
Send post with attached video.
Note
If profile_identify is not provided will be sent to the current profile.
- Parameters:
text – Text of the post.
video – Binary video to attach.
video_alt – Text version of the video.
profile_identify – Handle or DID. Where to send post.
reply_to – Root and parent of the post to reply to.
langs – List of used languages in the post.
facets – List of facets (rich text items).
video_aspect_ratio – Aspect ratio of the video.
- Returns:
Reference to the created record.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- unfollow(follow_uri: str) bool
Unfollow the profile.
- Parameters:
follow_uri – AT URI of the follow.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- unlike(like_uri: str) bool
Unlike the post.
- Parameters:
like_uri – AT URI of the like.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- unmute(actor: str) bool
Unmute actor (profile).
- Parameters:
actor – Actor (handle or DID).
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- unrepost(repost_uri: str) bool
Unrepost the post (delete repost).
- Parameters:
repost_uri – AT URI of the repost.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- unsend(post_uri: str) bool
Delete post.
- Parameters:
post_uri – AT URI of the post.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- update_base_url(base_url: str | None = None) None
Update XRPC base URL.
Typically used for switching between PDSs.
- Parameters:
base_url – New base URL. Defaults to bsky.social.
- update_handle(handle: str) bool
Update the handle.
- Parameters:
handle – New handle.
- Returns:
Success status.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- upload_blob(data: bytes) Response
Upload blob.
- Parameters:
data – Binary data.
- Returns:
Uploaded blob reference.
- Return type:
- Raises:
atproto.exceptions.AtProtocolError – Base exception.
- with_bsky_chat_proxy() Self
Get a new client instance with the atproto-proxy header configured for bsky.chat.
- Returns:
Configured client instance.
- Return type:
self
- with_bsky_labeler() Self
Get a new client instance with the atproto-accept-labelers header configured for Bluesky Labeler.
- Returns:
Configured client instance.
- Return type:
self
- with_labelers(labeler_dids: List[str]) Self
Get a new client instance with the atproto-accept-labelers header configured.
- Parameters:
labeler_dids – The DIDs of the labelers.
- Returns:
Configured client instance.
- Return type:
self
- with_proxy(service_type: AtprotoServiceType | str, did: str) Self
Get a new client instance with the atproto-proxy header configured.
- Parameters:
service_type – The type of service.
did – The DID of the proxy.
- Returns:
Configured client instance.
- Return type:
self
- me: t.Optional[models.AppBskyActorDefs.ProfileViewDetailed]
Profile of the logged-in account, when it was fetched at login.
- app: sync_ns.AppNamespace
- chat: sync_ns.ChatNamespace
- com: sync_ns.ComNamespace
- internal: sync_ns.InternalNamespace
- network: sync_ns.NetworkNamespace
- site: sync_ns.SiteNamespace
- tools: sync_ns.ToolsNamespace
- class atproto_client.Session(handle: str, did: str, access_jwt: str, refresh_jwt: str, pds_endpoint: str | None = 'https://bsky.social')
- property access_jwt_payload: JwtPayload
- copy() Session
- encode() str
- export() str
- property refresh_jwt_payload: JwtPayload
- handle: str
- did: str
- access_jwt: str
- refresh_jwt: str
- class atproto_client.SessionEvent(*values)
- IMPORT = 'import'
- CREATE = 'create'
- REFRESH = 'refresh'
Submodules
- Clients
- Namespace
AppNamespaceAppBskyNamespaceAppBskyActorContentvisibilitydeclarationRecordAppBskyActorProfileRecordAppBskyActorStatusRecordAppBskyActorNamespaceAppBskyAgeassuranceNamespaceAppBskyBookmarkNamespaceAppBskyContactNamespaceAppBskyContactNamespace.dismiss_match()AppBskyContactNamespace.get_matches()AppBskyContactNamespace.get_sync_status()AppBskyContactNamespace.import_contacts()AppBskyContactNamespace.remove_data()AppBskyContactNamespace.send_notification()AppBskyContactNamespace.start_phone_verification()AppBskyContactNamespace.verify_phone()
AppBskyDraftNamespaceAppBskyEmbedNamespaceAppBskyFeedGeneratorRecordAppBskyFeedLikeRecordAppBskyFeedPostRecordAppBskyFeedPostgateRecordAppBskyFeedRepostRecordAppBskyFeedThreadgateRecordAppBskyFeedNamespaceAppBskyFeedNamespace.describe_feed_generator()AppBskyFeedNamespace.get_actor_feeds()AppBskyFeedNamespace.get_actor_likes()AppBskyFeedNamespace.get_author_feed()AppBskyFeedNamespace.get_feed()AppBskyFeedNamespace.get_feed_generator()AppBskyFeedNamespace.get_feed_generators()AppBskyFeedNamespace.get_feed_skeleton()AppBskyFeedNamespace.get_likes()AppBskyFeedNamespace.get_list_feed()AppBskyFeedNamespace.get_post_thread()AppBskyFeedNamespace.get_posts()AppBskyFeedNamespace.get_quotes()AppBskyFeedNamespace.get_reposted_by()AppBskyFeedNamespace.get_suggested_feeds()AppBskyFeedNamespace.get_timeline()AppBskyFeedNamespace.search_posts()AppBskyFeedNamespace.search_posts_v2()AppBskyFeedNamespace.send_interactions()
AppBskyGraphBlockRecordAppBskyGraphFollowRecordAppBskyGraphListRecordAppBskyGraphListblockRecordAppBskyGraphListitemRecordAppBskyGraphReferencelistoptoutRecordAppBskyGraphStarterpackRecordAppBskyGraphVerificationRecordAppBskyGraphNamespaceAppBskyGraphNamespace.get_actor_starter_packs()AppBskyGraphNamespace.get_blocks()AppBskyGraphNamespace.get_followers()AppBskyGraphNamespace.get_follows()AppBskyGraphNamespace.get_known_followers()AppBskyGraphNamespace.get_list()AppBskyGraphNamespace.get_list_blocks()AppBskyGraphNamespace.get_list_mutes()AppBskyGraphNamespace.get_lists()AppBskyGraphNamespace.get_lists_with_membership()AppBskyGraphNamespace.get_mutes()AppBskyGraphNamespace.get_relationships()AppBskyGraphNamespace.get_starter_pack()AppBskyGraphNamespace.get_starter_packs()AppBskyGraphNamespace.get_starter_packs_with_membership()AppBskyGraphNamespace.get_suggested_follows_by_actor()AppBskyGraphNamespace.mute_actor()AppBskyGraphNamespace.mute_actor_list()AppBskyGraphNamespace.mute_thread()AppBskyGraphNamespace.search_starter_packs()AppBskyGraphNamespace.search_starter_packs_v2()AppBskyGraphNamespace.unmute_actor()AppBskyGraphNamespace.unmute_actor_list()AppBskyGraphNamespace.unmute_thread()
AppBskyLabelerServiceRecordAppBskyLabelerNamespaceAppBskyNotificationDeclarationRecordAppBskyNotificationNamespaceAppBskyNotificationNamespace.get_preferences()AppBskyNotificationNamespace.get_unread_count()AppBskyNotificationNamespace.list_activity_subscriptions()AppBskyNotificationNamespace.list_notifications()AppBskyNotificationNamespace.put_activity_subscription()AppBskyNotificationNamespace.put_preferences()AppBskyNotificationNamespace.put_preferences_v2()AppBskyNotificationNamespace.register_push()AppBskyNotificationNamespace.unregister_push()AppBskyNotificationNamespace.update_seen()
AppBskyUnspeccedNamespaceAppBskyUnspeccedNamespace.get_age_assurance_state()AppBskyUnspeccedNamespace.get_config()AppBskyUnspeccedNamespace.get_onboarding_suggested_starter_packs()AppBskyUnspeccedNamespace.get_onboarding_suggested_starter_packs_skeleton()AppBskyUnspeccedNamespace.get_onboarding_suggested_users_skeleton()AppBskyUnspeccedNamespace.get_popular_feed_generators()AppBskyUnspeccedNamespace.get_post_thread_other_v2()AppBskyUnspeccedNamespace.get_post_thread_v2()AppBskyUnspeccedNamespace.get_suggested_feeds()AppBskyUnspeccedNamespace.get_suggested_feeds_skeleton()AppBskyUnspeccedNamespace.get_suggested_onboarding_users()AppBskyUnspeccedNamespace.get_suggested_starter_packs()AppBskyUnspeccedNamespace.get_suggested_starter_packs_skeleton()AppBskyUnspeccedNamespace.get_suggested_users()AppBskyUnspeccedNamespace.get_suggested_users_for_discover()AppBskyUnspeccedNamespace.get_suggested_users_for_discover_skeleton()AppBskyUnspeccedNamespace.get_suggested_users_for_explore()AppBskyUnspeccedNamespace.get_suggested_users_for_explore_skeleton()AppBskyUnspeccedNamespace.get_suggested_users_for_see_more()AppBskyUnspeccedNamespace.get_suggested_users_for_see_more_skeleton()AppBskyUnspeccedNamespace.get_suggested_users_skeleton()AppBskyUnspeccedNamespace.get_suggestions_skeleton()AppBskyUnspeccedNamespace.get_tagged_suggestions()AppBskyUnspeccedNamespace.get_trending_topics()AppBskyUnspeccedNamespace.get_trends()AppBskyUnspeccedNamespace.get_trends_skeleton()AppBskyUnspeccedNamespace.init_age_assurance()AppBskyUnspeccedNamespace.search_actors_skeleton()AppBskyUnspeccedNamespace.search_posts_skeleton()AppBskyUnspeccedNamespace.search_starter_packs_skeleton()
AppBskyVideoNamespaceAppBskyVideoNamespace.abort_upload()AppBskyVideoNamespace.finish_upload()AppBskyVideoNamespace.get_job_status()AppBskyVideoNamespace.get_upload_limits()AppBskyVideoNamespace.get_upload_status()AppBskyVideoNamespace.start_upload()AppBskyVideoNamespace.upload_part()AppBskyVideoNamespace.upload_video()
ChatNamespaceChatBskyNamespaceChatBskyActorDeclarationRecordChatBskyActorNamespaceChatBskyConvoNamespaceChatBskyConvoNamespace.accept_convo()ChatBskyConvoNamespace.add_reaction()ChatBskyConvoNamespace.delete_message_for_self()ChatBskyConvoNamespace.get_convo()ChatBskyConvoNamespace.get_convo_availability()ChatBskyConvoNamespace.get_convo_for_members()ChatBskyConvoNamespace.get_convo_members()ChatBskyConvoNamespace.get_log()ChatBskyConvoNamespace.get_messages()ChatBskyConvoNamespace.get_unread_counts()ChatBskyConvoNamespace.leave_convo()ChatBskyConvoNamespace.list_convo_requests()ChatBskyConvoNamespace.list_convos()ChatBskyConvoNamespace.lock_convo()ChatBskyConvoNamespace.mute_convo()ChatBskyConvoNamespace.remove_reaction()ChatBskyConvoNamespace.send_message()ChatBskyConvoNamespace.send_message_batch()ChatBskyConvoNamespace.unlock_convo()ChatBskyConvoNamespace.unmute_convo()ChatBskyConvoNamespace.update_all_read()ChatBskyConvoNamespace.update_read()
ChatBskyGroupNamespaceChatBskyGroupNamespace.add_members()ChatBskyGroupNamespace.approve_join_request()ChatBskyGroupNamespace.create_group()ChatBskyGroupNamespace.create_join_link()ChatBskyGroupNamespace.disable_join_link()ChatBskyGroupNamespace.edit_group()ChatBskyGroupNamespace.edit_join_link()ChatBskyGroupNamespace.enable_join_link()ChatBskyGroupNamespace.get_join_link_previews()ChatBskyGroupNamespace.list_join_requests()ChatBskyGroupNamespace.list_mutual_groups()ChatBskyGroupNamespace.reject_join_request()ChatBskyGroupNamespace.remove_members()ChatBskyGroupNamespace.request_join()ChatBskyGroupNamespace.update_join_requests_read()ChatBskyGroupNamespace.withdraw_join_request()
ChatBskyModerationNamespaceChatBskyNotificationNamespaceComNamespaceComAtprotoNamespaceComAtprotoAdminNamespaceComAtprotoAdminNamespace.delete_account()ComAtprotoAdminNamespace.disable_account_invites()ComAtprotoAdminNamespace.disable_invite_codes()ComAtprotoAdminNamespace.enable_account_invites()ComAtprotoAdminNamespace.get_account_info()ComAtprotoAdminNamespace.get_account_infos()ComAtprotoAdminNamespace.get_invite_codes()ComAtprotoAdminNamespace.get_subject_status()ComAtprotoAdminNamespace.search_accounts()ComAtprotoAdminNamespace.send_email()ComAtprotoAdminNamespace.update_account_email()ComAtprotoAdminNamespace.update_account_handle()ComAtprotoAdminNamespace.update_account_password()ComAtprotoAdminNamespace.update_account_signing_key()ComAtprotoAdminNamespace.update_subject_status()
ComAtprotoIdentityNamespaceComAtprotoIdentityNamespace.get_recommended_did_credentials()ComAtprotoIdentityNamespace.refresh_identity()ComAtprotoIdentityNamespace.request_plc_operation_signature()ComAtprotoIdentityNamespace.resolve_did()ComAtprotoIdentityNamespace.resolve_handle()ComAtprotoIdentityNamespace.resolve_identity()ComAtprotoIdentityNamespace.sign_plc_operation()ComAtprotoIdentityNamespace.submit_plc_operation()ComAtprotoIdentityNamespace.update_handle()
ComAtprotoLabelNamespaceComAtprotoLexiconSchemaRecordComAtprotoLexiconNamespaceComAtprotoModerationNamespaceComAtprotoRepoNamespaceComAtprotoRepoNamespace.apply_writes()ComAtprotoRepoNamespace.create_record()ComAtprotoRepoNamespace.delete_record()ComAtprotoRepoNamespace.describe_repo()ComAtprotoRepoNamespace.get_record()ComAtprotoRepoNamespace.import_repo()ComAtprotoRepoNamespace.list_missing_blobs()ComAtprotoRepoNamespace.list_records()ComAtprotoRepoNamespace.put_record()ComAtprotoRepoNamespace.upload_blob()
ComAtprotoServerNamespaceComAtprotoServerNamespace.activate_account()ComAtprotoServerNamespace.check_account_status()ComAtprotoServerNamespace.confirm_email()ComAtprotoServerNamespace.create_account()ComAtprotoServerNamespace.create_app_password()ComAtprotoServerNamespace.create_invite_code()ComAtprotoServerNamespace.create_invite_codes()ComAtprotoServerNamespace.create_session()ComAtprotoServerNamespace.deactivate_account()ComAtprotoServerNamespace.delete_account()ComAtprotoServerNamespace.delete_session()ComAtprotoServerNamespace.describe_server()ComAtprotoServerNamespace.get_account_invite_codes()ComAtprotoServerNamespace.get_service_auth()ComAtprotoServerNamespace.get_session()ComAtprotoServerNamespace.list_app_passwords()ComAtprotoServerNamespace.refresh_session()ComAtprotoServerNamespace.request_account_delete()ComAtprotoServerNamespace.request_email_confirmation()ComAtprotoServerNamespace.request_email_update()ComAtprotoServerNamespace.request_password_reset()ComAtprotoServerNamespace.reserve_signing_key()ComAtprotoServerNamespace.reset_password()ComAtprotoServerNamespace.revoke_app_password()ComAtprotoServerNamespace.update_email()
ComAtprotoSyncNamespaceComAtprotoSyncNamespace.get_blob()ComAtprotoSyncNamespace.get_blocks()ComAtprotoSyncNamespace.get_checkout()ComAtprotoSyncNamespace.get_head()ComAtprotoSyncNamespace.get_host_status()ComAtprotoSyncNamespace.get_latest_commit()ComAtprotoSyncNamespace.get_record()ComAtprotoSyncNamespace.get_repo()ComAtprotoSyncNamespace.get_repo_status()ComAtprotoSyncNamespace.list_blobs()ComAtprotoSyncNamespace.list_hosts()ComAtprotoSyncNamespace.list_repos()ComAtprotoSyncNamespace.list_repos_by_collection()ComAtprotoSyncNamespace.notify_of_update()ComAtprotoSyncNamespace.request_crawl()
ComAtprotoTempNamespaceComAtprotoTempNamespace.add_reserved_handle()ComAtprotoTempNamespace.check_handle_availability()ComAtprotoTempNamespace.check_signup_queue()ComAtprotoTempNamespace.dereference_scope()ComAtprotoTempNamespace.fetch_labels()ComAtprotoTempNamespace.request_phone_verification()ComAtprotoTempNamespace.revoke_account_credentials()
ComGermnetworkDeclarationRecordComGermnetworkNamespaceInternalNamespaceInternalBskyNamespaceInternalBskyActorNamespaceNetworkNamespaceNetworkBskyNamespaceNetworkBskyJetstreamNamespaceNetworkBskyJetstreamNamespace.get_block()NetworkBskyJetstreamNamespace.get_import_status()NetworkBskyJetstreamNamespace.get_segment()NetworkBskyJetstreamNamespace.get_zstd_dictionary()NetworkBskyJetstreamNamespace.import_timestamps()NetworkBskyJetstreamNamespace.list_segments()NetworkBskyJetstreamNamespace.plan_snapshot()
SiteNamespaceSiteStandardDocumentRecordSiteStandardPublicationRecordSiteStandardNamespaceSiteStandardGraphRecommendRecordSiteStandardGraphSubscriptionRecordSiteStandardGraphNamespaceSiteStandardThemeBasicRecordSiteStandardThemeNamespaceToolsNamespaceToolsOzoneNamespaceToolsOzoneCommunicationNamespaceToolsOzoneHostingNamespaceToolsOzoneModerationNamespaceToolsOzoneModerationNamespace.cancel_scheduled_actions()ToolsOzoneModerationNamespace.emit_event()ToolsOzoneModerationNamespace.get_account_preferences()ToolsOzoneModerationNamespace.get_account_timeline()ToolsOzoneModerationNamespace.get_event()ToolsOzoneModerationNamespace.get_record()ToolsOzoneModerationNamespace.get_records()ToolsOzoneModerationNamespace.get_repo()ToolsOzoneModerationNamespace.get_reporter_stats()ToolsOzoneModerationNamespace.get_repos()ToolsOzoneModerationNamespace.get_subjects()ToolsOzoneModerationNamespace.list_scheduled_actions()ToolsOzoneModerationNamespace.query_events()ToolsOzoneModerationNamespace.query_statuses()ToolsOzoneModerationNamespace.schedule_action()ToolsOzoneModerationNamespace.search_repos()
ToolsOzoneQueueNamespaceToolsOzoneQueueNamespace.assign_moderator()ToolsOzoneQueueNamespace.create_queue()ToolsOzoneQueueNamespace.delete_queue()ToolsOzoneQueueNamespace.get_assignments()ToolsOzoneQueueNamespace.list_queues()ToolsOzoneQueueNamespace.route_reports()ToolsOzoneQueueNamespace.unassign_moderator()ToolsOzoneQueueNamespace.update_queue()
ToolsOzoneReportNamespaceToolsOzoneReportNamespace.assign_moderator()ToolsOzoneReportNamespace.close_reports()ToolsOzoneReportNamespace.create_activity()ToolsOzoneReportNamespace.get_assignments()ToolsOzoneReportNamespace.get_historical_stats()ToolsOzoneReportNamespace.get_latest_report()ToolsOzoneReportNamespace.get_live_stats()ToolsOzoneReportNamespace.get_report()ToolsOzoneReportNamespace.list_activities()ToolsOzoneReportNamespace.query_activities()ToolsOzoneReportNamespace.query_reports()ToolsOzoneReportNamespace.reassign_queue()ToolsOzoneReportNamespace.refresh_stats()ToolsOzoneReportNamespace.unassign_moderator()
ToolsOzoneSafelinkNamespaceToolsOzoneServerNamespaceToolsOzoneSetNamespaceToolsOzoneSettingNamespaceToolsOzoneSignatureNamespaceToolsOzoneTeamNamespaceToolsOzoneVerificationNamespace- Base
- Async
- Utils