Skip to main content

Overview

The app.bsky.actor namespace provides lexicons for managing user profiles, preferences, and actor-related operations in Bluesky.

Key Concepts

  • Actor: A user or account in the Bluesky network
  • Profile: User’s public profile information
  • Preferences: User’s application settings and preferences
  • Viewer State: Relationship between the viewing user and the subject

Record Types

profile

User profile record stored at app.bsky.actor.profile with rkey self. Record Structure:
string
Display name (max 64 graphemes)
string
Profile bio (max 256 graphemes)
blob
Profile picture blob reference
blob
Banner image blob reference
union
Self-applied labels (content warnings)
ref
Starter pack used to join (if any)
string
Profile creation timestamp
ref
Strong reference to pinned post
Example:

Queries

getProfile

Get detailed profile view of an actor. Endpoint: app.bsky.actor.getProfile
string
required
Handle or DID of account to fetch
Response: Returns profileViewDetailed with full profile information Example:

getProfiles

Get multiple profile views. Endpoint: app.bsky.actor.getProfiles
array
required
Array of handles or DIDs (max 25)
Response: Array of profileViewDetailed objects Example:

searchActors

Search for actors matching a query. Endpoint: app.bsky.actor.searchActors
string
required
Search query
integer
Maximum results (1-100, default 25)
string
Pagination cursor
Response:
string
Next page cursor
array
required
Array of matching profiles
Example:

searchActorsTypeahead

Search for actors with typeahead/autocomplete. Endpoint: app.bsky.actor.searchActorsTypeahead
string
required
Search query
integer
Maximum results (1-100, default 10)
Response: Array of matching actors Example:

getSuggestions

Get suggested actors to follow. Endpoint: app.bsky.actor.getSuggestions
integer
Maximum suggestions (1-100, default 50)
string
Pagination cursor
Response: Array of suggested actors to follow Example:

Preferences

getPreferences

Get user preferences. Endpoint: app.bsky.actor.getPreferences Authentication: Required Response: Array of preference objects Example:

putPreferences

Update user preferences. Endpoint: app.bsky.actor.putPreferences Authentication: Required
array
required
Array of preference objects
Example:

Type Definitions

profileViewBasic

Basic profile information.
string
required
Actor DID
string
required
Actor handle
string
Display name
string
Avatar image URL
object
Viewer’s relationship to this actor
array
Content labels

profileView

Standard profile view with additional details. Includes all fields from profileViewBasic plus:
string
Profile bio
string
When profile was indexed

profileViewDetailed

Complete profile information. Includes all fields from profileView plus:
string
Banner image URL
integer
Number of followers
integer
Number of accounts followed
integer
Number of posts
ref
Pinned post reference

viewerState

Viewer’s relationship with the actor.
boolean
Whether viewer has muted this actor
ref
List that mutes this actor (if any)
boolean
Whether viewer is blocked by this actor
string
AT-URI of block record (if blocking)
string
AT-URI of follow record (if following)
string
AT-URI of their follow record (if they follow you)

Preference Types

adultContentPref

Adult content preference.

contentLabelPref

Content label visibility preference.

savedFeedsPrefV2

Saved and pinned feeds.

mutedWordsPref

Muted words/phrases.

Common Use Cases

Update Profile

Search and Follow Users

Manage Muted Words

Resources