curl --request POST \
--url https://api.cloud.corbado.io/v1/observe/labels \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"entityType": "<string>",
"entityID": "<string>",
"option": "<string>",
"displayName": "<string>",
"description": "<string>"
}
'import requests
url = "https://api.cloud.corbado.io/v1/observe/labels"
payload = {
"entityType": "<string>",
"entityID": "<string>",
"option": "<string>",
"displayName": "<string>",
"description": "<string>"
}
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({
entityType: '<string>',
entityID: '<string>',
option: '<string>',
displayName: '<string>',
description: '<string>'
})
};
fetch('https://api.cloud.corbado.io/v1/observe/labels', 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.cloud.corbado.io/v1/observe/labels",
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([
'entityType' => '<string>',
'entityID' => '<string>',
'option' => '<string>',
'displayName' => '<string>',
'description' => '<string>'
]),
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://api.cloud.corbado.io/v1/observe/labels"
payload := strings.NewReader("{\n \"entityType\": \"<string>\",\n \"entityID\": \"<string>\",\n \"option\": \"<string>\",\n \"displayName\": \"<string>\",\n \"description\": \"<string>\"\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://api.cloud.corbado.io/v1/observe/labels")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"entityType\": \"<string>\",\n \"entityID\": \"<string>\",\n \"option\": \"<string>\",\n \"displayName\": \"<string>\",\n \"description\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cloud.corbado.io/v1/observe/labels")
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 \"entityType\": \"<string>\",\n \"entityID\": \"<string>\",\n \"option\": \"<string>\",\n \"displayName\": \"<string>\",\n \"description\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"entityType": "<string>",
"entityID": "<string>",
"option": "<string>",
"createdMs": 123,
"updatedMs": 123,
"displayName": "<string>",
"description": "<string>"
}{
"error": {
"message": "Validation failed",
"details": [
{
"field": "projectID",
"message": "required"
}
]
}
}Create label
Creates an Observe label.
Required API key permission: observe:catalog:write.
curl --request POST \
--url https://api.cloud.corbado.io/v1/observe/labels \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"entityType": "<string>",
"entityID": "<string>",
"option": "<string>",
"displayName": "<string>",
"description": "<string>"
}
'import requests
url = "https://api.cloud.corbado.io/v1/observe/labels"
payload = {
"entityType": "<string>",
"entityID": "<string>",
"option": "<string>",
"displayName": "<string>",
"description": "<string>"
}
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({
entityType: '<string>',
entityID: '<string>',
option: '<string>',
displayName: '<string>',
description: '<string>'
})
};
fetch('https://api.cloud.corbado.io/v1/observe/labels', 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.cloud.corbado.io/v1/observe/labels",
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([
'entityType' => '<string>',
'entityID' => '<string>',
'option' => '<string>',
'displayName' => '<string>',
'description' => '<string>'
]),
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://api.cloud.corbado.io/v1/observe/labels"
payload := strings.NewReader("{\n \"entityType\": \"<string>\",\n \"entityID\": \"<string>\",\n \"option\": \"<string>\",\n \"displayName\": \"<string>\",\n \"description\": \"<string>\"\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://api.cloud.corbado.io/v1/observe/labels")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"entityType\": \"<string>\",\n \"entityID\": \"<string>\",\n \"option\": \"<string>\",\n \"displayName\": \"<string>\",\n \"description\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cloud.corbado.io/v1/observe/labels")
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 \"entityType\": \"<string>\",\n \"entityID\": \"<string>\",\n \"option\": \"<string>\",\n \"displayName\": \"<string>\",\n \"description\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"entityType": "<string>",
"entityID": "<string>",
"option": "<string>",
"createdMs": 123,
"updatedMs": 123,
"displayName": "<string>",
"description": "<string>"
}{
"error": {
"message": "Validation failed",
"details": [
{
"field": "projectID",
"message": "required"
}
]
}
}Authorizations
Use an Observe API key from the management console. The key selects the project and must grant the permission listed on the operation. Keep this key on your server.
Body
Type of the entity to label
ID of the entity to label. Use app-<number> for applications, dec-<number> for decisions and
decision options, and dva-<number> for decision variants.
Sub-key within the labeled entity. Required for entityType='decisionOption', must be empty (or omitted) for all other entity types.
Human-readable display name
Description of the entity
Response
Label created.
Label ID (format lbl-<number>).
Type of the labeled entity.
ID of the labeled entity. Applications use app-<number>, decisions use dec-<number>, decision
variants use dva-<number>, and decision options use the parent decision ID dec-<number>.
Sub-key within the labeled entity. Only used for entityType='decisionOption' where entityID references the decision and option holds the option name (e.g. "social-google"). Empty string for all other entity types.
Creation time in milliseconds since epoch.
Last update time in milliseconds since epoch.
Human-readable display name.
Description of the entity.
Was this page helpful?