Skip to main content

Slack Message From iPaaS.com Mapping Documentation

How iPaaS.com error alerts map to Slack messages, including the mapping filter, fields, and delivery flow.

Summary

The Slack integration sends alert messages from iPaaS.com to a designated member in a Slack workspace through the Add Slack Message FROM iPaaS.com mapping collection. It is designed for automated error alerting: when an iPaaS.com transaction errors and does not resolve itself after repeated attempts, a formatted message is delivered to Slack so the condition can be reviewed promptly.

ID Format

Manual Sync ID: the iPaaS.com message record ID, entered on the iPaaS.com Manual Sync page. Example: 288.

External ID (saved after delivery): after a message is delivered, Slack returns a block identifier that iPaaS.com records as the external ID for the transfer. Example: b1.

Deleted Record Support

Outbound delete is not supported. Removing a record on the iPaaS.com side does not remove a message that has already been delivered to Slack, and delete mappings are not included in the default template.

Mapping Collection Status

Enabled. A mapping filter is applied so that only unresolved error alerts are sent (see Mappings below). Records that do not meet the filter conditions are skipped.

Duplicate or Conflicting Mappings

There is a single Slack mapping collection, so there are no conflicting collections operating on the same data. Collision handling is not supported for this collection.

Supported Child Collections

This collection has no child collections.

System Caveats

Slack Caveats

  • Message length: Slack limits an individual message block to 3,000 characters and a single message to 4,000 characters total. Long alert bodies are automatically shortened and split into blocks before delivery, and a follow-up notice is appended when truncation occurs.

  • Recipient must exist: the Slack member named in the Channel mapping must exist in the connected workspace. If no member matches the supplied profile name, the alert is not delivered to a recipient.

  • Channel vs. member, and private channels: the Channel mapping can target an individual member (resolved from a profile name) or a channel (by returning the channel name directly, for example return "#chris-private";). To deliver to a private channel, the Slack application must first be added to that channel, or the send fails with a channel-not-found error.

  • Workspace permissions: the Slack application authorized for the subscription must hold the permissions required to read the member list and post messages.

iPaaS.com Caveats

  • Alerts are produced from iPaaS.com error records. A message is eligible for delivery only after it carries an ExternalSystemId and its RetryCount has reached 3.

Setup Requirements

  • A Slack workspace with a Slack application authorized for the subscription (see the Slack Connections and Settings and Slack Installation Instructions articles).

  • Application permissions sufficient to read the workspace member list and to post messages.

  • The member who should receive alerts must exist in the workspace, and that member's profile name must be set in the Channel mapping.

Integration Flow

  1. Error event: an error is recorded in iPaaS.com. Only messages that carry an ExternalSystemId and have reached a RetryCount of 3 are eligible for delivery.

  2. Delivery trigger: an eligible message is dispatched automatically through the subscription's outbound triggers (configured under Outbound Data Flows), or on demand through Manual Sync.

  3. Recipient resolution: the integration resolves the target Slack member by matching the supplied profile name against the member's Name first and then their Real Name.

  4. Message preparation: the alert body is built and formatted. If it exceeds the supported length, it is shortened and split into blocks, and a follow-up notice is appended.

  5. Delivery: the formatted message is posted to Slack, and Slack confirms delivery or returns an error that is recorded in the iPaaS.com error log.

Mappings

Add Slack Message FROM iPaaS.com

Mapping Filter

if(DetailFields == null || DetailFields.ContainsKey("ExternalSystemId"))
{
    if(!DetailFields.ContainsKey("RetryCount"))
        return false;
    var retryCountStr = DetailFields["RetryCount"];
    if(int.TryParse(retryCountStr, out int retryCount))
        return (retryCount == 3);
    return false;
}
else
  return false;

This filter only allows a message through when it originated from an error (it carries an ExternalSystemId) and that error has reached a RetryCount of 3, meaning it did not resolve itself on earlier attempts. Messages without an ExternalSystemId, or whose RetryCount has not reached 3, are skipped.

Field Mappings

Mapping Type

Source Field (iPaaS.com)

Destination Field (Slack)

Description

Dynamic Formula

await UserIdFromName("your_slack_user_name_here")

Channel

Required. Resolves the recipient by looking up the Slack member whose profile name is supplied, checking Name first and then Real Name. Placeholder value — replace during implementation: your_slack_user_name_here is an example name; set it to the member who should receive alerts.

Dynamic Formula

if(Details.Length > 3500) Details = Details.Substring(0, 3500); StandardMessage(Text, Details, DetailFields, Links)

Text

Required. Builds the formatted alert body and shortens it when it is too long for Slack to deliver (Slack allows up to 4,000 characters per message).

Static

... (the remainder of the error message has been truncated per Slack's character limits)

FollowUpMessage

Optional. A notice appended to the alert when a long message is split across blocks, so the recipient knows the content was truncated.

Error Handling

  • Recipient not found: the supplied profile name does not match a member in the workspace, so the alert is delivered to no recipient. Confirm the member exists and the name matches their Name or Real Name.

  • Authorization could not be completed: the Slack connection is not authorized. Restart the authorization from the subscription settings.

  • For the full list of subscriber-facing errors and resolutions, see the Slack Error Messages article. Errors are viewed under Dashboard → Integration Monitoring → Error Logs.

Related Documents

Did this answer your question?