擷取 Slack 的內容¶
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.
範例請求¶
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
將 YOUR_JWT_TOKEN 替換為您的實際 JWT 令牌,並將 12345 替換為實際的討論 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);
};
// 獲取過去一週的 Slack 內容
const toDate = new Date().toISOString();
const fromDate = new Date();
fromDate.setDate(fromDate.getDate() - 7);
const fromDateStr = fromDate.toISOString();
getSlackContents(12345, fromDateStr, toDate);
Info
將 YOUR_JWT_TOKEN 替換為您的實際 JWT 令牌,並將 12345 替換為實際的討論 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)
獲取過去一週的 Slack 內容¶
to_date = datetime.now().isoformat() + "Z" from_date = (datetime.now() - timedelta(days=7)).isoformat() + "Z"
get_slack_contents(12345, from_date, to_date)
!!! info
將 `YOUR_JWT_TOKEN` 替換為您的實際 JWT 令牌,並將 `12345` 替換為實際的討論 ID。
## 路徑參數
| 參數 | 類型 | 描述 |
|-----------|------|-------------|
| discussion_id | 整數 | **必填。** 要檢索內容的 Slack 頻道或討論的 ID。 |
## 查詢參數
| 參數 | 類型 | 描述 |
|-----------|------|-------------|
| integration_type | 字串 | **必填。** 設定為 "slack" 以檢索 Slack 內容。 |
| from | 字串 | 以 ISO 8601 格式表示的起始時間,位於 GMT+0。如果未指定,預設為現在。 |
| to | 字串 | 以 ISO 8601 格式表示的結束時間,位於 GMT+0。如果未指定,則為 "from" 參數的 7 天前。 |
## 回應格式
```json
{
"discussion_content": "用戶 A [2023-06-01 10:30:00]: 早安,團隊!\n用戶 B [2023-06-01 10:32:15]: 早安!今天大家過得怎麼樣?\n...",
"thread_contents": {
"2023-06-01T10:30:00Z": "用戶 C [2023-06-01 10:35:00]: @用戶 A 我很好,謝謝你的關心!\n用戶 A [2023-06-01 10:37:30]: 很高興聽到這個 @用戶 C!",
"2023-06-02T14:15:22Z": "用戶 D [2023-06-02 14:20:45]: 這是項目的更新...\n用戶 B [2023-06-02 14:25:10]: 謝謝你的更新!"
}
}
錯誤回應¶
| 狀態碼 | 描述 |
|---|---|
| 404 | 找不到討論 |
| 500 | 內部伺服器錯誤 |
此端點檢索 Slack 頻道或直接消息對話的內容。它返回主要頻道消息(discussion_content)和串接回覆(thread_contents)。數據按時間順序組織,並包含用戶信息,使理解對話的上下文變得容易。
時間範圍參數允許您專注於特定時期,這對於回顧最近的活動或歷史討論特別有用。