Ingest message
curl --request POST \
--url https://api.partoo.co/v2/custom-channels/{channel_id}/messages \
--header 'Content-Type: application/json' \
--header 'x-APIKey: <api-key>' \
--data '
{
"business_id": "<string>",
"external_conversation_id": "<string>",
"external_message_id": "<string>",
"content": "<string>",
"consumer_name": "null",
"consumer_image": "null"
}
'import requests
url = "https://api.partoo.co/v2/custom-channels/{channel_id}/messages"
payload = {
"business_id": "<string>",
"external_conversation_id": "<string>",
"external_message_id": "<string>",
"content": "<string>",
"consumer_name": "null",
"consumer_image": "null"
}
headers = {
"x-APIKey": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-APIKey': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
business_id: '<string>',
external_conversation_id: '<string>',
external_message_id: '<string>',
content: '<string>',
consumer_name: 'null',
consumer_image: 'null'
})
};
fetch('https://api.partoo.co/v2/custom-channels/{channel_id}/messages', 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://api.partoo.co/v2/custom-channels/{channel_id}/messages",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'business_id' => '<string>',
'external_conversation_id' => '<string>',
'external_message_id' => '<string>',
'content' => '<string>',
'consumer_name' => 'null',
'consumer_image' => 'null'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-APIKey: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.partoo.co/v2/custom-channels/{channel_id}/messages"
payload := strings.NewReader("{\n \"business_id\": \"<string>\",\n \"external_conversation_id\": \"<string>\",\n \"external_message_id\": \"<string>\",\n \"content\": \"<string>\",\n \"consumer_name\": \"null\",\n \"consumer_image\": \"null\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-APIKey", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.partoo.co/v2/custom-channels/{channel_id}/messages")
.header("x-APIKey", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"business_id\": \"<string>\",\n \"external_conversation_id\": \"<string>\",\n \"external_message_id\": \"<string>\",\n \"content\": \"<string>\",\n \"consumer_name\": \"null\",\n \"consumer_image\": \"null\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.partoo.co/v2/custom-channels/{channel_id}/messages")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-APIKey"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"business_id\": \"<string>\",\n \"external_conversation_id\": \"<string>\",\n \"external_message_id\": \"<string>\",\n \"content\": \"<string>\",\n \"consumer_name\": \"null\",\n \"consumer_image\": \"null\"\n}"
response = http.request(request)
puts response.read_body{
"status": "success"
}{
"errors": {
"authorization": "Operation not allowed"
}
}Custom Channels
Ingest message
This endpoint lets you ingest messages in conversations that use custom channels. When called, it creates a new message in the specified conversation. If the conversation does not exist, the endpoint will automatically create the conversation before adding the message.
You must use an API key with ORG_ADMIN or PROVIDER rights for this endpoint.
⚠️ A 200 OK response does not guarantee that the message was successfully created.
It only means the request was received and accepted for processing. ⚠️
POST
/
custom-channels
/
{channel_id}
/
messages
Ingest message
curl --request POST \
--url https://api.partoo.co/v2/custom-channels/{channel_id}/messages \
--header 'Content-Type: application/json' \
--header 'x-APIKey: <api-key>' \
--data '
{
"business_id": "<string>",
"external_conversation_id": "<string>",
"external_message_id": "<string>",
"content": "<string>",
"consumer_name": "null",
"consumer_image": "null"
}
'import requests
url = "https://api.partoo.co/v2/custom-channels/{channel_id}/messages"
payload = {
"business_id": "<string>",
"external_conversation_id": "<string>",
"external_message_id": "<string>",
"content": "<string>",
"consumer_name": "null",
"consumer_image": "null"
}
headers = {
"x-APIKey": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-APIKey': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
business_id: '<string>',
external_conversation_id: '<string>',
external_message_id: '<string>',
content: '<string>',
consumer_name: 'null',
consumer_image: 'null'
})
};
fetch('https://api.partoo.co/v2/custom-channels/{channel_id}/messages', 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://api.partoo.co/v2/custom-channels/{channel_id}/messages",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'business_id' => '<string>',
'external_conversation_id' => '<string>',
'external_message_id' => '<string>',
'content' => '<string>',
'consumer_name' => 'null',
'consumer_image' => 'null'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-APIKey: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.partoo.co/v2/custom-channels/{channel_id}/messages"
payload := strings.NewReader("{\n \"business_id\": \"<string>\",\n \"external_conversation_id\": \"<string>\",\n \"external_message_id\": \"<string>\",\n \"content\": \"<string>\",\n \"consumer_name\": \"null\",\n \"consumer_image\": \"null\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-APIKey", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.partoo.co/v2/custom-channels/{channel_id}/messages")
.header("x-APIKey", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"business_id\": \"<string>\",\n \"external_conversation_id\": \"<string>\",\n \"external_message_id\": \"<string>\",\n \"content\": \"<string>\",\n \"consumer_name\": \"null\",\n \"consumer_image\": \"null\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.partoo.co/v2/custom-channels/{channel_id}/messages")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-APIKey"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"business_id\": \"<string>\",\n \"external_conversation_id\": \"<string>\",\n \"external_message_id\": \"<string>\",\n \"content\": \"<string>\",\n \"consumer_name\": \"null\",\n \"consumer_image\": \"null\"\n}"
response = http.request(request)
puts response.read_body{
"status": "success"
}{
"errors": {
"authorization": "Operation not allowed"
}
}Authorizations
Body
application/json
Request body to ingest a new message in a conversation
Was this page helpful?