View as Markdown
Slack icon

Slack ACTION

Delete Message

Permanently delete a message. This cannot be undone. To delete a specific message (including the most recent one), first call Get Channel History to retrieve messages — messages[0] is the most recent — then pass its ts here. Quote the message text back to the user to confirm before deleting. Accepts a channel ID (preferred — resolves instantly) or NAME for the conversation; a name is resolved by scanning up to 5 pages (~5,000 channels) of the workspace's channel list, which can be slow, and a valid channel beyond that bound will not be found. Slack only lets an identity delete its own messages, so this deletes as whichever identity posted: it retries automatically with the other identity if the first attempt returns cant_delete_message. See the documentation
  • Action
  • Writes data
  • Destructive
  • OAuth
  • SDK
  • MCP

IMPLEMENTATION

Call this tool

Connect a user's Slack account once, then configure and run Delete Message from your backend or agent.

import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "slack_v2-delete-message",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    slack_v2: { authProvisionId: "apn_xxxxxxx" },
    conversation: "Channel",
    timestamp: "Message Timestamp",
  },
})

console.log(result)

SCHEMA

Inputs

Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.

Delete Message inputs
Property Type Description
conversation Channel string
Prefer a channel ID (e.g. C1234567890) — use List Channels to look it up; it resolves instantly. A channel NAME (e.g. general or #general) is also accepted, but resolving it scans up to 5 conversations.list pages (~5,000 channels), which is slow and, on large workspaces, can be rate-limited or fail with a ConfigurationError if the channel is beyond that bound — pass the ID whenever you have it. Depending on the action, this may also accept a user ID (opens a direct message) or a group DM ID — use Find User by Email / Find User by ID to resolve a user ID, or List Group Conversations for group DM IDs.
Required
timestamp Message Timestamp string
Timestamp of a message. e.g. 1403051575.000407.
Required
as_user Send as User boolean
Pass true to delete the message as the authed user. Bot users in this context are considered authed users. Leave unset — the action falls back to the other identity automatically when Slack refuses.
Optional

REFERENCE

Tool details

Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.

Registry key
slack_v2-delete-message
Version
0.2.6
App
Slack
Authentication
OAuth
Read-only
No
Destructive
Yes
Open world
Yes