curl --request POST \
--url https://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"key": "<string>",
"strictness": "NON_BALANCING",
"display_name": "<string>",
"user_visible": false,
"values": []
}
'import requests
url = "https://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions"
payload = {
"key": "<string>",
"strictness": "NON_BALANCING",
"display_name": "<string>",
"user_visible": False,
"values": []
}
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({
key: '<string>',
strictness: 'NON_BALANCING',
display_name: '<string>',
user_visible: false,
values: []
})
};
fetch('https://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions', 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://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions",
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([
'key' => '<string>',
'strictness' => 'NON_BALANCING',
'display_name' => '<string>',
'user_visible' => false,
'values' => [
]
]),
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://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions"
payload := strings.NewReader("{\n \"key\": \"<string>\",\n \"strictness\": \"NON_BALANCING\",\n \"display_name\": \"<string>\",\n \"user_visible\": false,\n \"values\": []\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://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"key\": \"<string>\",\n \"strictness\": \"NON_BALANCING\",\n \"display_name\": \"<string>\",\n \"user_visible\": false,\n \"values\": []\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions")
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 \"key\": \"<string>\",\n \"strictness\": \"NON_BALANCING\",\n \"display_name\": \"<string>\",\n \"user_visible\": false,\n \"values\": []\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"key": "<string>",
"strictness": "NON_BALANCING",
"defined_values": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"key": "<string>",
"value": "<string>",
"type": "TagValue",
"display_name": "<string>",
"archived_at": "2023-11-07T05:31:56Z"
}
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"user_visible": false,
"display_name": "<string>",
"deleted_at": "2023-11-07T05:31:56Z"
}
}{
"type": "InvalidParameters",
"description": "<string>",
"error_enum": "InvalidPayload",
"meta": {}
}{
"type": "InvalidParameters",
"description": "<string>",
"error_enum": "InvalidPayload",
"meta": {}
}Create tag dimension
Creates a new tag dimension for the business. Tag dimensions define the structure and constraints for tags.
curl --request POST \
--url https://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"key": "<string>",
"strictness": "NON_BALANCING",
"display_name": "<string>",
"user_visible": false,
"values": []
}
'import requests
url = "https://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions"
payload = {
"key": "<string>",
"strictness": "NON_BALANCING",
"display_name": "<string>",
"user_visible": False,
"values": []
}
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({
key: '<string>',
strictness: 'NON_BALANCING',
display_name: '<string>',
user_visible: false,
values: []
})
};
fetch('https://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions', 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://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions",
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([
'key' => '<string>',
'strictness' => 'NON_BALANCING',
'display_name' => '<string>',
'user_visible' => false,
'values' => [
]
]),
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://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions"
payload := strings.NewReader("{\n \"key\": \"<string>\",\n \"strictness\": \"NON_BALANCING\",\n \"display_name\": \"<string>\",\n \"user_visible\": false,\n \"values\": []\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://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"key\": \"<string>\",\n \"strictness\": \"NON_BALANCING\",\n \"display_name\": \"<string>\",\n \"user_visible\": false,\n \"values\": []\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.layerfi.com/v1/businesses/{businessId}/tags/dimensions")
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 \"key\": \"<string>\",\n \"strictness\": \"NON_BALANCING\",\n \"display_name\": \"<string>\",\n \"user_visible\": false,\n \"values\": []\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"key": "<string>",
"strictness": "NON_BALANCING",
"defined_values": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"key": "<string>",
"value": "<string>",
"type": "TagValue",
"display_name": "<string>",
"archived_at": "2023-11-07T05:31:56Z"
}
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"user_visible": false,
"display_name": "<string>",
"deleted_at": "2023-11-07T05:31:56Z"
}
}{
"type": "InvalidParameters",
"description": "<string>",
"error_enum": "InvalidPayload",
"meta": {}
}{
"type": "InvalidParameters",
"description": "<string>",
"error_enum": "InvalidPayload",
"meta": {}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Content-Type must be set to application/json.
Path Parameters
The UUID of the business to create tag dimension for.
Body
The tag dimension key.
Tag strictness level - BALANCING requires tags to be applied to whole journal entries that balance, NON_BALANCING has no such restriction and can therefore be applied to individual line items of entries, invoices, etc.
BALANCING, NON_BALANCING "NON_BALANCING"
Display name for the tag dimension. Layer shows this as the filter label and the column header when the dimension splits a report.
Whether Layer's embedded components show this dimension to end users. Set this to true for a dimension that users tag with and filter reports by. The default of false keeps the dimension available for tagging and API-level filtering, but hides it in the UI.
Predefined values for this tag dimension.
Show child attributes
Show child attributes
Response
Tag dimension created successfully.
Show child attributes
Show child attributes