# Полный перечень запросов sarex-frontend

Извлечено из исходников `src/` и `modules/`: обёртки `httpService.{get,post,put,patch,delete}Request`, вызовы `fetch`, эндпоинты RTK Query (`builder.query/mutation`). Базовый хост подставляется по ключу `service` (для `httpService`, см. `src/Model/api/hosts.ts`) либо по `env.*` из `endpoints.js`; выбор окружения — переменной сборки `ENDPOINT`. В путях `{param}` — подстановки, `?a=&b=` — query-параметры, заданные в коде. Хосты приведены для `prod`.

**Всего вызовов: 392** — httpService: 296, fetch: 76, RTK Query: 20.


## `sarex` — Django backend (`sarex-backend`), host `/` (в контуре относительные пути)

Уникальных запросов: 206

| Метод | Путь | Файл (источник) |
| --- | --- | --- |
| GET | `(динамический URL — передаётся переменной)` | src/Model/BaseApi.ts (+2) |
| POST | `(динамический URL — передаётся переменной)` | src/Model/BaseApi.ts (+1) |
| PUT | `(динамический URL — передаётся переменной)` | src/Model/BaseApi.ts (+3) |
| PATCH | `(динамический URL — передаётся переменной)` | src/Model/BaseApi.ts |
| DELETE | `(динамический URL — передаётся переменной)` | src/Model/BaseApi.ts |
| POST | `/api/analytics/attachments/` | src/Components/ImageDropZone/ImageDropZone.jsx |
| GET | `/api/analytics/attachments/?dashboard={dashboardId}` | src/Components/ImageDropZone/hook.js |
| DELETE | `/api/analytics/attachments/{id}/` | src/Components/ImageDropZone/ImageDropZone.jsx |
| DELETE | `/api/analytics/attributes-options/{id}/` | src/Model/api.js |
| DELETE | `/api/analytics/attributes/{id}/` | src/Model/api.js |
| PUT | `/api/analytics/dashboards/{id}/` | src/Model/api.js |
| DELETE | `/api/analytics/dashboards/{id}/` | src/Model/api.js |
| GET | `/api/analytics/expressions/` | modules/analytics/entities/ComputationValue/ComputationValueEntity.ts |
| POST | `/api/analytics/expressions/` | modules/analytics/entities/ComputationValue/ComputationValueEntity.ts |
| DELETE | `/api/analytics/expressions/{id}/` | modules/analytics/entities/ComputationValue/ComputationValueEntity.ts |
| PUT | `/api/analytics/expressions/{newComputationValue.id}` | modules/analytics/entities/ComputationValue/ComputationValueEntity.ts |
| PATCH | `/api/analytics/folders/{body.id}/` | modules/analytics/store/api/api.ts |
| DELETE | `/api/analytics/folders/{id}/` | modules/analytics/store/api/api.ts (+1) |
| PATCH | `/api/analytics/groups/{body.id}/` | src/Model/api.js |
| DELETE | `/api/analytics/groups/{id}/` | src/Model/api.js |
| DELETE | `/api/analytics/metric2widget/{id}/` | src/Model/api.js |
| GET | `/api/analytics/metrics/` | modules/analytics/entities/Metric/MetricEntity.ts |
| DELETE | `/api/analytics/metrics/{id}/` | modules/analytics/store/api/api.ts |
| PUT | `/api/analytics/metrics/{metric.id}/` | modules/analytics/store/api/api.ts |
| GET | `/api/analytics/metrics/{params \|\|` | modules/analytics/store/api/api.ts |
| GET | `/api/analytics/texts/?dashboard={id}` | modules/widget/store/widgets.ts |
| PATCH | `/api/analytics/texts/{body.id}/` | src/Model/api.js |
| DELETE | `/api/analytics/texts/{id}/` | src/Model/api.js |
| POST | `/api/analytics/values/import_xlsx/` | modules/analytics/store/api/api.ts |
| PATCH | `/api/analytics/values/{id}/` | src/Model/api.js |
| DELETE | `/api/analytics/values/{valueId}/` | src/Model/api.js |
| PATCH | `/api/analytics/widgets/{id}/` | src/Model/api.js |
| DELETE | `/api/analytics/widgets/{id}/` | src/Model/api.js |
| GET | `/api/client/dashboard/feed/` | src/Model/actions.js |
| GET | `/api/client/dashboard/targets/{orderId}/feed/` | src/Model/actions.js |
| POST | `/api/client/dashboard/targets/{orderId}/feed/` | src/Model/actions.js |
| POST | `/api/client/dashboard/targets/{targetId}/request_survey/` | src/Model/actions.js |
| GET | `/api/client/dashboard/webcams/` | src/Model/api.js |
| GET | `/api/client/folders/?target={targetId}&limit=10000` | src/Model/api.js |
| PATCH | `/api/client/folders/{id}/` | src/Model/api.js |
| DELETE | `/api/client/folders/{id}/` | src/Model/api.js |
| GET | `/api/client/settings/` | src/Model/actions.js |
| PUT | `/api/client/settings/` | src/Model/actions.js |
| POST | `/api/client/uploads/` | src/Model/actions.js |
| GET | `/api/client/uploads/?target={targetId}&limit=10000` | src/Model/actions.js |
| GET | `/api/client/uploads/{doc}/layers/` | src/Model/actions.js |
| DELETE | `/api/client/uploads/{fileId}/` | src/Model/actions.js |
| POST | `/api/client/uploads/{fileId}/translate_to_svf/` | src/Model/actions.js |
| PATCH | `/api/client/uploads/{id}/` | src/Model/actions.js |
| GET | `/api/commons/cs/` | src/Model/actions.js (+1) |
| GET | `/api/core/admin/companies/` | src/shared/api/fetch/company.api.ts |
| POST | `/api/core/c2s-comparisons/` | src/Components/Viewer/Panels/ComparisonsPanel/store/api/api.ts |
| GET | `/api/core/companies/` | modules/targetsTree/repositories/CompanyRepository/RESTCompanyRepository.ts (+1) |
| POST | `/api/core/contour/export/` | src/Model/api.js |
| GET | `/api/core/contour/export/?pointcloud={pointcloudId}` | src/Model/api.js |
| GET | `/api/core/materials/` | modules/measurements/components/volume/store/materials.ts |
| POST | `/api/core/media-folders/` | src/Model/MediaSidebar/Api/MediaModelApi.ts |
| DELETE | `/api/core/media-folders/{id}/` | src/Model/MediaSidebar/Api/MediaModelApi.ts |
| PATCH | `/api/core/media-folders/{params.id}/` | src/Model/MediaSidebar/Api/MediaModelApi.ts |
| POST | `/api/core/mesh/` | src/Model/api.js |
| DELETE | `/api/core/mesh/{id}/` | src/Model/api.js |
| POST | `/api/core/missions/import/create/` | src/Model/actions.js |
| GET | `/api/core/missions/{id}/` | src/Model/api.js |
| POST | `/api/core/mrpa/` | src/shared/api/fetch/mrpa.api.ts |
| POST | `/api/core/mrpa/list/` | src/shared/api/fetch/mrpa.api.ts |
| DELETE | `/api/core/mrpa/{id}/` | src/shared/api/fetch/mrpa.api.ts |
| GET | `/api/core/orthophotos/{id}/` | src/Model/api.js |
| GET | `/api/core/orthophotos/{orthoId}/altitude_and_temperature/?points={lng},{lat}` | src/Model/api.js |
| GET | `/api/core/panoramas/{id}/` | src/Model/api.js |
| DELETE | `/api/core/panoramas/{id}/` | src/Model/MediaSidebar/Api/MediaModelApi.ts |
| PATCH | `/api/core/panoramas/{params.id}/` | src/Model/MediaSidebar/Api/MediaModelApi.ts |
| DELETE | `/api/core/photos/{id}/` | src/Model/MediaSidebar/Api/MediaModelApi.ts |
| PATCH | `/api/core/photos/{params.id}/` | src/Model/MediaSidebar/Api/MediaModelApi.ts |
| GET | `/api/core/pointclouds/?mission={mission}&comparison_type={type}` | src/Components/Viewer/Panels/ComparisonsPanel/store/api/api.ts |
| POST | `/api/core/polygons/` | src/Model/actions.js |
| GET | `/api/core/polygons/?with_links_folder{targetIdQuery}` | src/Model/api.js |
| POST | `/api/core/state/` | src/Components/Viewer/Services/States/Api/ViewerStatesApi.ts |
| GET | `/api/core/state/?pointcloud_id={pointCloudId}` | src/Components/Viewer/Services/States/Api/ViewerStatesApi.ts |
| PATCH | `/api/core/state/{id}/` | src/Components/Viewer/Services/States/Api/ViewerStatesApi.ts |
| DELETE | `/api/core/state/{id}/` | src/Components/Viewer/Services/States/Api/ViewerStatesApi.ts |
| GET | `/api/core/targets/{id}/` | src/Model/api.js |
| GET | `/api/core/users/` | modules/dashboards/models/entities/Users/UsersEntity.ts |
| DELETE | `/api/core/videos/{id}/` | src/Model/MediaSidebar/Api/MediaModelApi.ts |
| PATCH | `/api/core/videos/{params.id}/` | src/Model/MediaSidebar/Api/MediaModelApi.ts |
| GET | `/api/map/cadastre/point/?point={point}` | src/Model/actions.js |
| GET | `/api/map/notes/folders/?orthophoto={targetId}` | src/Model/api.js |
| PATCH | `/api/map/notes/folders/{id}/` | src/Model/api.js |
| DELETE | `/api/map/notes/folders/{id}/` | src/Model/api.js |
| PATCH | `/api/mar/tasks/{taskId}/` | src/Model/api.js |
| DELETE | `/api/mar/tasks_attachments/{id}/` | src/Model/api.js |
| DELETE | `/api/mar/tasks_groups_attachments/{id}/` | src/Model/api.js |
| GET | `/api/notifications` | modules/targetsTree/repositories/TargetRepository/RESTTragetRepository.ts (+1) |
| POST | `/api/pg/attachments/` | src/Model/actions.js (+1) |
| DELETE | `/api/pg/attachments/{id}/` | src/Model/api.js |
| POST | `/api/pg/compare/c2c/` | src/Model/api.js |
| GET | `/api/pg/compare/c2c/?pointcloud={pointcloud}` | src/Model/api.js |
| POST | `/api/pg/compare/c2s/` | src/Model/actions.js |
| POST | `/api/pg/compare/t2t/` | src/Model/api.js |
| GET | `/api/pg/compare/t2t/?pointcloud={pointcloud}` | src/Model/api.js |
| POST | `/api/pg/export/pointcloud/` | src/Model/api.js |
| GET | `/api/pg/export/pointcloud/?pointcloud={pointcloudId}` | src/Model/api.js |
| POST | `/api/pg/measurements/` | src/Model/Store/voxelVolumeStore.js (+1) |
| GET | `/api/pg/measurements/?target={targetId}` | src/Model/actions.js |
| PUT | `/api/pg/measurements/{idOnServer}/` | src/Model/Store/voxelVolumeStore.js |
| DELETE | `/api/pg/measurements/{idOnServer}/` | src/Model/Store/voxelVolumeStore.js |
| PUT | `/api/pg/measurements/{measurement.idOnServer}/` | src/Model/actions.js |
| DELETE | `/api/pg/measurements/{measurementId}/` | src/Model/actions.js |
| GET | `/api/pg/orthomosaicexport/?mission_id={missionId}` | src/Model/api.js |
| POST | `/api/pg/pdf-overlays/` | src/Model/api.js |
| DELETE | `/api/pg/pdf-overlays/{id}/` | src/Model/api.js |
| GET | `/api/pg/pointclouds/{id}/comparisons/` | src/Model/api.js |
| GET | `/api/pg/pointclouds/{pointCloudId}/` | src/Model/actions.js |
| GET | `/api/pg/pointclouds/{pointCloudId}/altitude/?points={formattedPoints}` | src/Model/actions.js |
| POST | `/api/pg/pointclouds/{pointCloudId}/baseplane_volume/` | src/Model/actions.js |
| POST | `/api/pg/pointclouds/{pointCloudId}/measurements/` | src/Model/actions.js |
| GET | `/api/pg/pointclouds/{pointCloudId}/measurements/delete_measurements/` | src/Model/actions.js |
| DELETE | `/api/pg/pointclouds/{pointCloudId}/measurements/{idOnServer}/` | src/Model/actions.js |
| PATCH | `/api/pg/pointclouds/{pointCloudId}/measurements/{measurementId}/` | src/Model/actions.js |
| POST | `/api/pg/pointclouds/{pointCloudId}/project_volume/` | src/Model/actions.js |
| POST | `/api/pg/pointclouds/{pointCloudId}/volume/` | src/Model/actions.js |
| GET | `/api/pg/pointclouds/{pointcloud}/comparisons/` | src/Model/api.js |
| POST | `/api/pg/pointclouds/{targetId}/measurements/{measurementId}/calculate/` | src/Model/api.js |
| GET | `/api/pg/projects/` | src/Model/actions.js |
| POST | `/api/pg/projects/` | src/Model/actions.js |
| POST | `/api/pg/projects/{id}/images/` | src/Model/actions.js |
| PATCH | `/api/pg/projects/{id}/images/{photo.id}/` | src/Model/actions.js |
| GET | `/api/pg/projects/{id}/status/` | src/Model/actions.js |
| POST | `/api/pg/projects/{projectId}/build/` | src/Model/actions.js |
| GET | `/api/pg/projects/{projectId}/images/{GCPName ? `?marker={GCPName}` :` | src/Model/actions.js |
| POST | `/api/pg/projects/{projectId}/init/` | src/Model/actions.js |
| GET | `/api/pg/projects/{projectId}/markers/` | src/Model/actions.js |
| POST | `/api/pg/projects/{projectId}/optimize_cameras/` | src/Model/actions.js |
| POST | `/api/pg/projects/{projectId}/update_marker/` | src/Model/actions.js |
| GET | `/api/pm/dms/?target={targetId}` | src/Model/actions.js |
| GET | `/api/pm/msp/projects/?bundle_id={bundleID}&schema=tiny` | modules/pm/gate/repositories/SelectedKSGProjectRepository/WorkspaceSelectedKSGProjectRepository.ts |
| DELETE | `/api/pm/msp/projects/{id}/` | src/Model/api.js |
| GET | `/api/pm/msp/projects/{id}/profiles/` | modules/pm/gate/repositories/TaskResourceConnectionBaseRepository/TaskResourceConnectionBaseRepository.ts |
| GET | `/api/pm/msp/resources-tasks/?projects={project}` | modules/pm/gate/repositories/TaskResourcesConnectionsRepository/TaskResourcesConnectionsRepository.ts |
| GET | `/api/pm/msp/tasks/?project={project}{query ? `&{query}` :` | modules/pm/gate/repositories/TasksRepository/TasksRepository.ts |
| GET | `/api/pm/msp/tasks/{id}/` | modules/pm/gate/repositories/TasksRepository/TasksRepository.ts |
| GET | `/api/workflows/?target={id}` | modules/targetsV2_OLD_DEPRECATED/services/TargetTreeService/TargetTreeService.ts |
| GET | `/api/workflows/?target={this.targetId}` | modules/missions/controllers/MissionsCardList/MissionsCardListController.ts |
| POST | `Analytic.baseUrl` | src/Model/api.js |
| POST | `ClientFolders.baseUrl` | src/Model/api.js |
| GET | `DashboardsAPI.baseUrl` | src/Model/api.js |
| POST | `DashboardsAPI.baseUrl` | src/Model/api.js |
| POST | `GroupsApi.baseUrl` | src/Model/api.js |
| POST | `MetricsApi.baseUrl` | modules/analytics/store/api/api.ts |
| GET | `MetricsFoldersAPI.baseUrl` | modules/analytics/store/api/api.ts |
| POST | `MetricsFoldersAPI.baseUrl` | modules/analytics/store/api/api.ts |
| POST | `NotesFolders.baseUrl` | src/Model/api.js |
| POST | `ProjectsAPI.taskUrl` | src/Model/api.js |
| PUT | `StreamFile.baseUrl` | src/Model/api.js |
| GET | `host` | modules/control/entities/Storage/StorageRESTEntity.ts |
| POST | `host` | modules/control/entities/Storage/StorageRESTEntity.ts |
| GET | `hostGetInfo` | modules/control/entities/Storage/StorageRESTEntity.ts |
| GET | `hostInfo` | modules/account/entities/Storage/StorageRESTEntity.ts |
| POST | `hostInfo` | modules/account/entities/Storage/StorageRESTEntity.ts |
| POST | `hostUpdatePassword` | modules/account/entities/Storage/StorageRESTEntity.ts |
| GET | `hosts` | modules/dashboards/models/entities/Dashboards/DashboardsEntity.ts |
| POST | `hosts` | modules/dashboards/models/entities/Dashboards/DashboardsEntity.ts |
| POST | `hosts.expression2widget` | modules/widget/entities/Expressions/ExpressionEntity.ts |
| GET | `hosts.expressions` | modules/widget/entities/Expressions/ExpressionEntity.ts |
| GET | `link` | src/Model/actions.js |
| POST | `mediaEndpoint` | src/Model/Media/api.ts |
| GET | `nextUrl` | src/Model/MediaSidebar/Api/MediaModelApi.ts |
| POST | `panoramasEndpoint` | src/Model/Media/api.ts |
| POST | `photosEndpoint` | src/Model/Media/api.ts |
| GET | `this.path` | modules/analytics/entities/Folder/FolderEntity.ts |
| GET | `this.pathname` | modules/missions/entity/Mission/MissionRESTEntity.ts |
| GET | `this.props.url` | modules/auth/TokenIssuer.ts |
| POST | `this.uploadUrl` | src/Model/streamFile.ts |
| GET | `url` | src/Model/api.js |
| GET | `url.toString()` | modules/targetsTree/repositories/TargetRepository/RESTTragetRepository.ts (+2) |
| POST | `videosEndpoint` | src/Model/Media/api.ts |
| POST | `{Export.baseUrlHorizontal}` | src/Model/api.js |
| POST | `{Export.urlTablePoints}` | src/Model/api.js |
| POST | `{Export.urlTablePoints}pointcloud/` | src/Model/api.js |
| PATCH | `{ProjectsAPI.taskUrl}{body.id}/` | src/Model/api.js |
| DELETE | `{ProjectsAPI.taskUrl}{id}/` | src/Model/api.js |
| GET | `{TrackingMetaData.trackerUrl}events/` | src/Model/api.js |
| GET | `{hosts.expression2widget}?widget={id}` | modules/widget/entities/Expressions/ExpressionEntity.ts |
| PUT | `{hosts.expression2widget}{body.id}/` | modules/widget/entities/Expressions/ExpressionEntity.ts |
| DELETE | `{hosts.expression2widget}{id}/` | modules/widget/entities/Expressions/ExpressionEntity.ts |
| GET | `{hosts}aggregates/` | modules/dashboards/models/entities/Dashboards/DashboardsEntity.ts |
| POST | `{hosts}{body.dashboboardId}/copy/` | modules/dashboards/models/entities/Dashboards/DashboardsEntity.ts |
| PUT | `{hosts}{body.id}/` | modules/dashboards/models/entities/Dashboards/DashboardsEntity.ts |
| DELETE | `{hosts}{id}/` | modules/dashboards/models/entities/Dashboards/DashboardsEntity.ts |
| GET | `{host}api/tracking/meta/contractor/` | modules/vehicle-tracking/methods/inner/api.ts |
| GET | `{host}api/tracking/meta/vehicle/` | modules/vehicle-tracking/methods/inner/api.ts |
| GET | `{host}api/tracking/meta/vehicletracker/` | modules/vehicle-tracking/methods/inner/api.ts |
| GET | `{host}api/tracking/meta/zones/` | modules/vehicle-tracking/methods/inner/api.ts |
| POST | `{host}api/tracking/meta/zones/` | modules/vehicle-tracking/methods/inner/api.ts |
| PUT | `{host}api/tracking/meta/zones/{id}` | modules/vehicle-tracking/methods/inner/api.ts |
| GET | `{host}api/tracking/stats-zoned/?{queryParams.toString()}` | modules/vehicle-tracking/methods/inner/api.ts |
| GET | `{host}buffer/` | modules/vehicle-tracking/methods/inner/api.ts |
| GET | `{host}entries-log/?{queryParams.toString()}` | modules/vehicle-tracking/methods/inner/api.ts |
| GET | `{panoramasEndpoint}?mission={mission}` | src/Model/Media/api.ts |
| PATCH | `{panoramasEndpoint}{panoramaId}` | src/Model/Media/api.ts |
| GET | `{photosEndpoint}?mission={mission}` | src/Model/Media/api.ts |
| PATCH | `{photosEndpoint}{photoId}/` | src/Model/Media/api.ts |
| GET | `{this.pathname}?{searchParams.toString()}` | modules/targets/entities/Target/TargetRESTEntity.ts |
| PATCH | `{this.pathname}{params.id}/` | modules/missions/entity/Mission/MissionRESTEntity.ts |
| DELETE | `{this.pathname}{params.id}/` | modules/missions/entity/Mission/MissionRESTEntity.ts |
| GET | `{videosEndpoint}?mission={mission}` | src/Model/Media/api.ts |
| PATCH | `{videosEndpoint}{videoId}` | src/Model/Media/api.ts |

