
Slack: Post Chat (Incoming Webhook)
This item sends a message to Slack with an Incoming Webhook.
Configs: Common
- Step Name
- Note
Configs
- C1: Incoming Webhook URL *
- C2: Sending Text#{EL}
- C3: Attachment Summary (In notifications when no sending text)#{EL}
- C4: Attachment Color
- C5: Attachment Title#{EL}
- C6: Attachment Title Link#{EL}
- C7: Attachment Text#{EL}
Capture

See also
Script (click to open)
- An XML file that contains the code below is available to download
- slack-chat-post-webhook.xml (C) Questetra, Inc. (MIT License)
- If you are using Professional, you can modify the contents of this file and use it as your own add-on
main();
function main() {
let jsonReq = {};
if (configs.get("Text") !== "" && configs.get("Text") !== null){
jsonReq["text"] = configs.get("Text");
}
let attachment = {};
attachAdd(attachment, "Fallback", "fallback");
attachAdd(attachment, "Color", "color");
attachAdd(attachment, "Title", "title");
if (configs.get("Title") !== "" && configs.get("Title") !== null){
attachAdd(attachment, "TitleLink", "title_link");
}
attachAdd(attachment, "AttachText", "text");
if (attachment !== {}){
jsonReq["attachments"] = [attachment];
}
if (attachment["title"] == null && attachment["text"] == null && jsonReq["text"] == null){
throw "Message to send isn't set.";
}
const url = configs.get("Url");
let response = httpClient.begin()
.body(JSON.stringify(jsonReq), "application/json; charset=UTF-8")
.post(url);
const status = response.getStatusCode();
const responseTxt = response.getResponseAsString();
if (status !== 200) {
engine.log(`${responseTxt}`);
throw `Failed to send. status: ${status}`;
throw error;
}
}
function attachAdd(attachment, config, attachName){
const value = configs.get(config);
if (value !== "" && value !== null){
attachment[attachName] = value;
}
}
Pingback: Posting Message to Slack – Questetra Support