Skip to main content
POST
/
tags
Create a new tag
curl --request POST \
  --url https://api.getfernand.com/tags \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "name": "VIP Customer"
}
'
import requests

url = "https://api.getfernand.com/tags"

payload = { "name": "VIP Customer" }
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({name: 'VIP Customer'})
};

fetch('https://api.getfernand.com/tags', 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.getfernand.com/tags",
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([
'name' => 'VIP Customer'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
require 'uri'
require 'net/http'

url = URI("https://api.getfernand.com/tags")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"VIP Customer\"\n}"

response = http.request(request)
puts response.read_body
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://api.getfernand.com/tags"

payload := strings.NewReader("{\n \"name\": \"VIP Customer\"\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("X-API-Key", "<api-key>")
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))

}
using RestSharp;


var options = new RestClientOptions("https://api.getfernand.com/tags");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("X-API-Key", "<api-key>");
request.AddJsonBody("{\n \"name\": \"VIP Customer\"\n}", false);
var response = await client.PostAsync(request);

Console.WriteLine("{0}", response.Content);
HttpResponse<String> response = Unirest.post("https://api.getfernand.com/tags")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"VIP Customer\"\n}")
.asString();
{
  "id": 42,
  "slug": "important-customer",
  "name": "Important Customer",
  "color": "#FF5733",
  "count_conversations": 15,
  "is_system": false
}
{
"error": "Color must be a hexadecimal (#RRGGBB)."
}
Creates a new tag with the specified name and optional color. The slug is automatically generated from the name. If no color is provided, a default gray color (#BEC2C8) is assigned. The tag name must be unique within the organization.

Authorizations

X-API-Key
string
header
required

Authenticate your account by including your secret key in API requests. You can manage your API keys in the Dashboard.

Authentication to the API is performed by using the HTTP Header X-API-Key.

Body

application/json
name
string
required

Name of the tag

Maximum string length: 50
Example:

"VIP Customer"

color
string

Hex color code for the tag (e.g.,

Pattern: ^#[0-9A-Fa-f]{6}$
Example:

"#FF5733"

Response

Tag created successfully

id
integer<int32>
required

Unique identifier for the tag

Example:

42

slug
string
required

URL-friendly slug generated from the tag name

Maximum string length: 50
Example:

"important-customer"

name
string
required

Display name of the tag

Maximum string length: 50
Example:

"Important Customer"

color
string
required

Hex color code for the tag (e.g.,

Pattern: ^#[0-9A-Fa-f]{6}$
Example:

"#FF5733"

count_conversations
integer<int32>
required

Number of conversations associated with this tag

Example:

15

is_system
boolean
required

Whether this is a system-defined tag that cannot be modified or deleted

Example:

false