Links
Comment on page

SlackWebhook

SlackWebhook

Contents

ActionStyle type

Namespace
SlackWebhook.Enums
Summary
Action type

Danger constants

Summary
Turns the button red and indicates it some kind of destructive action

Primary constants

Summary
Turns the button green and indicates the best forward action to take

ActionStyleJsonConverter type

Namespace
SlackWebhook.Core
Summary
ActionStylejson converter

ReadJson() method

Summary
Inherit from parent.
Parameters
This method has no parameters.

WriteJson() method

Summary
Inherit from parent.
Parameters
This method has no parameters.

FormattedTextEncoder type

Namespace
SlackWebhook.Core
Summary
Handles escaping characters which the Slack webhook expects to be HTML encoded.

ICloneable`1 type

Namespace
SlackWebhook.Core
Summary
Cloneable type
Generic Types
Name
Description
T
Type of clone

Clone() method

Summary
Creates new clone of this instance
Returns
Cloned instance
Parameters
This method has no parameters.

IconType type

Namespace
SlackWebhook.Enums
Summary
Icon type

Emoji constants

Summary
Icon is a slack emoji name, e.g.
smile

Url constants

Summary
Icon is a image URL

ISlackAttachmentBuilder type

Namespace
SlackWebhook
Summary
Slack attachment builder used to configure an attachment to be added to a SlackMessage

WithAuthor(name,linkUrl,iconUrl) method

Summary
With author name, and optional link url and icon url
Parameters
Name
Type
Description
name
Author name (required)
linkUrl
Author link url (optional)
iconUrl
Author icon url (optional)
Remarks
The author parameters will display a small section at the top of a message attachment.
A valid URL that will hyperlink the AuthorNametext mentioned above. Will only work if AuthorNameis present.
A valid URL that displays a small 16x16px image to the left of the AuthorNametext. Will only work if AuthorNameis present.

WithColor(hexColor) method

Summary
With hex-based color
Parameters
Name
Type
Description
hexColor
Hex color or one of named colors (good, warning, danger)
Remarks
Like traffic signals, color-coding messages can quickly communicate intent and help separate them from the flow of other messages in the timeline.
An optional value that can either be one of good, warning, danger, or any hex color code(eg. #439FE0). This value is used to color the border along the left side of the message attachment.

WithColor(color) method

Summary
With color from Colorinstance
Parameters
Name
Type
Description
color
Color instance to set color from

WithFallback(fallback) method

Summary
With required plain-text summary of the attachment
Returns
Parameters
Name
Type
Description
fallback
Remarks
A plain-text summary of the attachment. This text will be used in clients that don't show formatted text (eg. IRC, mobile notifications) and should not contain any markup.

WithField(title,value,isShort,enableFormatting) method

Summary
With attachment field shown as a table inside the message attachment
Parameters
Name
Type
Description
title
Title of field
Shown as a bold heading above the value text. It cannot contain markup and will be escaped for you. | | value | System.String | Value of field (may contain formatting if enabled)
The text value of the field. It may contain standard message markup and must be escaped as normal. May be multi-line. | | isShort | System.Boolean | Whether field can be shown side-by-side with other fields (optional) | | enableFormatting | System.Boolean | Whether or not to enable formatting for value |
Remarks
If enableFormattingis enabled, you can use Slack message formatting in valueand it will automatically be encoded according to slack encoding rules.

WithFooter(text,iconUrl) method

Summary
With footer text and optional footer icon
Returns
Parameters
Name
Type
Description
text
iconUrl
Remarks
Add some brief text to help contextualize and identify an attachment. Limited to 300 characters, and may be truncated further when displayed to users in environments with limited screen real estate.
To render a small icon beside your footer text, provide a publicly accessible URL string in the footer_icon field. You must also provide a footer for the field to be recognized.
We'll render what you provide at 16px by 16px. It's best to use an image that is similarly sized.

WithImage(url) method

Summary
With image url
Parameters
Name
Type
Description
url
Image url
Remarks
A valid URL to an image file that will be displayed inside a message attachment. We currently support the following formats: GIF, JPEG, PNG, and BMP.
Large images will be resized to a maximum width of 400px or a maximum height of 500px, while still maintaining the original aspect ratio.
Summary
With link on attachment title
Parameters
Name
Type
Description
url
Remarks
Link of title (optional)

WithLinkButtonAction(text,url,style) method

Summary
With link button action, shown at the bottom of the attachment
Parameters
Name
Type
Description
text
Test shown on link button
url
URL opened if link button is pressed
style
Optional style
Remarks
An attachment may contain multiple actions

WithPreText(text,enableFormatting) method

Summary
With optional pre-text
Parameters
Name
Type
Description
text
Pre-text
enableFormatting
Whether or not to enable formatting for text
Remarks
This is optional text that appears above the message attachment block.

WithText(text,enableFormatting) method

Summary
With optional text
Parameters
Name
Type
Description
text
Text
enableFormatting
Whether or not to enable formatting for text
Remarks
This is the main text in a message attachment, and can contain standard message markup. The content will automatically collapse if it contains 700+ characters or 5+ linebreaks, and will display a "Show more..." link to expand the content. Links posted in the text field will not unfurl.
If enableFormattingis enabled, you can use Slack message formatting in textand it will automatically be encoded according to slack encoding rules.

WithThumbnail(url) method

Summary
With thumbnail url
Parameters
Name
Type
Description
url
Thumbnail url
Remarks
A valid URL to an image file that will be displayed as a thumbnail on the right side of a message attachment. We currently support the following formats: GIF, JPEG, PNG, and BMP.
The thumbnail's longest dimension will be scaled down to 75px while maintaining the aspect ratio of the image. The filesize of the image must also be less than 500 KB.
For best results, please use images that are already 75px by 75px.

WithTimestamp(timestamp) method

Summary
With timestamp based on timestamp
Parameters
Name
Type
Description
timestamp
DateTimeOffset to set timestamp from
Remarks
Does your attachment relate to something happening at a specific time?
By providing the ts field with an integer value in "epoch time", the attachment will display an additional timestamp value as part of the attachment's footer.
Use ts when referencing articles or happenings.Your message will have its own timestamp when published.
Example: Providing 123456789 would result in a rendered timestamp of Nov 29th, 1973.

WithTimestamp(epochTime) method

Summary
With epoc timestamp
Parameters
Name
Type
Description
epochTime
Epoch timestamp
Remarks
Does your attachment relate to something happening at a specific time?
By providing the ts field with an integer value in "epoch time", the attachment will display an additional timestamp value as part of the attachment's footer.
Use ts when referencing articles or happenings.Your message will have its own timestamp when published.
Example: Providing 123456789 would result in a rendered timestamp of Nov 29th, 1973.

WithTitle(title) method

Summary
With required title
Parameters
Name
Type
Description
title
Title
Remarks
The title is displayed as larger, bold text near the top of a message attachment. By passing a valid URL in the TitleLinkparameter (optional), the title text will be

ISlackClient type

Namespace
SlackWebhook
Summary
Slack client

SendAsync(configureBuilder) method

Summary
Send new SlackMessageby configuring the provided ISlackMessageBuilder
Parameters
Name
Type
Description
configureBuilder
Configure message to send using this builder
Exceptions
Name
Description
Thrown if validation of the message fails, such as if a required field is missing.
Uses Validateto perform validation. |

SendAsync(message) method

Summary
Send the provided SlackMessage
Parameters
Name
Type
Description
message
Slack message to send
Exceptions
Name
Description
Thrown if validation of the message fails, such as if a required field is missing.
Uses Validateto perform validation. |

ISlackMessageBuilder type

Namespace
SlackWebhook
Summary
Slack message builder that produces SlackMessageinstances based on the builder's current configuration.

Build() method

Summary
Build SlackMessagebased on current state of the builder
Returns
New message
Parameters
This method has no parameters.
Exceptions
Name
Description
Thrown if validation of the message fails, such as if a required field is missing.
Uses Validateto perform validation. |

WithAttachment(configureAttachment) method

Summary
With attachment build with provided attachment builder
Parameters
Name
Type
Description
configureAttachment
Attachment builder
Remarks
Adds a new SlackAttachmentto Attachmentsbuilt using provided ISlackAttachmentBuilder

WithChannel(channel) method

Summary
With channel
Parameters
Name
Type
Description
channel
The channel.
Remarks
Sets the Channelproperty

WithIcon(iconType,urlOrEmoji) method

Summary
With icon (url or emoji)
Parameters
Name
Type
Description
iconType
Type of icon
urlOrEmoji
URL or emoji name (depending on iconType)
Remarks
Sets the IconUrlor IconEmojibased on iconTypewith the provided value urlOrEmoji

WithText(text,enableFormatting) method

Summary
With required message text
Parameters
Name
Type
Description
text
Message text
enableFormatting
Whether or not to enable formatting for text
Remarks
Sets the Textand EnableFormattingproperties.
If enableFormattingis enabled, you can use Slack message formatting in textand it will automatically be encoded according to slack encoding rules.

WithUsername(username) method

Summary
With username
Parameters
Name
Type
Description
username
Username
Remarks
Sets the Usernameproperty

IValidateable type

Namespace
SlackWebhook.Core
Summary
Object can be validated

Validate(validationErrors) method

Summary
Validates the current state of the object (including any nested validateable members)
Returns
True if the object is valid, false otherwise
Parameters
Name
Type
Description
validationErrors
Validation errors (if any found)
Remarks
Will find all (if any) validation errors and populate validationErrorswith each

SlackAttachment type

Namespace
SlackWebhook.Messages
Summary
Optional attachment to a SlackMessage.

FormattingFields constants

Summary
Used to enable formatting of the Fieldsvalue fields

FormattingPretext constants

Summary
Used to enable formatting of the PreTextfield

FormattingText constants

Summary
Used to enable formatting of the Textfield

Actions property

Summary
Actions shown at the bottom of the message (optional)