Title: | Interact with 'Bluesky' Social |
---|---|
Description: | Collect data from and make posts on 'Bluesky' Social via the Hypertext Transfer Protocol (HTTP) Application Programming Interface (API), as documented at <https://atproto.com/specs/xrpc>. This further supports broader queries to the Authenticated Transfer (AT) Protocol <https://atproto.com/> which 'Bluesky' Social relies on. Data is returned in a tidy format and posts can be made using a simple interface. |
Authors: | Christopher T. Kenny [aut, cre] |
Maintainer: | Christopher T. Kenny <[email protected]> |
License: | MIT + file LICENSE |
Version: | 0.2.0 |
Built: | 2024-11-21 05:21:19 UTC |
Source: | https://github.com/christopherkenny/bskyr |
Authenticate a user
bs_auth(user, pass, save_auth = TRUE)
bs_auth(user, pass, save_auth = TRUE)
user |
Character. User name to log in with. |
pass |
Character. App password to log in with. |
save_auth |
Logical. Should the authentication information be saved? If
|
a list of authentication information
server/createSession.json (2023-09-30)
v0.0.1
(2023-09-30)
bs_auth(user = get_bluesky_user(), pass = get_bluesky_pass())
bs_auth(user = get_bluesky_user(), pass = get_bluesky_pass())
Create a record in a repo
bs_create_record( collection, record, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_create_record( collection, record, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
collection |
Character, length 1. The NSID of the record collection. |
record |
List, length 1. Description of a record. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of record information
repo/createRecord.json (2023-11-25)
v0.1.0
(2023-11-25)
# get info about a record post_rcd <- bs_get_record('https://bsky.app/profile/bskyr.bsky.social/post/3kf2577exva2x') # create a record, to like the post like <- list( subject = list( uri = post_rcd$uri, cid = post_rcd$cid ), createdAt = bs_created_at() ) bs_create_record(collection = 'app.bsky.feed.like', record = like)
# get info about a record post_rcd <- bs_get_record('https://bsky.app/profile/bskyr.bsky.social/post/3kf2577exva2x') # create a record, to like the post like <- list( subject = list( uri = post_rcd$uri, cid = post_rcd$cid ), createdAt = bs_created_at() ) bs_create_record(collection = 'app.bsky.feed.like', record = like)
Get current time in Bluesky format
bs_created_at()
bs_created_at()
a length 1 character vector
v0.1.0
(2023-11-25)
bs_created_at()
bs_created_at()
Delete a record in a repo
bs_delete_record( collection, rkey, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass) )
bs_delete_record( collection, rkey, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass) )
collection |
Character, length 1. The NSID of the record collection. |
rkey |
Character, length 1. The CID of the version of the record. If not specified, then return the most recent version. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
an httr2
status code
repo/deleteRecord.json (2023-11-25)
v0.1.0
(2023-11-25)
# get info about a record post_rcd <- bs_get_record('https://bsky.app/profile/bskyr.bsky.social/post/3kf2577exva2x') # create a record, to like the post like <- list( subject = list( uri = post_rcd$uri, cid = post_rcd$cid ), createdAt = bs_created_at() ) rec <- bs_create_record(collection = 'app.bsky.feed.like', record = like) bs_delete_record( collection = 'app.bsky.feed.like', rkey = stringr::str_split_i(rec$uri, '/', i = 5) )
# get info about a record post_rcd <- bs_get_record('https://bsky.app/profile/bskyr.bsky.social/post/3kf2577exva2x') # create a record, to like the post like <- list( subject = list( uri = post_rcd$uri, cid = post_rcd$cid ), createdAt = bs_created_at() ) rec <- bs_create_record(collection = 'app.bsky.feed.like', record = like) bs_delete_record( collection = 'app.bsky.feed.like', rkey = stringr::str_split_i(rec$uri, '/', i = 5) )
Describe a repo
bs_describe_repo( repo, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_describe_repo( repo, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
repo |
Character, length 1. The handle or DID of the repo. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of record information
repo/describeRepo.json (2023-11-25)
v0.1.0
(2023-11-25)
bs_describe_repo('chriskenny.bsky.social')
bs_describe_repo('chriskenny.bsky.social')
Get a list of lists that belong to an actor.
bs_get_actor_lists( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_actor_lists( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
actor |
Character, length 1. name of 1 actor, such as |
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of lists
graph/getLists.json (2023-10-02)
v0.0.1
(2023-10-02)
bs_get_actor_lists('profmusgrave.bsky.social')
bs_get_actor_lists('profmusgrave.bsky.social')
Get starter packs created by an actor
bs_get_actor_starter_packs( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_actor_starter_packs( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
actor |
Character, length 1. name of 1 actor, such as |
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of starter packs
graph/getActorStarterPacks.json (2024-11-20)
v0.2.0
(2024-11-20)
bs_get_actor_starter_packs('chriskenny.bsky.social') bs_get_actor_starter_packs('pfrazee.com')
bs_get_actor_starter_packs('chriskenny.bsky.social') bs_get_actor_starter_packs('pfrazee.com')
Get a list of actors suggested for following
bs_get_actor_suggestions( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_actor_suggestions( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of suggested accounts to follow
actor/getSuggestions.json (2023-10-01)
v0.0.1
(2023-10-01)
bs_get_actor_suggestions()
bs_get_actor_suggestions()
Retrieve posts on an actor's feed
bs_get_author_feed( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_author_feed( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
actor |
Character, length 1. name of 1 actor, such as |
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of posts
feed/getAuthorFeed.json (2023-10-01)
v0.0.1
(2023-10-01)
bs_get_author_feed('chriskenny.bsky.social')
bs_get_author_feed('chriskenny.bsky.social')
Retrieve a user's (self) muted lists
bs_get_blocked_lists( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_blocked_lists( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Maximum number to request. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of actors
graph/getListMutes.json (2023-10-02)
v0.0.1
(2023-10-02)
bs_get_blocked_lists()
bs_get_blocked_lists()
Retrieve user (self) blocks
bs_get_blocks( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_blocks( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of blocked accounts
graph/getBlocks.json (2023-10-02)
v0.0.1
(2023-10-02)
bs_get_blocks()
bs_get_blocks()
Build feed from user's feed generator
bs_get_feed( feed, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_feed( feed, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
feed |
Character, length 1. Feed to get. |
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of posts
feed/getFeed.json (2023-10-01)
v0.0.1
(2023-10-01)
bs_get_feed('at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/bsky-team')
bs_get_feed('at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/bsky-team')
Get specific information about one feed generator
bs_get_feed_generator( feed, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_feed_generator( feed, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
feed |
Character, length 1. Feed to get. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of feeds
feed/getFeedGenerator.json (2023-10-01)
v0.0.1
(2023-10-01)
bs_get_feed_generators()
for less detailed information about multiple feed generators.
bs_get_feed_generator('at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/bsky-team')
bs_get_feed_generator('at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/bsky-team')
Get information about a list of feed generators
bs_get_feed_generators( feeds, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_feed_generators( feeds, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
feeds |
Character. Vector of feeds to get. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of feeds
feed/getFeedGenerators.json (2023-10-01)
v0.0.1
(2023-10-01)
bs_get_feed_generators()
for more detailed information about one feed generator.
bs_get_feed_generators('at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/bsky-team') bs_get_feed_generators(c( 'at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/bsky-team', 'at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/whats-hot' ))
bs_get_feed_generators('at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/bsky-team') bs_get_feed_generators(c( 'at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/bsky-team', 'at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/whats-hot' ))
Get a list of feed suggestions
bs_get_feed_suggestions( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_feed_suggestions( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of suggested feeds
feed/getSuggestedFeeds.json (2023-10-01)
v0.0.1
(2023-10-02)
bs_get_feed_suggestions()
bs_get_feed_suggestions()
Retrieve a list of feeds created by a given actor
bs_get_feeds( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_feeds( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
actor |
Character, length 1. name of 1 actor, such as |
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of feeds
feed/getActorFeeds.json (2023-10-01)
v0.0.1
(2023-10-01)
bs_get_feeds('chriskenny.bsky.social')
bs_get_feeds('chriskenny.bsky.social')
Get suggested follows related to a given actor
bs_get_follow_suggestions( actor, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_follow_suggestions( actor, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
actor |
Character, length 1. name of 1 actor, such as |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of actors
graph/getSuggestedFollowsByActor.json (2023-10-02)
v0.0.1
(2023-10-02)
bs_get_follow_suggestions('chriskenny.bsky.social')
bs_get_follow_suggestions('chriskenny.bsky.social')
Retrieve an actor's followers
bs_get_followers( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_followers( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
actor |
Character, length 1. name of 1 actor, such as |
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of actors
graph/getFollowers.json (2023-10-02)
v0.0.1
(2023-10-02)
bs_get_followers('chriskenny.bsky.social')
bs_get_followers('chriskenny.bsky.social')
Retrieve an actor's follows
bs_get_follows( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_follows( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
actor |
Character, length 1. name of 1 actor, such as |
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of actors
graph/getFollows.json (2023-10-02)
v0.0.1
(2023-10-02)
bs_get_follows('chriskenny.bsky.social')
bs_get_follows('chriskenny.bsky.social')
Retrieve posts liked by an actor
bs_get_likes( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_likes( actor, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
actor |
Character, length 1. name of 1 actor, such as |
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of likes
feed/getActorLikes.json (2023-10-01)
v0.0.1
(2023-10-01)
bs_get_likes('chriskenny.bsky.social')
bs_get_likes('chriskenny.bsky.social')
Retrieve a user's (self) muted lists
bs_get_muted_lists( user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_muted_lists( user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of actors
graph/getListMutes.json (2023-10-02)
v0.0.1
(2023-10-02)
bs_get_muted_lists()
bs_get_muted_lists()
Retrieve a user's (self) muted accounts
bs_get_mutes( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_mutes( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of actors
graph/getMutes.json (2023-10-02)
v0.0.1
(2023-10-02)
bs_get_mutes()
bs_get_mutes()
Get the user's (self) number of unread notifications
bs_get_notification_count( user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_notification_count( user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble with a single column and row for the count
notification/getUnreadCount.json (2023-10-02)
v0.0.1
(2023-10-02)
bs_get_notification_count()
bs_get_notification_count()
Get the user's (self) notifications
bs_get_notifications( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_notifications( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble with notifications
notification/listNotifications.json (2023-10-02)
v0.0.1
(2023-10-02)
bs_get_notifications()
bs_get_notifications()
Retrieve likes on a post
bs_get_post_likes( uri, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_post_likes( uri, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
uri |
Character, length 1. URI for post to get. |
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of likes
feed/getLikes.json (2023-10-01)
v0.0.1
(2023-10-01)
bs_get_post_likes('at://did:plc:ic6zqvuw5ulmfpjiwnhsr2ns/app.bsky.feed.post/3k7qmjev5lr2s')
bs_get_post_likes('at://did:plc:ic6zqvuw5ulmfpjiwnhsr2ns/app.bsky.feed.post/3k7qmjev5lr2s')
Retrieve thread of posts
bs_get_post_thread( uri, depth = NULL, parent_height = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_post_thread( uri, depth = NULL, parent_height = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
uri |
Character, length 1. URI for post to get. |
depth |
Integer. Maximum depth to request. Maximum: |
parent_height |
Integer. Maximum parent height to request. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of posts
feed/getPostThread.json (2023-10-01)
v0.0.1
(2023-10-01)
bs_get_post_thread('at://did:plc:ic6zqvuw5ulmfpjiwnhsr2ns/app.bsky.feed.post/3k7qmjev5lr2s')
bs_get_post_thread('at://did:plc:ic6zqvuw5ulmfpjiwnhsr2ns/app.bsky.feed.post/3k7qmjev5lr2s')
Retrieve thread of posts
bs_get_posts( uris, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_posts( uris, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
uris |
Character. Vector of URIs for posts to get. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of posts
feed/getPostThread.json (2023-10-01)
v0.0.1
(2023-10-01)
bs_get_posts('at://did:plc:ic6zqvuw5ulmfpjiwnhsr2ns/app.bsky.feed.post/3k7qmjev5lr2s')
bs_get_posts('at://did:plc:ic6zqvuw5ulmfpjiwnhsr2ns/app.bsky.feed.post/3k7qmjev5lr2s')
Get (Self) Preferences
bs_get_preferences( user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_preferences( user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of preferences
actor/getPreferences.json (2023-10-01)
v0.0.1
(2023-10-01)
bs_get_preferences()
bs_get_preferences()
Get Profile for a Bluesky Social User
bs_get_profile( actors, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_profile( actors, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
actors |
character vector of actor(s), such as |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble with a row for each actor
actor/getProfiles.json (2023-10-01) actor/getProfile.json (2023-10-01)
v0.0.1
(2023-10-01)
bs_get_profile('chriskenny.bsky.social') bs_get_profile(actors = c('chriskenny.bsky.social', 'simko.bsky.social'))
bs_get_profile('chriskenny.bsky.social') bs_get_profile(actors = c('chriskenny.bsky.social', 'simko.bsky.social'))
Get an arbitrary record from a repo
bs_get_record( repo = NULL, collection = NULL, rkey = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_record( repo = NULL, collection = NULL, rkey = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
repo |
Character, length 1. The handle or DID of the repo. |
collection |
Character, length 1. The NSID of the record collection. |
rkey |
Character, length 1. The CID of the version of the record. If not specified, then return the most recent version. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of upload blob information
repo/getRecord.json (2023-11-24)
v0.1.0
(2023-11-24)
bs_get_record('https://bsky.app/profile/bskyr.bsky.social/post/3kf2577exva2x')
bs_get_record('https://bsky.app/profile/bskyr.bsky.social/post/3kf2577exva2x')
Retrieve actors who reposted a post
bs_get_reposts( uri, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_reposts( uri, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
uri |
Character, length 1. URI for post to get. |
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of actors
feed/getRepostedBy.json (2023-10-01)
v0.0.1
(2023-10-02)
bs_get_reposts('at://did:plc:ic6zqvuw5ulmfpjiwnhsr2ns/app.bsky.feed.post/3kaa2gxjhzr2a')
bs_get_reposts('at://did:plc:ic6zqvuw5ulmfpjiwnhsr2ns/app.bsky.feed.post/3kaa2gxjhzr2a')
Get information on one starter pack
bs_get_starter_pack( starter_pack, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_starter_pack( starter_pack, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
starter_pack |
Character vector, length 1. URI of starter pack to get. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of starter packs
graph/getStarterPack.jsonn (2024-11-20)
v0.2.0
(2024-11-20)
bs_get_starter_pack('at://did:plc:wpe35pganb6d4pg4ekmfy6u5/app.bsky.graph.starterpack/3lb3g5veo2z2r')
bs_get_starter_pack('at://did:plc:wpe35pganb6d4pg4ekmfy6u5/app.bsky.graph.starterpack/3lb3g5veo2z2r')
Get information about a list of starter packs
bs_get_starter_packs( starter_packs, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_starter_packs( starter_packs, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
starter_packs |
Character vector. Vector of URIs of starter packs to get. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of starter packs
graph/getStarterPacks.jsonn (2024-11-20)
v0.2.0
(2024-11-20)
bs_get_starter_packs('at://did:plc:wpe35pganb6d4pg4ekmfy6u5/app.bsky.graph.starterpack/3lb3g5veo2z2r') bs_get_starter_packs(c('at://did:plc:wpe35pganb6d4pg4ekmfy6u5/app.bsky.graph.starterpack/3lb3g5veo2z2r', 'at://did:plc:bmc56x6ksb7o7sdkq2fgm7se/app.bsky.graph.starterpack/3laywns2q2v27'))
bs_get_starter_packs('at://did:plc:wpe35pganb6d4pg4ekmfy6u5/app.bsky.graph.starterpack/3lb3g5veo2z2r') bs_get_starter_packs(c('at://did:plc:wpe35pganb6d4pg4ekmfy6u5/app.bsky.graph.starterpack/3lb3g5veo2z2r', 'at://did:plc:bmc56x6ksb7o7sdkq2fgm7se/app.bsky.graph.starterpack/3laywns2q2v27'))
Retrieve the user's home timeline
bs_get_timeline( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_get_timeline( cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of posts
feed/getTimeline.json (2023-10-01)
v0.0.1
(2023-10-02)
bs_get_timeline()
bs_get_timeline()
Like an existing post
bs_like( post, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_like( post, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
post |
Character vector, length 1. Link to a post. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of post information
feed/like.json (2023-11-25) repo/createRecord.json (2023-11-25)
v0.1.0
(2023-11-25)
bs_like(post = 'https://bsky.app/profile/bskyr.bsky.social/post/3kf2577exva2x')
bs_like(post = 'https://bsky.app/profile/bskyr.bsky.social/post/3kf2577exva2x')
List records in a repo
bs_list_records( repo, collection, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_list_records( repo, collection, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
repo |
Character, length 1. The handle or DID of the repo. |
collection |
Character, length 1. The NSID of the record collection. |
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of record information
repo/createRecord.json (2023-11-25)
v0.1.0
(2023-11-25)
bs_list_records(repo = 'chriskenny.bsky.social', collection = 'app.bsky.feed.post')
bs_list_records(repo = 'chriskenny.bsky.social', collection = 'app.bsky.feed.post')
Make a post on Bluesky Social
bs_post( text, images, images_alt, langs, reply, quote, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_post( text, images, images_alt, langs, reply, quote, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
text |
text of post |
images |
character vector of paths to images to attach to post |
images_alt |
character vector of alt text for images. Must be same length as |
langs |
character vector of languages in BCP-47 format |
reply |
character vector with link to the parent post to reply to |
quote |
character vector with link to a post to quote |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of post information
feed/post.json (2023-10-02) repo/createRecord.json (2023-10-02)
v0.0.1
(2023-10-02)
bs_post('Test post from R CMD Check for r package `bskyr` via @bskyr.bsky.social (https://christophertkenny.com/bskyr/)') bs_post('Test self-reply from r package `bskyr` via @bskyr.bsky.social (https://christophertkenny.com/bskyr/)', reply = 'https://bsky.app/profile/bskyr.bsky.social/post/3kexwuoyqj32g' ) bs_post('Test quoting from r package `bskyr` via @bskyr.bsky.social (https://christophertkenny.com/bskyr/)', quote = 'https://bsky.app/profile/bskyr.bsky.social/post/3kf24wd6cmb2a' ) bs_post('Test quote and reply from r package `bskyr` via @bskyr.bsky.social (https://christophertkenny.com/bskyr/)', reply = 'https://bsky.app/profile/bskyr.bsky.social/post/3kexwuoyqj32g', quote = 'https://bsky.app/profile/bskyr.bsky.social/post/3kf24wd6cmb2a' )
bs_post('Test post from R CMD Check for r package `bskyr` via @bskyr.bsky.social (https://christophertkenny.com/bskyr/)') bs_post('Test self-reply from r package `bskyr` via @bskyr.bsky.social (https://christophertkenny.com/bskyr/)', reply = 'https://bsky.app/profile/bskyr.bsky.social/post/3kexwuoyqj32g' ) bs_post('Test quoting from r package `bskyr` via @bskyr.bsky.social (https://christophertkenny.com/bskyr/)', quote = 'https://bsky.app/profile/bskyr.bsky.social/post/3kf24wd6cmb2a' ) bs_post('Test quote and reply from r package `bskyr` via @bskyr.bsky.social (https://christophertkenny.com/bskyr/)', reply = 'https://bsky.app/profile/bskyr.bsky.social/post/3kexwuoyqj32g', quote = 'https://bsky.app/profile/bskyr.bsky.social/post/3kf24wd6cmb2a' )
Repost an existing post
bs_repost( post, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_repost( post, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
post |
Character vector, length 1. Link to a post. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of post information
feed/post.json (2023-11-25) repo/createRecord.json (2023-11-25)
v0.1.0
(2023-11-25)
bs_repost('https://bsky.app/profile/bskyr.bsky.social/post/3kf2577exva2x')
bs_repost('https://bsky.app/profile/bskyr.bsky.social/post/3kf2577exva2x')
Resolve a Handle to Decentralized Identifier (DID)
bs_resolve_handle( handle, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_resolve_handle( handle, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
handle |
Character, length 1. Handle, such as |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of decentralized identifier
identity/resolveHandle.json (2023-11-24)
v0.1.0
(2023-11-24)
bs_resolve_handle('chriskenny.bsky.social')
bs_resolve_handle('chriskenny.bsky.social')
Find profiles matching search criteria
bs_search_actors( query, typeahead = FALSE, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_search_actors( query, typeahead = FALSE, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
query |
character. search query, Lucene query syntax is recommended when |
typeahead |
logical. Use typeahead for search? Default is |
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of suggested accounts to follow
actor/searchActors.json (2023-10-01) actor/searchActorsTypeahead.json (2023-10-01)
v0.0.1
(2023-10-01)
bs_search_actors('political science')
bs_search_actors('political science')
Find posts matching search criteria
bs_search_posts( query, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_search_posts( query, cursor = NULL, limit = NULL, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
query |
character. search query, Lucene query syntax is recommended. |
cursor |
Character, length 1. A cursor property from a prior response. Default: |
limit |
Integer. Number of records to request. If over |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of suggested accounts to follow
feed/searchPosts.json (2023-12-13)
v0.1.1
(2023-12-13)
bs_search_posts('redistricting')
bs_search_posts('redistricting')
Upload a blob to a repo
bs_upload_blob( blob, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
bs_upload_blob( blob, user = get_bluesky_user(), pass = get_bluesky_pass(), auth = bs_auth(user, pass), clean = TRUE )
blob |
Character, files to upload to a repo. |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of upload blob information
repo/uploadBlob.json (2023-11-24)
v0.1.0
(2023-11-24)
fig <- fs::path_package('bskyr', 'man/figures/logo.png') bs_upload_blob(fig)
fig <- fs::path_package('bskyr', 'man/figures/logo.png') bs_upload_blob(fig)
Convert Universal Resource Identifiers to Hypertext Transfer Protocol Secure URLs
bs_uri_to_url(uri)
bs_uri_to_url(uri)
uri |
Character, length 1. URI for post to get. |
character vector of HTTPS URLs
bs_uri_to_url('at://did:plc:ic6zqvuw5ulmfpjiwnhsr2ns/app.bsky.feed.post/3k7qmjev5lr2s')
bs_uri_to_url('at://did:plc:ic6zqvuw5ulmfpjiwnhsr2ns/app.bsky.feed.post/3k7qmjev5lr2s')
Check or Get Bluesky App Password
has_bluesky_pass() get_bluesky_pass() bs_get_pass() bs_has_pass()
has_bluesky_pass() get_bluesky_pass() bs_get_pass() bs_has_pass()
logical if has
, pass if get
has_bluesky_pass()
has_bluesky_pass()
Adds Bluesky App Password to .Renviron.
set_bluesky_pass(pass, overwrite = FALSE, install = FALSE, r_env = NULL) bs_set_pass(pass, overwrite = FALSE, install = FALSE, r_env = NULL)
set_bluesky_pass(pass, overwrite = FALSE, install = FALSE, r_env = NULL) bs_set_pass(pass, overwrite = FALSE, install = FALSE, r_env = NULL)
pass |
Character. App Password to add to add. |
overwrite |
Defaults to FALSE. Boolean. Should existing |
install |
Defaults to FALSE. Boolean. Should this be added '~/.Renviron' file? |
r_env |
Path to install to if |
pass, invisibly
example_env <- tempfile(fileext = '.Renviron') set_bluesky_pass('1234-1234-1234-1234', r_env = example_env) # r_env should likely be: file.path(Sys.getenv('HOME'), '.Renviron')
example_env <- tempfile(fileext = '.Renviron') set_bluesky_pass('1234-1234-1234-1234', r_env = example_env) # r_env should likely be: file.path(Sys.getenv('HOME'), '.Renviron')
Adds Bluesky User to .Renviron.
set_bluesky_user(user, overwrite = FALSE, install = FALSE, r_env = NULL) bs_set_user(user, overwrite = FALSE, install = FALSE, r_env = NULL)
set_bluesky_user(user, overwrite = FALSE, install = FALSE, r_env = NULL) bs_set_user(user, overwrite = FALSE, install = FALSE, r_env = NULL)
user |
Character. User to add to add. |
overwrite |
Defaults to FALSE. Boolean. Should existing |
install |
Defaults to FALSE. Boolean. Should this be added '~/.Renviron' file? |
r_env |
Path to install to if |
user, invisibly
example_env <- tempfile(fileext = '.Renviron') set_bluesky_user('CRAN_EXAMPLE.bsky.social', r_env = example_env) # r_env should likely be: file.path(Sys.getenv('HOME'), '.Renviron')
example_env <- tempfile(fileext = '.Renviron') set_bluesky_user('CRAN_EXAMPLE.bsky.social', r_env = example_env) # r_env should likely be: file.path(Sys.getenv('HOME'), '.Renviron')
Check or Get Bluesky User
has_bluesky_user() get_bluesky_user() bs_get_user() bs_has_user()
has_bluesky_user() get_bluesky_user() bs_get_user() bs_has_user()
logical if has
, user if get
has_bluesky_user()
has_bluesky_user()