{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"45006a59-750e-4049-ab9d-b85302f97e2e","name":"API ITree","description":"REST API ITree v1.0. Використовуйте цей API для. Ця сторінка документує ресурси REST та приклади запитів і відповідей.\n\n- Макет: [https://www.figma.com/file/I9iuGYsRlghxjSu3Nz61UA/🌳Mobile-iTree?node-id=0:1](https://www.figma.com/file/I9iuGYsRlghxjSu3Nz61UA/🌳Mobile-iTree?node-id=0:1).\n- Web portal: [https://green_poltava.softpro.ua/](https://green_poltava.softpro.ua/)\n- Файл Postman: [Переглянути](https://cdn.softpro.ua/itree/demo.postman.json)\n    \n\n# Authentication and authorization\n\nМи маємо 4 варіанти Автентифікації та авторизації:\n\n- `No Auth` - без авторизації\n- `OAuth 2.0` - протокол авторизації\n- `API Key` - авторизація через ключ\n- `Bearer Token` - авторизація через токен\n    \n\n### No Auth\n\nДля інтеграцій, якім не потрібна авторизація користувача, використовуйте `No Auth.`\n\nURI для викликів REST API програми `No Auth` мають таку структуру:\n\nНаприклад,\n\n### OAuth 2.0\n\nДля інтеграцій, використовуйте дозволи коду авторизації `OAuth 2.0` (3LO) для безпеки (області 3LO відображаються як для операцій, _необхідні області OAuth_ ).\n\nURI для викликів REST API програми `OAuth 2.0` (3LO) мають таку структуру:\n\nНаприклад,\n\n### API Key\n\nДля інтеграцій, використовуйте ключ `API Key`. Це ключ який використовується безпосередньо в URI для викликів REST API і мають таку структуру:\n\nНаприклад,\n\n### Bearer Token\n\nДля інтеграцій, використовуйте `Bearer Token`. Аналогічно до `API Key`\n\nЦе токен який використовується безпосередньо в URI для викликів REST API і мають таку структуру:\n\nНаприклад,\n\n# Permissions\n\n### Дозволи на роботу\n\nДля більшості операцій у цьому API потрібні дозволи. Користувач, який викликає, повинен мати необхідні дозволи для виконання операції, щоб її використовувати. Зауважте, що для програм користувач програми повинен мати необхідні дозволи для операції, а програма повинна мати області, які дозволяють операцію.\n\nМи маємо 2 типи дозволів:\n\n- `admin` - адміністратор, має більше дозволів порівняно з `user` , може редагувати об'єкти.\n- `user` - користувач, має доступ до всього, окрім редагування о'бєктів\n    \n\n# Anonymous access\n\nДеякі операції забезпечують підтримку анонімного доступу. Однак анонімний доступ доступний, лише якщо дозвіл, необхідний для доступу до об’єкта або записів, повернутих операцією, надано групі _`Public`_ .\n\nЯкщо операція викликається анонімно, а анонімний доступ недоступний, операція поверне помилку. Зауважте, що не всі операції, які відповідають об’єктам, яким можна надати публічний доступ, забезпечують анонімний доступ.\n\n# Expansion, filters, and ordering\n\n### Expansion\n\nITree REST API використовує розширення ресурсу, що означає, що деякі частини ресурсу не повертаються, якщо не зазначено в запиті. Це спрощує відповіді та мінімізує мережевий трафік.\n\nЩоб розгорнути частину ресурсу в запиті, скористайтеся параметром запиту expand і вкажіть об’єкт(и), які потрібно розгорнути. Якщо вам потрібно розгорнути вкладені об’єкти, використовуйте `.`крапкову нотацію. Якщо вам потрібно розгорнути кілька об’єктів, використовуйте список, розділений комами.\n\nНаприклад,\n\n### Filters\n\nITree REST API використовує 9 типів фільтрів для пошуку інформації і фільтрування інформації.\n\n**Перелік фільтрів:**\n\n- `Text` - Просто ввід тексту.\n- `Autocomplete` - Вибір декількох варіантів. При 8 і більше варіантах стає доступним рядок пошуку за значеннями.\n- `Check` - Вибір значень без випадаючого списку. Зазвичай використовується для невеликої кількості значень (до 7).\n- `Date` - Вибір проміжку дат. Є зручна панель для вибору екстра дат.\n- `Radio` - Вибір зі списку лише одного значення. Зазвичай використовується для невеликої кількості значень (до 7).\n- `Range` - Використовується для вказання проміжку ціни або будь-якого іншого числового значення. Працює як для цілих, так і для десяткових чисел.\n- `Switcher` - Вибір значення між true/false. Відповідно, діє лише для колонок boolean\n- `Tags` - Вибір значення у форматі кнопок. Зручно для поля тегів. Підтримують іконки та кольори з класифікатора.\n- `Tree` - Деревоподібне відображення значень.\n    \n\n### Ordering\n\nДеякі операції підтримують упорядкування елементів відповіді за полем. Перевірте документацію для операції, щоб підтвердити, чи підтримується впорядкування відповіді та які поля можна використовувати. За замовчуванням відповіді наведено в порядку зростання.\n\n- `extent` -\n- `limit` - обмежує кількість рядків\n- `filter` - робить пошук по заданому параметру в колонці\n- `search` - робить пошук по всім наявним колонках\n- `order` - упорядковує данні в колонці\n- `offset` - зсуває на вказане число данні в колонці\n    \n\n# Special headers\n\nНаступні заголовки запиту та відповіді визначають важливі метадані для ресурсів REST API ITree\n\n### Meta\n\nМи використовуємо Метадані для передачі даних колонок.\n\n``` json\n    \"rows\": [ //Рядки\n        {\n            \"id\": \"2276952665105630363\", //id\n            \"name\": \"Парк аграрного коледжу\", //Назва об'єкта набору\n            \"category\": \"Парк\", //Категорія об'єкта набору\n            \"area\": \"4.1898\", //Площа об'єкта набору\n            \"verif\": true, //Перевірка об'єкта набору\n            \"geom\": { //Геометрія\n                \"type\": \"MultiPolygon\", \n                \"coordinates\": [] \n            },\n            \"image\": \"/files/upload/2276952665105630363/2022-08-11/b5cb5f5d-2b29-4262-88f2-e0841df1db62.jpg\", //Зображення об'єкта\n            \"source\": \"site.rest_zone.table\", //Таблиця набору даних\n            \"token\": \"mZ11Rp_3s4_Z37015qaXvZ4J0E\" //Токен\n        },\n        {\n            \"id\": \"2276952665147573468\",\n            \"name\": \"Рогізна \",\n            \"category\": \"Рекреаційна зона\",\n            \"area\": \"129.7782\",\n            \"verif\": true,\n            \"geom\": {\n                \"type\": \"Polygon\",\n                \"coordinates\": []\n            },\n            \"image\": null,\n            \"userlist\": null,\n            \"source\": \"site.rest_zone.table\",\n            \"token\": \"eSATWVzy1dRf8QunV2AF5Eqt9Dw\"\n        }\n    ],\n    \"meta\": {\n        \"meta\": {\n            \"name\": \"Зони відпочинку\", //Назва\n            \"table\": \"itree.rest_zones\", //Табличка\n            \"pk\": \"rz_id\",\n            \"view\": \"site.rest_zone.table\", //Файл де використовуєця табличка\n            \"count\": 1, //Номер\n            \"tableCode\": \"2\" //Код таблички\n        },\n        \"access\": true, //Доступ\n        \"form\": \"rest_zone.form\", //Класифікатор\n        \"pt\": {},\n        \"geom\": { //Геометрія\n            \"attr\": \"geom\",\n            \"bounds\": [\n                \"34.4674\",\n                \"49.5509\",\n                \"34.6103\",\n                \"49.6403\"\n            ],\n            \"count\": \"1\",\n            \"center\": [\n                34.53886,\n                49.59559\n            ],\n            \"geometry\": [\n                \"MultiPolygon\",\n                \"Polygon\"\n            ]\n        },\n        \"columns\": [ //Колонки\n            {\n                \"name\": \"name\", //Назва колонки\n                \"type\": \"text\", //Тип інформації колонки\n                \"title\": \"Назва об'єкта\",//Назва колонки\n                \"format\": \"text\", //Формат\n                \"meta\": \"title\", //Заголовок\n                \"filterCode\": \"34\" //Код фільтра\n            }\n\n```\n\n### Основні параметри **колонки**\n\n- `ua` - Назва українською для відображення користувачам\n- `format` - тип даних. Допустимі значення: `text`, `select`, `age`, `date`, `html`, `boolean`, `geom`, badge, tags, `number`\n- `meta` - стандартизоване поле. Допустимі значення: `key`, `title`, `status`, `description`, `type`, category, `image`, `priority`, `teaser`, `start`, `end`, `deadline`, `address`\n- `hidden` - приховати колонку зі стандартного вигляду. Допустимі значення: `true`, `false`\n- `editable` - швидке редагування значення поля. Допустимі значення: `true`, `false`\n- `data` - довідник, з якого беруться значення даних по колонці. Вказується назва селекту чи класифікатора.\n- `options` - додатковий спосіб вказати значення по колонці. Вказуються у json форматі, ключі `id` та `text`\n    \n\n### Домени meta:\n\n1. `key` - Код / номер\n2. `title` - Назва\n3. `status` - Статус\n4. `description` - Повний опис\n5. `type` - Тип\n6. `category` - Категорія/Розділ\n7. `image` - Зображення\n8. `priority` - Пріоритет\n9. `teaser` - Короткий опис\n10. `start` - Дата початку\n11. `end` - Дата закінчення\n12. `deadline` - Дедлайн (очікувана дата завершення)\n13. `address` - Адреса\n    \n\n# Status codes\n\nREST API ITree використовує [стандартні коди стану HTTP](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status#server_error_responses). Основні які ми використовуємо:\n\n| Status Code | Constructor Name |\n| --- | --- |\n| 400 | Bad Request |\n| 403 | Forbidden |\n| 404 | Not Found |\n| 500 | Internal Server Error |\n\n## Отримання переліку наборів даних\n\n**API**: [https://green_poltava.softpro.ua/api-user/gis-dataset](https://green_poltava.softpro.ua/api-user/gis-dataset).\n\nТакож наявна можливість отримання деталізованої інформації про конкретний набір даних, необхідно вказати `id` набору:\n\n[https://green_poltava.softpro.ua/api-user/gis-dataset/{id}](https://green_poltava.softpro.ua/api-user/gis-dataset/{id})\n\n---\n\n## Отримання даних про набір даних\n\n**API**: [https://green_poltava.softpro.ua/api-user/gis-data/{layer_id}](https://green_poltava.softpro.ua/api-user/gis-data/{layer_id}).\n\n---\n\n## Отримання шару в форматі geojson\n\n**API**: [https://green_poltava.softpro.ua/api-user/geojson/{id}](https://green_poltava.softpro.ua/api-user/geojson/{id}).\n\n`id` - ідентифікатор набору даних\n\n---\n\n## Редагування значень об'єкта набора даних\n\nТільки для зареєстрованих користувачів у системі.\n\n**API**: [https://green_poltava.softpro.ua/api-user/gis-edit/{layer_id}/{object_id}](https://green_poltava.softpro.ua/api-user/gis-edit/{layer_id}/{object_id}).\n\nОтримання повної інформації - дописати параметр **`?full=1`**\n\nЧерез method: **`PUT`**\n\nContact Support:  \nName: API Support  \nEmail: [support@softpro.ua](mailto:support@softpro.ua)","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"17238120","team":19995182,"collectionId":"45006a59-750e-4049-ab9d-b85302f97e2e","publishedId":"VUxLvTcB","public":true,"publicUrl":"https://documenter-api.postman.tech/view/17238120/VUxLvTcB","privateUrl":"https://go.postman.co/documentation/17238120-45006a59-750e-4049-ab9d-b85302f97e2e","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"documentationLayout":"classic-double-column","customisation":{"metaTags":[{"name":"description","value":""},{"name":"title","value":""}],"appearance":{"default":"light","themes":[{"name":"dark","logo":null,"colors":{"top-bar":"212121","right-sidebar":"303030","highlight":"FF6C37"}},{"name":"light","logo":null,"colors":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"}}]}},"version":"8.11.9","publishDate":"2023-08-03T13:23:29.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{"title":"","description":""},"logos":{"logoLight":null,"logoDark":null}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/411c1ad657c2485fb6e59b09bee16549d61efd6383d28ba0d092be33073d655e","favicon":""},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://documenter.gw.postman.com/view/metadata/VUxLvTcB"}