post/webhooks/{webhook_id}/{token}/slack

Execute Slack webhook

Receives and processes Slack-formatted webhook payloads, converting them to messages in the configured channel. Returns "ok" as plain text with a 200 status code.

execute_slack_webhook

Parameters

NameInTypeDescription
webhook_id*pathSnowflakeTypeThe ID of the webhook
token*pathstringThe token

Request body

application/json

json
{
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "description": "Main text content of the message"
    },
    "username": {
      "type": "string",
      "description": "Override the default username of the webhook"
    },
    "icon_url": {
      "type": "string",
      "description": "Override the default icon of the webhook"
    },
    "attachments": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "fallback": {
            "type": "string",
            "description": "Fallback text for notifications"
          },
          "pretext": {
            "type": "string",
            "description": "Text that appears above the attachment block"
          },
          "text": {
            "type": "string",
            "description": "Main text content of the attachment"
          },
          "color": {
            "type": "string",
            "description": "Colour of the attachment sidebar (hex code or preset)"
          },
          "title": {
            "type": "string",
            "description": "Title of the attachment"
          },
          "title_link": {
            "type": "string",
            "description": "URL to link from the title"
          },
          "fields": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "title": {
                  "type": "string",
                  "description": "Title of the field"
                },
                "value": {
                  "type": "string",
                  "description": "Value of the field"
                },
                "short": {
                  "type": "boolean",
                  "description": "Whether the field should be displayed as a short column"
                }
              }
            },
            "description": "Array of field objects"
          },
          "footer": {
            "type": "string",
            "description": "Footer text displayed at the bottom"
          },
          "ts": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991,
            "format": "int53",
            "description": "Unix timestamp for the attachment footer"
          },
          "author_name": {
            "type": "string",
            "description": "Name of the author"
          },
          "author_link": {
            "type": "string",
            "description": "URL to link from the author name"
          },
          "author_icon": {
            "type": "string",
            "description": "URL for the author icon image"
          },
          "image_url": {
            "type": "string",
            "description": "URL of the main image to display"
          },
          "thumb_url": {
            "type": "string",
            "description": "URL of a thumbnail image"
          }
        }
      },
      "description": "Array of attachment objects"
    }
  }
}

Responses

200

Success

json
{
  "type": "string"
}
400

Bad Request - The request was malformed or contained invalid data

json
{
  "type": "object",
  "properties": {
    "code": {
      "$ref": "#/components/schemas/APIErrorCode"
    },
    "message": {
      "type": "string",
      "description": "Human-readable error message"
    },
    "errors": {
      "type": "array",
      "description": "Field-specific validation errors",
      "items": {
        "$ref": "#/components/schemas/ValidationErrorItem"
      }
    }
  },
  "required": [
    "code",
    "message"
  ]
}
429

Too Many Requests - You are being rate limited

json
{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "enum": [
        "RATE_LIMITED"
      ]
    },
    "message": {
      "type": "string"
    },
    "retry_after": {
      "type": "number",
      "description": "Seconds to wait before retrying"
    },
    "global": {
      "type": "boolean",
      "description": "Whether this is a global rate limit"
    }
  },
  "required": [
    "code",
    "message",
    "retry_after"
  ]
}
500

Internal Server Error - An unexpected error occurred

json
{
  "type": "object",
  "properties": {
    "code": {
      "$ref": "#/components/schemas/APIErrorCode"
    },
    "message": {
      "type": "string",
      "description": "Human-readable error message"
    },
    "errors": {
      "type": "array",
      "description": "Field-specific validation errors",
      "items": {
        "$ref": "#/components/schemas/ValidationErrorItem"
      }
    }
  },
  "required": [
    "code",
    "message"
  ]
}