Открытый API TARGPatrol
Интеграция TARGPatrol с другими системами позволяет существенно расширить функционал и повысить эффективность вашей организации. В этом руководстве мы расскажем, как настроить интеграцию с использованием External API TARGPatrol.
Получение API ключа
Перейдите на в веб приложение https://app.targpatrol.com/ и авторизуйтесь с помощью своей учетной записи.

Перейдите в раздел "Управление" -> "Внешний API" (данный раздел будет доступен только пользователю с ролью Владелец).
Нажмите на кнопку "Добавить токен".

Далее нажмите "Сохранить", после чего токен появится в таблице.
Далее нажмите на значок копирования токена.
Документация и тестирование API
Откройте документацию по API на https://api.targpatrol.com
Ознакомьтесь с доступными эндпоинтами и их возможностями. Например, вы можете найти эндпоинты для создания задач, управления пользователями и многое другое.
Используйте возможности для тестирования API прямо в документации, либо сторонние инструменты, например, Postman, чтобы убедиться, что ваш API ключ работает корректно.

Настройка интеграции
Пример интеграции с CRM системой
Авторизация: Используйте ваш API ключ для аутентификации запросов к TARGPatrol. Добавьте его в заголовки ваших запросов:
1Authorization: x-api-key YOUR_API_KEYСоздание задачи из CRM: Когда в вашей CRM системе создается новая сделка или заявка, вы можете автоматически создавать задачу в TARGPatrol.
Пример запроса на создание задачи:1POST 2{ 3 "assigneeIds": [ 4 "4f9e4741-3069-4a03-8386-5f3ee45791aa" 5 ], 6 "locationId": "03864752-f177-47ff-b0a1-99d75b02d954", 7 "name": "task 1", 8 "description": null, 9 "recurrence": { 10 "rule": "FREQ=DAILY;UNTIL=20230309T210000Z", 11 "exception": "20230307T210000Z,20230309T210000Z" 12 }, 13 "startAt": "2023-03-06T18:00:00.000Z", 14 "endAt": "2023-03-06T21:00:00.000Z", 15 "priority": "NORMAL", 16 "orderStepsRequired": true, 17 "strictTimeRequired": false, 18 "deadlined": false, 19 "tags": [ 20 "task 1" 21 ], 22 "steps": [ 23 { 24 "pointId": "9facfd8e-1fe3-4449-80be-1003bcf238a2", 25 "name": "step 1", 26 "order": 0, 27 "actions": [ 28 { 29 "name": "action 1", 30 "type": "BOOLEAN", 31 "order": 0, 32 "required": false 33 }, 34 { 35 "name": "action 2", 36 "type": "NUMBER", 37 "order": 1, 38 "required": true, 39 "minValue": 11.1, 40 "maxValue": 12.1 41 } 42 ] 43 } 44 ] 45}Получение статуса задач: Периодически запрашивайте статус задач, связанных с заявками в CRM, чтобы актуализировать информацию в обеих системах.
Пример запроса на получение информации о задаче:
1GET
2[
3 {
4 "id": "6a4900f9-2b4b-4d0c-a57d-d824278c18a7",
5 "scheduledTaskId": "db13a59b-f447-4c3f-b375-48d692eba9e3",
6 "scheduledTaskHistoryId": 1264,
7 "executedTaskId": null,
8 "name": "task 1",
9 "description": null,
10 "locationId": "03864752-f177-47ff-b0a1-99d75b02d954",
11 "locationHistoryId": 1,
12 "seenStates": [
13 {
14 "assigneeId": "4f9e4741-3069-4a03-8386-5f3ee45791aa",
15 "assigneeHistoryId": 1,
16 "seen": false
17 }
18 ],
19 "performerId": null,
20 "status": null,
21 "state": "PLANNED",
22 "published": true,
23 "startAt": "2023-03-06T18:00:00.000Z",
24 "endAt": "2023-03-06T21:00:00.000Z",
25 "startedAt": null,
26 "endedAt": null,
27 "totalExecutedTimeInMillis": null,
28 "lateStart": null,
29 "lateEnd": null,
30 "latenessInMillis": null,
31 "expired": false,
32 "seriesId": "56c01a98-f4c6-4b2b-89f3-2420432c6906",
33 "recurrence": {
34 "rule": "FREQ=DAILY;UNTIL=20230309T210000Z",
35 "exception": "20230307T210000Z,20230309T210000Z"
36 },
37 "keptOrder": null,
38 "skippedStepCount": null,
39 "skippedActionCount": null,
40 "numericErrorCount": null,
41 "missingRequiredValuesCount": null,
42 "executedStepCount": null,
43 "orderStepsRequired": false,
44 "strictTimeRequired": false,
45 "deadlined": false,
46 "priority": "NORMAL",
47 "tags": [
48 "task 1"
49 ],
50 "collision": null,
51 "edited": null,
52 "editedAt": "2024-08-20T08:16:26.742Z",
53 "stepCount": 1,
54 "warningCount": 0,
55 "errorCount": 0,
56 "notes": null,
57 "favorite": false,
58 "steps": [
59 {
60 "id": "c72ba560-203e-4fb6-8ab4-9a4907beffb7",
61 "scheduledStepId": "b5091e3d-3e73-4406-b25d-a4cd9ae9cd28",
62 "seriesId": "15854da1-fdc8-4320-8155-b2e5708d64a1",
63 "scheduledStepHistoryId": 9963,
64 "executedStepId": null,
65 "name": "Step 1",
66 "pointId": "9facfd8e-1fe3-4449-80be-1003bcf238a2",
67 "pointHistoryId": 5,
68 "order": 0,
69 "actualOrder": null,
70 "status": null,
71 "state": null,
72 "keptOrder": null,
73 "actions": [
74 {
75 "id": "67f2771c-ab7d-42b8-a861-2464fd7dd9a8",
76 "scheduledActionId": "093a3679-0ecd-4db5-b59c-dfc37eceff44",
77 "seriesId": "d815ac98-d16c-4b2f-bb1a-c59de9305f28",
78 "scheduledActionHistoryId": 5712,
79 "executedActionId": null,
80 "name": "action 1",
81 "type": "BOOLEAN",
82 "order": 0,
83 "status": null,
84 "state": null,
85 "required": false,
86 "validAction": null,
87 "missedRequiredValue": null,
88 "minValue": null,
89 "maxValue": null,
90 "booleanValue": null,
91 "mediaValueIds": null,
92 "numberValue": null,
93 "textValue": null,
94 "hasMedia": null
95 },
96 {
97 "id": "eff1df72-4f32-41a3-b06f-8f8fbf4da259",
98 "scheduledActionId": "306a321c-2fd8-4d03-aa72-5eb19566b074",
99 "seriesId": "4992e0aa-9c20-4e09-bc4e-c4641e9ec196",
100 "scheduledActionHistoryId": 5713,
101 "executedActionId": null,
102 "name": "action 2",
103 "type": "NUMBER",
104 "order": 1,
105 "status": null,
106 "state": null,
107 "required": true,
108 "validAction": null,
109 "missedRequiredValue": null,
110 "minValue": 11.1,
111 "maxValue": 12.1,
112 "booleanValue": null,
113 "mediaValueIds": null,
114 "numberValue": null,
115 "textValue": null,
116 "hasMedia": null
117 }
118 ]
119 }
120 ]
121 }
122]Заключение
Интеграция TARGPatrol с другими системами с помощью External API позволяет автоматизировать множество процессов и обеспечить более эффективное управление задачами. Следуйте этому руководству, чтобы настроить интеграцию и использовать все преимущества, которые она предлагает. Не забывайте регулярно проверять документацию и обновления API для получения самой актуальной информации.