Operations (sample payloads)

Main operations

Add reminder

This method creates a reminder. Sample Input Sample Output

{
    "ok": true,
    "reminder": \{
        "id": "Rm12345678",
        "creator": "U9876543210",
        "user": "U1234567890",
        "text": "Team meeting",
        "recurring": false,
        "time": 1623240000,
        "complete_ts": 0
    \}
}

Archive conversation

Archive a conversation in your Slack account. Sample Input

{
    "channel": "C01234ABCDE"
}

Sample Output

Conversation exists?

Checks to see whether a conversation exists in Slack. Sample Input

\{
    "token": "xoxp-1234567890-1234567890-1234567890-abcdef",
    "channel": "#general"
\}

Sample Output

{
    "channel": {
        "id": "C012AB3CD",
        "name": "general",
        "is_channel": true,
        "is_group": false,
        "is_im": false,
        "created": 1449252889,
        "creator": "U012A3CDE",
        "is_archived": false,
        "is_general": true,
        "unlinked": 0,
        "name_normalized": "general",
        "is_read_only": false,
        "is_shared": false,
        "parent_conversation": [],
        "is_ext_shared": false,
        "is_org_shared": false,
        "pending_shared": [],
        "is_pending_ext_shared": false,
        "is_member": true,
        "is_private": false,
        "is_mpim": false,
        "last_read": "1592345678.000200",
        "topic": \{
            "value": "Company-wide announcements and work-based matters",
            "creator": "U012A3CDE",
            "last_set": 1592150772
        \},
        "purpose": \{
            "value": "This channel is for team-wide communication and announcements. All team members are in this channel.",
            "creator": "U012A3CDE",
            "last_set": 1592150772
        \},
        "previous_names": [],
        "locale": "en-US"
    },
    "exists": true
}

Create conversation

Create a public or private channel-based conversation. Sample Input

\{
    "name": "project-updates",
    "is_private": false
\}

Sample Output

{
    "ok": true,
    "channel": {
        "id": "C01234ABCDE",
        "name": "project-updates",
        "is_channel": true,
        "is_group": false,
        "is_im": false,
        "created": 1609459200,
        "creator": "U9876ZYXWV",
        "is_archived": false,
        "is_general": false,
        "unlinked": 0,
        "name_normalized": "project-updates",
        "is_shared": false,
        "is_ext_shared": false,
        "is_org_shared": false,
        "pending_shared": [],
        "is_pending_ext_shared": false,
        "is_member": true,
        "is_private": false,
        "is_mpim": false,
        "last_read": "0000000000.000000",
        "latest": 1609459200,
        "unread_count": 0,
        "unread_count_display": 0,
        "topic": \{
            "value": "",
            "creator": "",
            "last_set": 0
        \},
        "purpose": \{
            "value": "",
            "creator": "",
            "last_set": 0
        \},
        "previous_names": [],
        "priority": 0
    }
}

Create pin

Pin a message, file, or file comment to a channel. Sample Input

\{
    "channel": "C0123456789",
    "message": "1234567890.123456",
    "file": null,
    "file_comment": null
\}

Sample Output

{
    "ok": true
}

Delete scheduled message

Delete a pending scheduled message from the queue. Sample Input

\{
    "token": "xoxp-1234567890-1234567890-1234567890-1234567890abcdef",
    "channel": "C0123ABCDEF",
    "scheduled_message_id": "Q01234567890",
    "as_user": true
\}

Sample Output

{
    "ok": true
}

Generate channel name

Given a piece of text (e.g. an Account name in Salesforce), generate a Slack friendly channel name in the format "my-channel-name". You can then pass this directly to the "Create Channel" operation. Sample Input Sample Output

{
    "channel": "acme-corporation-sales-team"
}

Get conversation info

Retrieve information about a conversation. Sample Input

\{
    "channel": "C0123456789",
    "include_locale": true,
    "include_num_members": true
\}

