C# SDK

Install and start using the C# SDK.

Intro

The Slack Web API SDK provides access to the Slack Web API REST APIs.

Installation

Add the SDK as a project reference into your solution:

Terminal
dotnet add reference <path-to-sdk>/src/SlackWebApi/SlackWebApi.csproj

The project takes its build settings from the files around it, so reference it in place.

Quick Start

Dependency Injection

Register the client with IServiceCollection and resolve it from the container. The HttpClient is managed by IHttpClientFactory. Configure the client's behavior through SlackWebApiClientOptions.

C#
services.AddSlackWebApiClient(options =>
{
    options.SlackAuth =
        new OAuth2AuthorizationCodeCredentials
        {
            ClientId = "YOUR_CLIENT_ID",
            RedirectUri = "YOUR_REDIRECT_URI",
            PromptForAuthorizationCode = (authUrl, ct) => Task.FromResult(""),
        };
    options.Environment = ServerEnvironment.Production;
    // TODO: configure more client options here
});

Direct Instantiation

Create the client by passing an HttpClient you manage yourself. Configure the client's behavior through SlackWebApiClientOptions.

C#
var httpClient = new HttpClient();
// TODO: configure more client options here
var options = new SlackWebApiClientOptions
{
    SlackAuth = new OAuth2AuthorizationCodeCredentials
    {
        ClientId = "YOUR_CLIENT_ID",
        RedirectUri = "YOUR_REDIRECT_URI",
        PromptForAuthorizationCode = (authUrl, ct) => Task.FromResult(""),
    },
    Environment = ServerEnvironment.Production,
};
var client = new SlackWebApiClient(httpClient, options);

On this page