## `sarexApi` — `https://api.sarex.io` (stage `https://stage-api.sarex.io`)

Уникальных запросов: 23

| Метод | Путь | Файл (источник) |
| --- | --- | --- |
| GET | `(динамический URL — передаётся переменной)` | modules/sarexPulse/SarexPulse/banners/api/bannersAdminApi.ts (+3) |
| GET | `/flows/api/v1/{entity}/tasks-count/` | src/Model/actions.js |
| GET | `/transmittals/api/v1/transmittals/count` | src/Model/actions.js |
| GET | `pulse/api/core/check_admin/` | src/Model/Pulse/api.ts |
| GET | `pulse/api/core/user/` | src/Model/Pulse/api.ts |
| GET | `{baseUrl}/` | modules/sarexPulse/SarexPulse/banners/api/bannersPublicApi.ts (+1) |
| POST | `{baseUrl}/` | modules/sarexPulse/SarexPulse/banners/api/bannersAdminApi.ts (+2) |
| DELETE | `{baseUrl}/bulk_delete/` | modules/sarexPulse/SarexPulse/banners/api/bannersAdminApi.ts (+1) |
| GET | `{baseUrl}/check_new/` | modules/sarexPulse/SarexPulse/changelog/api/changelogPublicApi.ts |
| GET | `{baseUrl}/last-viewed` | modules/sarexPulse/SarexPulse/changelog/api/notificationApi.ts |
| POST | `{baseUrl}/mark-all-viewed` | modules/sarexPulse/SarexPulse/changelog/api/notificationApi.ts |
| POST | `{baseUrl}/mark-viewed` | modules/sarexPulse/SarexPulse/changelog/api/notificationApi.ts |
| GET | `{baseUrl}/unread-count` | modules/sarexPulse/SarexPulse/changelog/api/notificationApi.ts |
| POST | `{baseUrl}/upload` | modules/sarexPulse/SarexPulse/shared/api/mediaApi.ts |
| POST | `{baseUrl}/viewed/` | modules/sarexPulse/SarexPulse/banners/api/bannersPublicApi.ts (+1) |
| GET | `{baseUrl}/{id}/` | modules/sarexPulse/SarexPulse/banners/api/bannersAdminApi.ts (+1) |
| PUT | `{baseUrl}/{id}/` | modules/sarexPulse/SarexPulse/banners/api/bannersAdminApi.ts (+1) |
| DELETE | `{baseUrl}/{id}/` | modules/sarexPulse/SarexPulse/banners/api/bannersAdminApi.ts (+2) |
| POST | `{baseUrl}/{id}/close/` | modules/sarexPulse/SarexPulse/banners/api/bannersPublicApi.ts |
| POST | `{baseUrl}/{id}/dislike/` | modules/sarexPulse/SarexPulse/changelog/api/changelogPublicApi.ts |
| POST | `{baseUrl}/{id}/like/` | modules/sarexPulse/SarexPulse/changelog/api/changelogPublicApi.ts |
| POST | `{baseUrl}/{id}/publish/` | modules/sarexPulse/SarexPulse/banners/api/bannersAdminApi.ts (+1) |
| POST | `{baseUrl}/{id}/unpublish/` | modules/sarexPulse/SarexPulse/banners/api/bannersAdminApi.ts (+1) |