Sample Output

{
    "ok": true,
    "channel": {
        "id": "C0123456789",
        "name": "general",
        "is_channel": true,
        "is_group": false,
        "is_im": false,
        "created": 1609459200,
        "creator": "U9876543210",
        "is_archived": false,
        "is_general": true,
        "unlinked": 0,
        "name_normalized": "general",
        "is_read_only": false,
        "is_shared": false,
        "parent_conversation": [],
        "is_ext_shared": false,
        "is_org_shared": false,
        "pending_shared": [],
        "is_pending_ext_shared": false,
        "is_member": true,
        "is_private": false,
        "is_mpim": false,
        "last_read": "1623456789.000200",
        "topic": \{
            "value": "Company-wide announcements and work-based matters",
            "creator": "U9876543210",
            "last_set": 1609459200
        \},
        "purpose": \{
            "value": "This channel is for workspace-wide communication and announcements. All members are in this channel.",
            "creator": "U9876543210",
            "last_set": 1609459200
        \},
        "previous_names": [],
        "locale": "en-US",
        "num_members": 58
    }
}

Get user

Get details of a user in your Slack channel, using their unique ID. Sample Input

\{
    "token": "xoxp-1234567890-1234567890-1234567890-abcdef",
    "user_id": "U0123ABCD",
    "include_locale": true
\}

Sample Output

Get user by email

Get a user by their email address. Sample Input

\{
    "token": "xoxp-1234567890-1234567890-1234567890-1234567890abcdef",
    "email": "john.doe@example.com"
\}

Sample Output

{
    "found": true,
    "user": {
        "id": "U0123ABCD",
        "team_id": "T01234567",
        "name": "johndoe",
        "deleted": false,
        "color": "9f69e7",
        "real_name": "John Doe",
        "tz": "America/Los_Angeles",
        "tz_label": "Pacific Daylight Time",
        "tz_offset": -25200,
        "profile": \{
            "title": "Software Engineer",
            "phone": "+1 (555) 123-4567",
            "skype": "john.doe.skype",
            "real_name": "John Doe",
            "real_name_normalized": "John Doe",
            "display_name": "John",
            "display_name_normalized": "John",
            "status_text": "Working from home",
            "status_emoji": ":house:",
            "status_expiration": 1623456789,
            "avatar_hash": "g1234567890",
            "image_original": "https://avatars.slack-edge.com/2021-06-01/1234567890_123456789012345678_original.jpg",
            "is_custom_image": true,
            "email": "john.doe@example.com",
            "first_name": "John",
            "last_name": "Doe",
            "image_24": "https://avatars.slack-edge.com/2021-06-01/1234567890_123456789012345678_24.jpg",
            "image_32": "https://avatars.slack-edge.com/2021-06-01/1234567890_123456789012345678_32.jpg",
            "image_48": "https://avatars.slack-edge.com/2021-06-01/1234567890_123456789012345678_48.jpg",
            "image_72": "https://avatars.slack-edge.com/2021-06-01/1234567890_123456789012345678_72.jpg",
            "image_192": "https://avatars.slack-edge.com/2021-06-01/1234567890_123456789012345678_192.jpg",
            "image_512": "https://avatars.slack-edge.com/2021-06-01/1234567890_123456789012345678_512.jpg",
            "image_1024": "https://avatars.slack-edge.com/2021-06-01/1234567890_123456789012345678_1024.jpg",
            "status_text_canonical": "",
            "team": "T01234567"
        \},
        "is_admin": false,
        "is_owner": false,
        "is_primary_owner": false,
        "is_restricted": false,
        "is_ultra_restricted": false,
        "is_bot": false,
        "is_app_user": false,
        "updated": 1623456789,
        "is_email_confirmed": true,
        "has_2fa": true
    }
}

Invite user to conversation

Invite a user to a conversation in your Slack account. The calling user must be a member of the channel. Sample Input

