Create a new bookkeeping category group
curl --request POST \
--url https://external.pleo.io/v1/bookkeeping-category-groups \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json;charset=UTF-8' \
--data '
{
"archived": true,
"companyId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"metadata": {}
}
'import requests
url = "https://external.pleo.io/v1/bookkeeping-category-groups"
payload = {
"archived": True,
"companyId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"metadata": {}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json;charset=UTF-8"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
Authorization: 'Bearer <token>',
'Content-Type': 'application/json;charset=UTF-8'
},
body: JSON.stringify({
archived: true,
companyId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
name: '<string>',
metadata: {}
})
};
fetch('https://external.pleo.io/v1/bookkeeping-category-groups', 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://external.pleo.io/v1/bookkeeping-category-groups",
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([
'archived' => true,
'companyId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'name' => '<string>',
'metadata' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json;charset=UTF-8"
],
]);
$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://external.pleo.io/v1/bookkeeping-category-groups"
payload := strings.NewReader("{\n \"archived\": true,\n \"companyId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\",\n \"metadata\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json;charset=UTF-8")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://external.pleo.io/v1/bookkeeping-category-groups")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json;charset=UTF-8")
.body("{\n \"archived\": true,\n \"companyId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\",\n \"metadata\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://external.pleo.io/v1/bookkeeping-category-groups")
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;charset=UTF-8'
request.body = "{\n \"archived\": true,\n \"companyId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\",\n \"metadata\": {}\n}"
response = http.request(request)
puts response.read_body{
"data": {
"archived": false,
"companyId": "123e4567-e89b-12d3-a456-426614174006",
"id": "123e4567-e89b-12d3-a456-426614174005",
"name": "Entertainment",
"type": "ENTERTAINMENT"
}
}Category groups
Create a new bookkeeping category group
Creates a new bookkeeping category group in Pleo.
POST
/
v1
/
bookkeeping-category-groups
Create a new bookkeeping category group
curl --request POST \
--url https://external.pleo.io/v1/bookkeeping-category-groups \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json;charset=UTF-8' \
--data '
{
"archived": true,
"companyId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"metadata": {}
}
'import requests
url = "https://external.pleo.io/v1/bookkeeping-category-groups"
payload = {
"archived": True,
"companyId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"metadata": {}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json;charset=UTF-8"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
Authorization: 'Bearer <token>',
'Content-Type': 'application/json;charset=UTF-8'
},
body: JSON.stringify({
archived: true,
companyId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
name: '<string>',
metadata: {}
})
};
fetch('https://external.pleo.io/v1/bookkeeping-category-groups', 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://external.pleo.io/v1/bookkeeping-category-groups",
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([
'archived' => true,
'companyId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'name' => '<string>',
'metadata' => [
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json;charset=UTF-8"
],
]);
$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://external.pleo.io/v1/bookkeeping-category-groups"
payload := strings.NewReader("{\n \"archived\": true,\n \"companyId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\",\n \"metadata\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json;charset=UTF-8")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://external.pleo.io/v1/bookkeeping-category-groups")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json;charset=UTF-8")
.body("{\n \"archived\": true,\n \"companyId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\",\n \"metadata\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://external.pleo.io/v1/bookkeeping-category-groups")
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;charset=UTF-8'
request.body = "{\n \"archived\": true,\n \"companyId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\",\n \"metadata\": {}\n}"
response = http.request(request)
puts response.read_body{
"data": {
"archived": false,
"companyId": "123e4567-e89b-12d3-a456-426614174006",
"id": "123e4567-e89b-12d3-a456-426614174005",
"name": "Entertainment",
"type": "ENTERTAINMENT"
}
}Authorizations
bearerAuthbasicAuth
JWT Bearer token authentication. Include the token in the Authorization header as: Bearer <token>
Body
application/json;charset=UTF-8
Boolean flag used to archive or unarchive a bookkeeping category group (when set to true, bookkeeping category group is neither visible nor usable on the platform).
Pleo's internal identifier of the company the bookkeeping category group is associated with.
Name of the bookkeeping category group.
Maximum string length:
255Bookkeeping category group types supported by Pleo. Used to classify category groups in frontend.
Available options:
ENTERTAINMENT, EQUIPMENT_AND_HARDWARE, MARKETING_AND_ADVERTISING, MEALS_AND_DRINKS, OFFICE_EXPENSES, PHONE_AND_INTERNET, SERVICES_AND_CONSULTANCY, SOFTWARE, SUPPLIES, TRAVEL, OTHER, NO_SUITABLE_CATEGORY Place for API users to store flexible data.
Show child attributes
Show child attributes
Response
201 - application/json
Bookkeeping category group created.
Show child attributes
Show child attributes
Was this page helpful?