## `bim` — `https://api.sarex.io/bim`

Уникальных запросов: 17

| Метод | Путь | Файл (источник) |
| --- | --- | --- |
| PATCH | `/api/v1/bims/{bimId}` | src/Model/BIM/api.js |
| POST | `/api/v1/bims/{bimId}/archive` | src/Model/BIM/api.js |
| GET | `/api/v1/bims/{bimId}/changes` | src/Model/BIM/api.js |
| POST | `/api/v1/bims/{bimId}/changes` | src/Model/BIM/api.js |
| GET | `/api/v1/bims/{bimId}/deviations` | src/Model/BIM/api.js |
| GET | `/api/v1/bims/{bimId}/elements` | src/Model/BIM/api.js |
| GET | `/api/v1/bims/{bimId}/sarexid/{sarexIds}` | src/Model/BIM/api.js |
| POST | `/api/v1/bims/{bimId}/unarchive` | src/Model/BIM/api.js |
| POST | `/api/v1/bims/{srcBIMId}/merge/{dstBIMId}` | src/Model/BIM/api.js |
| POST | `/api/v1/changes` | src/Model/BIM/api.js |
| POST | `/api/v1/comparisons` | src/Model/BIM/api.js |
| GET | `/api/v1/elements/{elementId}/properties` | src/Model/BIM/api.js |
| PUT | `/api/v1/elements/{elementId}/properties` | src/Model/BIM/api.js |
| GET | `/api/v1/elements/{elementId}/stats` | src/Model/BIM/api.js |
| POST | `/api/v1/targets/{targetId}/bims` | src/Model/BIM/api.js |
| GET | `/api/v1/targets/{targetId}/bims?archived=1` | src/Model/BIM/api.js |
| POST | `/api/v2/deviations` | src/Model/BIM/api.js |