\{
    "channel": "C0123ABC456",
    "user": "U9876XYZ543",
    "succeed_on_exists": true
\}

Sample Output

{
    "ok": true,
    "channel": {
        "id": "C0123ABC456",
        "name": "project-alpha",
        "is_channel": true,
        "is_group": false,
        "is_im": false,
        "created": 1609459200,
        "creator": "U1234567890",
        "is_archived": false,
        "is_general": false,
        "unlinked": 0,
        "name_normalized": "project-alpha",
        "is_read_only": false,
        "is_shared": false,
        "is_ext_shared": false,
        "is_org_shared": false,
        "pending_shared": [],
        "is_pending_ext_shared": false,
        "is_member": true,
        "is_private": false,
        "is_mpim": false,
        "last_read": "1623456789.000200",
        "topic": \{
            "value": "Discuss Project Alpha tasks",
            "creator": "U1234567890",
            "last_set": 1609459300
        \},
        "purpose": \{
            "value": "Collaboration space for Project Alpha team",
            "creator": "U1234567890",
            "last_set": 1609459400
        \},
        "previous_names": [],
        "num_members": 15,
        "locale": "en-US"
    }
}

Leave conversation

Remove yourself (the authenticated user) from a conversation. Sample Input

{
    "channel": "C0123ABCDEF"
}

Sample Output

List conversations

List of all channel-like conversations in a workspace. Sample Input Sample Output

{
    "ok": true,
    "channels": [
        {
            "id": "C012AB3CD",
            "name": "general",
            "is_channel": true,
            "is_group": false,
            "is_im": false,
            "created": 1449252889,
            "is_archived": false,
            "is_general": true,
            "unlinked": 0,
            "name_normalized": "general",
            "is_shared": false,
            "creator": "U012A3CDE",
            "is_ext_shared": false,
            "is_org_shared": false,
            "shared_team_ids": [
                "T012AB3C4"
            ],
            "pending_shared": [],
            "pending_connected_team_ids": [],
            "is_pending_ext_shared": false,
            "is_member": true,
            "is_private": false,
            "is_mpim": false,
            "topic": \{
                "value": "Company-wide announcements and work-based matters",
                "creator": "U012A3CDE",
                "last_set": 1449709364
            \},
            "purpose": \{
                "value": "This channel is for workspace-wide communication and announcements. All members are in this channel.",
                "creator": "U012A3CDE",
                "last_set": 1449709364
            \},
            "previous_names": [],
            "num_members": 4
        },
        {
            "id": "C061EG9T2",
            "name": "random",
            "is_channel": true,
            "is_group": false,
            "is_im": false,
            "created": 1449252889,
            "is_archived": false,
            "is_general": false,
            "unlinked": 0,
            "name_normalized": "random",
            "is_shared": false,
            "creator": "U061F7AUR",
            "is_ext_shared": false,
            "is_org_shared": false,
            "shared_team_ids": [
                "T061EG9R6"
            ],
            "pending_shared": [],
            "pending_connected_team_ids": [],
            "is_pending_ext_shared": false,
            "is_member": true,
            "is_private": false,
            "is_mpim": false,
            "topic": \{
                "value": "Non-work banter and water cooler conversation",
                "creator": "U061F7AUR",
                "last_set": 1449709364
            \},
            "purpose": \{
                "value": "A place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber you'd prefer to keep out of more focused work-related channels.",
                "creator": "U061F7AUR",
                "last_set": 1449709364
            \},
            "previous_names": [],
            "num_members": 4
        }
    ],
    "response_metadata": {
        "next_cursor": "dGVhbTpDMDYxRkE1UEI="
    }
}

List scheduled messages

Returns a list of pending scheduled messages. Sample Input Sample Output

