BSky 1.0.0

dotnet add package BSky --version 1.0.0                
NuGet\Install-Package BSky -Version 1.0.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="BSky" Version="1.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add BSky --version 1.0.0                
#r "nuget: BSky, 1.0.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install BSky as a Cake Addin
#addin nuget:?package=BSky&version=1.0.0

// Install BSky as a Cake Tool
#tool nuget:?package=BSky&version=1.0.0                

BSky - the C# library for the AT Protocol XRPC API

This section contains HTTP API reference docs for Bluesky and AT Protocol lexicons. Generate a bearer token to test API calls directly from the docs.

This C# SDK is automatically generated by the OpenAPI Generator project:

  • API version: 0.0.0
  • SDK version: 1.0.0
  • Generator version: 7.8.0
  • Build package: org.openapitools.codegen.languages.CSharpClientCodegen

<a id="frameworks-supported"></a>

Frameworks supported

<a id="dependencies"></a>

Dependencies

The DLLs included in the package may not be the latest version. We recommend using NuGet to obtain the latest version of the packages:

Install-Package RestSharp
Install-Package Newtonsoft.Json
Install-Package JsonSubTypes
Install-Package System.ComponentModel.Annotations

NOTE: RestSharp versions greater than 105.1.0 have a bug which causes file uploads to fail. See RestSharp#742. NOTE: RestSharp for .Net Core creates a new socket for each api call, which can lead to a socket exhaustion problem. See RestSharp#1406.

<a id="installation"></a>

Installation

Run the following command to generate the DLL

  • [Mac/Linux] /bin/sh build.sh
  • [Windows] build.bat

Then include the DLL (under the bin folder) in the C# project, and use the namespaces:

using BSky.Api;
using BSky.Client;
using BSky.Model;

<a id="packaging"></a>

Packaging

A .nuspec is included with the project. You can follow the Nuget quickstart to create and publish packages.

This .nuspec uses placeholders from the .csproj, so build the .csproj directly:

nuget pack -Build -OutputDirectory out BSky.csproj

Then, publish to a local feed or other host and consume the new package via Nuget as usual.

<a id="usage"></a>

Usage

To use the API client with a HTTP proxy, setup a System.Net.WebProxy

Configuration c = new Configuration();
System.Net.WebProxy webProxy = new System.Net.WebProxy("http://myProxyUrl:80/");
webProxy.Credentials = System.Net.CredentialCache.DefaultCredentials;
c.Proxy = webProxy;

<a id="getting-started"></a>

Getting Started

using System.Collections.Generic;
using System.Diagnostics;
using BSky.Api;
using BSky.Client;
using BSky.Model;

namespace Example
{
    public class Example
    {
        public static void Main()
        {

            Configuration config = new Configuration();
            config.BasePath = "https://public.api.bsky.app/xrpc";
            // Configure Bearer token for authorization: Bearer
            config.AccessToken = "YOUR_BEARER_TOKEN";

            var apiInstance = new AppBskyActorApi(config);

            try
            {
                AppBskyActorGetPreferences200Response result = apiInstance.AppBskyActorGetPreferences();
                Debug.WriteLine(result);
            }
            catch (ApiException e)
            {
                Debug.Print("Exception when calling AppBskyActorApi.AppBskyActorGetPreferences: " + e.Message );
                Debug.Print("Status Code: "+ e.ErrorCode);
                Debug.Print(e.StackTrace);
            }

        }
    }
}

<a id="documentation-for-api-endpoints"></a>

Documentation for API Endpoints

All URIs are relative to https://public.api.bsky.app/xrpc

