Slack API Connection

The Slack connection type enables Slack API Integrations.

Authenticating to Slack

Authenticate to Slack using a Slack API token.

Default Connection IDs

Warning

The SlackHook and community provided operators not intend to use any Slack API Connection by default right now. It might change in the future to slack_api_default.

Configuring the Connection

Password

Specify the Slack API token.

Extra (optional)

Specify the extra parameters (as json dictionary) that can be used in slack_sdk.WebClient. All parameters are optional.

  • timeout: The maximum number of seconds the client will wait to connect and receive a response from Slack API.

  • base_url: A string representing the Slack API base URL.

  • proxy: Proxy to make the Slack API call.

If you are configuring the connection via a URI, ensure that all components of the URI are URL-encoded.

Examples

Set Slack API Connection as Environment Variable (URI)
export AIRFLOW_CONN_SLACK_API_DEFAULT='slack://:xoxb-1234567890123-09876543210987-AbCdEfGhIjKlMnOpQrStUvWx@/?timeout=42'
Snippet for create Connection as URI:
from airflow.models.connection import Connection

conn = Connection(
    conn_id="slack_api_default",
    conn_type="slack",
    password="xoxb-1234567890123-09876543210987-AbCdEfGhIjKlMnOpQrStUvWx",
    extra={
        # Specify extra parameters here
        "timeout": "42",
    },
)

# Generate Environment Variable Name
env_key = f"AIRFLOW_CONN_{conn.conn_id.upper()}"

print(f"{env_key}='{conn.get_uri()}'")
# AIRFLOW_CONN_SLACK_API_DEFAULT='slack://:xoxb-1234567890123-09876543210987-AbCdEfGhIjKlMnOpQrStUvWx@/?timeout=42'

Was this entry helpful?