{
    "ok": true,
    "scheduled_messages": [
        \{
            "id": "Q1234567890",
            "channel_id": "C0123ABCDEF",
            "post_at": 1683907200,
            "date_created": 1683648000,
            "text": "Reminder: Team meeting at 2 PM today!"
        \},
        \{
            "id": "Q2345678901",
            "channel_id": "C0123ABCDEF",
            "post_at": 1684080000,
            "date_created": 1683734400,
            "text": "Don't forget to submit your weekly reports by EOD."
        \}
    ],
    "response_metadata": {
        "next_cursor": "dXNlcjpVMDYxTkZUVDI="
    }
}

List users

Get a list of all of the users in your Slack team. Sample Input

\{
    "token": "xoxp-1234567890-1234567890-1234567890-abcdef",
    "cursor": "",
    "limit": 50
\}

Sample Output

{
    "ok": true,
    "offset": "0",
    "members": [
        {
            "id": "U0123ABCD",
            "team_id": "T01234567",
            "name": "johndoe",
            "deleted": false,
            "profile": \{
                "title": "Software Engineer",
                "phone": "+1 555-123-4567",
                "skype": "john.doe",
                "real_name": "John Doe",
                "real_name_normalized": "John Doe",
                "display_name": "Johnny",
                "display_name_normalized": "Johnny",
                "fields": null,
                "status_text": "Working from home",
                "status_emoji": ":house:",
                "status_expiration": 1623456789,
                "avatar_hash": "g1234567890",
                "email": "john.doe@example.com",
                "image_24": "https://secure.gravatar.com/avatar/123456.jpg?s=24",
                "image_32": "https://secure.gravatar.com/avatar/123456.jpg?s=32",
                "image_48": "https://secure.gravatar.com/avatar/123456.jpg?s=48",
                "image_72": "https://secure.gravatar.com/avatar/123456.jpg?s=72",
                "image_192": "https://secure.gravatar.com/avatar/123456.jpg?s=192",
                "image_512": "https://secure.gravatar.com/avatar/123456.jpg?s=512",
                "status_text_canonical": "",
                "team": "T01234567"
            \},
            "is_bot": false,
            "is_app_user": false,
            "updated": 1623456789
        }
    ],
    "cache_ts": 1623456789,
    "response_metadata": {
        "next_cursor": "dXNlcjpVMEIyOUJQTjY="
    }
}

List users conversations

List conversations the calling user may access Sample Input

\{
    "token": "xoxp-1234567890-abcdefghij-987654321",
    "user": "U1234567890",
    "exclude_archived": true,
    "types": [
        "public_channel",
        "private_channel"
    ],
    "limit": 50,
    "cursor": "dXNlcjpVMEYxMTJCMzI="
\}

Sample Output

{
    "ok": true,
    "channels": [
        {
            "id": "C012AB3CD",
            "name": "general",
            "is_channel": true,
            "is_group": false,
            "is_im": false,
            "created": 1449252889,
            "is_archived": false,
            "is_general": true,
            "unlinked": 0,
            "name_normalized": "general",
            "is_shared": false,
            "creator": "U012A3CDE",
            "is_ext_shared": false,
            "is_org_shared": false,
            "shared_team_ids": [
                "T012AB3C4"
            ],
            "pending_shared": [],
            "pending_connected_team_ids": [],
            "is_pending_ext_shared": false,
            "is_private": false,
            "is_mpim": false,
            "topic": \{
                "value": "Company-wide announcements and work-based matters",
                "creator": "U012A3CDE",
                "last_set": 1449709364
            \},
            "purpose": \{
                "value": "This channel is for workspace-wide communication and announcements. All members are in this channel.",
                "creator": "U012A3CDE",
                "last_set": 1449709364
            \},
            "previous_names": []
        },
        {
            "id": "C061EG9T2",
            "name": "random",
            "is_channel": true,
            "is_group": false,
            "is_im": false,
            "created": 1449252889,
            "is_archived": false,
            "is_general": false,
            "unlinked": 0,
            "name_normalized": "random",
            "is_shared": false,
            "creator": "U061F7AUR",
            "is_ext_shared": false,
            "is_org_shared": false,
            "shared_team_ids": [
                "T061EG9R6"
            ],
            "pending_shared": [],
            "pending_connected_team_ids": [],
            "is_pending_ext_shared": false,
            "is_private": false,
            "is_mpim": false,
            "topic": \{
                "value": "Non-work banter and water cooler conversation",
                "creator": "U061F7AUR",
                "last_set": 1449709364
            \},
            "purpose": \{
                "value": "A place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber you'd prefer to keep out of more focused work-related channels.",
                "creator": "U061F7AUR",
                "last_set": 1449709364
            \},
            "previous_names": []
        }
    ],
    "response_metadata": {
        "next_cursor": "dXNlcjpVMEYxMTJCMzM="
    }
}

