---
title: "Send the test message (\"Probar conexión\") to the channel of the brand's Slack destination, paused or not. The destination's status keeps what Slack answered: delivering it makes it active again."
method: POST
path: "/v2/settings/brands/{brand-id}/slack-destinations/{destination-id}/test"
tags: ["Brand Slack Destinations Api Service"]
---

# Send the test message ("Probar conexión") to the channel of the brand's Slack destination, paused or not. The destination's status keeps what Slack answered: delivering it makes it active again.

`POST /v2/settings/brands/{brand-id}/slack-destinations/{destination-id}/test`

## Request

- Base URL: `https://app.metricool.com/api`
- URL: `https://app.metricool.com/api/v2/settings/brands/{brand-id}/slack-destinations/{destination-id}/test`
- Auth: none declared

## Path parameters

- `brand-id` integer, required
- `destination-id` integer, required

## Response `200`

Message sent or refused; delivered and error say which.

- JsonOkResponseSlackDestinationCheckDto
  - `metadata` object
  - `page` JsonPaging
    - `next` string
  - `data` SlackDestinationCheckDto: Outcome of sending the test message to a brand's Slack destination.
    - `delivered` boolean: Whether the message reached the channel.
    - `error` 'channelArchived' | 'channelNotFound' | 'notInChannel' | 'restricted' | 'connectionLost', nullable: Why it did not: the channel's new status, or connectionLost when the Slack connection no longer works. Null when delivered.
    - `destination` SlackDestinationDto: Where a brand sends its notifications in Slack.
      - `id` integer: Id of the destination.
      - `connectionId` integer: Id of the organization's Slack connection it uses.
      - `workspace` SlackWorkspaceDto: A Slack workspace.
        - `teamId` string: Id Slack assigns to the workspace (team id).
        - `name` string: Name of the workspace.
      - `channelId` string: Id of the channel the notifications go to.
      - `channelName` string: Name of that channel when it was chosen, without the #.
      - `events` string[]: The notification events sent to the channel.
      - `language` string: Language of the messages.
      - `paused` boolean: Whether the user paused it: it keeps its settings but sends nothing until resumed.
      - `status` 'active' | 'channelArchived' | 'channelNotFound' | 'notInChannel' | 'restricted' | 'messageLimitReached': Whether the channel still accepts messages, or why it stopped. messageLimitReached: the workspace reached Slack's message limit; the destination keeps sending.
      - `createdBy` SlackConnectionCreatorDto, nullable: The user who connected the Slack workspace.
        - `name` string: First name and last name of the user, or their email when they have no first name.
        - `profilePicture` string, nullable: URL of the user's profile picture. Null when they have none, and the front shows their initials instead.
      - `createdAt` DateTimeInfo
        - `dateTime` string, required: Local Date-time represented with a certain timezone
        - `timezone` string: Timezone applied to the datetime

## Other responses

- `400`: brand-id does not match the request blogId.
- `403`: Caller is not a regular-user session or lacks editBrand on the brand (a team member with manageBrands in its organization has it). Also slackPlanRequired: the brand's organization cannot use Slack (slack-availability locked or planLocked).
- `404`: The brand has no such destination.
- `429`: slackDestinationTestTooSoon: it was tested less than five seconds ago.
- `502`: slackUnavailable: Slack could not be reached or refused the message for an unexpected reason; retry later.

---

[API](https://skmtc.dev/metricool/apis/metricool-api.md) · [All operations](https://skmtc.dev/metricool/apis/metricool-api/llms.txt) · [OpenAPI document](https://skmtc.dev/metricool/apis/metricool-api/revisions/aea9d9a8415a?raw)
