Објекат
DANGER
Подешавање објеката путем API-ја може изазвати озбиљне проблеме на вашој инстанци. Поступајте изузетно опрезно и проверите да не модификујете ниједно од Zammad-ових подразумеваних поља.
Ако желите да сакријете поља, уместо тога искористите основне токове рада у Zammad-у!
Преглед листе
Потребна дозвола: admin.object
GET-захтев послат: /api/v1/object_manager_attributes
Details
json
// HTTP-Code 200 OK
[
{
"id": 2,
"name": "customer_id",
"display": "Customer",
"data_type": "user_autocompletion",
"data_option": {
"relation": "User",
"autocapitalize": false,
"multiple": false,
"guess": true,
"null": false,
"limit": 200,
"placeholder": "Enter Person or Organization/Company",
"minLengt": 2,
"translate": false,
"permission": [
"ticket.agent"
]
},
"data_option_new": {},
"editable": false,
"active": true,
"screens": {
"create_top": {
"-all-": {
"null": false
}
},
"edit": {}
},
"to_create": false,
"to_migrate": false,
"to_delete": false,
"to_config": false,
"position": 10,
"created_by_id": 1,
"updated_by_id": 1,
"created_at": "2021-11-09T13:12:32.677Z",
"updated_at": "2021-11-09T13:12:32.677Z",
"object": "Ticket",
"deletable": false,
"not_deletable_reason": "This attribute is referenced by Overview: My Tickets and thus cannot be deleted!"
},
{
"id": 1,
"name": "title",
"display": "Title",
"data_type": "input",
"data_option": {
"type": "text",
"maxlength": 200,
"null": false,
"translate": false
},
"data_option_new": {},
"editable": false,
"active": true,
"screens": {
"create_top": {
"-all-": {
"null": false
}
},
"edit": {}
},
"to_create": false,
"to_migrate": false,
"to_delete": false,
"to_config": false,
"position": 15,
"created_by_id": 1,
"updated_by_id": 1,
"created_at": "2021-11-09T13:12:32.671Z",
"updated_at": "2021-11-09T13:12:32.671Z",
"object": "Ticket",
"deletable": false
},
{
"id": 3,
"name": "type",
"display": "Type",
"data_type": "select",
"data_option": {
"default": "",
"options": {
"Incident": "Incident",
"Problem": "Problem",
"Request for Change": "Request for Change"
},
"nulloption": true,
"multiple": false,
"null": true,
"translate": true,
"maxlength": 255
},
"data_option_new": {},
"editable": true,
"active": false,
"screens": {
"create_middle": {
"-all-": {
"null": false,
"item_class": "column"
}
},
"edit": {
"ticket.agent": {
"null": false
}
}
},
"to_create": false,
"to_migrate": false,
"to_delete": false,
"to_config": false,
"position": 20,
"created_by_id": 1,
"updated_by_id": 1,
"created_at": "2021-11-09T13:12:32.686Z",
"updated_at": "2021-11-09T13:12:32.686Z",
"object": "Ticket",
"deletable": true
},
{
"id": 4,
"name": "group_id",
"display": "Group",
"data_type": "select",
"data_option": {
"default": "",
"relation": "Group",
"relation_condition": {
"access": "full"
},
"nulloption": true,
"multiple": false,
"null": false,
"translate": false,
"only_shown_if_selectable": true,
"permission": [
"ticket.agent",
"ticket.customer"
],
"maxlength": 255
},
"data_option_new": {},
"editable": false,
"active": true,
"screens": {
"create_middle": {
"-all-": {
"null": false,
"item_class": "column"
}
},
"edit": {
"ticket.agent": {
"null": false
}
}
},
"to_create": false,
"to_migrate": false,
"to_delete": false,
"to_config": false,
"position": 25,
"created_by_id": 1,
"updated_by_id": 1,
"created_at": "2021-11-09T13:12:32.690Z",
"updated_at": "2021-11-09T13:12:32.690Z",
"object": "Ticket",
"deletable": false
},
{
"id": 5,
"name": "owner_id",
"display": "Owner",
"data_type": "select",
"data_option": {
"default": "",
"relation": "User",
"relation_condition": {
"roles": "Agent"
},
"nulloption": true,
"multiple": false,
"null": true,
"translate": false,
"permission": [
"ticket.agent"
],
"maxlength": 255
},
"data_option_new": {},
"editable": false,
"active": true,
"screens": {
"create_middle": {
"-all-": {
"null": true,
"item_class": "column"
}
},
"edit": {
"-all-": {
"null": true
}
}
},
"to_create": false,
"to_migrate": false,
"to_delete": false,
"to_config": false,
"position": 30,
"created_by_id": 1,
"updated_by_id": 1,
"created_at": "2021-11-09T13:12:32.694Z",
"updated_at": "2021-11-09T13:12:32.694Z",
"object": "Ticket",
"deletable": false,
"not_deletable_reason": "This attribute is referenced by Trigger: customer notification (on owner change); Overview: My assigned Tickets,My pending reached Tickets,Unassigned & Open and thus cannot be deleted!"
},
{
"id": 6,
"name": "state_id",
"display": "State",
"data_type": "select",
"data_option": {
"relation": "TicketState",
"nulloption": true,
"multiple": false,
"null": false,
"default": 2,
"translate": true,
"filter": [
2,
1,
3,
4,
6,
7
],
"maxlength": 255
},
"data_option_new": {},
"editable": false,
"active": true,
"screens": {
"create_middle": {
"ticket.agent": {
"null": false,
"item_class": "column",
"filter": [
2,
1,
3,
4,
7
]
},
"ticket.customer": {
"item_class": "column",
"nulloption": false,
"null": true,
"filter": [
1,
4
],
"default": 1
}
},
"edit": {
"ticket.agent": {
"nulloption": false,
"null": false,
"filter": [
2,
3,
4,
7
]
},
"ticket.customer": {
"nulloption": false,
"null": true,
"filter": [
2,
4
],
"default": 2
}
}
},
"to_create": false,
"to_migrate": false,
"to_delete": false,
"to_config": false,
"position": 40,
"created_by_id": 1,
"updated_by_id": 1,
"created_at": "2021-11-09T13:12:32.706Z",
"updated_at": "2021-11-09T13:12:32.706Z",
"object": "Ticket",
"deletable": false,
"not_deletable_reason": "This attribute is referenced by Trigger: auto reply (on new tickets); Overview: My Organization Tickets,My Tickets,My assigned Tickets,My pending reached Tickets,My replacement Tickets,Open,Open Banana Items,Pending reached,Unassigned & Open,VIP Customers and thus cannot be deleted!"
},
{
"id": 7,
"name": "pending_time",
"display": "Pending till",
"data_type": "datetime",
"data_option": {
"future": true,
"past": false,
"diff": 24,
"null": true,
"translate": true,
"permission": [
"ticket.agent"
]
},
"data_option_new": {},
"editable": false,
"active": true,
"screens": {
"create_middle": {
"-all-": {
"null": false,
"item_class": "column"
}
},
"edit": {
"-all-": {
"null": false
}
}
},
"to_create": false,
"to_migrate": false,
"to_delete": false,
"to_config": false,
"position": 41,
"created_by_id": 1,
"updated_by_id": 1,
"created_at": "2021-11-09T13:12:32.713Z",
"updated_at": "2021-11-09T13:12:32.713Z",
"object": "Ticket",
"deletable": false,
"not_deletable_reason": "This attribute is referenced by Overview: My pending reached Tickets,Pending reached and thus cannot be deleted!"
},
{
"id": 8,
"name": "priority_id",
"display": "Priority",
"data_type": "select",
"data_option": {
"relation": "TicketPriority",
"nulloption": false,
"multiple": false,
"null": false,
"default": 2,
"translate": true,
"maxlength": 255
},
"data_option_new": {},
"editable": false,
"active": true,
"screens": {
"create_middle": {
"ticket.agent": {
"null": false,
"item_class": "column"
}
},
"edit": {
"ticket.agent": {
"null": false
}
}
},
"to_create": false,
"to_migrate": false,
"to_delete": false,
"to_config": false,
"position": 80,
"created_by_id": 1,
"updated_by_id": 1,
"created_at": "2021-11-09T13:12:32.718Z",
"updated_at": "2021-11-09T13:12:32.718Z",
"object": "Ticket",
"deletable": false
}
]Прикажи
Потребна дозвола: admin.object
GET-захтев послат: /api/v1/object_manager_attributes/{id}
Details
json
// HTTP-Code 200 OK
{
"id": 18,
"object_lookup_id": 1,
"name": "email",
"display": "Email",
"data_type": "input",
"data_option": {
"type": "email",
"maxlength": 150,
"null": true,
"item_class": "formGroup--halfSize"
},
"data_option_new": {},
"editable": false,
"active": true,
"screens": {
"signup": {
"-all-": {
"null": false
}
},
"invite_agent": {
"-all-": {
"null": false
}
},
"invite_customer": {
"-all-": {
"null": false
}
},
"edit": {
"-all-": {
"null": true
}
},
"create": {
"-all-": {
"null": true
}
},
"view": {
"-all-": {
"shown": true
}
}
},
"to_create": false,
"to_migrate": false,
"to_delete": false,
"to_config": false,
"position": 400,
"created_by_id": 1,
"updated_by_id": 1,
"created_at": "2021-11-09T13:12:32.784Z",
"updated_at": "2021-11-09T13:12:32.784Z"
}Креирај
Потребна дозвола: admin.object
POST-захтев послат: /api/v1/object_manager_attributes
Логички тип
Details
json
{
"name": "sample_boolean",
"object": "Ticket",
"display": "Sample Boolean",
"active": true,
"position": 1550,
"data_type": "boolean",
"data_option": {
"options": {
"true": "very correct indeed",
"false": "very incorrect indeed"
}
},
"screens": {
"create_middle": {
"ticket.customer": {
"shown": true,
"required": false,
"item_class": "column"
},
"ticket.agent": {
"shown": true,
"required": false,
"item_class": "column"
}
},
"edit": {
"ticket.customer": {
"shown": true,
"required": false
},
"ticket.agent": {
"shown": true,
"required": true
}
}
}
}Датум
Details
json
{
"name": "sample_date",
"object": "Ticket",
"display": "Sample Date",
"active": true,
"position": 1550,
"data_type": "date",
"data_option": {
"diff": 120
},
"screens": {
"create_middle": {
"ticket.customer": {
"shown": true,
"required": false,
"item_class": "column"
},
"ticket.agent": {
"shown": true,
"required": false,
"item_class": "column"
}
},
"edit": {
"ticket.customer": {
"shown": true,
"required": false
},
"ticket.agent": {
"shown": true,
"required": true
}
}
}
}Датум и време
Details
json
{
"name": "sample_datetime",
"object": "Ticket",
"display": "Sample DateTime",
"active": true,
"position": 1550,
"data_type": "datetime",
"data_option": {
"future": true,
"past": false,
"diff": 120
},
"screens": {
"create_middle": {
"ticket.customer": {
"shown": true,
"required": false,
"item_class": "column"
},
"ticket.agent": {
"shown": true,
"required": false,
"item_class": "column"
}
},
"edit": {
"ticket.customer": {
"shown": true,
"required": false
},
"ticket.agent": {
"shown": true,
"required": true
}
}
}
}Целобројно поље
Details
json
{
"name": "sample_integer",
"object": "Ticket",
"display": "Sample Integer",
"active": true,
"position": 1550,
"data_type": "integer",
"data_option": {
"default": 1234,
"min": 4,
"max": 8
},
"screens": {
"create_middle": {
"ticket.customer": {
"shown": true,
"required": false,
"item_class": "column"
},
"ticket.agent": {
"shown": true,
"required": false,
"item_class": "column"
}
},
"edit": {
"ticket.customer": {
"shown": true,
"required": false
},
"ticket.agent": {
"shown": true,
"required": true
}
}
}
}за одабир
Details
json
{
"name": "sample_select",
"object": "Ticket",
"display": "Sample Select",
"active": true,
"position": 1550,
"data_type": "select",
"data_option": {
"options": {
"key-one": "First Key",
"key-two": "Second Key",
"key-three": "Third Key"
},
"default": "key-two",
"linktemplate": ""
},
"screens": {
"create_middle": {
"ticket.customer": {
"shown": true,
"required": false,
"item_class": "column"
},
"ticket.agent": {
"shown": true,
"required": false,
"item_class": "column"
}
},
"edit": {
"ticket.customer": {
"shown": true,
"required": false
},
"ticket.agent": {
"shown": true,
"required": true
}
}
}
}Текст
Details
json
{
"name": "sample_text",
"object": "Ticket",
"display": "Sample Text",
"active": true,
"position": 1550,
"data_type": "input",
"data_option": {
"default": "amazing default",
"type": "text",
"maxlength": 120,
"linktemplate": "https://www.google.com/search?q=#{ticket.sample_text}"
},
"screens": {
"create_middle": {
"ticket.customer": {
"shown": true,
"required": false,
"item_class": "column"
},
"ticket.agent": {
"shown": true,
"required": false,
"item_class": "column"
}
},
"edit": {
"ticket.customer": {
"shown": true,
"required": false
},
"ticket.agent": {
"shown": true,
"required": true
}
}
}
}TIP
Поља за унос у Zammad-у могу бити 4 различита типа:
emailteltexturl(не подржава линк предлошке)
Зависно од изабраног типа уноса, Zammad очекује различите формате података. На пример: емаил захтева да буде наведена адреса имејла.
за одабир
Details
json
{
"name": "sample_treeselect",
"object": "Ticket",
"display": "Sample Tree Select",
"active": true,
"position": 1550,
"data_type": "tree_select",
"data_option": {
"options": [
{
"name": "row one - maximum child depth",
"value": "row one - maximum child depth",
"children": [
{
"name": "row one child level one",
"value": "row one - maximum child depth::row one child level one",
"children": [
{
"name": "row one child level two",
"value": "row one - maximum child depth::row one child level one::row one child level two",
"children": [
{
"name": "row one child level three",
"value": "row one - maximum child depth::row one child level one::row one child level two::row one child level three",
"children": [
{
"name": "row one child level four",
"value": "row one - maximum child depth::row one child level one::row one child level two::row one child level three::row one child level four",
"children": [
{
"name": "row one child level fize",
"value": "row one - maximum child depth::row one child level one::row one child level two::row one child level three::row one child level four::row one child level fize"
}
]
}
]
}
]
}
]
}
]
},
{
"name": "row two - no childs",
"value": "row two - no childs"
},
{
"name": "row three - one child",
"value": "row three - one child",
"children": [
{
"name": "row three - first and only child",
"value": "row three - one child::row three - first and only child"
}
]
}
]
},
"screens": {
"create_middle": {
"ticket.customer": {
"shown": true,
"required": false,
"item_class": "column"
},
"ticket.agent": {
"shown": true,
"required": false,
"item_class": "column"
}
},
"edit": {
"ticket.customer": {
"shown": true,
"required": false
},
"ticket.agent": {
"shown": true,
"required": true
}
}
}
}INFO
Имајте на уму да горе наведени подаци обухватају објекте тикета. То је довољно за већину ситуација, осим ако не користите подразумевана права приступа објектима. Зато их наводимо одвојено ради бољег прегледа.
Параметар object контролише у ком сте контексту:
TicketUserOrganisationGroup
json
{
"screens": {
"create_middle": {
"ticket.customer": {
"shown": true,
"required": false,
"item_class": "column"
},
"ticket.agent": {
"shown": true,
"required": false,
"item_class": "column"
}
},
"edit": {
"ticket.customer": {
"shown": true,
"required": false
},
"ticket.agent": {
"shown": true,
"required": true
}
}
}
}Освежавање
Потребна дозвола: admin.object
Осим у методама захтева, payloadi за ажурирање и креирање објеката су идентични. За потпуне примере payloada пређите на create_object.
Zammad ће приликом ажурирања вратити два атрибута: data_option и data_option_new. Први атрибут садржи тренутне активне вредности, а други нове вредности (које постају активне након извршења миграција базе података).
PUT-захтев послат: /api/v1/object_manager_attributes/{id}
Details
json
{
"id": 50,
"name": "sample_boolean",
"object": "Ticket",
"display": "Sample Boolean",
"data_type": "boolean",
"position": 1200,
"data_option": {
"options": {
"true": "yes",
"false": "no"
},
"default": "false"
}
}INFO
Обавезно наведите data_option. Zammad строго захтева да овај параметар буде присутан. Имајте на уму да је мењање врсте објекта након додавања немогуће.
Обриши
Потребна дозвола: admin.object
DELETE-захтев послат: /api/v1/object_manager_attributes/{id}
Details
json
// HTTP-Code 200 OK
{}Изврши миграције базе података
Потребна дозвола: admin.object
WARNING
Након извршавања миграција базе података, поновно покретање Zammad-а је обавезно. Ако није онемогућено путем поставке аутоматског гашења, Zammad се аутоматски рестартује - очекујте кратку недоступност.
POST-захтев послат: /api/v1/object_manager_attributes_execute_migrations
Details
json
// HTTP-Code 200 OK
{}