Send ephemeral message

Send a message that only a certain user can see in a public or private channel. Sample Input Sample Output

Send ephemeral response

Send an ephemeral response message using the response_url parameter provided by Slack slash commands and actions. This will only be visible by the user. Sample Input

{
    "token": "xoxp-1234567890-1234567890-1234567890-abcdef",
    "text": "Your request has been processed successfully!",
    "response_url": "https://hooks.slack.com/commands/T1234567/B1234567/abcdefghijklmnopqrstuvwx",
    "attachments": [
        {
            "color": "#36A64F",
            "pretext": "Here are the details of your request:",
            "author_name": "Tray.io Bot",
            "author_link": "https://tray.io",
            "author_icon": "https://tray.io/favicon.ico",
            "title": "Request Summary",
            "title_link": "https://app.tray.io/workflows/123456",
            "text": "Your workflow has completed successfully.",
            "fields": [
                \{
                    "title": "Workflow Name",
                    "value": "Data Processing Workflow",
                    "short": true
                \},
                \{
                    "title": "Execution Time",
                    "value": "2 minutes",
                    "short": true
                \}
            ],
            "image_url": "https://example.com/success-image.png",
            "thumb_url": "https://example.com/success-thumb.png",
            "actions": [
                \{
                    "text": "View Details",
                    "type": "button",
                    "style": "primary"
                \},
                \{
                    "text": "Select Action",
                    "type": "select",
                    "options": [
                        "Rerun workflow",
                        "View logs",
                        "Contact support"
                    ]
                \}
            ],
            "actions_handler_workflow_id": "987654",
            "actions_data": \{
                "workflow_id": "123456",
                "user_id": "U9876543"
            \},
            "fallback": "Your request has been processed successfully",
            "footer": "Powered by Tray.io",
            "footer_icon": "https://s3-eu-west-1.amazonaws.com/static.tray.io/brand/tray-icon.png",
            "ts": 1623456789
        }
    ]
}

Sample Output

{
    "success": true
}

Send message

Send a message to a user or channel. Sample Input

{
    "token": "xoxb-1234567890-abcdefghijklmnopqrstuvwx",
    "channel": "C0123ABCDEF",
    "text": "Hello, this is a test message!",
    "blocks": {
        "blocks": [
            {
                "type": "section",
                "text": \{
                    "type": "mrkdwn",
                    "text": "*Important Announcement*\nWe have a new team member joining us next week!"
                \}
            },
            {
                "type": "divider"
            },
            {
                "type": "context",
                "elements": [
                    \{
                        "type": "image",
                        "image_url": "https://example.com/profile-pic.jpg",
                        "alt_text": "Profile picture"
                    \},
                    \{
                        "type": "mrkdwn",
                        "text": "*Jane Doe* will be joining our Marketing team as a Senior Content Strategist."
                    \}
                ]
            }
        ]
    },
    "username": "Announcement Bot",
    "icon_emoji": ":loudspeaker:",
    "thread_ts": "1234567890.123456",
    "reply_broadcast": true
}

Sample Output

