curl --request POST \
--url https://app.base44.com/api/app-folders/{folder_id}/items \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"app_ids": [
"6820f3a4e7b91d003c45a1f2"
]
}
'import requests
url = "https://app.base44.com/api/app-folders/{folder_id}/items"
payload = { "app_ids": ["6820f3a4e7b91d003c45a1f2"] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({app_ids: ['6820f3a4e7b91d003c45a1f2']})
};
fetch('https://app.base44.com/api/app-folders/{folder_id}/items', 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/app-folders/{folder_id}/items",
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([
'app_ids' => [
'6820f3a4e7b91d003c45a1f2'
]
]),
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/app-folders/{folder_id}/items"
payload := strings.NewReader("{\n \"app_ids\": [\n \"6820f3a4e7b91d003c45a1f2\"\n ]\n}")
req, _ := http.NewRequest("POST", 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.post("https://app.base44.com/api/app-folders/{folder_id}/items")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"app_ids\": [\n \"6820f3a4e7b91d003c45a1f2\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.base44.com/api/app-folders/{folder_id}/items")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"app_ids\": [\n \"6820f3a4e7b91d003c45a1f2\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"linked_count": 1,
"skipped_count": 0,
"folder_id": "68c1f2a9b4e7d3005a2c9e11"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Add apps to folder
Puts apps in a folder. An app is in one folder at a time, so this moves an app that’s already in another folder.
The apps must be in the workspace, not deleted, and of the folder’s kind: builder apps for a user_app folder and agents for a user_agent one. You can add any app in the workspace, including one you can’t open. If an app is in a folder you can’t change, such as another user’s personal folder, the request is refused. Send up to 500 IDs per request. IDs that aren’t valid app IDs are ignored and aren’t counted in the response.
You can change your own personal folders. Workspace folders need the editor role or higher, and any editor can change any workspace folder. A folder that doesn’t exist, or another user’s personal folder, returns a 404 with the code folder_not_found. A personal access token limited to selected apps can only use the apps it lists. Any other app ID returns a 404.
This is limited to 60 requests per minute, shared with the other endpoints that change folders. A signed-in session has its own limit, and every personal access token for the workspace shares one. Some workspaces have a different limit.
curl --request POST \
--url https://app.base44.com/api/app-folders/{folder_id}/items \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"app_ids": [
"6820f3a4e7b91d003c45a1f2"
]
}
'import requests
url = "https://app.base44.com/api/app-folders/{folder_id}/items"
payload = { "app_ids": ["6820f3a4e7b91d003c45a1f2"] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({app_ids: ['6820f3a4e7b91d003c45a1f2']})
};
fetch('https://app.base44.com/api/app-folders/{folder_id}/items', 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/app-folders/{folder_id}/items",
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([
'app_ids' => [
'6820f3a4e7b91d003c45a1f2'
]
]),
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/app-folders/{folder_id}/items"
payload := strings.NewReader("{\n \"app_ids\": [\n \"6820f3a4e7b91d003c45a1f2\"\n ]\n}")
req, _ := http.NewRequest("POST", 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.post("https://app.base44.com/api/app-folders/{folder_id}/items")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"app_ids\": [\n \"6820f3a4e7b91d003c45a1f2\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.base44.com/api/app-folders/{folder_id}/items")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"app_ids\": [\n \"6820f3a4e7b91d003c45a1f2\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"linked_count": 1,
"skipped_count": 0,
"folder_id": "68c1f2a9b4e7d3005a2c9e11"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Personal access token, sent as Authorization: Bearer <token>.
Path Parameters
ID of the folder to add apps to. Get it from id in List app folders.
Body
IDs of the apps to put in the folder, up to 500.
500["6820f3a4e7b91d003c45a1f2"]
Response
The apps are in the folder.
Was this page helpful?