atp->client->get( endpoint: BskyGraph::GetFollowers, params: compact('actor', 'limit', 'cursor') ); return GetFollowersResponse::fromArray($response->json()); } /** * Get accounts that an actor follows * * @see https://docs.bsky.app/docs/api/app-bsky-graph-get-follows */ #[PublicEndpoint] public function getFollows(string $actor, int $limit = 50, ?string $cursor = null): GetFollowsResponse { $response = $this->atp->client->get( endpoint: BskyGraph::GetFollows, params: compact('actor', 'limit', 'cursor') ); return GetFollowsResponse::fromArray($response->json()); } /** * Get followers of an actor that you also follow * * @see https://docs.bsky.app/docs/api/app-bsky-graph-get-known-followers */ #[PublicEndpoint] public function getKnownFollowers(string $actor, int $limit = 50, ?string $cursor = null): GetKnownFollowersResponse { $response = $this->atp->client->get( endpoint: BskyGraph::GetKnownFollowers, params: compact('actor', 'limit', 'cursor') ); return GetKnownFollowersResponse::fromArray($response->json()); } /** * Get a list by URI * * @see https://docs.bsky.app/docs/api/app-bsky-graph-get-list */ #[PublicEndpoint] public function getList(string $list, int $limit = 50, ?string $cursor = null): GetListResponse { $response = $this->atp->client->get( endpoint: BskyGraph::GetList, params: compact('list', 'limit', 'cursor') ); return GetListResponse::fromArray($response->json()); } /** * Get lists created by an actor * * @see https://docs.bsky.app/docs/api/app-bsky-graph-get-lists */ #[PublicEndpoint] public function getLists(string $actor, int $limit = 50, ?string $cursor = null): GetListsResponse { $response = $this->atp->client->get( endpoint: BskyGraph::GetLists, params: compact('actor', 'limit', 'cursor') ); return GetListsResponse::fromArray($response->json()); } /** * Get relationships between actors * * @see https://docs.bsky.app/docs/api/app-bsky-graph-get-relationships */ #[PublicEndpoint] public function getRelationships(string $actor, array $others = []): GetRelationshipsResponse { $response = $this->atp->client->get( endpoint: BskyGraph::GetRelationships, params: compact('actor', 'others') ); return GetRelationshipsResponse::fromArray($response->json()); } /** * Get a starter pack by URI * * @see https://docs.bsky.app/docs/api/app-bsky-graph-get-starter-pack */ #[PublicEndpoint] public function getStarterPack(string $starterPack): StarterPackView { $response = $this->atp->client->get( endpoint: BskyGraph::GetStarterPack, params: compact('starterPack') ); return StarterPackView::fromArray($response->json()['starterPack']); } /** * Get multiple starter packs * * @see https://docs.bsky.app/docs/api/app-bsky-graph-get-starter-packs */ #[PublicEndpoint] public function getStarterPacks(array $uris): GetStarterPacksResponse { $response = $this->atp->client->get( endpoint: BskyGraph::GetStarterPacks, params: compact('uris') ); return GetStarterPacksResponse::fromArray($response->json()); } /** * Get suggested follows based on an actor * * @see https://docs.bsky.app/docs/api/app-bsky-graph-get-suggested-follows-by-actor */ #[PublicEndpoint] public function getSuggestedFollowsByActor(string $actor): GetSuggestedFollowsByActorResponse { $response = $this->atp->client->get( endpoint: BskyGraph::GetSuggestedFollowsByActor, params: compact('actor') ); return GetSuggestedFollowsByActorResponse::fromArray($response->json()); } }