## `workflows` — `https://api.sarex.io/workflows`

Уникальных запросов: 2

| Метод | Путь | Файл (источник) |
| --- | --- | --- |
| GET | `/api/v1/workflows/{comparison.c2c_workflow},{comparison.t2t_workflow}/state` | src/Components/Viewer/Panels/ComparisonsPanel/components/MissionComparison/MissionComparison.tsx |
| GET | `/api/v1/workflows/{workflowId}` | src/Components/Viewer/Panels/FilesPanel/hooks/useGetWorkflowStatus.ts |

## `workspaces` — `https://api.sarex.io/workspaces`

Уникальных запросов: 1

| Метод | Путь | Файл (источник) |
| --- | --- | --- |
| GET | `/api/v1/workspaces/{workspaceID}` | modules/dashboards/view-model/WorkspacePreviewSelectorViewModel/WorkspacePreviewSelectorViewModel.ts |

## `gateway` — `https://api.sarex.io/gateway`

Уникальных запросов: 1

| Метод | Путь | Файл (источник) |
| --- | --- | --- |
| GET | `/api/v1/resources` | src/Model/actions.js |

## `comparisons` — `https://api.sarex.io/comparisons`

Уникальных запросов: 1

| Метод | Путь | Файл (источник) |
| --- | --- | --- |
| GET | `/{id}/` | src/Components/Viewer/Panels/LayersPanel/store/comparisonsLayers.ts |

