curl --request GET \
--url https://apix.us.amity.co/api/v3/channels \
--header 'Authorization: Bearer <token>'import requests
url = "https://apix.us.amity.co/api/v3/channels"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://apix.us.amity.co/api/v3/channels', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://apix.us.amity.co/api/v3/channels",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://apix.us.amity.co/api/v3/channels"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://apix.us.amity.co/api/v3/channels")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://apix.us.amity.co/api/v3/channels")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"channels": [
{
"channelId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"_id": "<string>",
"path": "<string>",
"channelInternalId": "<string>",
"channelPublicId": "<string>",
"isDistinct": true,
"metadata": {},
"type": "standard",
"tags": [
"<string>"
],
"isMuted": true,
"isRateLimited": true,
"muteTimeout": "2023-11-07T05:31:56Z",
"rateLimit": 123,
"rateLimitWindow": 123,
"rateLimitTimeout": "2023-11-07T05:31:56Z",
"displayName": "<string>",
"messageAutoDeleteEnabled": true,
"autoDeleteMessageByFlagLimit": 123,
"memberCount": 123,
"messageCount": 123,
"lastActivity": "2023-11-07T05:31:56Z",
"lastMessageAt": "2023-11-07T05:31:56Z",
"avatarFileId": "<string>",
"isDeleted": false,
"messagePreviewId": "<string>",
"isPublic": true,
"notificationMode": "default",
"attachedTo": {
"postId": "<string>",
"videoStreamId": "<string>",
"roomId": "<string>"
},
"pinnedMessage": {
"messageId": "a85dca058f5b585f86a29f14",
"channelId": "abc665aed9dbb8d036037eed",
"messageFeedId": "507f191e810c19729de860ea",
"segment": 123,
"dataType": "text",
"data": {
"text": "test"
},
"creatorId": "5349b4ddd2781d08c09890f4",
"parentId": "abc665afd7dbb8d036037eea",
"isDeleted": false,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"pinnedBy": "<string>",
"pinnedAt": "2023-11-07T05:31:56Z"
}
}
],
"channelUsers": [
{
"userId": "<string>",
"userInternalId": "<string>",
"userPublicId": "<string>",
"channelId": "<string>",
"channelInternalId": "<string>",
"channelPublicId": "<string>",
"membership": "none",
"isBanned": true,
"lastActivity": "2023-11-07T05:31:56Z",
"roles": [
"<string>"
],
"permissions": [
"MUTE_CHANNEL"
],
"readToSegment": 123,
"lastMentionedSegment": 123,
"isMuted": true,
"muteTimeout": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"messagePreviews": [
{
"messageId": "a85dca058f5b585f86a29f14",
"channelId": "abc665aed9dbb8d036037eed",
"messageFeedId": "507f191e810c19729de860ea",
"segment": 123,
"dataType": "text",
"data": {
"text": "test"
},
"creatorId": "5349b4ddd2781d08c09890f4",
"parentId": "abc665afd7dbb8d036037eea",
"isDeleted": false,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"messageFeedsInfo": [
{
"messageFeedId": "a85dca058f5b585f86a29f14",
"name": "text",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"messagePreviewId": "<string>"
}
],
"users": [
{
"userId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"_id": "<string>",
"path": "<string>",
"userInternalId": "<string>",
"userPublicId": "<string>",
"roles": [
"<string>"
],
"permissions": [
"MUTE_CHANNEL"
],
"displayName": "<string>",
"profileHandle": "<string>",
"description": "<string>",
"avatarFileId": "<string>",
"avatarCustomUrl": "<string>",
"flagCount": 123,
"hashFlag": {
"bits": 123,
"hashes": 123,
"hash": [
"<string>"
]
},
"metadata": {},
"isGlobalBan": true,
"isBrand": true,
"isDeleted": true
}
],
"files": [
{
"fileId": "<string>",
"fileUrl": "<string>",
"type": "image",
"accessType": "public",
"altText": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"attributes": {
"name": "<string>",
"extension": "<string>",
"size": 123,
"mimeType": "<string>",
"metadata": {
"exif": {},
"gps": {},
"height": 123,
"width": 123,
"isFull": true
}
}
}
],
"paging": {
"next": "<string>",
"prev": "<string>"
}
}{
"status": "error",
"code": 400301,
"message": "User is not a member of a channel"
}{
"status": "error",
"code": 400400,
"message": "Resource Not Found."
}{
"status": "error",
"code": 500000,
"message": "Parameters error.",
"data": {
"detail": [
"The 'data.text' field length must be less than or equal to 20000 characters long."
]
}
}{
"status": "error",
"code": 400311,
"message": "RateLimit Exceed."
}{
"status": "error",
"code": 500000,
"message": "Unexpected error"
}Query channel
curl --request GET \
--url https://apix.us.amity.co/api/v3/channels \
--header 'Authorization: Bearer <token>'import requests
url = "https://apix.us.amity.co/api/v3/channels"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://apix.us.amity.co/api/v3/channels', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://apix.us.amity.co/api/v3/channels",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://apix.us.amity.co/api/v3/channels"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://apix.us.amity.co/api/v3/channels")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://apix.us.amity.co/api/v3/channels")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"channels": [
{
"channelId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"_id": "<string>",
"path": "<string>",
"channelInternalId": "<string>",
"channelPublicId": "<string>",
"isDistinct": true,
"metadata": {},
"type": "standard",
"tags": [
"<string>"
],
"isMuted": true,
"isRateLimited": true,
"muteTimeout": "2023-11-07T05:31:56Z",
"rateLimit": 123,
"rateLimitWindow": 123,
"rateLimitTimeout": "2023-11-07T05:31:56Z",
"displayName": "<string>",
"messageAutoDeleteEnabled": true,
"autoDeleteMessageByFlagLimit": 123,
"memberCount": 123,
"messageCount": 123,
"lastActivity": "2023-11-07T05:31:56Z",
"lastMessageAt": "2023-11-07T05:31:56Z",
"avatarFileId": "<string>",
"isDeleted": false,
"messagePreviewId": "<string>",
"isPublic": true,
"notificationMode": "default",
"attachedTo": {
"postId": "<string>",
"videoStreamId": "<string>",
"roomId": "<string>"
},
"pinnedMessage": {
"messageId": "a85dca058f5b585f86a29f14",
"channelId": "abc665aed9dbb8d036037eed",
"messageFeedId": "507f191e810c19729de860ea",
"segment": 123,
"dataType": "text",
"data": {
"text": "test"
},
"creatorId": "5349b4ddd2781d08c09890f4",
"parentId": "abc665afd7dbb8d036037eea",
"isDeleted": false,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"pinnedBy": "<string>",
"pinnedAt": "2023-11-07T05:31:56Z"
}
}
],
"channelUsers": [
{
"userId": "<string>",
"userInternalId": "<string>",
"userPublicId": "<string>",
"channelId": "<string>",
"channelInternalId": "<string>",
"channelPublicId": "<string>",
"membership": "none",
"isBanned": true,
"lastActivity": "2023-11-07T05:31:56Z",
"roles": [
"<string>"
],
"permissions": [
"MUTE_CHANNEL"
],
"readToSegment": 123,
"lastMentionedSegment": 123,
"isMuted": true,
"muteTimeout": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"messagePreviews": [
{
"messageId": "a85dca058f5b585f86a29f14",
"channelId": "abc665aed9dbb8d036037eed",
"messageFeedId": "507f191e810c19729de860ea",
"segment": 123,
"dataType": "text",
"data": {
"text": "test"
},
"creatorId": "5349b4ddd2781d08c09890f4",
"parentId": "abc665afd7dbb8d036037eea",
"isDeleted": false,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"messageFeedsInfo": [
{
"messageFeedId": "a85dca058f5b585f86a29f14",
"name": "text",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"messagePreviewId": "<string>"
}
],
"users": [
{
"userId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"_id": "<string>",
"path": "<string>",
"userInternalId": "<string>",
"userPublicId": "<string>",
"roles": [
"<string>"
],
"permissions": [
"MUTE_CHANNEL"
],
"displayName": "<string>",
"profileHandle": "<string>",
"description": "<string>",
"avatarFileId": "<string>",
"avatarCustomUrl": "<string>",
"flagCount": 123,
"hashFlag": {
"bits": 123,
"hashes": 123,
"hash": [
"<string>"
]
},
"metadata": {},
"isGlobalBan": true,
"isBrand": true,
"isDeleted": true
}
],
"files": [
{
"fileId": "<string>",
"fileUrl": "<string>",
"type": "image",
"accessType": "public",
"altText": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"attributes": {
"name": "<string>",
"extension": "<string>",
"size": 123,
"mimeType": "<string>",
"metadata": {
"exif": {},
"gps": {},
"height": 123,
"width": 123,
"isFull": true
}
}
}
],
"paging": {
"next": "<string>",
"prev": "<string>"
}
}{
"status": "error",
"code": 400301,
"message": "User is not a member of a channel"
}{
"status": "error",
"code": 400400,
"message": "Resource Not Found."
}{
"status": "error",
"code": 500000,
"message": "Parameters error.",
"data": {
"detail": [
"The 'data.text' field length must be less than or equal to 20000 characters long."
]
}
}{
"status": "error",
"code": 400311,
"message": "RateLimit Exceed."
}{
"status": "error",
"code": 500000,
"message": "Unexpected error"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
100isDeleted:
null(default)- Show both channel is actived and channel is inactived.true- Show channel is inactived only.false- Show channel is actived only.
Used for querying channels by matching all specified tags. When a query includes multiple tags (e.g., tags=['tag1', 'tag2', 'tag3']), the system will return all channels that have all the specified tags.
10100Used for querying channels by excluding all specified tags. When a query includes multiple tags (e.g., excludeTags=['tag1', 'tag2', 'tag3']), the system will return all channels that do not have any of the specified tags.
10100excludeArchives:
false(default)- Show all channels.true- Show channels that are not archived only.
all, member, notMember, flagged 10standard, private, conversation, broadcast, live, community 100Order of the returned channels, newest first for the time-based values.
lastActivity(default) - bylastActivity: moves on new messages and on member changes (add, remove, ban) and channel close.lastMessage- bylastMessageAt: moves on new messages only; member changes do not affect it. A channel with no messages sorts by its creation time.lastCreated/firstCreated- by creation time.displayName- alphabetical.
lastMessage is being rolled out per environment. Where it is not available yet, it answers 422 with code 500000.
lastActivity, lastMessage, lastCreated, firstCreated, displayName Show child attributes
Show child attributes
Response
Channels Information
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Depends on messagePreviewId. if null will be empty array.
Show child attributes
Show child attributes
Depends on messagePreviews. if empty array will be empty array.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes