# slackapi/python-slack-sdk

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/slackapi-python-slack-sdk).**

4,008 stars · 855 forks · Python · MIT

## Links

- GitHub: https://github.com/slackapi/python-slack-sdk
- awesome-repositories: https://awesome-repositories.com/repository/slackapi-python-slack-sdk.md

## Description

This project provides a suite of development kits and frameworks for interacting with Slack, including a Web API client for authenticated requests and the Bolt framework for building asynchronous applications. It serves as a SDK for creating automated bots and integrating external software systems with Slack workspaces.

The toolkit includes a specialized Events API client for listening to real-time system triggers and executing custom callback logic. It supports the development of automated assistants capable of sending messages and managing data exchanges via webhooks.

The library covers a broad range of capabilities including programmatic file management for uploading local media to channels, token-based request authentication, and proxy-aware connection management for secure network transport. It also provides mechanisms for non-blocking asynchronous request handling and multipart file streaming.

## Tags

### Networking & Communication

- [Slack Integrations](https://awesome-repositories.com/f/networking-communication/slack-integrations.md) — Connects external software systems to Slack using API calls and webhooks for data exchange.
- [API Request Execution](https://awesome-repositories.com/f/networking-communication/api-request-execution.md) — Executes network requests to the remote Web API using various synchronization models. ([source](https://github.com/slackapi/python-slack-sdk/wiki/Migrating-to-2.x))
- [Direct Channel Messaging](https://awesome-repositories.com/f/networking-communication/messaging-channel-management/direct-channel-messaging.md) — Enables posting text content directly to communication channels as a bot or user. ([source](https://cdn.jsdelivr.net/gh/slackapi/python-slack-sdk@main/README.md))
- [Real-Time Event Handlers](https://awesome-repositories.com/f/networking-communication/real-time-event-streams/real-time-event-handlers.md) — Implements application logic that triggers specific callbacks in response to real-time system events. ([source](https://github.com/slackapi/python-slack-sdk/wiki/Migrating-to-2.x))
- [Slack Bot Development](https://awesome-repositories.com/f/networking-communication/slack-bot-development.md) — Provides frameworks for building automated assistants that respond to triggers and send messages.
- [Application Frameworks](https://awesome-repositories.com/f/networking-communication/slack-bot-development/application-frameworks.md) — Offers a specialized framework for building asynchronous, event-driven Slack applications.
- [Multi-Channel File Uploads](https://awesome-repositories.com/f/networking-communication/api-integration-frameworks/api-management-integration/api-integrations/file-upload-apis/multi-channel-file-uploads.md) — Transmits local files from a specified path to a remote destination via established API channels. ([source](https://cdn.jsdelivr.net/gh/slackapi/python-slack-sdk@main/README.md))
- [Multipart File Uploads](https://awesome-repositories.com/f/networking-communication/http-file-uploads/large-file-uploads/multipart-file-uploads.md) — Supports uploading local binary data using a multipart chunked process for large file transfers.
- [File Management](https://awesome-repositories.com/f/networking-communication/slack-integrations/file-management.md) — Enables programmatic uploading of documents and media from local storage to specific channels.

### Security & Cryptography

- [Automatic Request Token Injection](https://awesome-repositories.com/f/security-cryptography/bearer-token-authentication/automatic-request-token-injection.md) — Automatically injects security credentials into HTTP headers for every outgoing API call.

### Software Engineering & Architecture

- [Event-Driven Callbacks](https://awesome-repositories.com/f/software-engineering-architecture/event-driven-callbacks.md) — Links server-sent triggers to user-defined functions that execute logic when specific events are received.
- [Non-blocking I/O](https://awesome-repositories.com/f/software-engineering-architecture/concurrent-task-execution/non-blocking-i-o.md) — Utilizes an asynchronous event loop for non-blocking I/O to prevent main thread execution stalls.
- [Client Wrappers](https://awesome-repositories.com/f/software-engineering-architecture/rest-api-architectures/client-wrappers.md) — Maps high-level Python methods to specific HTTP endpoints with built-in request and response serialization.

### Web Development

- [Slack Event Listeners](https://awesome-repositories.com/f/web-development/event-listeners/realtime-connection-state-listeners/browser-event-listeners/slack-event-listeners.md) — Implements real-time listeners for workspace activities to execute custom callback logic.

### Programming Languages & Runtimes

- [Asynchronous Request Execution](https://awesome-repositories.com/f/programming-languages-runtimes/language-features-paradigms/concurrency-models/asynchronous-processing/asynchronous-request-execution.md) — Provides non-blocking network requests using awaitable patterns for high-concurrency interactions. ([source](https://cdn.jsdelivr.net/gh/slackapi/python-slack-sdk@main/README.md))

### Part of an Awesome List

- [Development Frameworks](https://awesome-repositories.com/f/awesome-lists/devtools/development-frameworks.md) — Official Python SDK for Slack.
- [Media and Communication](https://awesome-repositories.com/f/awesome-lists/media/media-and-communication.md) — Slack SDK for Python.