## `notifications` — `https://api.sarex.io/lambdas/notification`

Уникальных запросов: 1

| Метод | Путь | Файл (источник) |
| --- | --- | --- |
| POST | `(динамический URL — передаётся переменной)` | modules/notifications/email-notification/email-notifier.ts |

## `processes` (fetch) — `https://api.sarex.io/flows/api/v1`

Уникальных запросов: 32

| Метод | Путь | Файл (источник) |
| --- | --- | --- |
| POST | `/documents/` | modules/reviews/api/index.ts |
| GET | `/documents/?full=true{document_ids ? `&document_ids={document_ids}` :` | modules/reviews/api/index.ts |
| PATCH | `/documents/set-status/?document_ids={ids.join(",")}` | modules/reviews/api/index.ts |
| PUT | `/documents/{id}/` | modules/reviews/api/index.ts |
| POST | `/flows/` | modules/processes/store/api/index.ts |
| GET | `/flows/count_flows_by_resource/?{params}` | modules/processes/store/api/index.ts |
| PUT | `/flows/{body.id}/?full=true` | modules/processes/store/api/index.ts |
| POST | `/flows/{id}/copy/?full=true` | modules/processes/store/api/index.ts |
| POST | `/reviewers/` | modules/processes/store/api/index.ts |
| PUT | `/reviewers/{body.id}/` | modules/processes/store/api/index.ts |
| DELETE | `/reviewers/{id}/` | modules/processes/store/api/index.ts |
| POST | `/reviews/` | modules/reviews/api/index.ts |
| GET | `/reviews/count_by_resource_id/?{params}` | modules/reviews/api/index.ts |
| GET | `/reviews/count_by_reviewer_id/?current_reviewers={query}` | modules/reviews/api/index.ts |
| PUT | `/reviews/{body.id}/` | modules/reviews/api/index.ts |
| DELETE | `/reviews/{id}/` | modules/reviews/api/index.ts |
| PATCH | `/reviews/{id}/approve/` | modules/reviews/api/index.ts |
| GET | `/reviews/{id}/documents/` | modules/reviews/api/index.ts |
| PATCH | `/reviews/{id}/update-bundles/` | modules/reviews/api/index.ts |
| PATCH | `/reviews/{reviewId}/change_reviewers/` | modules/reviews/api/index.ts |
| PUT | `/reviews/{reviewId}/documents/` | modules/reviews/api/index.ts |
| POST | `/statuses/` | modules/processes/store/api/index.ts |
| PUT | `/statuses/{body.id}/` | modules/processes/store/api/index.ts |
| DELETE | `/statuses/{id}/` | modules/processes/store/api/index.ts |
| POST | `/steps/` | modules/processes/store/api/index.ts |
| PUT | `/steps/{body.id}/?full=true` | modules/processes/store/api/index.ts |
| GET | `/steps/{stepId}/active_reviews/` | modules/processes/store/api/index.ts |
| GET | `/steps/{stepId}/get_reviewers/?review_id={reviewId}` | modules/reviews/api/index.ts |
| PATCH | `/steps/{stepId}/update_reviewers/` | modules/processes/store/api/index.ts |
| GET | `/tasks/reviewers-max-end-dates/?{query}` | modules/reviews/api/index.ts |
| PATCH | `/tasks/{id}/change-duration/` | modules/reviews/api/index.ts |
| PATCH | `/tasks/{id}/change-priority/` | modules/reviews/api/index.ts |