{
    "ok": true,
    "channel": "C0123ABCDEF",
    "ts": "1234567890.123457",
    "message": \{
        "text": "Hello, this is a test message!",
        "username": "Announcement Bot",
        "bot_id": "B0123ABCDEF",
        "type": "message",
        "subtype": "bot_message",
        "ts": "1234567890.123457"
    \}
}

Set conversation purpose

Set the purpose for a conversation. The calling user must be a member of the conversation. Not all conversation types may have a purpose set. Sample Input

\{
    "token": "xoxp-1234567890-1234567890-1234567890-1234567890abcdef",
    "channel": "C0123ABCDEF",
    "purpose": "This channel is for discussing project updates and milestones."
\}

Sample Output

{
    "ok": true,
    "channel": {
        "id": "C0123ABCDEF",
        "name": "project-updates",
        "is_channel": true,
        "is_group": false,
        "is_im": false,
        "created": 1609459200,
        "is_archived": false,
        "is_general": false,
        "unlinked": 0,
        "name_normalized": "project-updates",
        "is_shared": false,
        "parent_conversation": [],
        "creator": "U9876ZYXWV",
        "is_ext_shared": false,
        "is_org_shared": false,
        "shared_team_ids": [
            "T0123456789"
        ],
        "pending_shared": [],
        "pending_connected_team_ids": [],
        "is_pending_ext_shared": false,
        "is_member": true,
        "is_private": false,
        "is_mpim": false,
        "last_read": "1623456789.000200",
        "is_open": true,
        "topic": \{
            "value": "Project X Updates",
            "creator": "U9876ZYXWV",
            "last_set": 1623456700
        \},
        "purpose": \{
            "value": "This channel is for discussing project updates and milestones.",
            "creator": "U9876ZYXWV",
            "last_set": 1623456800
        \}
    }
}

Set conversation topic

Set the topic for a conversation. The calling user must be a member of the conversation. Not all conversation types may have a purpose set. Sample Input

\{
    "token": "xoxp-1234567890-1234567890-1234567890-1234567890abcdef",
    "channel": "C0123ABCDEF",
    "topic": "Q4 Planning Discussion"
\}

Sample Output

Set profile

Set the user's presence and status. Sample Input Sample Output

{
    "ok": true,
    "profile": \{
        "status_text": "In a meeting",
        "status_emoji": ":calendar:",
        "status_expiration": 1684160600,
        "display_name": "John Doe",
        "real_name": "John Doe",
        "avatar_hash": "g1234567890",
        "email": "john.doe@example.com",
        "image_24": "https://secure.gravatar.com/avatar/1234567890abcdef.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0002-24.png",
        "image_32": "https://secure.gravatar.com/avatar/1234567890abcdef.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0002-32.png",
        "image_48": "https://secure.gravatar.com/avatar/1234567890abcdef.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0002-48.png",
        "image_72": "https://secure.gravatar.com/avatar/1234567890abcdef.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0002-72.png",
        "image_192": "https://secure.gravatar.com/avatar/1234567890abcdef.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0002-192.png",
        "image_512": "https://secure.gravatar.com/avatar/1234567890abcdef.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0002-512.png"
    \},
    "username": "johndoe"
}

Unfurl one or more links in a Slack message, adding "attachments" that contain additional context to the message. Sample Input

