Api Trackers Doc
Retrieve all trackers that the current user has permission to see
Retrieve all trackers that the current user has permission to see.
https://example.com/api/trackers
curl --request GET \ --url "https://example.com/api/trackers" \ --header "accept: application/json" \ --header "Authorization: Bearer <API_TOKEN>"
<?php $url = 'https://example.com/api/trackers'; $headers = [ 'Accept: application/json', 'Authorization: Bearer <API_TOKEN>' ]; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); $response = curl_exec($ch); $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if ($http_code === 200) { $data = json_decode($response, true); print_r($data); } else { echo 'Error: HTTP status code ' . $http_code; } curl_close($ch); ?>
fetch('https://example.com/api/trackers', { method: 'GET', headers: { 'Accept': 'application/json', 'Authorization': 'Bearer <API_TOKEN>' } }) .then(res => { if (!res.ok) throw new Error("HTTP " + res.status); return res.json(); }) .then(data => { console.log(data); }) .catch(err => { console.log('Fetch error: ' + err.message); });
{ "list": { "1": "quiz", "2": "minical", "3": "orders", "4": "Contacts" }, "data": [ { "trackerId": 1, "name": "quiz", "description": "", "descriptionIsParsed": "n", "created": 1747130522, "lastModif": 1758616579, "items": 4, "fieldsCount": 1, "system_tracker": false }, { "trackerId": 2, "name": "minical", "description": "This aims to hold minical data", "descriptionIsParsed": "n", "created": 1751811300, "lastModif": 1751813241, "items": 2, "fieldsCount": 2, "system_tracker": false }, { "trackerId": 3, "name": "orders", "description": "", "descriptionIsParsed": "n", "created": 1752248918, "lastModif": 1759332937, "items": 1002, "fieldsCount": 7, "system_tracker": false }, { "trackerId": 4, "name": "Contacts", "description": "", "descriptionIsParsed": "n", "created": 1752252712, "lastModif": 1760905623, "items": 4, "fieldsCount": 11, "system_tracker": false } ], "count": 4 }
Parameters
No parameters.
Create a new tracker
Create a new tracker with the provided configuration options.
https://example.com/api/trackers
curl --request POST \ --url "https://example.com/api/trackers" \ --header "accept: application/json" \ --header "Authorization: Bearer <API_TOKEN>" \ --header "Content-Type: application/x-www-form-urlencoded" \ --data-urlencode "name=TrackerTest" \ --data-urlencode "description=TrackerTest Description" \ --data-urlencode "descriptionIsParsed=0" \ --data-urlencode "useComments=1" \ --data-urlencode "showCreated=1" \ --data-urlencode "showLastModif=1" \ --data-urlencode "showStatus=1" \ --data-urlencode "showPopup=1"
<?php $url = 'https://example.com/api/trackers'; $data = [ 'name' => 'TrackerTest', 'description' => 'TrackerTest Description', 'descriptionIsParsed' => 0, 'useComments' => 1, 'showCreated' => 1, 'showLastModif' => 1, 'showStatus' => 1, 'showPopup' => 1 ]; $headers = [ 'Accept: application/json', 'Authorization: Bearer <API_TOKEN>', 'Content-Type: application/x-www-form-urlencoded' ]; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); $response = curl_exec($ch); $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if ($http_code === 200) { $data = json_decode($response, true); print_r($data); } else { echo 'Error: HTTP status code ' . $http_code; } curl_close($ch); ?>
const formData = new URLSearchParams({ name: 'TrackerTest', description: 'TrackerTest Description', descriptionIsParsed: '0', useComments: '1', showCreated: '1', showLastModif: '1', showStatus: '1', showPopup: '1' }); fetch('https://example.com/api/trackers', { method: 'POST', headers: { 'Accept': 'application/json', 'Authorization': 'Bearer <API_TOKEN>', 'Content-Type': 'application/x-www-form-urlencoded' }, body: formData.toString() }) .then(res => { if (!res.ok) throw new Error("HTTP " + res.status); return res.json(); }) .then(data => { console.log(data); }) .catch(err => { console.log('Fetch error: ' + err.message); });
{ "accordion_pos": 1, "title": "Edit TrackerTest", "trackerId": "16", "info": { "adminOnlyViewEditItem": "n", "allowChooseFieldsToDisplay": "n", "allowInlineEditing": "n", "allowOffline": "n", "altClosedStatus": "", "altOpenStatus": "", "altPendingStatus": "", "autoAssignCreatorGroup": "n", "autoAssignCreatorGroupDefault": "n", "autoAssignGroupItem": "n", "autoCopyGroup": "n", "autoCreateCategories": "n", "autoCreateGroup": "n", "autoCreateGroupInc": "", "defaultOrderDir": "string", "defaultOrderKey": "-1", "defaultStatus": "o", "doNotShowEmptyField": "n", "editItemPretty": "", "end": "0", "fieldPrefix": "", "formClasses": "", "groupCanSeeOwn": "n", "logo": "", "modItemStatus": "", "newItemStatus": "o", "notifyOn": "both", "oneUserItem": "n", "orderAttachments": "", "outboundEmail": "", "permName": "", "publishRSS": "n", "ratingOptions": "", "relationshipBehaviour": "", "saveAndComment": "n", "sectionFormat": "flat", "showAttachments": "n", "showComments": "y", "showCreated": "y", "showCreatedBy": "y", "showCreatedFormat": "%c", "showCreatedView": "y", "showLastComment": "n", "showLastModif": "y", "showLastModifBy": "y", "showLastModifFormat": "%c", "showLastModifView": "y", "showPopup": "1", "showRatings": "n", "showStatus": "y", "showStatusAdminOnly": "n", "simpleEmail": "n", "start": "0", "tabularSync": "", "tabularSyncLastImport": "0", "tabularSyncLastImportSkipUpdate": "n", "tabularSyncModifiedField": "0", "useAttachments": "n", "useComments": "y", "useFormClasses": "n", "useRatings": "n", "userCanSeeOwn": "n", "userCanTakeOwnership": "n", "viewItemPretty": "", "writerCanModify": "n", "writerCanRemove": "n", "writerGroupCanModify": "n", "writerGroupCanRemove": "n", "trackerId": 16, "name": "TrackerTest", "description": "TrackerTest Description", "descriptionIsParsed": "n", "created": 1761481261, "lastModif": 1761481261, "items": 0 }, "statusTypes": { "o": { "name": "open", "label": "Open", "perm": "tiki_p_view_trackers", "image": "img/icons/status_open.gif", "iconname": "status-open" }, "p": { "name": "pending", "label": "Pending", "perm": "tiki_p_view_trackers_pending", "image": "img/icons/status_pending.gif", "iconname": "status-pending" }, "c": { "name": "closed", "label": "Closed", "perm": "tiki_p_view_trackers_closed", "image": "img/icons/status_closed.gif", "iconname": "status-closed" } }, "statusList": [ "o" ], "sortFields": { "-1": "Last Modification", "-2": "Creation Date", "-3": "Item ID" }, "attachmentAttributes": { "filename": { "label": "Filename", "selected": false }, "created": { "label": "Creation date", "selected": false }, "hits": { "label": "Views", "selected": false }, "comment": { "label": "Comment", "selected": false }, "filesize": { "label": "File size", "selected": false }, "version": { "label": "Version", "selected": false }, "filetype": { "label": "File type", "selected": false }, "longdesc": { "label": "Long description", "selected": false }, "user": { "label": "User", "selected": false } }, "startDate": null, "startTime": null, "endDate": null, "endTime": null, "groupList": [ "Admins", "Anonymous", "Registered", "sysAdmins", "Translators" ], "groupforAlert": false, "showeachuser": false, "sectionFormats": { "flat": "Flat", "tab": "Tabs", "config": "Configured" }, "remoteTabulars": [], "relationshipBehaviourList": [ "GENERIC_DIRECTIONAL", "GENERIC_NON_DIRECTIONAL", "GENERIC_ONE_TO_MANY" ], "displayTimezone": "Africa/Nairobi" }
Parameters
- name string *: The name of the tracker
- description string Optional: The description of the tracker
- descriptionIsParsed integer Optional: Whether the description is parsed. Possible values are:
- 0 : Not parsed
- 1 : Parsed
- fieldPrefix string Optional: Short string prepended by default to all fields in the tracker.
- permName string Optional: The permanent name of the tracker
- showStatus integer Optional: Whether to show the status of the tracker. Possible values are:
- 0 : Do not show
- 1 : Show
- showStatusAdminOnly integer Optional: Whether to show the status only to the admin. Possible values are:
- 0 : Show the status to all users.
- 1 : Show the status only to the admin.
- showCreated integer Optional: Whether to show the created date when listing items. Possible values are:
- 0 : Do not show the created date.
- 1 : Show the created date.
- showCreatedView integer Optional: Whether to show the created date when viewing items. Possible values are:
- 0 : Do not show the created date.
- 1 : Show the created date.
- showCreatedBy integer Optional: Whether to show the creator when listing items. Possible values are:
- 0 : Do not show the creator.
- 1 : Show the creator.
- showCreatedFormat string Optional: The format of the created date. For more info about Tiki date and time format please check: https://doc.tiki.org/Date-and-Time-Features
- showLastModif integer Optional: Whether to show the last modification date when listing items. Possible values are:
- 0 : Do not show the last modification date.
- 1 : Show the last modification date.
- showLastModifView integer Optional: Whether to show the last modification date when viewing items. Possible values are:
- 0 : Do not show the last modification date.
- 1 : Show the last modification date.
- showLastModifBy integer Optional: Whether to show the last modifier when listing items. Possible values are:
- 0 : Do not show the last modifier.
- 1 : Show the last modifier.
- showLastModifFormat string Optional: The format of the last modification date. For more info about Tiki date and time format please check: https://doc.tiki.org/Date-and-Time-Features
- defaultOrderKey integer Optional: The default sort order when listing items. Possible values are:
- -1 : Last Modification
- -2 : Creation Date
- -3 : Item ID
- defaultOrderDir string Optional: The default sort direction when listing items. Possible values are:
- asc : Ascending
- desc : Descending
- doNotShowEmptyField integer Optional: Whether to show empty fields when listing items. Possible values are:
- 0 : Show empty fields.
- 1 : Do not show empty fields.
- showPopup integer Optional: Whether to show a popup with item details when hovering over an item link. Possible values are:
- 0 : Do not show popup.
- 1 : Show popup.
- defaultStatus String[] Optional: The default status of the tracker. Possible values are:
- o : open
- p : pending
- c : closed
- newItemStatus string[] Optional: The status assigned to new items. Possible values are:
- o : open
- p : pending
- c : closed
- altOpenStatus string Optional: The alternative open status of the tracker.
- altPendingStatus string Optional: The alternative pending status of the tracker.
- altClosedStatus string Optional: The alternative closed status of the tracker.
- modItemStatus string Optional: The status of a modified item. Possible values are:
- o : open
- p : pending
- c : closed
- outboundEmail string Optional: The outbound email address used for notifications. You can add several email addresses by separating them with commas.
- simpleEmail integer Optional: Whether to send simple email notifications. Possible values are:
- 0 : Do not send simple email notifications.
- 1 : Send simple email notifications.
- userCanSeeOwn integer Optional: Whether a user can see their own items. Possible values are:
- 0 : Users cannot see their own items.
- 1 : Users can see their own items.
- groupCanSeeOwn integer Optional: Whether a group can see their own items. Possible values are:
- 0 : Groups cannot see their own items.
- 1 : Groups can see their own items.
- writerCanModify integer Optional: Whether the writer can modify their own items. Possible values are:
- 0 : Writers cannot modify their own items.
- 1 : Writers can modify their own items.
- writerCanRemove integer Optional: Whether the writer can remove their own items. Possible values are:
- 0 : Writers cannot remove their own items.
- 1 : Writers can remove their own items.
- userCanTakeOwnership integer Optional: Whether a user can take ownership of an item created by anonymous. Possible values are:
- 0 : A user cannot take ownership of an item created by anonymous.
- 1 : Users can take ownership of an item created by anonymous.
- oneUserItem integer Optional: Whether a user can only have one item. Possible values are:
- 0 : A user can have multiple items.
- 1 : A user can only have one item.
- writerGroupCanModify integer Optional: Whether a writer group can modify items. Possible values are:
- 0 : A writer group cannot modify items.
- 1 : A writer group can modify items.
- writerGroupCanRemove integer Optional: Whether a writer group can remove items. Possible values are:
- 0 : A writer group cannot remove items.
- 1 : A writer group can remove items.
- allowOffline integer Optional: Whether to allow offline usage. Possible values are:
- 0 : Do not allow offline usage.
- 1 : Allow offline usage.
- useRatings integer Optional: Whether to enable ratings. Possible values are:
- 0 : Do not enable ratings.
- 1 : Enable ratings.
- showRatings integer Optional: Whether to show ratings. Possible values are:
- 0 : Do not show ratings.
- 1 : Show ratings.
- ratingOptions string Optional: The rating options. Possible values are:
- 0 : 0 score
- 1 : 1 score
- 2 : 2 score
- 3 : 3 score
- 4 : 4 score
- 5 : 5 score
- useComments integer Optional: Whether to allow comments. Possible values are:
- 0 : Do not allow comments.
- 1 : Allow comments.
- showComments integer Optional: Whether to show comments. Possible values are:
- 0 : Do not show comments.
- 1 : Show comments.
- showLastComment integer Optional: Whether to show the last comment. Possible values are:
- 0 : Do not show the last comment.
- 1 : Show the last comment.
- saveAndComment integer Optional: Whether to save and comment. Possible values are:
- 0 : Do not save and comment.
- 1 : Save and comment.
- useAttachments integer Optional: Whether to allow attachments. Possible values are:
- 0 : Do not allow attachments.
- 1 : Allow attachments.
- showAttachments integer Optional: Whether to show attachments. Possible values are:
- 0 : Do not show attachments.
- 1 : Show attachments.
- orderAttachments string Optional: The order of attachments. Possible values are:
- filename : Filename
- created : Creation date
- filesize : File size
- hits : Hits
- desc : Description
- start integer Optional: The start date of the tracker
- end integer Optional: The end date of the tracker
- autoCreateGroup integer Optional: Whether to automatically create group. Possible values are:
- 0 : Do not automatically create group.
- 1 : Automatically create group.
- autoCreateGroupInc string Optional: The groups to include when automatically creating a group.
- autoAssignCreatorGroup integer Optional: Whether to automatically assign the creator to the default group. Possible values are:
- 0 : Do not automatically assign the creator to the default group.
- 1 : Automatically assign the creator to the default group.
- autoAssignGroupItem integer Optional: Whether to automatically assign a group to an item. Possible values are:
- 0 : Do not automatically assign a group to an item.
- 1 : Automatically assign a group to an item.
- autoCopyGroup integer Optional: Whether to automatically copy the group. Possible values are:
- 0 : Do not automatically copy the group.
- 1 : Automatically copy the group.
- viewItemPretty string Optional: The view item pretty
- editItemPretty string Optional: The edit item pretty
- autoCreateCategories integer Optional: Whether to automatically create categories. Possible values are:
- 0 : Do not automatically create categories.
- 1 : Automatically create categories.
- publishRSS integer Optional: Whether to publish RSS. Possible values are:
- 0 : Do not publish RSS.
- 1 : Publish RSS.
- sectionFormat string Optional: The section format. Possible values are:
- flat : Flat
- tab : Tabs
- adminOnlyViewEditItem integer Optional: Whether only admin can view/edit item. Possible values are:
- 0 : All users can view/edit item.
- 1 : Only admin can view/edit item.
- logo string Optional: The logo of the tracker
- useFormClasses integer Optional: Whether to use form classes. Possible values are:
- 0 : Do not use form classes.
- 1 : Use form classes.
- formClasses string Optional: Sets classes for form to be used in Tracker Plugin (e.g., col-md-9).
- tabularSync string Optional: Comma-separated list of import-export formats to synchronize the tracker data with.
- tabularSyncModifiedField integer Optional: Choose one of the tracker fields if remote items update its value every time a change happens. This will ensure only updated items get synchronized when importing from remote source.
- tabularSyncLastImport integer Optional: This tracks the last date/time when this tracker was synchronized with remote source. Subsequent import-export imports will only fetch content newer than this date. Reset to something in the past if you want to re-import.
- tabularSyncLastImportSkipUpdate string Optional: By default, last import time gets reset every time an import happens. Check this option if you want the last import time to be static and kept what is entered above. Possible values:
- y : skip resetting the last import time
- n : don't skip resetting the last import time
Create a new field within the specified tracker.
Create a new field within the specified tracker.
https://example.com/api/trackers/{trackerId}/fields
curl --request POST \ --url "https://example.com/api/trackers/16/fields" \ --header "accept: application/json" \ --header "Authorization: Bearer <API_TOKEN>" \ --header "Content-Type: application/x-www-form-urlencoded" \ --data-urlencode "name=Title" \ --data-urlencode "permName=trackertestTitle" \ --data-urlencode "description=Title Description" \ --data-urlencode "description_parse=0" \ --data-urlencode "type=t" \ --data-urlencode "adminOnly=false"
<?php $url = 'https://example.com/api/trackers/16/fields'; $data = [ 'name' => 'Title', 'permName' => 'trackertestTitle', 'description' => 'Title Description', 'description_parse' => 0, 'type' => 't', 'adminOnly' => 'false' ]; $headers = [ 'Accept: application/json', 'Authorization: Bearer <API_TOKEN>', 'Content-Type: application/x-www-form-urlencoded' ]; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); $response = curl_exec($ch); $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if ($http_code === 200) { $data = json_decode($response, true); print_r($data); } else { echo 'Error: HTTP status code ' . $http_code; } curl_close($ch); ?>
const formData = new URLSearchParams({ name: 'Title', permName: 'trackertestTitle', description: 'Title Description', description_parse: '0', type: 't', adminOnly: 'false' }); fetch('https://example.com/api/trackers/16/fields', { method: 'POST', headers: { 'Accept': 'application/json', 'Authorization': 'Bearer <API_TOKEN>', 'Content-Type': 'application/x-www-form-urlencoded' }, body: formData.toString() }) .then(res => { if (!res.ok) throw new Error("HTTP " + res.status); return res.json(); }) .then(data => { console.log(data); }) .catch(err => { console.log('Fetch error: ' + err.message); });
{ "title": "Add Field", "trackerId": 16, "fieldId": 99, "name": "Title", "permName": "trackertestTitle", "type": "t", "types": {}, "description": "Title Description", "descriptionIsParsed": 0, "modal": null, "fieldPrefix": "" }
Parameters
- trackerId integer *: The ID of the tracker where the field will be created.
Request body
- name string *: The name of the field
- permName string *: The permanent name of the field
- description string Optional: The description of the field
- description_parse integer Optional: Whether to parse the description. Possible values are:
- 0 : Do not parse the description
- 1 : Parse the description
- type string *: The type of the field. Possible values are:
- articles : Articles
- q : Auto-Increment
- e : Categorize tracker item
- c : Checkbox
- C : Computed
- y : Country Selector
- b : Currency
- f : Date and Time
- j : Date and Time (Date Picker)
- d : Dropdown
- D : Dropdown selector with "Other" field
- DUR : Duration
- w : Dynamic Items List
- m : Email
- EF : Email Folder
- FG : Files
- g : Group Selector
- h : Heading
- icon : Icon
- r : Item Link
- l : Items List
- kaltura : Kaltura Video
- LANG : Language
- G : Location
- M : Multiselect
- n : Numeric
- k : Page Selector
- R : Radio Buttons
- STARS : Rating
- REL : Relations
- S : Static Text
- F : Tags
- a : Text Area
- t : Text Field
- L : URL
- u : User Selector
- wiki : Wiki Page
- adminOnly boolean Optional : Whether the field is only visible to administrators. Possible values are:
- true : The field is only visible to administrators
- false : The field is visible to all users
Update a tracker.
Update an existing tracker with the provided configuration options.
https://example.com/api/trackers/{trackerId}
curl --request POST \ --url "https://example.com/api/trackers/16" \ --header "accept: application/json" \ --header "Authorization: Bearer <API_TOKEN>" \ --header "Content-Type: application/x-www-form-urlencoded" \ --data-urlencode "name=TrackerTestUpdated" \ --data-urlencode "description=TrackerTestUpdated Description"
<?php $url = 'https://example.com/api/trackers/16'; $data = [ 'name' => 'TrackerTestUpdated', 'description' => 'TrackerTestUpdated Description' ]; $headers = [ 'Accept: application/json', 'Authorization: Bearer <API_TOKEN>', 'Content-Type: application/x-www-form-urlencoded' ]; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); $response = curl_exec($ch); $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if ($http_code === 200) { $data = json_decode($response, true); print_r($data); } else { echo 'Error: HTTP status code ' . $http_code; } curl_close($ch); ?>
const formData = new URLSearchParams({ name: 'TrackerTestUpdated', description: 'TrackerTestUpdated Description' }); fetch('https://example.com/api/trackers/16', { method: 'POST', headers: { 'Accept': 'application/json', 'Authorization': 'Bearer <API_TOKEN>', 'Content-Type': 'application/x-www-form-urlencoded' }, body: formData.toString() }) .then(res => { if (!res.ok) throw new Error("HTTP " + res.status); return res.json(); }) .then(data => { console.log(data); }) .catch(err => { console.log('Fetch error: ' + err.message); });
{ "accordion_pos": 1, "title": "Edit TrackerTestUpdated", "trackerId": 16, "info": { "adminOnlyViewEditItem": "n", "allowChooseFieldsToDisplay": "n", "allowInlineEditing": "n", "allowOffline": "n", "altClosedStatus": "", "altOpenStatus": "", "altPendingStatus": "", "autoAssignCreatorGroup": "n", "autoAssignCreatorGroupDefault": "n", "autoAssignGroupItem": "n", "autoCopyGroup": "n", "autoCreateCategories": "n", "autoCreateGroup": "n", "autoCreateGroupInc": "", "defaultOrderDir": "asc", "defaultOrderKey": "-1", "defaultStatus": "", "doNotShowEmptyField": "n", "editItemPretty": "", "end": "0", "fieldPrefix": "", "formClasses": "", "groupCanSeeOwn": "n", "logo": "", "modItemStatus": "", "newItemStatus": "o", "notifyOn": "both", "oneUserItem": "n", "orderAttachments": "", "outboundEmail": "", "permName": "", "publishRSS": "n", "ratingOptions": "", "relationshipBehaviour": "", "saveAndComment": "n", "sectionFormat": "flat", "showAttachments": "n", "showComments": "n", "showCreated": "n", "showCreatedBy": "n", "showCreatedFormat": "", "showCreatedView": "n", "showLastComment": "n", "showLastModif": "n", "showLastModifBy": "n", "showLastModifFormat": "", "showLastModifView": "n", "showPopup": "", "showRatings": "n", "showStatus": "n", "showStatusAdminOnly": "n", "simpleEmail": "n", "start": "0", "tabularSync": "", "tabularSyncLastImport": "0", "tabularSyncLastImportSkipUpdate": "n", "tabularSyncModifiedField": "0", "useAttachments": "n", "useComments": "n", "useFormClasses": "n", "useRatings": "n", "userCanSeeOwn": "n", "userCanTakeOwnership": "n", "viewItemPretty": "", "writerCanModify": "n", "writerCanRemove": "n", "writerGroupCanModify": "n", "writerGroupCanRemove": "n", "trackerId": 16, "name": "TrackerTestUpdated", "description": "TrackerTestUpdated Description ", "descriptionIsParsed": "n", "created": 1761481261, "lastModif": 1761490898, "items": 0 }, "statusTypes": { "o": { "name": "open", "label": "Open", "perm": "tiki_p_view_trackers", "image": "img/icons/status_open.gif", "iconname": "status-open" }, "p": { "name": "pending", "label": "Pending", "perm": "tiki_p_view_trackers_pending", "image": "img/icons/status_pending.gif", "iconname": "status-pending" }, "c": { "name": "closed", "label": "Closed", "perm": "tiki_p_view_trackers_closed", "image": "img/icons/status_closed.gif", "iconname": "status-closed" } }, "statusList": [], "sortFields": { "99": "Title", "-1": "Last Modification", "-2": "Creation Date", "-3": "Item ID" }, "attachmentAttributes": { "filename": { "label": "Filename", "selected": false }, "created": { "label": "Creation date", "selected": false }, "hits": { "label": "Views", "selected": false }, "comment": { "label": "Comment", "selected": false }, "filesize": { "label": "File size", "selected": false }, "version": { "label": "Version", "selected": false }, "filetype": { "label": "File type", "selected": false }, "longdesc": { "label": "Long description", "selected": false }, "user": { "label": "User", "selected": false } }, "startDate": null, "startTime": null, "endDate": null, "endTime": null, "groupList": [ "Admins", "Anonymous", "Registered", "sysAdmins", "Translators" ], "groupforAlert": false, "showeachuser": false, "sectionFormats": { "flat": "Flat", "tab": "Tabs", "config": "Configured" }, "remoteTabulars": [], "relationshipBehaviourList": [ "GENERIC_DIRECTIONAL", "GENERIC_NON_DIRECTIONAL", "GENERIC_ONE_TO_MANY" ], "displayTimezone": "Africa/Nairobi" }
Parameters
- trackerId integer *: The ID of the tracker to be updated.
Request body
- name string *: The name of the tracker
- description string Optional: The description of the tracker
- descriptionIsParsed integer Optional: Whether the description is parsed. Possible values are:
- 0 : Not parsed
- 1 : Parsed
- fieldPrefix string Optional: Short string prepended by default to all fields in the tracker.
- permName string Optional: The permanent name of the tracker
- showStatus integer Optional: Whether to show the status of the tracker. Possible values are:
- 0 : Do not show
- 1 : Show
- showStatusAdminOnly integer Optional: Whether to show the status only to the admin. Possible values are:
- 0 : Show the status to all users.
- 1 : Show the status only to the admin.
- showCreated integer Optional: Whether to show the created date when listing items. Possible values are:
- 0 : Do not show the created date.
- 1 : Show the created date.
- showCreatedView integer Optional: Whether to show the created date when viewing items. Possible values are:
- 0 : Do not show the created date.
- 1 : Show the created date.
- showCreatedBy integer Optional: Whether to show the creator when listing items. Possible values are:
- 0 : Do not show the creator.
- 1 : Show the creator.
- showCreatedFormat string Optional: The format of the created date. For more info about Tiki date and time format please check: https://doc.tiki.org/Date-and-Time-Features
- showLastModif integer Optional: Whether to show the last modification date when listing items. Possible values are:
- 0 : Do not show the last modification date.
- 1 : Show the last modification date.
- showLastModifView integer Optional: Whether to show the last modification date when viewing items. Possible values are:
- 0 : Do not show the last modification date.
- 1 : Show the last modification date.
- showLastModifBy integer Optional: Whether to show the last modifier when listing items. Possible values are:
- 0 : Do not show the last modifier.
- 1 : Show the last modifier.
- showLastModifFormat string Optional: The format of the last modification date. For more info about Tiki date and time format please check: https://doc.tiki.org/Date-and-Time-Features
- defaultOrderKey integer Optional: The default sort order when listing items. Possible values are:
- -1 : Last Modification
- -2 : Creation Date
- -3 : Item ID
- defaultOrderDir string Optional: The default sort direction when listing items. Possible values are:
- asc : Ascending
- desc : Descending
- doNotShowEmptyField integer Optional: Whether to show empty fields when listing items. Possible values are:
- 0 : Show empty fields.
- 1 : Do not show empty fields.
- showPopup integer Optional: Whether to show a popup with item details when hovering over an item link. Possible values are:
- 0 : Do not show popup.
- 1 : Show popup.
- defaultStatus String[] Optional: The default status of the tracker. Possible values are:
- o : open
- p : pending
- c : closed
- newItemStatus string[] Optional: The status assigned to new items. Possible values are:
- o : open
- p : pending
- c : closed
- altOpenStatus string Optional: The alternative open status of the tracker.
- altPendingStatus string Optional: The alternative pending status of the tracker.
- altClosedStatus string Optional: The alternative closed status of the tracker.
- modItemStatus string Optional: The status of a modified item. Possible values are:
- o : open
- p : pending
- c : closed
- outboundEmail string Optional: The outbound email address used for notifications. You can add several email addresses by separating them with commas.
- simpleEmail integer Optional: Whether to send simple email notifications. Possible values are:
- 0 : Do not send simple email notifications.
- 1 : Send simple email notifications.
- userCanSeeOwn integer Optional: Whether a user can see their own items. Possible values are:
- 0 : Users cannot see their own items.
- 1 : Users can see their own items.
- groupCanSeeOwn integer Optional: Whether a group can see their own items. Possible values are:
- 0 : Groups cannot see their own items.
- 1 : Groups can see their own items.
- writerCanModify integer Optional: Whether the writer can modify their own items. Possible values are:
- 0 : Writers cannot modify their own items.
- 1 : Writers can modify their own items.
- writerCanRemove integer Optional: Whether the writer can remove their own items. Possible values are:
- 0 : Writers cannot remove their own items.
- 1 : Writers can remove their own items.
- userCanTakeOwnership integer Optional: Whether a user can take ownership of an item created by anonymous. Possible values are:
- 0 : A user cannot take ownership of an item created by anonymous.
- 1 : Users can take ownership of an item created by anonymous.
- oneUserItem integer Optional: Whether a user can only have one item. Possible values are:
- 0 : A user can have multiple items.
- 1 : A user can only have one item.
- writerGroupCanModify integer Optional: Whether a writer group can modify items. Possible values are:
- 0 : A writer group cannot modify items.
- 1 : A writer group can modify items.
- writerGroupCanRemove integer Optional: Whether a writer group can remove items. Possible values are:
- 0 : A writer group cannot remove items.
- 1 : A writer group can remove items.
- allowOffline integer Optional: Whether to allow offline usage. Possible values are:
- 0 : Do not allow offline usage.
- 1 : Allow offline usage.
- useRatings integer Optional: Whether to enable ratings. Possible values are:
- 0 : Do not enable ratings.
- 1 : Enable ratings.
- showRatings integer Optional: Whether to show ratings. Possible values are:
- 0 : Do not show ratings.
- 1 : Show ratings.
- ratingOptions string Optional: The rating options. Possible values are:
- 0 : 0 score
- 1 : 1 score
- 2 : 2 score
- 3 : 3 score
- 4 : 4 score
- 5 : 5 score
- useComments integer Optional: Whether to allow comments. Possible values are:
- 0 : Do not allow comments.
- 1 : Allow comments.
- showComments integer Optional: Whether to show comments. Possible values are:
- 0 : Do not show comments.
- 1 : Show comments.
- showLastComment integer Optional: Whether to show the last comment. Possible values are:
- 0 : Do not show the last comment.
- 1 : Show the last comment.
- saveAndComment integer Optional: Whether to save and comment. Possible values are:
- 0 : Do not save and comment.
- 1 : Save and comment.
- useAttachments integer Optional: Whether to allow attachments. Possible values are:
- 0 : Do not allow attachments.
- 1 : Allow attachments.
- showAttachments integer Optional: Whether to show attachments. Possible values are:
- 0 : Do not show attachments.
- 1 : Show attachments.
- orderAttachments string Optional: The order of attachments. Possible values are:
- filename : Filename
- created : Creation date
- filesize : File size
- hits : Hits
- desc : Description
- start integer Optional: The start date of the tracker
- end integer Optional: The end date of the tracker
- autoCreateGroup integer Optional: Whether to automatically create group. Possible values are:
- 0 : Do not automatically create group.
- 1 : Automatically create group.
- autoCreateGroupInc string Optional: The groups to include when automatically creating a group.
- autoAssignCreatorGroup integer Optional: Whether to automatically assign the creator to the default group. Possible values are:
- 0 : Do not automatically assign the creator to the default group.
- 1 : Automatically assign the creator to the default group.
- autoAssignGroupItem integer Optional: Whether to automatically assign a group to an item. Possible values are:
- 0 : Do not automatically assign a group to an item.
- 1 : Automatically assign a group to an item.
- autoCopyGroup integer Optional: Whether to automatically copy the group. Possible values are:
- 0 : Do not automatically copy the group.
- 1 : Automatically copy the group.
- viewItemPretty string Optional: The view item pretty
- editItemPretty string Optional: The edit item pretty
- autoCreateCategories integer Optional: Whether to automatically create categories. Possible values are:
- 0 : Do not automatically create categories.
- 1 : Automatically create categories.
- publishRSS integer Optional: Whether to publish RSS. Possible values are:
- 0 : Do not publish RSS.
- 1 : Publish RSS.
- sectionFormat string Optional: The section format. Possible values are:
- flat : Flat
- tab : Tabs
- adminOnlyViewEditItem integer Optional: Whether only admin can view/edit item. Possible values are:
- 0 : All users can view/edit item.
- 1 : Only admin can view/edit item.
- logo string Optional: The logo of the tracker
- useFormClasses integer Optional: Whether to use form classes. Possible values are:
- 0 : Do not use form classes.
- 1 : Use form classes.
- formClasses string Optional: Sets classes for form to be used in Tracker Plugin (e.g., col-md-9).
- tabularSync string Optional: Comma-separated list of import-export formats to synchronize the tracker data with.
- tabularSyncModifiedField integer Optional: Choose one of the tracker fields if remote items update its value every time a change happens. This will ensure only updated items get synchronized when importing from remote source.
- tabularSyncLastImport integer Optional: This tracks the last date/time when this tracker was synchronized with remote source. Subsequent import-export imports will only fetch content newer than this date. Reset to something in the past if you want to re-import.
- tabularSyncLastImportSkipUpdate string Optional: By default, last import time gets reset every time an import happens. Check this option if you want the last import time to be static and kept what is entered above. Possible values:
- y : skip resetting the last import time
- n : don't skip resetting the last import time
Create a tracker item.
Create a new item in the specified tracker with the provided field values.
https://example.com/api/trackers/{trackerId}/items
curl --request POST \ --url "https://example.com/api/trackers/16/items" \ --header "accept: application/json" \ --header "Authorization: Bearer <API_TOKEN>" \ --header "Content-Type: application/x-www-form-urlencoded" \ --data-urlencode "fields[trackertestTitle]=Title One"
<?php $url = 'https://example.com/api/trackers/16/items'; $data = [ 'fields[trackertestTitle]' => 'Title One' ]; $headers = [ 'Accept: application/json', 'Authorization: Bearer <API_TOKEN>', 'Content-Type: application/x-www-form-urlencoded' ]; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); $response = curl_exec($ch); $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if ($http_code === 200) { $data = json_decode($response, true); print_r($data); } else { echo 'Error: HTTP status code ' . $http_code; } curl_close($ch); ?>
const formData = new URLSearchParams({ 'fields[trackertestTitle]': 'Title One' }); fetch('https://example.com/api/trackers/16/items', { method: 'POST', headers: { 'Accept': 'application/json', 'Authorization': 'Bearer <API_TOKEN>', 'Content-Type': 'application/x-www-form-urlencoded' }, body: formData.toString() }) .then(res => { if (!res.ok) throw new Error("HTTP " + res.status); return res.json(); }) .then(data => { console.log(data); }) .catch(err => { console.log('Fetch error: ' + err.message); });
{ "itemId":1576, "status":"o", "fields": { "trackertestTitle":"Title One" }, "itemTitle":"Title One", "processedFields": { "trackertestTitle":"Title One" }, "nextTicket":"cRjNNrBioLzcYxqwmrU-ywGuq-VDwyTHPjnqQsPDpLM" }
Parameters
- trackerId integer *: The tracker ID in which to create the new item.
Request body
Each field value should be provided using the format fields[permanentName]=value (permanent names as keys or ins_FID keys can be used). eg. fields[trackertestTitle]=My Item Title
- fields[fieldPermanentName1] string *: Value for the field with permanent name fieldPermanentName1
- fields[fieldPermanentName2] string *: Value for the field with permanent name fieldPermanentName2
Retrieve items from a specified tracker
Retrieve items from a specified tracker, including each item’s ID, status, and field data.
https://example.com/api/trackers/{trackerId}
curl --request GET \ --url "https://example.com/api/trackers/16" \ --header "accept: application/json" \ --header "Authorization: Bearer <API_TOKEN>" \ --data-urlencode "maxRecords=5" \ --data-urlencode "status=o"
<?php $url = 'https://example.com/api/trackers/16'; $params = [ 'maxRecords' => '5', 'status' => 'o' ]; $url .= '?' . http_build_query($params); $headers = [ 'Accept: application/json', 'Authorization: Bearer <API_TOKEN>' ]; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); $response = curl_exec($ch); if (curl_errno($ch)) { echo 'Error: ' . curl_error($ch); } else { $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if ($http_code === 200) { $data = json_decode($response, true); print_r($data); } else { echo 'Error: HTTP status code ' . $http_code; } } curl_close($ch); ?>
const params = new URLSearchParams({ maxRecords: '5', status: 'o' }); fetch('https://example.com/api/trackers/16' + '?' + params.toString(), { method: 'GET', headers: { 'Accept': 'application/json', 'Authorization': 'Bearer <API_TOKEN>' } }) .then(res => { if (!res.ok) throw new Error('HTTP ' + res.status); return res.json(); }) .then(data => { console.log(data); }) .catch(err => { console.error('Fetch error:', err.message); });
{ "trackerId": 16, "offset": -1, "maxRecords": 5, "result": [ { "itemId": 1576, "status": "o", "fields": { "trackertestTitle": "Title One" } } ] }
Parameters
- trackerId integer *: The ID of the tracker from which to retrieve items.
- offset integer Optional: The offset for pagination. Default is -1 (no offset).
- maxRecords integer Optional: The maximum number of records to return.
- modifiedSince string Optional: Return only records newer than the specified timestamp.
- status string Optional: Return only records with specific status. Possible values are:
- o : open
- p : pending
- c : closed
- format string Optional: Specify raw to return raw item values without any field processing.
Duplicate an existing tracker.
Duplicate an existing tracker.
https://example.com/api/trackers/{trackerId}/duplicate
curl --request POST \ --url "https://example.com/api/trackers/16/duplicate" \ --header "accept: application/json" \ --header "Authorization: Bearer <API_TOKEN>" \ --header "Content-Type: application/x-www-form-urlencoded" \ --data-urlencode "name=TestTrackerDuplicated" \ --data-urlencode "dupPerms=testtrackerduplicated"
<?php $url = 'https://example.com/api/trackers/16/duplicate'; $data = [ 'name' => 'TestTrackerDuplicated', 'dupPerms' => 'testtrackerduplicated' ]; $headers = [ 'Accept: application/json', 'Authorization: Bearer <API_TOKEN>', 'Content-Type: application/x-www-form-urlencoded' ]; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); $response = curl_exec($ch); if (curl_errno($ch)) { echo 'Error: ' . curl_error($ch); } else { $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if ($http_code === 200) { $data = json_decode($response, true); print_r($data); } else { echo 'Error: HTTP status code ' . $http_code; } } curl_close($ch); ?>
const params = new URLSearchParams({ name: 'TestTrackerDuplicated', dupPerms: 'testtrackerduplicated' }); fetch('https://example.com/api/trackers/16/duplicate', { method: 'POST', headers: { 'Accept': 'application/json', 'Authorization': 'Bearer <API_TOKEN>', 'Content-Type': 'application/x-www-form-urlencoded' }, body: params.toString() }) .then(res => { if (!res.ok) throw new Error('HTTP ' + res.status); return res.json(); }) .then(data => { console.log(data); }) .catch(err => { console.error('Fetch error:', err.message); });
{ "trackerId": "17", "name": "TestTrackerDuplicated", "message": "Tracker 16 has been successfully duplicated." }
Parameters
- trackerId integer * : The ID of the tracker to duplicate.
Request body
- name string * : The name for the duplicated tracker.
- dupCateg ''string Optional The category of the new duplicated tracker
- dupPerms ''string Optional : The permanent name of the new duplicated tracker
Remove all items from a tracker.
Remove all items from a tracker.
https://example.com/api/trackers/{trackerId}/clear
curl --request POST \ --url "https://example.com/api/trackers/17/clear" \ --header "accept: application/json" \ --header "Authorization: Bearer <API_TOKEN>"
<?php $url = 'https://example.com/api/trackers/17/clear'; $headers = [ 'Accept: application/json', 'Authorization: Bearer <API_TOKEN>' ]; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, ''); // No body curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); $response = curl_exec($ch); if (curl_errno($ch)) { echo 'Error: ' . curl_error($ch); } else { $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if ($http_code === 200) { $data = json_decode($response, true); print_r($data); } else { echo 'Error: HTTP status code ' . $http_code; } } curl_close($ch); ?>
fetch('https://example.com/api/trackers/17/clear', { method: 'POST', headers: { 'Accept': 'application/json', 'Authorization': 'Bearer <API_TOKEN>' } }) .then(res => { if (!res.ok) throw new Error('HTTP ' + res.status); return res.json(); }) .then(data => { console.log(data); }) .catch(err => { console.error('Fetch error:', err.message); });
{ "trackerId": 17, "name": "TestTrackerDuplicated", "message": "Tracker 17 has been successfully cleared." }
Parameters
- trackerId integer * : The ID of the tracker whose items should be removed.
Dump all tracker items in a CSV format.
Dump all tracker items in a CSV format.
https://example.com/api/trackers/{trackerId}/dump
curl --request GET \ --url "https://example.com/api/trackers/16/dump" \ --header "accept: text/csv" \ --header "Authorization: Bearer <API_TOKEN>"
<?php $url = 'https://example.com/api/trackers/16/dump'; $headers = [ 'Accept: text/csv', 'Authorization: Bearer <API_TOKEN>' ]; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); $response = curl_exec($ch); if (curl_errno($ch)) { echo 'Error: ' . curl_error($ch); } else { $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if ($http_code === 200) { // Save response as CSV file file_put_contents('tracker_dump.csv', $response); echo "CSV file saved as tracker_dump.csv\n"; } else { echo 'Error: HTTP status code ' . $http_code; } } curl_close($ch); ?>
fetch('https://example.com/api/trackers/16/dump', { method: 'GET', headers: { 'Accept': 'text/csv', 'Authorization': 'Bearer <API_TOKEN>' } }) .then(res => { if (!res.ok) throw new Error('HTTP ' + res.status); return res.blob(); // Receive as CSV blob }) .then(blob => { // Save CSV file locally const file = new File([blob], 'tracker_dump.csv', { type: 'text/csv' }); console.log('CSV file ready:', file); }) .catch(err => { console.error('Fetch error:', err.message); });
itemId,status,created,lastModif,"Title -- 99", 1576,o,1761493369,1761493369,"Title One", 1578,o,1761502423,1761502423,"Title Two",
Parameters
- trackerId integer * : The ID of the tracker to dump.
Export the tracker YAML profile.
Export the tracker YAML profile.
https://example.com/api/trackers/{trackerId}/export
curl --request GET \ --url "https://example.com/api/trackers/16/export" \ --header "accept: application/json" \ --header "Authorization: Bearer <API_TOKEN>"
<?php $url = 'https://example.com/api/trackers/16/export'; $headers = [ 'Accept: application/json', 'Authorization: Bearer <API_TOKEN>' ]; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); $response = curl_exec($ch); if (curl_errno($ch)) { echo 'Error: ' . curl_error($ch); } else { $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if ($http_code === 200) { $data = json_decode($response, true); print_r($data); } else { echo 'Error: HTTP status code ' . $http_code; } } curl_close($ch); ?>
fetch('https://example.com/api/trackers/16/export', { method: 'GET', headers: { 'Accept': 'application/json', 'Authorization': 'Bearer <API_TOKEN>' } }) .then(res => { if (!res.ok) throw new Error('HTTP ' + res.status); return res.json(); }) .then(data => { console.log('YAML Export:', data); }) .catch(err => { console.error('Fetch error:', err.message); });
{ "trackerId": 16, "yaml": "<div class=\"codecaption\">YAML</div><div class=\"codelisting_container\"><div class=\"icon_copy_code far fa-clipboard\" tabindex=\"0\" data-clipboard-target=\"#codebox1\" ><span class=\"copy_code_tooltiptext\">Copy to clipboard</span></div><pre class=\"codelisting\" data-theme=\"off\" data-syntax=\"yaml\" data-wrap=\"1\" dir=\"ltr\" style=\"white-space:pre-wrap; overflow-wrap: break-word; word-wrap: break-word;\" id=\"codebox1\" ><div class=\"code\">permissions: { }\npreferences: { }\nobjects:\n -\n type: tracker\n ref: trackertestupdated\n data:\n name: TrackerTestUpdated\n description: 'TrackerTestUpdated Description '\n alt_closed_status: ''\n alt_open_status: ''\n alt_pending_status: ''\n list_default_status: ''\n restrict_end: '0'\n form_classes: ''\n restrict_start: '0'\n -\n type: tracker_field\n ref: trackertestupdated_trackertestTitle\n data:\n name: Title\n permname: trackertestTitle\n tracker: '$profileobject:trackertestupdated$'\n options:\n samerow: 1\n type: text_field\n order: 10\n description: 'Title Description'\n visby: { }\n editby: { }\n flags:\n - link\n - list\n - public\n - mandatory\n -\n type: tracker_option\n ref: trackertestupdated_sort_default_field\n data:\n tracker: '$profileobject:trackertestupdated$'\n name: sort_default_field\n value: modification</div></pre></div>" }
Parameters
- trackerId integer * : The ID of the tracker to export.
Retrieve all fields of a tracker.
Retrieve all fields of a tracker.
https://example.com/api/trackers/{trackerId}/fields
curl --request GET \ --url "https://example.com/api/trackers/16/fields" \ --header "accept: application/json" \ --header "Authorization: Bearer <API_TOKEN>"
<?php $url = 'https://example.com/api/trackers/16/fields'; $headers = [ 'Accept: application/json', 'Authorization: Bearer <API_TOKEN>' ]; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); $response = curl_exec($ch); if (curl_errno($ch)) { echo 'Error: ' . curl_error($ch); } else { $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if ($http_code === 200) { $data = json_decode($response, true); print_r($data); } else { echo 'Error: HTTP status code ' . $http_code; } } curl_close($ch); ?>
fetch('https://example.com/api/trackers/16/fields', { method: 'GET', headers: { 'Accept': 'application/json', 'Authorization': 'Bearer <API_TOKEN>' } }) .then(res => { if (!res.ok) throw new Error('HTTP ' + res.status); return res.json(); }) .then(data => { console.log('Tracker Fields:', data); }) .catch(err => { console.error('Fetch error:', err.message); });
{ "fields": [ { "fieldId": 99, "trackerId": 16, "name": "Title", "permName": "trackertestTitle", "options": "", "type": "t", "isMain": "y", "isTblVisible": "y", "position": 10, "isSearchable": "n", "isPublic": "y", "isHidden": "n", "isMandatory": "y", "description": "Title Description", "isMultilingual": "", "itemChoices": [], "errorMsg": "", "visibleBy": [], "editableBy": [], "descriptionIsParsed": "n", "validation": "", "validationParam": "", "validationMessage": "", "rules": null, "encryptionKeyId": null, "excludeFromNotification": "", "visibleInViewMode": "y", "visibleInEditMode": "y", "visibleInHistoryMode": "y", "options_array": [ 1, false, false, false, false, false, false ], "options_map": { "samerow": 1, "size": false, "prepend": false, "append": false, "max": false, "autocomplete": false, "exact": false, "labelasplaceholder": 0, "is_password": 0 } } ], "types": {}, "typesDisabled": {}, "duplicates": [] }
Parameters
- trackerId integer * : The ID of the tracker to retrieve fields from.