## `orchestrator` (fetch) — `https://api.sarex.io/orchestrator/api`

Уникальных запросов: 3

| Метод | Путь | Файл (источник) |
| --- | --- | --- |
| POST | `/process` | modules/reviews/api/marks.ts |
| GET | `/process/{id}` | modules/reviews/api/marks.ts |
| POST | `/sign` | modules/reviews/api/marks.ts |

## `automation` (fetch) — `https://api.sarex.io/automation/api/v1`

Уникальных запросов: 1

| Метод | Путь | Файл (источник) |
| --- | --- | --- |
| POST | `/automations` | modules/automation/store/automation.ts |

## `analytics-v2` (RTK Query) — `https://api.sarex.io/analytics-v2/api/v1`

Уникальных запросов: 19

| Метод | Путь | Файл (источник) |
| --- | --- | --- |
| GET | `/api/commons/wiki.get` | src/Components/Wiki/apiWiki/api.ts |
| POST | `/api/commons/wiki.media.save` | src/Components/Wiki/apiWiki/api.ts |
| POST | `/api/commons/wiki.update` | src/Components/Wiki/apiWiki/api.ts |
| GET | `/api/core/media-notes-attachments/` | src/Model/MediaNotes/api.ts |
| POST | `/api/core/media-notes-attachments/` | src/Model/MediaNotes/api.ts |
| DELETE | `/api/core/media-notes-attachments/{attachmentId}` | src/Model/MediaNotes/api.ts |
| GET | `/api/core/media-notes-comments/` | src/Model/MediaNotes/api.ts |
| POST | `/api/core/media-notes-comments/` | src/Model/MediaNotes/api.ts |
| DELETE | `/api/core/media-notes-comments/{body.commentId}/` | src/Model/MediaNotes/api.ts |
| GET | `/api/core/media-notes/` | src/Model/MediaNotes/api.ts |
| POST | `/api/core/media-notes/` | src/Model/MediaNotes/api.ts |
| PATCH | `/api/core/media-notes/{body.id}/` | src/Model/MediaNotes/api.ts |
| DELETE | `/api/core/media-notes/{params.noteId}/` | src/Model/MediaNotes/api.ts |
| POST | `/api/core/targets/v2/{target_id}/calculate_panoramas_relative_orientation/` | src/Components/MediaViewer/MediaPanorama/panoramaApi.ts |
| GET | `/api/core/targets/{target}/missions/` | src/Components/Viewer/Panels/Media/MediaApi/missionsApi.ts |
| GET | `/api/notifications/?page={page}` | src/Model/AeroNoty/api.ts |
| POST | `/api/notifications/update/` | src/Model/AeroNoty/api.ts |
| GET | `/workflows/get_items_by_generic_key/?model=target&object_id={target_id}` | src/Components/MediaViewer/MediaPanorama/panoramaApi.ts |
| GET | `wfs` | src/Model/GIS/api.ts |

