inboxes
- Written for
- + Written for
- Deprecated
- + Deprecated
- Applies to
- + Applies to
AdminUpdated Sep 19, 2026
GET
https://api.chatlychat.com/v1/inboxesList inboxes with their settings
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
Idempotency-Key | header | string | no | UUIDv4 or 16-128 char opaque token. Required on write endpoints in production. Replays return the cached response with `Idempotency-Replay: true`; reusing the key with a different body returns 409 idempotency_conflict. |
Responses
200
Code samples
cURL
curl -X GET "https://api.chatlychat.com/v1/inboxes" \
-H "Idempotency-Key: <value>"TypeScript
const res = await fetch('https://api.chatlychat.com/v1/inboxes', {
method: 'GET',
headers: {
'Idempotency-Key': '<value>',
},
});
const data = await res.json();Python
import requests
res = requests.request(
"GET",
"https://api.chatlychat.com/v1/inboxes",
headers={
"Idempotency-Key": "<value>",
},
)
data = res.json()Go
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://api.chatlychat.com/v1/inboxes", nil)
req.Header.Set("Idempotency-Key", "<value>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.chatlychat.com/v1/inboxes');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Idempotency-Key: <value>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;Ruby
require 'net/http'
require 'uri'
uri = URI('https://api.chatlychat.com/v1/inboxes')
req = Net::HTTP::Get.new(uri)
req['Idempotency-Key'] = '<value>'
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
http.request(req)
end
puts res.bodyJava
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.chatlychat.com/v1/inboxes"))
.header("Idempotency-Key", "<value>")
.GET()
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());GET
https://api.chatlychat.com/v1/inboxes/{channelId}/settingsOne inbox's resolved settings
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
channelId | path | string | yes | |
Idempotency-Key | header | string | no | UUIDv4 or 16-128 char opaque token. Required on write endpoints in production. Replays return the cached response with `Idempotency-Replay: true`; reusing the key with a different body returns 409 idempotency_conflict. |
Responses
200
Code samples
cURL
curl -X GET "https://api.chatlychat.com/v1/inboxes/{channelId}/settings" \
-H "Idempotency-Key: <value>"TypeScript
const res = await fetch('https://api.chatlychat.com/v1/inboxes/{channelId}/settings', {
method: 'GET',
headers: {
'Idempotency-Key': '<value>',
},
});
const data = await res.json();Python
import requests
res = requests.request(
"GET",
"https://api.chatlychat.com/v1/inboxes/{channelId}/settings",
headers={
"Idempotency-Key": "<value>",
},
)
data = res.json()Go
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://api.chatlychat.com/v1/inboxes/{channelId}/settings", nil)
req.Header.Set("Idempotency-Key", "<value>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.chatlychat.com/v1/inboxes/{channelId}/settings');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Idempotency-Key: <value>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;Ruby
require 'net/http'
require 'uri'
uri = URI('https://api.chatlychat.com/v1/inboxes/{channelId}/settings')
req = Net::HTTP::Get.new(uri)
req['Idempotency-Key'] = '<value>'
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
http.request(req)
end
puts res.bodyJava
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.chatlychat.com/v1/inboxes/{channelId}/settings"))
.header("Idempotency-Key", "<value>")
.GET()
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());PUT
https://api.chatlychat.com/v1/inboxes/{channelId}/settingsReplace one inbox's settings
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
channelId | path | string | yes | |
Idempotency-Key | header | string | no | UUIDv4 or 16-128 char opaque token. Required on write endpoints in production. Replays return the cached response with `Idempotency-Replay: true`; reusing the key with a different body returns 409 idempotency_conflict. |
Request body application/json
{
"routingStrategy": "round_robin",
"routingTeamId": "string",
"capacityEnabled": true,
"capacityLimit": 0,
"capacityExcludeLabels": [
"string"
],
"capacityExcludeIdleHours": 0,
"capacityOverflow": "queue",
"capacityOverflowTeamId": "string",
"skillsRequired": [
"string"
],
"skillsMatchLanguage": true,
"skillsFromTags": true,
"skillsUnmatched": "queue",
"skillsUnmatchedTeamId": "string",
"stickyLookbackDays": 0,
"csatMode": "inherit",
"csatSurveyId": "string",
"csatIncludeLabels": [
"string"
],
"csatExcludeLabels": [
"string"
],
"businessHours": {
"tz": "string",
"schedule": {
"mon": null,
"tue": null,
"wed": null,
"thu": null,
"fri": null,
"sat": null,
"sun": null
},
"holidays": [
"string"
]
}
}Responses
200
Code samples
cURL
curl -X PUT "https://api.chatlychat.com/v1/inboxes/{channelId}/settings" \
-H "Idempotency-Key: <value>" \
-H "Content-Type: application/json" \
-d '{"routingStrategy":"round_robin","routingTeamId":"string","capacityEnabled":true,"capacityLimit":0,"capacityExcludeLabels":["string"],"capacityExcludeIdleHours":0,"capacityOverflow":"queue","capacityOverflowTeamId":"string","skillsRequired":["string"],"skillsMatchLanguage":true,"skillsFromTags":true,"skillsUnmatched":"queue","skillsUnmatchedTeamId":"string","stickyLookbackDays":0,"csatMode":"inherit","csatSurveyId":"string","csatIncludeLabels":["string"],"csatExcludeLabels":["string"],"businessHours":{"tz":"string","schedule":{"mon":null,"tue":null,"wed":null,"thu":null,"fri":null,"sat":null,"sun":null},"holidays":["string"]}}'TypeScript
const res = await fetch('https://api.chatlychat.com/v1/inboxes/{channelId}/settings', {
method: 'PUT',
headers: {
'Idempotency-Key': '<value>',
'Content-Type': 'application/json',
},
body: JSON.stringify({"routingStrategy":"round_robin","routingTeamId":"string","capacityEnabled":true,"capacityLimit":0,"capacityExcludeLabels":["string"],"capacityExcludeIdleHours":0,"capacityOverflow":"queue","capacityOverflowTeamId":"string","skillsRequired":["string"],"skillsMatchLanguage":true,"skillsFromTags":true,"skillsUnmatched":"queue","skillsUnmatchedTeamId":"string","stickyLookbackDays":0,"csatMode":"inherit","csatSurveyId":"string","csatIncludeLabels":["string"],"csatExcludeLabels":["string"],"businessHours":{"tz":"string","schedule":{"mon":null,"tue":null,"wed":null,"thu":null,"fri":null,"sat":null,"sun":null},"holidays":["string"]}}),
});
const data = await res.json();Python
import requests
res = requests.request(
"PUT",
"https://api.chatlychat.com/v1/inboxes/{channelId}/settings",
headers={
"Idempotency-Key": "<value>",
"Content-Type": "application/json",
},
json={"routingStrategy": "round_robin", "routingTeamId": "string", "capacityEnabled": True, "capacityLimit": 0, "capacityExcludeLabels": ["string"], "capacityExcludeIdleHours": 0, "capacityOverflow": "queue", "capacityOverflowTeamId": "string", "skillsRequired": ["string"], "skillsMatchLanguage": True, "skillsFromTags": True, "skillsUnmatched": "queue", "skillsUnmatchedTeamId": "string", "stickyLookbackDays": 0, "csatMode": "inherit", "csatSurveyId": "string", "csatIncludeLabels": ["string"], "csatExcludeLabels": ["string"], "businessHours": {"tz": "string", "schedule": {"mon": None, "tue": None, "wed": None, "thu": None, "fri": None, "sat": None, "sun": None}, "holidays": ["string"]}},
)
data = res.json()Go
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
req, _ := http.NewRequest("PUT", "https://api.chatlychat.com/v1/inboxes/{channelId}/settings", strings.NewReader(`{"routingStrategy":"round_robin","routingTeamId":"string","capacityEnabled":true,"capacityLimit":0,"capacityExcludeLabels":["string"],"capacityExcludeIdleHours":0,"capacityOverflow":"queue","capacityOverflowTeamId":"string","skillsRequired":["string"],"skillsMatchLanguage":true,"skillsFromTags":true,"skillsUnmatched":"queue","skillsUnmatchedTeamId":"string","stickyLookbackDays":0,"csatMode":"inherit","csatSurveyId":"string","csatIncludeLabels":["string"],"csatExcludeLabels":["string"],"businessHours":{"tz":"string","schedule":{"mon":null,"tue":null,"wed":null,"thu":null,"fri":null,"sat":null,"sun":null},"holidays":["string"]}}`))
req.Header.Set("Idempotency-Key", "<value>")
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.chatlychat.com/v1/inboxes/{channelId}/settings');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Idempotency-Key: <value>', 'Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{"routingStrategy":"round_robin","routingTeamId":"string","capacityEnabled":true,"capacityLimit":0,"capacityExcludeLabels":["string"],"capacityExcludeIdleHours":0,"capacityOverflow":"queue","capacityOverflowTeamId":"string","skillsRequired":["string"],"skillsMatchLanguage":true,"skillsFromTags":true,"skillsUnmatched":"queue","skillsUnmatchedTeamId":"string","stickyLookbackDays":0,"csatMode":"inherit","csatSurveyId":"string","csatIncludeLabels":["string"],"csatExcludeLabels":["string"],"businessHours":{"tz":"string","schedule":{"mon":null,"tue":null,"wed":null,"thu":null,"fri":null,"sat":null,"sun":null},"holidays":["string"]}}');
$response = curl_exec($ch);
curl_close($ch);
echo $response;Ruby
require 'net/http'
require 'uri'
uri = URI('https://api.chatlychat.com/v1/inboxes/{channelId}/settings')
req = Net::HTTP::Put.new(uri)
req['Idempotency-Key'] = '<value>'
req['Content-Type'] = 'application/json'
req.body = '{"routingStrategy":"round_robin","routingTeamId":"string","capacityEnabled":true,"capacityLimit":0,"capacityExcludeLabels":["string"],"capacityExcludeIdleHours":0,"capacityOverflow":"queue","capacityOverflowTeamId":"string","skillsRequired":["string"],"skillsMatchLanguage":true,"skillsFromTags":true,"skillsUnmatched":"queue","skillsUnmatchedTeamId":"string","stickyLookbackDays":0,"csatMode":"inherit","csatSurveyId":"string","csatIncludeLabels":["string"],"csatExcludeLabels":["string"],"businessHours":{"tz":"string","schedule":{"mon":null,"tue":null,"wed":null,"thu":null,"fri":null,"sat":null,"sun":null},"holidays":["string"]}}'
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
http.request(req)
end
puts res.bodyJava
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.chatlychat.com/v1/inboxes/{channelId}/settings"))
.header("Idempotency-Key", "<value>")
.header("Content-Type", "application/json")
.method("PUT", BodyPublishers.ofString("{\"routingStrategy\":\"round_robin\",\"routingTeamId\":\"string\",\"capacityEnabled\":true,\"capacityLimit\":0,\"capacityExcludeLabels\":[\"string\"],\"capacityExcludeIdleHours\":0,\"capacityOverflow\":\"queue\",\"capacityOverflowTeamId\":\"string\",\"skillsRequired\":[\"string\"],\"skillsMatchLanguage\":true,\"skillsFromTags\":true,\"skillsUnmatched\":\"queue\",\"skillsUnmatchedTeamId\":\"string\",\"stickyLookbackDays\":0,\"csatMode\":\"inherit\",\"csatSurveyId\":\"string\",\"csatIncludeLabels\":[\"string\"],\"csatExcludeLabels\":[\"string\"],\"businessHours\":{\"tz\":\"string\",\"schedule\":{\"mon\":null,\"tue\":null,\"wed\":null,\"thu\":null,\"fri\":null,\"sat\":null,\"sun\":null},\"holidays\":[\"string\"]}}"))
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());GET
https://api.chatlychat.com/v1/inboxes/{channelId}/capacityLive per-agent capacity for one inbox
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
channelId | path | string | yes | |
Idempotency-Key | header | string | no | UUIDv4 or 16-128 char opaque token. Required on write endpoints in production. Replays return the cached response with `Idempotency-Replay: true`; reusing the key with a different body returns 409 idempotency_conflict. |
Responses
200
Code samples
cURL
curl -X GET "https://api.chatlychat.com/v1/inboxes/{channelId}/capacity" \
-H "Idempotency-Key: <value>"TypeScript
const res = await fetch('https://api.chatlychat.com/v1/inboxes/{channelId}/capacity', {
method: 'GET',
headers: {
'Idempotency-Key': '<value>',
},
});
const data = await res.json();Python
import requests
res = requests.request(
"GET",
"https://api.chatlychat.com/v1/inboxes/{channelId}/capacity",
headers={
"Idempotency-Key": "<value>",
},
)
data = res.json()Go
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://api.chatlychat.com/v1/inboxes/{channelId}/capacity", nil)
req.Header.Set("Idempotency-Key", "<value>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.chatlychat.com/v1/inboxes/{channelId}/capacity');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Idempotency-Key: <value>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;Ruby
require 'net/http'
require 'uri'
uri = URI('https://api.chatlychat.com/v1/inboxes/{channelId}/capacity')
req = Net::HTTP::Get.new(uri)
req['Idempotency-Key'] = '<value>'
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
http.request(req)
end
puts res.bodyJava
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.chatlychat.com/v1/inboxes/{channelId}/capacity"))
.header("Idempotency-Key", "<value>")
.GET()
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());PUT
https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}Override one agent's cap on one inbox
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
channelId | path | string | yes | |
userId | path | string | yes | |
Idempotency-Key | header | string | no | UUIDv4 or 16-128 char opaque token. Required on write endpoints in production. Replays return the cached response with `Idempotency-Replay: true`; reusing the key with a different body returns 409 idempotency_conflict. |
Request body application/json
{
"limit": 0
}Responses
200
Code samples
cURL
curl -X PUT "https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}" \
-H "Idempotency-Key: <value>" \
-H "Content-Type: application/json" \
-d '{"limit":0}'TypeScript
const res = await fetch('https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}', {
method: 'PUT',
headers: {
'Idempotency-Key': '<value>',
'Content-Type': 'application/json',
},
body: JSON.stringify({"limit":0}),
});
const data = await res.json();Python
import requests
res = requests.request(
"PUT",
"https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}",
headers={
"Idempotency-Key": "<value>",
"Content-Type": "application/json",
},
json={"limit": 0},
)
data = res.json()Go
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
req, _ := http.NewRequest("PUT", "https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}", strings.NewReader(`{"limit":0}`))
req.Header.Set("Idempotency-Key", "<value>")
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Idempotency-Key: <value>', 'Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{"limit":0}');
$response = curl_exec($ch);
curl_close($ch);
echo $response;Ruby
require 'net/http'
require 'uri'
uri = URI('https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}')
req = Net::HTTP::Put.new(uri)
req['Idempotency-Key'] = '<value>'
req['Content-Type'] = 'application/json'
req.body = '{"limit":0}'
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
http.request(req)
end
puts res.bodyJava
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}"))
.header("Idempotency-Key", "<value>")
.header("Content-Type", "application/json")
.method("PUT", BodyPublishers.ofString("{\"limit\":0}"))
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());DELETE
https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}Clear an agent's cap override on one inbox
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
channelId | path | string | yes | |
userId | path | string | yes | |
Idempotency-Key | header | string | no | UUIDv4 or 16-128 char opaque token. Required on write endpoints in production. Replays return the cached response with `Idempotency-Replay: true`; reusing the key with a different body returns 409 idempotency_conflict. |
Responses
200
Code samples
cURL
curl -X DELETE "https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}" \
-H "Idempotency-Key: <value>"TypeScript
const res = await fetch('https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}', {
method: 'DELETE',
headers: {
'Idempotency-Key': '<value>',
},
});
const data = await res.json();Python
import requests
res = requests.request(
"DELETE",
"https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}",
headers={
"Idempotency-Key": "<value>",
},
)
data = res.json()Go
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("DELETE", "https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}", nil)
req.Header.Set("Idempotency-Key", "<value>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'DELETE');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Idempotency-Key: <value>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;Ruby
require 'net/http'
require 'uri'
uri = URI('https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}')
req = Net::HTTP::Delete.new(uri)
req['Idempotency-Key'] = '<value>'
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
http.request(req)
end
puts res.bodyJava
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.chatlychat.com/v1/inboxes/{channelId}/capacity/{userId}"))
.header("Idempotency-Key", "<value>")
.method("DELETE", BodyPublishers.noBody())
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());GET
https://api.chatlychat.com/v1/inboxes/{channelId}/membersWho may see one inbox, and whether it is restricted
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
channelId | path | string | yes | |
Idempotency-Key | header | string | no | UUIDv4 or 16-128 char opaque token. Required on write endpoints in production. Replays return the cached response with `Idempotency-Replay: true`; reusing the key with a different body returns 409 idempotency_conflict. |
Responses
200
Code samples
cURL
curl -X GET "https://api.chatlychat.com/v1/inboxes/{channelId}/members" \
-H "Idempotency-Key: <value>"TypeScript
const res = await fetch('https://api.chatlychat.com/v1/inboxes/{channelId}/members', {
method: 'GET',
headers: {
'Idempotency-Key': '<value>',
},
});
const data = await res.json();Python
import requests
res = requests.request(
"GET",
"https://api.chatlychat.com/v1/inboxes/{channelId}/members",
headers={
"Idempotency-Key": "<value>",
},
)
data = res.json()Go
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://api.chatlychat.com/v1/inboxes/{channelId}/members", nil)
req.Header.Set("Idempotency-Key", "<value>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.chatlychat.com/v1/inboxes/{channelId}/members');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Idempotency-Key: <value>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;Ruby
require 'net/http'
require 'uri'
uri = URI('https://api.chatlychat.com/v1/inboxes/{channelId}/members')
req = Net::HTTP::Get.new(uri)
req['Idempotency-Key'] = '<value>'
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
http.request(req)
end
puts res.bodyJava
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.chatlychat.com/v1/inboxes/{channelId}/members"))
.header("Idempotency-Key", "<value>")
.GET()
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());PUT
https://api.chatlychat.com/v1/inboxes/{channelId}/membersReplace one inbox's access mode and member roster
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
channelId | path | string | yes | |
Idempotency-Key | header | string | no | UUIDv4 or 16-128 char opaque token. Required on write endpoints in production. Replays return the cached response with `Idempotency-Replay: true`; reusing the key with a different body returns 409 idempotency_conflict. |
Request body application/json
{
"accessMode": "open",
"userIds": []
}Responses
200
Code samples
cURL
curl -X PUT "https://api.chatlychat.com/v1/inboxes/{channelId}/members" \
-H "Idempotency-Key: <value>" \
-H "Content-Type: application/json" \
-d '{"accessMode":"open","userIds":[]}'TypeScript
const res = await fetch('https://api.chatlychat.com/v1/inboxes/{channelId}/members', {
method: 'PUT',
headers: {
'Idempotency-Key': '<value>',
'Content-Type': 'application/json',
},
body: JSON.stringify({"accessMode":"open","userIds":[]}),
});
const data = await res.json();Python
import requests
res = requests.request(
"PUT",
"https://api.chatlychat.com/v1/inboxes/{channelId}/members",
headers={
"Idempotency-Key": "<value>",
"Content-Type": "application/json",
},
json={"accessMode": "open", "userIds": []},
)
data = res.json()Go
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
req, _ := http.NewRequest("PUT", "https://api.chatlychat.com/v1/inboxes/{channelId}/members", strings.NewReader(`{"accessMode":"open","userIds":[]}`))
req.Header.Set("Idempotency-Key", "<value>")
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}PHP
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.chatlychat.com/v1/inboxes/{channelId}/members');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Idempotency-Key: <value>', 'Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{"accessMode":"open","userIds":[]}');
$response = curl_exec($ch);
curl_close($ch);
echo $response;Ruby
require 'net/http'
require 'uri'
uri = URI('https://api.chatlychat.com/v1/inboxes/{channelId}/members')
req = Net::HTTP::Put.new(uri)
req['Idempotency-Key'] = '<value>'
req['Content-Type'] = 'application/json'
req.body = '{"accessMode":"open","userIds":[]}'
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
http.request(req)
end
puts res.bodyJava
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpRequest.BodyPublishers;
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.chatlychat.com/v1/inboxes/{channelId}/members"))
.header("Idempotency-Key", "<value>")
.header("Content-Type", "application/json")
.method("PUT", BodyPublishers.ofString("{\"accessMode\":\"open\",\"userIds\":[]}"))
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());Was this page helpful?