{
    "token": "xoxp-1234567890-1234567890-1234567890-abcdef",
    "message_id": "1234567890.123456",
    "channel_id": "C1234567890",
    "unfurls": [
        {
            "url": "https://www.example.com/article",
            "attachment": {
                "color": "#36A64F",
                "pretext": "Check out this interesting article!",
                "author_name": "John Doe",
                "author_link": "https://www.example.com/author/johndoe",
                "author_icon": "https://www.example.com/author/johndoe/avatar.png",
                "title": "10 Tips for Productivity",
                "title_link": "https://www.example.com/article",
                "text": "Boost your productivity with these 10 simple tips...",
                "fields": [
                    \{
                        "title": "Reading Time",
                        "value": "5 minutes",
                        "short": true
                    \},
                    \{
                        "title": "Category",
                        "value": "Productivity",
                        "short": true
                    \}
                ],
                "image_url": "https://www.example.com/article/image.jpg",
                "thumb_url": "https://www.example.com/article/thumbnail.jpg",
                "actions": [
                    \{
                        "text": "Read More",
                        "type": "button",
                        "style": "primary"
                    \},
                    \{
                        "text": "Share",
                        "type": "select",
                        "options": [
                            "Twitter",
                            "Facebook",
                            "LinkedIn"
                        ]
                    \}
                ],
                "actions_handler_workflow_id": "wf_123456",
                "actions_data": {
                    "article_id": "12345"
                },
                "fallback": "New article: 10 Tips for Productivity",
                "footer": "Published on Example.com",
                "footer_icon": "https://www.example.com/favicon.ico",
                "ts": 1623456789
            }
        }
    ]
}

Sample Output

{
    "ok": true
}

Update message

Update a message that's previously been sent. Useful when reacting to actions like buttons and menus. Sample Input

{
    "token": "xoxb-1234567890-abcdefghijklmnopqrstuvwx",
    "message_id": "1234567890.123456",
    "channel": "C0123ABCDEF",
    "text": "Updated message text",
    "attachments": [
        {
            "color": "#36A64F",
            "title": "Updated Attachment",
            "text": "This is an updated attachment",
            "fields": [
                \{
                    "title": "Priority",
                    "value": "High",
                    "short": true
                \},
                \{
                    "title": "Status",
                    "value": "In Progress",
                    "short": true
                \}
            ]
        }
    ],
    "parse": "full",
    "link_names": true,
    "unfurl_links": true,
    "unfurl_media": true
}

Sample Output

{
    "ok": true,
    "channel": "C0123ABCDEF",
    "ts": "1234567890.123456",
    "text": "Updated message text",
    "message": \{
        "text": "Updated message text",
        "username": "tray.io",
        "bot_id": "B0123ABCDEF",
        "type": "message",
        "subtype": "bot_message"
    \}
}

Upload file

Uploads or creates a file. Optionally share to users or channels. This operation requires a scope to be enabled in your authentication, either files:write (for new Slack apps) or files:write:user. Sample Input

{
    "token": "xoxp-1234567890-1234567890-1234567890-1234567890abcdef",
    "file": \{
        "content": "Base64EncodedFileContentHere",
        "filename": "report.pdf"
    \},
    "channels": [
        "C1234567890",
        "U0987654321"
    ],
    "filename": "quarterly_report_q2_2023.pdf",
    "filetype": "pdf",
    "initial_comment": "Here's the Q2 2023 quarterly report for review.",
    "title": "Q2 2023 Quarterly Report"
}

Sample Output

DDL operations

List conversations (DDL)

Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping


Sample Input Sample Output

{
    "options": [
        \{
            "label": "General",
            "value": "C012345ABCDE"
        \},
        \{
            "label": "Random",
            "value": "C0123456FGHI"
        \},
        \{
            "label": "Project-X",
            "value": "C0123457JKLM"
        \},
        \{
            "label": "Team-Updates",
            "value": "C0123458NOPQ"
        \},
        \{
            "label": "Support",
            "value": "C0123459RSTU"
        \}
    ]
}

List conversations non archived (DDL)

Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping


Sample Input Sample Output

List filetypes (DDL)

Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping


Sample Input

{
    "token": "xoxp-1234567890-1234567890-1234567890-abcdef"
}

Sample Output

{
    "filetypes": [
        \{
            "value": "all",
            "label": "All file types"
        \},
        \{
            "value": "spaces",
            "label": "Posts"
        \},
        \{
            "value": "snippets",
            "label": "Snippets"
        \},
        \{
            "value": "images",
            "label": "Images"
        \},
        \{
            "value": "gdocs",
            "label": "Google Docs"
        \},
        \{
            "value": "zips",
            "label": "Zip files"
        \},
        \{
            "value": "pdfs",
            "label": "PDF files"
        \}
    ]
}