## Прочее (static-конфиг, внешние сервисы, wrappers с динамическим URL)

Уникальных запросов: 13

| Метод | Путь | Файл (источник) |
| --- | --- | --- |
| GET | `(динамический URL — передаётся переменной)` | src/Components/Viewer/Panels/Media/MediaRedux.tsx |
| GET | `/static/config.json` | src/shared/config/config.ts |
| GET | `<processes>/tasks/?` + params.toString()` | modules/reviews/api/index.ts |
| GET | `file.attachment` | src/Components/Viewer/Panels/MeasurementDetails/MediaFiles_old.jsx |
| GET | `http://localhost:8000{path}` | src/Model/fakeServer/fakeServer.js |
| GET | `https://blooming-cove-51473.herokuapp.com/track/list` | src/Model/Store/trackingStore.js |
| GET | `https://blooming-cove-51473.herokuapp.com/track/notifications` | src/Model/Store/trackingStore.js |
| GET | `image` | src/Components/Viewer/Services/States/Stores/ViewerStates.ts |
| GET | `link` | src/Model/actions.js |
| GET | `url` | modules/account/ui/StorageCard/lib/file-utils.ts (+2) |
| POST | `url` | modules/reviews/api/index.ts |
| PUT | `url` | modules/reviews/api/index.ts |
| PATCH | `url` | modules/reviews/api/index.ts |