Class Method HTTP request Description
AppBskyActorApi AppBskyActorGetPreferences GET /app.bsky.actor.getPreferences
AppBskyActorApi AppBskyActorGetProfile GET /app.bsky.actor.getProfile
AppBskyActorApi AppBskyActorGetProfiles GET /app.bsky.actor.getProfiles
AppBskyActorApi AppBskyActorGetSuggestions GET /app.bsky.actor.getSuggestions
AppBskyActorApi AppBskyActorPutPreferences POST /app.bsky.actor.putPreferences
AppBskyActorApi AppBskyActorSearchActors GET /app.bsky.actor.searchActors
AppBskyActorApi AppBskyActorSearchActorsTypeahead GET /app.bsky.actor.searchActorsTypeahead
AppBskyFeedApi AppBskyFeedDescribeFeedGenerator GET /app.bsky.feed.describeFeedGenerator
AppBskyFeedApi AppBskyFeedGetActorFeeds GET /app.bsky.feed.getActorFeeds
AppBskyFeedApi AppBskyFeedGetActorLikes GET /app.bsky.feed.getActorLikes
AppBskyFeedApi AppBskyFeedGetAuthorFeed GET /app.bsky.feed.getAuthorFeed
AppBskyFeedApi AppBskyFeedGetFeed GET /app.bsky.feed.getFeed
AppBskyFeedApi AppBskyFeedGetFeedGenerator GET /app.bsky.feed.getFeedGenerator
AppBskyFeedApi AppBskyFeedGetFeedGenerators GET /app.bsky.feed.getFeedGenerators
AppBskyFeedApi AppBskyFeedGetFeedSkeleton GET /app.bsky.feed.getFeedSkeleton
AppBskyFeedApi AppBskyFeedGetLikes GET /app.bsky.feed.getLikes
AppBskyFeedApi AppBskyFeedGetListFeed GET /app.bsky.feed.getListFeed
AppBskyFeedApi AppBskyFeedGetPostThread GET /app.bsky.feed.getPostThread
AppBskyFeedApi AppBskyFeedGetPosts GET /app.bsky.feed.getPosts
AppBskyFeedApi AppBskyFeedGetQuotes GET /app.bsky.feed.getQuotes
AppBskyFeedApi AppBskyFeedGetRepostedBy GET /app.bsky.feed.getRepostedBy
AppBskyFeedApi AppBskyFeedGetSuggestedFeeds GET /app.bsky.feed.getSuggestedFeeds
AppBskyFeedApi AppBskyFeedGetTimeline GET /app.bsky.feed.getTimeline
AppBskyFeedApi AppBskyFeedSearchPosts GET /app.bsky.feed.searchPosts
AppBskyFeedApi AppBskyFeedSendInteractions POST /app.bsky.feed.sendInteractions
AppBskyGraphApi AppBskyGraphGetActorStarterPacks GET /app.bsky.graph.getActorStarterPacks
AppBskyGraphApi AppBskyGraphGetBlocks GET /app.bsky.graph.getBlocks
AppBskyGraphApi AppBskyGraphGetFollowers GET /app.bsky.graph.getFollowers
AppBskyGraphApi AppBskyGraphGetFollows GET /app.bsky.graph.getFollows
AppBskyGraphApi AppBskyGraphGetKnownFollowers GET /app.bsky.graph.getKnownFollowers
AppBskyGraphApi AppBskyGraphGetList GET /app.bsky.graph.getList
AppBskyGraphApi AppBskyGraphGetListBlocks GET /app.bsky.graph.getListBlocks
AppBskyGraphApi AppBskyGraphGetListMutes GET /app.bsky.graph.getListMutes
AppBskyGraphApi AppBskyGraphGetLists GET /app.bsky.graph.getLists
AppBskyGraphApi AppBskyGraphGetMutes GET /app.bsky.graph.getMutes
AppBskyGraphApi AppBskyGraphGetRelationships GET /app.bsky.graph.getRelationships
AppBskyGraphApi AppBskyGraphGetStarterPack GET /app.bsky.graph.getStarterPack
AppBskyGraphApi AppBskyGraphGetStarterPacks GET /app.bsky.graph.getStarterPacks
AppBskyGraphApi AppBskyGraphGetSuggestedFollowsByActor GET /app.bsky.graph.getSuggestedFollowsByActor
AppBskyGraphApi AppBskyGraphMuteActor POST /app.bsky.graph.muteActor
AppBskyGraphApi AppBskyGraphMuteActorList POST /app.bsky.graph.muteActorList
AppBskyGraphApi AppBskyGraphMuteThread POST /app.bsky.graph.muteThread
AppBskyGraphApi AppBskyGraphUnmuteActor POST /app.bsky.graph.unmuteActor
AppBskyGraphApi AppBskyGraphUnmuteActorList POST /app.bsky.graph.unmuteActorList
AppBskyGraphApi AppBskyGraphUnmuteThread POST /app.bsky.graph.unmuteThread
AppBskyLabelerApi AppBskyLabelerGetServices GET /app.bsky.labeler.getServices
AppBskyNotificationApi AppBskyNotificationGetUnreadCount GET /app.bsky.notification.getUnreadCount
AppBskyNotificationApi AppBskyNotificationListNotifications GET /app.bsky.notification.listNotifications
AppBskyNotificationApi AppBskyNotificationPutPreferences POST /app.bsky.notification.putPreferences
AppBskyNotificationApi AppBskyNotificationRegisterPush POST /app.bsky.notification.registerPush
AppBskyNotificationApi AppBskyNotificationUpdateSeen POST /app.bsky.notification.updateSeen
AppBskyVideoApi AppBskyVideoGetJobStatus GET /app.bsky.video.getJobStatus
AppBskyVideoApi AppBskyVideoGetUploadLimits GET /app.bsky.video.getUploadLimits
AppBskyVideoApi AppBskyVideoUploadVideo POST /app.bsky.video.uploadVideo
ChatBskyActorApi ChatBskyActorDeleteAccount POST /chat.bsky.actor.deleteAccount
ChatBskyActorApi ChatBskyActorExportAccountData GET /chat.bsky.actor.exportAccountData
ChatBskyConvoApi ChatBskyConvoDeleteMessageForSelf POST /chat.bsky.convo.deleteMessageForSelf
ChatBskyConvoApi ChatBskyConvoGetConvo GET /chat.bsky.convo.getConvo
ChatBskyConvoApi ChatBskyConvoGetConvoForMembers GET /chat.bsky.convo.getConvoForMembers
ChatBskyConvoApi ChatBskyConvoGetLog GET /chat.bsky.convo.getLog
ChatBskyConvoApi ChatBskyConvoGetMessages GET /chat.bsky.convo.getMessages
ChatBskyConvoApi ChatBskyConvoLeaveConvo POST /chat.bsky.convo.leaveConvo
ChatBskyConvoApi ChatBskyConvoListConvos GET /chat.bsky.convo.listConvos
ChatBskyConvoApi ChatBskyConvoMuteConvo POST /chat.bsky.convo.muteConvo
ChatBskyConvoApi ChatBskyConvoSendMessage POST /chat.bsky.convo.sendMessage
ChatBskyConvoApi ChatBskyConvoSendMessageBatch POST /chat.bsky.convo.sendMessageBatch
ChatBskyConvoApi ChatBskyConvoUnmuteConvo POST /chat.bsky.convo.unmuteConvo
ChatBskyConvoApi ChatBskyConvoUpdateRead POST /chat.bsky.convo.updateRead
ChatBskyModerationApi ChatBskyModerationGetActorMetadata GET /chat.bsky.moderation.getActorMetadata
ChatBskyModerationApi ChatBskyModerationGetMessageContext GET /chat.bsky.moderation.getMessageContext
ChatBskyModerationApi ChatBskyModerationUpdateActorAccess POST /chat.bsky.moderation.updateActorAccess
ComAtprotoAdminApi ComAtprotoAdminDeleteAccount POST /com.atproto.admin.deleteAccount
ComAtprotoAdminApi ComAtprotoAdminDisableAccountInvites POST /com.atproto.admin.disableAccountInvites
ComAtprotoAdminApi ComAtprotoAdminDisableInviteCodes POST /com.atproto.admin.disableInviteCodes
ComAtprotoAdminApi ComAtprotoAdminEnableAccountInvites POST /com.atproto.admin.enableAccountInvites
ComAtprotoAdminApi ComAtprotoAdminGetAccountInfo GET /com.atproto.admin.getAccountInfo
ComAtprotoAdminApi ComAtprotoAdminGetAccountInfos GET /com.atproto.admin.getAccountInfos
ComAtprotoAdminApi ComAtprotoAdminGetInviteCodes GET /com.atproto.admin.getInviteCodes
ComAtprotoAdminApi ComAtprotoAdminGetSubjectStatus GET /com.atproto.admin.getSubjectStatus
ComAtprotoAdminApi ComAtprotoAdminSearchAccounts GET /com.atproto.admin.searchAccounts
ComAtprotoAdminApi ComAtprotoAdminSendEmail POST /com.atproto.admin.sendEmail
ComAtprotoAdminApi ComAtprotoAdminUpdateAccountEmail POST /com.atproto.admin.updateAccountEmail
ComAtprotoAdminApi ComAtprotoAdminUpdateAccountHandle POST /com.atproto.admin.updateAccountHandle
ComAtprotoAdminApi ComAtprotoAdminUpdateAccountPassword POST /com.atproto.admin.updateAccountPassword
ComAtprotoAdminApi ComAtprotoAdminUpdateSubjectStatus POST /com.atproto.admin.updateSubjectStatus
ComAtprotoIdentityApi ComAtprotoIdentityGetRecommendedDidCredentials GET /com.atproto.identity.getRecommendedDidCredentials
ComAtprotoIdentityApi ComAtprotoIdentityRequestPlcOperationSignature POST /com.atproto.identity.requestPlcOperationSignature
ComAtprotoIdentityApi ComAtprotoIdentityResolveHandle GET /com.atproto.identity.resolveHandle
ComAtprotoIdentityApi ComAtprotoIdentitySignPlcOperation POST /com.atproto.identity.signPlcOperation
ComAtprotoIdentityApi ComAtprotoIdentitySubmitPlcOperation POST /com.atproto.identity.submitPlcOperation
ComAtprotoIdentityApi ComAtprotoIdentityUpdateHandle POST /com.atproto.identity.updateHandle
ComAtprotoLabelApi ComAtprotoLabelQueryLabels GET /com.atproto.label.queryLabels
ComAtprotoModerationApi ComAtprotoModerationCreateReport POST /com.atproto.moderation.createReport
ComAtprotoRepoApi ComAtprotoRepoApplyWrites POST /com.atproto.repo.applyWrites
ComAtprotoRepoApi ComAtprotoRepoCreateRecord POST /com.atproto.repo.createRecord
ComAtprotoRepoApi ComAtprotoRepoDeleteRecord POST /com.atproto.repo.deleteRecord
ComAtprotoRepoApi ComAtprotoRepoDescribeRepo GET /com.atproto.repo.describeRepo
ComAtprotoRepoApi ComAtprotoRepoGetRecord GET /com.atproto.repo.getRecord
ComAtprotoRepoApi ComAtprotoRepoImportRepo POST /com.atproto.repo.importRepo
ComAtprotoRepoApi ComAtprotoRepoListMissingBlobs GET /com.atproto.repo.listMissingBlobs
ComAtprotoRepoApi ComAtprotoRepoListRecords GET /com.atproto.repo.listRecords
ComAtprotoRepoApi ComAtprotoRepoPutRecord POST /com.atproto.repo.putRecord
ComAtprotoRepoApi ComAtprotoRepoUploadBlob POST /com.atproto.repo.uploadBlob
ComAtprotoServerApi ComAtprotoServerActivateAccount POST /com.atproto.server.activateAccount
ComAtprotoServerApi ComAtprotoServerCheckAccountStatus GET /com.atproto.server.checkAccountStatus
ComAtprotoServerApi ComAtprotoServerConfirmEmail POST /com.atproto.server.confirmEmail
ComAtprotoServerApi ComAtprotoServerCreateAccount POST /com.atproto.server.createAccount
ComAtprotoServerApi ComAtprotoServerCreateAppPassword POST /com.atproto.server.createAppPassword
ComAtprotoServerApi ComAtprotoServerCreateInviteCode POST /com.atproto.server.createInviteCode
ComAtprotoServerApi ComAtprotoServerCreateInviteCodes POST /com.atproto.server.createInviteCodes
ComAtprotoServerApi ComAtprotoServerCreateSession POST /com.atproto.server.createSession
ComAtprotoServerApi ComAtprotoServerDeactivateAccount POST /com.atproto.server.deactivateAccount
ComAtprotoServerApi ComAtprotoServerDeleteAccount POST /com.atproto.server.deleteAccount
ComAtprotoServerApi ComAtprotoServerDeleteSession POST /com.atproto.server.deleteSession
ComAtprotoServerApi ComAtprotoServerDescribeServer GET /com.atproto.server.describeServer
ComAtprotoServerApi ComAtprotoServerGetAccountInviteCodes GET /com.atproto.server.getAccountInviteCodes
ComAtprotoServerApi ComAtprotoServerGetServiceAuth GET /com.atproto.server.getServiceAuth
ComAtprotoServerApi ComAtprotoServerGetSession GET /com.atproto.server.getSession
ComAtprotoServerApi ComAtprotoServerListAppPasswords GET /com.atproto.server.listAppPasswords
ComAtprotoServerApi ComAtprotoServerRefreshSession POST /com.atproto.server.refreshSession
ComAtprotoServerApi ComAtprotoServerRequestAccountDelete POST /com.atproto.server.requestAccountDelete
ComAtprotoServerApi ComAtprotoServerRequestEmailConfirmation POST /com.atproto.server.requestEmailConfirmation
ComAtprotoServerApi ComAtprotoServerRequestEmailUpdate POST /com.atproto.server.requestEmailUpdate
ComAtprotoServerApi ComAtprotoServerRequestPasswordReset POST /com.atproto.server.requestPasswordReset
ComAtprotoServerApi ComAtprotoServerReserveSigningKey POST /com.atproto.server.reserveSigningKey
ComAtprotoServerApi ComAtprotoServerResetPassword POST /com.atproto.server.resetPassword
ComAtprotoServerApi ComAtprotoServerRevokeAppPassword POST /com.atproto.server.revokeAppPassword
ComAtprotoServerApi ComAtprotoServerUpdateEmail POST /com.atproto.server.updateEmail
ComAtprotoSyncApi ComAtprotoSyncGetBlob GET /com.atproto.sync.getBlob
ComAtprotoSyncApi ComAtprotoSyncGetBlocks GET /com.atproto.sync.getBlocks
ComAtprotoSyncApi ComAtprotoSyncGetLatestCommit GET /com.atproto.sync.getLatestCommit
ComAtprotoSyncApi ComAtprotoSyncGetRecord GET /com.atproto.sync.getRecord
ComAtprotoSyncApi ComAtprotoSyncGetRepo GET /com.atproto.sync.getRepo
ComAtprotoSyncApi ComAtprotoSyncGetRepoStatus GET /com.atproto.sync.getRepoStatus
ComAtprotoSyncApi ComAtprotoSyncListBlobs GET /com.atproto.sync.listBlobs
ComAtprotoSyncApi ComAtprotoSyncListRepos GET /com.atproto.sync.listRepos
ComAtprotoSyncApi ComAtprotoSyncNotifyOfUpdate POST /com.atproto.sync.notifyOfUpdate
ComAtprotoSyncApi ComAtprotoSyncRequestCrawl POST /com.atproto.sync.requestCrawl
ToolsOzoneCommunicationApi ToolsOzoneCommunicationCreateTemplate POST /tools.ozone.communication.createTemplate
ToolsOzoneCommunicationApi ToolsOzoneCommunicationDeleteTemplate POST /tools.ozone.communication.deleteTemplate
ToolsOzoneCommunicationApi ToolsOzoneCommunicationListTemplates GET /tools.ozone.communication.listTemplates
ToolsOzoneCommunicationApi ToolsOzoneCommunicationUpdateTemplate POST /tools.ozone.communication.updateTemplate
ToolsOzoneModerationApi ToolsOzoneModerationEmitEvent POST /tools.ozone.moderation.emitEvent
ToolsOzoneModerationApi ToolsOzoneModerationGetEvent GET /tools.ozone.moderation.getEvent
ToolsOzoneModerationApi ToolsOzoneModerationGetRecord GET /tools.ozone.moderation.getRecord
ToolsOzoneModerationApi ToolsOzoneModerationGetRepo GET /tools.ozone.moderation.getRepo
ToolsOzoneModerationApi ToolsOzoneModerationQueryEvents GET /tools.ozone.moderation.queryEvents
ToolsOzoneModerationApi ToolsOzoneModerationQueryStatuses GET /tools.ozone.moderation.queryStatuses
ToolsOzoneModerationApi ToolsOzoneModerationSearchRepos GET /tools.ozone.moderation.searchRepos
ToolsOzoneServerApi ToolsOzoneServerGetConfig GET /tools.ozone.server.getConfig
ToolsOzoneTeamApi ToolsOzoneTeamAddMember POST /tools.ozone.team.addMember
ToolsOzoneTeamApi ToolsOzoneTeamDeleteMember POST /tools.ozone.team.deleteMember
ToolsOzoneTeamApi ToolsOzoneTeamListMembers GET /tools.ozone.team.listMembers
ToolsOzoneTeamApi ToolsOzoneTeamUpdateMember POST /tools.ozone.team.updateMember

<a id="documentation-for-models"></a>

Documentation for Models

<a id="documentation-for-authorization"></a>

Documentation for Authorization

Authentication schemes defined for the API: <a id="Bearer"></a>

Bearer

  • Type: Bearer Authentication
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.0 174 9/9/2024

Minor update