curl --request PUT \
--url https://app.base44.com/api/apps/{app_id}/chat/queue/{item_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"content": "Add a contact form with a phone number field to the home page"
}
'import requests
url = "https://app.base44.com/api/apps/{app_id}/chat/queue/{item_id}"
payload = { "content": "Add a contact form with a phone number field to the home page" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({content: 'Add a contact form with a phone number field to the home page'})
};
fetch('https://app.base44.com/api/apps/{app_id}/chat/queue/{item_id}', 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://app.base44.com/api/apps/{app_id}/chat/queue/{item_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'content' => 'Add a contact form with a phone number field to the home page'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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://app.base44.com/api/apps/{app_id}/chat/queue/{item_id}"
payload := strings.NewReader("{\n \"content\": \"Add a contact form with a phone number field to the home page\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.put("https://app.base44.com/api/apps/{app_id}/chat/queue/{item_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"content\": \"Add a contact form with a phone number field to the home page\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.base44.com/api/apps/{app_id}/chat/queue/{item_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"content\": \"Add a contact form with a phone number field to the home page\"\n}"
response = http.request(request)
puts response.read_body{
"items": [
{
"branch_id": "68f1a2b3c4d5e6f708192a3b",
"content": "Add a contact form to the home page",
"created_at": "2026-10-05T14:30:00.123456+00:00",
"id": "3b9d2f6e-8c41-4a7e-9f05-1d2c3b4a5e6f"
}
],
"is_paused": false
}Edit queued message
Replaces the text of a queued message before it runs. Its place in the queue doesn’t change.
Once a message starts running it leaves the queue, so it can no longer be edited.
A collaborator in the editor can send a queued message into the turn that’s running. While that’s happening the message can’t be changed or removed.
This is limited to 60 requests per minute per app for each workspace’s personal API keys, so every key in a workspace shares one allowance. Every endpoint that changes the queue shares it. Some workspaces have a different limit.
curl --request PUT \
--url https://app.base44.com/api/apps/{app_id}/chat/queue/{item_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"content": "Add a contact form with a phone number field to the home page"
}
'import requests
url = "https://app.base44.com/api/apps/{app_id}/chat/queue/{item_id}"
payload = { "content": "Add a contact form with a phone number field to the home page" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({content: 'Add a contact form with a phone number field to the home page'})
};
fetch('https://app.base44.com/api/apps/{app_id}/chat/queue/{item_id}', 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://app.base44.com/api/apps/{app_id}/chat/queue/{item_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'content' => 'Add a contact form with a phone number field to the home page'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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://app.base44.com/api/apps/{app_id}/chat/queue/{item_id}"
payload := strings.NewReader("{\n \"content\": \"Add a contact form with a phone number field to the home page\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.put("https://app.base44.com/api/apps/{app_id}/chat/queue/{item_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"content\": \"Add a contact form with a phone number field to the home page\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.base44.com/api/apps/{app_id}/chat/queue/{item_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"content\": \"Add a contact form with a phone number field to the home page\"\n}"
response = http.request(request)
puts response.read_body{
"items": [
{
"branch_id": "68f1a2b3c4d5e6f708192a3b",
"content": "Add a contact form to the home page",
"created_at": "2026-10-05T14:30:00.123456+00:00",
"id": "3b9d2f6e-8c41-4a7e-9f05-1d2c3b4a5e6f"
}
],
"is_paused": false
}Authorizations
Personal access token, sent as Authorization: Bearer <token>.
Path Parameters
ID of the queued message to edit. Get it from items[].id in Get message queue.
ID of the app whose message queue this request acts on.
Body
New text for the queued message. Up to 100,000 characters.
"Add a contact form with a phone number field to the home page"
Response
The queue with the edited message.
The messages waiting to run, in the order they run.
The queued messages, next to run first. Holds at most 7.
Show child attributes
Show child attributes
[
{
"branch_id": "68f1a2b3c4d5e6f708192a3b",
"content": "Add a contact form to the home page",
"created_at": "2026-10-05T14:30:00.123456+00:00",
"id": "3b9d2f6e-8c41-4a7e-9f05-1d2c3b4a5e6f"
}
]
Whether the queue is paused. While it is, queued messages don't run.
false
Was this page helpful?