Create Custom Attribute
curl --request POST \
--url https://api.zixflow.com/api/v1/attributes/{target}/{targetId} \
--header 'Content-Type: application/json' \
--data '
{
"apiKeyName": "<string>",
"inputType": "<string>",
"name": "<string>",
"config": {
"currencyDisplayType": "<string>",
"currencyCode": "<string>",
"recordReference": {},
"aiWizard": "<string>",
"dateDisplayType": "<string>"
},
"defaultValue": "<string>",
"description": "<string>",
"isEditable": true,
"isMultiSelect": true,
"isRequired": true,
"isUnique": true,
"validation": "<string>"
}
'import requests
url = "https://api.zixflow.com/api/v1/attributes/{target}/{targetId}"
payload = {
"apiKeyName": "<string>",
"inputType": "<string>",
"name": "<string>",
"config": {
"currencyDisplayType": "<string>",
"currencyCode": "<string>",
"recordReference": {},
"aiWizard": "<string>",
"dateDisplayType": "<string>"
},
"defaultValue": "<string>",
"description": "<string>",
"isEditable": True,
"isMultiSelect": True,
"isRequired": True,
"isUnique": True,
"validation": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
apiKeyName: '<string>',
inputType: '<string>',
name: '<string>',
config: {
currencyDisplayType: '<string>',
currencyCode: '<string>',
recordReference: {},
aiWizard: '<string>',
dateDisplayType: '<string>'
},
defaultValue: '<string>',
description: '<string>',
isEditable: true,
isMultiSelect: true,
isRequired: true,
isUnique: true,
validation: '<string>'
})
};
fetch('https://api.zixflow.com/api/v1/attributes/{target}/{targetId}', 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.zixflow.com/api/v1/attributes/{target}/{targetId}",
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([
'apiKeyName' => '<string>',
'inputType' => '<string>',
'name' => '<string>',
'config' => [
'currencyDisplayType' => '<string>',
'currencyCode' => '<string>',
'recordReference' => [
],
'aiWizard' => '<string>',
'dateDisplayType' => '<string>'
],
'defaultValue' => '<string>',
'description' => '<string>',
'isEditable' => true,
'isMultiSelect' => true,
'isRequired' => true,
'isUnique' => true,
'validation' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"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.zixflow.com/api/v1/attributes/{target}/{targetId}"
payload := strings.NewReader("{\n \"apiKeyName\": \"<string>\",\n \"inputType\": \"<string>\",\n \"name\": \"<string>\",\n \"config\": {\n \"currencyDisplayType\": \"<string>\",\n \"currencyCode\": \"<string>\",\n \"recordReference\": {},\n \"aiWizard\": \"<string>\",\n \"dateDisplayType\": \"<string>\"\n },\n \"defaultValue\": \"<string>\",\n \"description\": \"<string>\",\n \"isEditable\": true,\n \"isMultiSelect\": true,\n \"isRequired\": true,\n \"isUnique\": true,\n \"validation\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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.zixflow.com/api/v1/attributes/{target}/{targetId}")
.header("Content-Type", "application/json")
.body("{\n \"apiKeyName\": \"<string>\",\n \"inputType\": \"<string>\",\n \"name\": \"<string>\",\n \"config\": {\n \"currencyDisplayType\": \"<string>\",\n \"currencyCode\": \"<string>\",\n \"recordReference\": {},\n \"aiWizard\": \"<string>\",\n \"dateDisplayType\": \"<string>\"\n },\n \"defaultValue\": \"<string>\",\n \"description\": \"<string>\",\n \"isEditable\": true,\n \"isMultiSelect\": true,\n \"isRequired\": true,\n \"isUnique\": true,\n \"validation\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zixflow.com/api/v1/attributes/{target}/{targetId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"apiKeyName\": \"<string>\",\n \"inputType\": \"<string>\",\n \"name\": \"<string>\",\n \"config\": {\n \"currencyDisplayType\": \"<string>\",\n \"currencyCode\": \"<string>\",\n \"recordReference\": {},\n \"aiWizard\": \"<string>\",\n \"dateDisplayType\": \"<string>\"\n },\n \"defaultValue\": \"<string>\",\n \"description\": \"<string>\",\n \"isEditable\": true,\n \"isMultiSelect\": true,\n \"isRequired\": true,\n \"isUnique\": true,\n \"validation\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"status": true,
"message": "success",
"data": {
"_id": "64ad815b273e66dae1afe10f",
"apiKeyName": "name",
"inputType": "text",
"name": "Name",
"config": {
"currencyDisplayType": null,
"currencyCode": null,
"recordReference": [],
"aiWizard": null,
"dateDisplayType": null
},
"defaultValue": null,
"description": "",
"isEditable": true,
"isMultiSelect": false,
"isRequired": false,
"isUnique": false,
"validation": "none"
}
}
{
"status": false,
"message": "No token provided"
}
Attributes
Create Custom Attribute
This endpoint creates a new attribute for a specified target (collection or list).
POST
/
api
/
v1
/
attributes
/
{target}
/
{targetId}
Create Custom Attribute
curl --request POST \
--url https://api.zixflow.com/api/v1/attributes/{target}/{targetId} \
--header 'Content-Type: application/json' \
--data '
{
"apiKeyName": "<string>",
"inputType": "<string>",
"name": "<string>",
"config": {
"currencyDisplayType": "<string>",
"currencyCode": "<string>",
"recordReference": {},
"aiWizard": "<string>",
"dateDisplayType": "<string>"
},
"defaultValue": "<string>",
"description": "<string>",
"isEditable": true,
"isMultiSelect": true,
"isRequired": true,
"isUnique": true,
"validation": "<string>"
}
'import requests
url = "https://api.zixflow.com/api/v1/attributes/{target}/{targetId}"
payload = {
"apiKeyName": "<string>",
"inputType": "<string>",
"name": "<string>",
"config": {
"currencyDisplayType": "<string>",
"currencyCode": "<string>",
"recordReference": {},
"aiWizard": "<string>",
"dateDisplayType": "<string>"
},
"defaultValue": "<string>",
"description": "<string>",
"isEditable": True,
"isMultiSelect": True,
"isRequired": True,
"isUnique": True,
"validation": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
apiKeyName: '<string>',
inputType: '<string>',
name: '<string>',
config: {
currencyDisplayType: '<string>',
currencyCode: '<string>',
recordReference: {},
aiWizard: '<string>',
dateDisplayType: '<string>'
},
defaultValue: '<string>',
description: '<string>',
isEditable: true,
isMultiSelect: true,
isRequired: true,
isUnique: true,
validation: '<string>'
})
};
fetch('https://api.zixflow.com/api/v1/attributes/{target}/{targetId}', 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.zixflow.com/api/v1/attributes/{target}/{targetId}",
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([
'apiKeyName' => '<string>',
'inputType' => '<string>',
'name' => '<string>',
'config' => [
'currencyDisplayType' => '<string>',
'currencyCode' => '<string>',
'recordReference' => [
],
'aiWizard' => '<string>',
'dateDisplayType' => '<string>'
],
'defaultValue' => '<string>',
'description' => '<string>',
'isEditable' => true,
'isMultiSelect' => true,
'isRequired' => true,
'isUnique' => true,
'validation' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"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.zixflow.com/api/v1/attributes/{target}/{targetId}"
payload := strings.NewReader("{\n \"apiKeyName\": \"<string>\",\n \"inputType\": \"<string>\",\n \"name\": \"<string>\",\n \"config\": {\n \"currencyDisplayType\": \"<string>\",\n \"currencyCode\": \"<string>\",\n \"recordReference\": {},\n \"aiWizard\": \"<string>\",\n \"dateDisplayType\": \"<string>\"\n },\n \"defaultValue\": \"<string>\",\n \"description\": \"<string>\",\n \"isEditable\": true,\n \"isMultiSelect\": true,\n \"isRequired\": true,\n \"isUnique\": true,\n \"validation\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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.zixflow.com/api/v1/attributes/{target}/{targetId}")
.header("Content-Type", "application/json")
.body("{\n \"apiKeyName\": \"<string>\",\n \"inputType\": \"<string>\",\n \"name\": \"<string>\",\n \"config\": {\n \"currencyDisplayType\": \"<string>\",\n \"currencyCode\": \"<string>\",\n \"recordReference\": {},\n \"aiWizard\": \"<string>\",\n \"dateDisplayType\": \"<string>\"\n },\n \"defaultValue\": \"<string>\",\n \"description\": \"<string>\",\n \"isEditable\": true,\n \"isMultiSelect\": true,\n \"isRequired\": true,\n \"isUnique\": true,\n \"validation\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zixflow.com/api/v1/attributes/{target}/{targetId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"apiKeyName\": \"<string>\",\n \"inputType\": \"<string>\",\n \"name\": \"<string>\",\n \"config\": {\n \"currencyDisplayType\": \"<string>\",\n \"currencyCode\": \"<string>\",\n \"recordReference\": {},\n \"aiWizard\": \"<string>\",\n \"dateDisplayType\": \"<string>\"\n },\n \"defaultValue\": \"<string>\",\n \"description\": \"<string>\",\n \"isEditable\": true,\n \"isMultiSelect\": true,\n \"isRequired\": true,\n \"isUnique\": true,\n \"validation\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"status": true,
"message": "success",
"data": {
"_id": "64ad815b273e66dae1afe10f",
"apiKeyName": "name",
"inputType": "text",
"name": "Name",
"config": {
"currencyDisplayType": null,
"currencyCode": null,
"recordReference": [],
"aiWizard": null,
"dateDisplayType": null
},
"defaultValue": null,
"description": "",
"isEditable": true,
"isMultiSelect": false,
"isRequired": false,
"isUnique": false,
"validation": "none"
}
}
{
"status": false,
"message": "No token provided"
}
Description
This API endpoint allows the creation of a new attribute within a specified target, either a collection or a list. Attributes define the nature and characteristics of the data stored within the target.Path
string
required
Specifies the target type, which can be either “collection” or “list.”
string
required
A unique identifier for the target, either a collection ID or a list ID, depending on the target type.
Body
string
required
The API key name used to store data in the collection or list for this field.
string
required
Defines the input type or nature of the field. Possible values include text, number, checkbox, currency, date, timestamp, rating, status, select, multiselect, record-reference, actor-reference, domain, file, ai-wizard, email-address, phone-number.
string
required
The human-readable name of the field.
object
required
Configuration settings for the attribute, including currency display type, currency code, record reference, AI wizard, and date display type.
Show config
Show config
string
Accepted values: “code,” “name,” “narrowSymbol,” “symbol.” Specifies how currency should be displayed.
string
The currency code (e.g., “EUR,” “GBP,” “USD,” “CAD,” “AUD”).
array_string
An array of collection IDs connected to this attribute.
string
The AI wizard field prompt.
string
Defines how to display the date field.
string
The default value for the attribute.
string
A description providing additional information about the attribute.
boolean
Indicates whether the attribute is editable (true/false).
boolean
Indicates whether the attribute supports multiple selections (true/false).
boolean
Indicates whether the attribute is required (true/false).
boolean
Indicates whether the attribute values must be unique (true/false).
string
The validation type for the attribute. Possible values include “none,” “email,” “url,” “phone,” “customRegex.”
Response
boolean
Indicates the success or failure of the attribute creation. In this case,
true signifies a successful operation.
string
Provides a human-readable message accompanying the response. In this instance,
it confirms the successful creation of the attribute.
object
An object containing details of the newly created attribute:
Show data
Show data
string
A unique identifier for the attribute, allowing for precise referencing.
string
The API key name used to store data in the collection or list for this field.
string
Defines the input type or nature of the field.
string
The human-readable name of the field.
object
Configuration settings for the attribute.
string
The default value for the attribute.
string
A description providing additional information about the attribute.
boolean
Indicates whether the attribute is editable.
boolean
Indicates whether the attribute supports multiple selections.
boolean
Indicates whether the attribute is required.
boolean
Indicates whether the attribute values must be unique.
string
The validation type for the attribute.
{
"status": true,
"message": "success",
"data": {
"_id": "64ad815b273e66dae1afe10f",
"apiKeyName": "name",
"inputType": "text",
"name": "Name",
"config": {
"currencyDisplayType": null,
"currencyCode": null,
"recordReference": [],
"aiWizard": null,
"dateDisplayType": null
},
"defaultValue": null,
"description": "",
"isEditable": true,
"isMultiSelect": false,
"isRequired": false,
"isUnique": false,
"validation": "none"
}
}
{
"status": false,
"message": "No token provided"
}
⌘I