List scheduled messages (DDL)

Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping


Sample Input

{
    "token": "xoxb-1234567890-abcdefghijklmnopqrstuvwx"
}

Sample Output

{
    "ok": true,
    "scheduled_messages": [
        \{
            "id": "Q1234ABCD",
            "channel_id": "C0123456789",
            "post_at": 1632150000,
            "date_created": 1631545600,
            "text": "Reminder: Team meeting at 2 PM today!"
        \},
        \{
            "id": "Q5678EFGH",
            "channel_id": "C9876543210",
            "post_at": 1632236400,
            "date_created": 1631632000,
            "text": "Don't forget to submit your weekly reports by EOD."
        \}
    ]
}

List users actual (DDL)

Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping


Sample Input

{
    "token": "xoxp-1234567890-1234567890-1234567890-abcdef"
}

Sample Output

{
    "ok": true,
    "members": [
        {
            "id": "U0123ABCD",
            "team_id": "T01234567",
            "name": "johndoe",
            "deleted": false,
            "color": "9f69e7",
            "real_name": "John Doe",
            "tz": "America/Los_Angeles",
            "tz_label": "Pacific Daylight Time",
            "tz_offset": -25200,
            "profile": \{
                "avatar_hash": "g1234567890",
                "status_text": "Working from home",
                "status_emoji": ":house:",
                "real_name": "John Doe",
                "display_name": "John",
                "real_name_normalized": "John Doe",
                "display_name_normalized": "John",
                "email": "john.doe@example.com",
                "image_24": "https://secure.gravatar.com/avatar/1234567890abcdef?s=24&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0024-24.png",
                "image_32": "https://secure.gravatar.com/avatar/1234567890abcdef?s=32&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0024-32.png",
                "image_48": "https://secure.gravatar.com/avatar/1234567890abcdef?s=48&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0024-48.png",
                "image_72": "https://secure.gravatar.com/avatar/1234567890abcdef?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0024-72.png",
                "image_192": "https://secure.gravatar.com/avatar/1234567890abcdef?s=192&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0024-192.png",
                "image_512": "https://secure.gravatar.com/avatar/1234567890abcdef?s=512&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0024-512.png",
                "team": "T01234567"
            \},
            "is_admin": true,
            "is_owner": false,
            "is_primary_owner": false,
            "is_restricted": false,
            "is_ultra_restricted": false,
            "is_bot": false,
            "updated": 1609459200,
            "is_app_user": false,
            "has_2fa": true
        }
    ],
    "cache_ts": 1609459200,
    "response_metadata": {
        "next_cursor": ""
    }
}

List users and conversations (DDL)

Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping


Sample Input Sample Output

{
    "users": [
        \{
            "id": "U0123ABCD",
            "name": "john.doe",
            "real_name": "John Doe",
            "email": "john.doe@example.com"
        \},
        \{
            "id": "U4567EFGH",
            "name": "jane.smith",
            "real_name": "Jane Smith",
            "email": "jane.smith@example.com"
        \}
    ],
    "conversations": [
        \{
            "id": "C0123WXYZ",
            "name": "general",
            "is_channel": true,
            "is_group": false,
            "is_im": false
        \},
        \{
            "id": "G4567LMNO",
            "name": "project-alpha",
            "is_channel": false,
            "is_group": true,
            "is_im": false
        \},
        \{
            "id": "D8901PQRS",
            "user": "U0123ABCD",
            "is_channel": false,
            "is_group": false,
            "is_im": true
        \}
    ]
}

List users (DDL)

Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping


Sample Input

{
    "token": "xoxp-1234567890-1234567890-1234567890-abcdef"
}

Sample Output

Was this page helpful?