Skip to content

Retrieve Slack's content

GET /discussions/{discussion_id}/contents/

Retrieve the contents of a discussion by ID. A discussion can be a Slack or Discord chat.

Returns the content of the discussion with the specified ID. A discussion can be a Slack or Discord chat. The response contains two fields: discussion_content, which includes the main messages of the chat, and thread_contents, which contains the threads of the discussion.

Parameter In Type Required Description
discussion_id path integer yes The ID of the discussion to retrieve contents for. Discussions are either Slack or Discord chats.
integration_type query string yes Indicate the integration of the discussion. Currently, it can only be "slack" or "discord".
from query string Indicate the starting time when we want to retrieve the content of the discussion in ISO 8601 format at GMT+0. If not specified, the default time is now.
to query string Indicate the ending time when we want to retrieve the content of the discussion in ISO 8601 format at GMT+0. If not specified, it is 7 days before the "from" parameter.

Responses

  • 200 — Main and threaded messages of the discussion in a time range.
  • 404 — Discussion not found.
  • 500 — Internal server error.

Example Requests

curl -X GET   
  "https://api.rememberizer.ai/api/v1/discussions/12345/contents/?integration_type=slack&from=2023-06-01T00:00:00Z&to=2023-06-07T23:59:59Z"   
  -H "Authorization: Bearer YOUR_JWT_TOKEN"

Info

Replace YOUR_JWT_TOKEN with your actual JWT token and 12345 with an actual discussion ID.

const getSlackContents = async (discussionId, from = null, to = null) => {
  const url = new URL(`https://api.rememberizer.ai/api/v1/discussions/${discussionId}/contents/`);
  url.searchParams.append('integration_type', 'slack');

  if (from) {
    url.searchParams.append('from', from);
  }

  if (to) {
    url.searchParams.append('to', to);
  }

  const response = await fetch(url.toString(), {
    method: 'GET',
    headers: {
      'Authorization': 'Bearer YOUR_JWT_TOKEN'
    }
  });

  const data = await response.json();
  console.log(data);
};

// Get Slack contents for the past week
const toDate = new Date().toISOString();
const fromDate = new Date();
fromDate.setDate(fromDate.getDate() - 7);
const fromDateStr = fromDate.toISOString();

getSlackContents(12345, fromDateStr, toDate);

Info

Replace YOUR_JWT_TOKEN with your actual JWT token and 12345 with an actual discussion ID.

import requests
from datetime import datetime, timedelta

def get_slack_contents(discussion_id, from_date=None, to_date=None):
    headers = {
        "Authorization": "Bearer YOUR_JWT_TOKEN"
    }

    params = {
        "integration_type": "slack"
    }

    if from_date:
        params["from"] = from_date

    if to_date:
        params["to"] = to_date

    response = requests.get(
        f"https://api.rememberizer.ai/api/v1/discussions/{discussion_id}/contents/",
        headers=headers,
        params=params
    )

    data = response.json()
    print(data)

# Get Slack contents for the past week
to_date = datetime.now().isoformat() + "Z"
from_date = (datetime.now() - timedelta(days=7)).isoformat() + "Z"

get_slack_contents(12345, from_date, to_date)

Info

Replace YOUR_JWT_TOKEN with your actual JWT token and 12345 with an actual discussion ID.

Path Parameters

Parameter Type Description
discussion_id integer Required. The ID of the Slack channel or discussion to retrieve contents for.

Query Parameters

Parameter Type Description
integration_type string Required. Set to "slack" for retrieving Slack content.
from string Starting time in ISO 8601 format at GMT+0. If not specified, the default is now.
to string Ending time in ISO 8601 format at GMT+0. If not specified, it's 7 days before the "from" parameter.

Response Format

{
  "discussion_content": "User A [2023-06-01 10:30:00]: Good morning team!\nUser B [2023-06-01 10:32:15]: Morning! How's everyone doing today?\n...",
  "thread_contents": {
    "2023-06-01T10:30:00Z": "User C [2023-06-01 10:35:00]: @User A I'm doing great, thanks for asking!\nUser A [2023-06-01 10:37:30]: Glad to hear that @User C!",
    "2023-06-02T14:15:22Z": "User D [2023-06-02 14:20:45]: Here's the update on the project...\nUser B [2023-06-02 14:25:10]: Thanks for the update!"
  }
}

Error Responses

Status Code Description
404 Discussion not found
500 Internal server error

This endpoint retrieves the contents of a Slack channel or direct message conversation. It returns both the main channel messages (discussion_content) and threaded replies (thread_contents). The data is organized chronologically and includes user information, making it easy to understand the context of conversations.

The time range parameters allow you to focus on specific periods, which is particularly useful for reviewing recent activity or historical discussions.