cURL
curl --request POST \
--url https://api.unifygtm.com/data/v1/objects/{object_name}/attributes \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"type": "ADDRESS",
"api_name": "<string>",
"display_name": "<string>",
"description": "<string>",
"is_required": true,
"is_unique": true
}
'import requests
url = "https://api.unifygtm.com/data/v1/objects/{object_name}/attributes"
payload = {
"type": "ADDRESS",
"api_name": "<string>",
"display_name": "<string>",
"description": "<string>",
"is_required": True,
"is_unique": True
}
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({
type: 'ADDRESS',
api_name: '<string>',
display_name: '<string>',
description: '<string>',
is_required: true,
is_unique: true
})
};
fetch('https://api.unifygtm.com/data/v1/objects/{object_name}/attributes', 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.unifygtm.com/data/v1/objects/{object_name}/attributes",
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([
'type' => 'ADDRESS',
'api_name' => '<string>',
'display_name' => '<string>',
'description' => '<string>',
'is_required' => true,
'is_unique' => true
]),
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;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.unifygtm.com/data/v1/objects/{object_name}/attributes"
payload := strings.NewReader("{\n \"type\": \"ADDRESS\",\n \"api_name\": \"<string>\",\n \"display_name\": \"<string>\",\n \"description\": \"<string>\",\n \"is_required\": true,\n \"is_unique\": true\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))
}HttpResponse<String> response = Unirest.post("https://api.unifygtm.com/data/v1/objects/{object_name}/attributes")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"type\": \"ADDRESS\",\n \"api_name\": \"<string>\",\n \"display_name\": \"<string>\",\n \"description\": \"<string>\",\n \"is_required\": true,\n \"is_unique\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.unifygtm.com/data/v1/objects/{object_name}/attributes")
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 \"type\": \"ADDRESS\",\n \"api_name\": \"<string>\",\n \"display_name\": \"<string>\",\n \"description\": \"<string>\",\n \"is_required\": true,\n \"is_unique\": true\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"data": {
"type": "ADDRESS",
"api_name": "<string>",
"display_name": "<string>",
"description": "<string>",
"is_required": true,
"is_unique": true
}
}{
"status": "bad_request",
"errors": [
{
"code": "<string>",
"path": [
"<string>"
],
"object_api_name": "<string>",
"attribute_api_name": "<string>"
}
],
"message": "<string>"
}{
"status": "unauthorized",
"message": "<string>"
}{
"status": "forbidden",
"message": "<string>"
}{
"status": "object_not_found",
"message": "<string>"
}{
"status": "attribute_conflict",
"message": "<string>"
}{
"status": "error",
"message": "<string>"
}Attributes
Create attribute
Add an attribute to an object.
POST
/
data
/
v1
/
objects
/
{object_name}
/
attributes
cURL
curl --request POST \
--url https://api.unifygtm.com/data/v1/objects/{object_name}/attributes \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"type": "ADDRESS",
"api_name": "<string>",
"display_name": "<string>",
"description": "<string>",
"is_required": true,
"is_unique": true
}
'import requests
url = "https://api.unifygtm.com/data/v1/objects/{object_name}/attributes"
payload = {
"type": "ADDRESS",
"api_name": "<string>",
"display_name": "<string>",
"description": "<string>",
"is_required": True,
"is_unique": True
}
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({
type: 'ADDRESS',
api_name: '<string>',
display_name: '<string>',
description: '<string>',
is_required: true,
is_unique: true
})
};
fetch('https://api.unifygtm.com/data/v1/objects/{object_name}/attributes', 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.unifygtm.com/data/v1/objects/{object_name}/attributes",
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([
'type' => 'ADDRESS',
'api_name' => '<string>',
'display_name' => '<string>',
'description' => '<string>',
'is_required' => true,
'is_unique' => true
]),
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;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.unifygtm.com/data/v1/objects/{object_name}/attributes"
payload := strings.NewReader("{\n \"type\": \"ADDRESS\",\n \"api_name\": \"<string>\",\n \"display_name\": \"<string>\",\n \"description\": \"<string>\",\n \"is_required\": true,\n \"is_unique\": true\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))
}HttpResponse<String> response = Unirest.post("https://api.unifygtm.com/data/v1/objects/{object_name}/attributes")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"type\": \"ADDRESS\",\n \"api_name\": \"<string>\",\n \"display_name\": \"<string>\",\n \"description\": \"<string>\",\n \"is_required\": true,\n \"is_unique\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.unifygtm.com/data/v1/objects/{object_name}/attributes")
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 \"type\": \"ADDRESS\",\n \"api_name\": \"<string>\",\n \"display_name\": \"<string>\",\n \"description\": \"<string>\",\n \"is_required\": true,\n \"is_unique\": true\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"data": {
"type": "ADDRESS",
"api_name": "<string>",
"display_name": "<string>",
"description": "<string>",
"is_required": true,
"is_unique": true
}
}{
"status": "bad_request",
"errors": [
{
"code": "<string>",
"path": [
"<string>"
],
"object_api_name": "<string>",
"attribute_api_name": "<string>"
}
],
"message": "<string>"
}{
"status": "unauthorized",
"message": "<string>"
}{
"status": "forbidden",
"message": "<string>"
}{
"status": "object_not_found",
"message": "<string>"
}{
"status": "attribute_conflict",
"message": "<string>"
}{
"status": "error",
"message": "<string>"
}Authorizations
Path Parameters
API name of the object.
Body
application/json
- Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
- Option 7
- Option 8
- Option 9
- Option 10
- Option 11
- Option 12
- Option 13
- Option 14
- Option 15
- Option 16
Definition of an attribute on a Unify object.
Type of value the attribute can hold. Cannot be changed after creation.
Available options:
ADDRESS API name of the attribute. Unique within the object and cannot be changed.
Display name shown in Unify. Unique within the object and can be changed.
Description of the attribute shown in Unify.
Whether the attribute is required.
Whether the attribute value must be unique across records. Unique attributes can be used to match records in find-unique and upsert requests.
Response
Response for a successful create operation.
Response for a successful create operation.
⌘I