### Project API Source: https://api.inventsys.com/openapi/index Endpoints for managing projects (Operations), including listing, creating, updating, and deleting them. Also includes endpoints for activating/deactivating projects and listing user-specific projects. ```APIDOC ## GET /projects ### Description List all Operations of Account. ### Method GET ### Endpoint /projects ## POST /projects ### Description Create new Operation. ### Method POST ### Endpoint /projects ## GET /projects/my ### Description List Operations where User is member of. ### Method GET ### Endpoint /projects/my ## PUT /projects/{projectId}/activate ### Description Activate Operation. ### Method PUT ### Endpoint /projects/{projectId}/activate #### Path Parameters - **projectId** (string) - Required - The ID of the project to activate. ## PUT /projects/{projectId}/deactivate ### Description Deactivate Operation. ### Method PUT ### Endpoint /projects/{projectId}/deactivate #### Path Parameters - **projectId** (string) - Required - The ID of the project to deactivate. ## GET /projects/{projectId} ### Description Read details about Operation. ### Method GET ### Endpoint /projects/{projectId} #### Path Parameters - **projectId** (string) - Required - The ID of the project to retrieve. ## PUT /projects/{projectId} ### Description Update Operation. ### Method PUT ### Endpoint /projects/{projectId} #### Path Parameters - **projectId** (string) - Required - The ID of the project to update. ## DELETE /projects/{projectId} ### Description Delete Operation. ### Method DELETE ### Endpoint /projects/{projectId} #### Path Parameters - **projectId** (string) - Required - The ID of the project to delete. ## GET /projects/{projectId}/init ### Description List all Settings of an Operation. ### Method GET ### Endpoint /projects/{projectId}/init #### Path Parameters - **projectId** (string) - Required - The ID of the project to get settings for. ``` -------------------------------- ### Work Order Management Source: https://api.inventsys.com/openapi/index Endpoints for listing, creating, reading, updating, and executing work orders associated with projects and items. ```APIDOC ## GET /projects/{projectId}/items/{itemId}/tickets ### Description List Work Orders of an Object ### Method GET ### Endpoint /projects/{projectId}/items/{itemId}/tickets ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **itemId** (string) - Required - The ID of the item. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **workOrders** (array) - A list of work orders. #### Response Example ```json { "workOrders": [ { "id": "wo-123", "name": "Sample Work Order" } ] } ``` ``` ```APIDOC ## POST /projects/{projectId}/items/{itemId}/tickets ### Description Create new Work Order on an Object ### Method POST ### Endpoint /projects/{projectId}/items/{itemId}/tickets ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **itemId** (string) - Required - The ID of the item. #### Request Body - **name** (string) - Required - The name of the new work order. - **description** (string) - Optional - A description for the work order. ### Request Example ```json { "name": "New Work Order", "description": "This is a newly created work order." } ``` ### Response #### Success Response (200) - **id** (string) - The ID of the newly created work order. - **name** (string) - The name of the work order. #### Response Example ```json { "id": "wo-456", "name": "New Work Order" } ``` ``` ```APIDOC ## GET /projects/{projectId}/tickets ### Description List all Work Orders from Operation ### Method GET ### Endpoint /projects/{projectId}/tickets ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **workOrders** (array) - A list of all work orders in the operation. #### Response Example ```json { "workOrders": [ { "id": "wo-789", "name": "Operation Work Order" } ] } ``` ``` ```APIDOC ## POST /projects/{projectId}/tickets ### Description Create new Work Order ### Method POST ### Endpoint /projects/{projectId}/tickets ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. #### Request Body - **name** (string) - Required - The name of the new work order. - **description** (string) - Optional - A description for the work order. ### Request Example ```json { "name": "Project Wide Work Order", "description": "A work order for the entire project." } ``` ### Response #### Success Response (200) - **id** (string) - The ID of the newly created work order. - **name** (string) - The name of the work order. #### Response Example ```json { "id": "wo-101", "name": "Project Wide Work Order" } ``` ``` ```APIDOC ## GET /projects/{projectId}/tickets/my ### Description List all Work Orders assigned to current User ### Method GET ### Endpoint /projects/{projectId}/tickets/my ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **workOrders** (array) - A list of work orders assigned to the current user. #### Response Example ```json { "workOrders": [ { "id": "wo-112", "name": "My Assigned Work Order" } ] } ``` ``` ```APIDOC ## GET /projects/{projectId}/tickets/{ticketId} ### Description Read details of a Work order ### Method GET ### Endpoint /projects/{projectId}/tickets/{ticketId} ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **ticketId** (string) - Required - The ID of the work order. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **id** (string) - The ID of the work order. - **name** (string) - The name of the work order. - **description** (string) - The description of the work order. #### Response Example ```json { "id": "wo-112", "name": "Sample Work Order Details", "description": "Detailed information about the work order." } ``` ``` ```APIDOC ## PUT /projects/{projectId}/tickets/{ticketId} ### Description Update Work Order ### Method PUT ### Endpoint /projects/{projectId}/tickets/{ticketId} ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **ticketId** (string) - Required - The ID of the work order. #### Request Body - **name** (string) - Optional - The updated name for the work order. - **description** (string) - Optional - The updated description for the work order. ### Request Example ```json { "name": "Updated Work Order Name" } ``` ### Response #### Success Response (200) - **id** (string) - The ID of the updated work order. - **name** (string) - The updated name of the work order. #### Response Example ```json { "id": "wo-112", "name": "Updated Work Order Name" } ``` ``` ```APIDOC ## GET /projects/{projectId}/tickets/{ticketId}/locations ### Description Read all recorded locations from all Tasks executed through a Work Order ### Method GET ### Endpoint /projects/{projectId}/tickets/{ticketId}/locations ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **ticketId** (string) - Required - The ID of the work order. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **locations** (array) - A list of recorded locations. #### Response Example ```json { "locations": [ { "latitude": 40.7128, "longitude": -74.0060, "timestamp": "2023-10-27T10:00:00Z" } ] } ``` ``` ```APIDOC ## POST /projects/{projectId}/tickets/{ticketId}/execute ### Description Execute Work order and register a new execution ### Method POST ### Endpoint /projects/{projectId}/tickets/{ticketId}/execute ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **ticketId** (string) - Required - The ID of the work order. #### Request Body - **location** (object) - Optional - The location data for the execution. - **latitude** (number) - Required - The latitude coordinate. - **longitude** (number) - Required - The longitude coordinate. ### Request Example ```json { "location": { "latitude": 34.0522, "longitude": -118.2437 } } ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message of execution. #### Response Example ```json { "message": "Work order executed successfully." } ``` ``` ```APIDOC ## PUT /projects/{projectId}/tickets/{ticketId}/start ### Description Update Work Order status as started ### Method PUT ### Endpoint /projects/{projectId}/tickets/{ticketId}/start ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **ticketId** (string) - Required - The ID of the work order. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message of status update. #### Response Example ```json { "message": "Work order status updated to started." } ``` ``` ```APIDOC ## PUT /projects/{projectId}/tickets/{ticketId}/stop ### Description Update Work Order status as stopped ### Method PUT ### Endpoint /projects/{projectId}/tickets/{ticketId}/stop ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **ticketId** (string) - Required - The ID of the work order. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message of status update. #### Response Example ```json { "message": "Work order status updated to stopped." } ``` ``` ```APIDOC ## PUT /projects/{projectId}/tickets/{ticketId}/cancel ### Description Cancel a Work Order ### Method PUT ### Endpoint /projects/{projectId}/tickets/{ticketId}/cancel ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **ticketId** (string) - Required - The ID of the work order. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message of cancellation. #### Response Example ```json { "message": "Work order cancelled successfully." } ``` ``` ```APIDOC ## PUT /projects/{projectId}/tickets/{ticketId}/approve ### Description Update Work Order status as approved ### Method PUT ### Endpoint /projects/{projectId}/tickets/{ticketId}/approve ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **ticketId** (string) - Required - The ID of the work order. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message of status update. #### Response Example ```json { "message": "Work order status updated to approved." } ``` ``` ```APIDOC ## PUT /projects/{projectId}/tickets/{ticketId}/unapprove ### Description Update Work Order status as not approved ### Method PUT ### Endpoint /projects/{projectId}/tickets/{ticketId}/unapprove ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **ticketId** (string) - Required - The ID of the work order. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message of status update. #### Response Example ```json { "message": "Work order status updated to not approved." } ``` ``` ```APIDOC ## POST /projects/{projectId}/tickets/{ticketId}/assign ### Description Assign Work Order to a set of Users or User Groups ### Method POST ### Endpoint /projects/{projectId}/tickets/{ticketId}/assign ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **ticketId** (string) - Required - The ID of the work order. #### Request Body - **users** (array) - Optional - A list of user IDs to assign. - **userGroups** (array) - Optional - A list of user group IDs to assign. ### Request Example ```json { "users": ["user-abc", "user-def"], "userGroups": ["group-xyz"] } ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message of assignment. #### Response Example ```json { "message": "Work order assigned successfully." } ``` ``` -------------------------------- ### Miscellaneous API Endpoints Source: https://api.inventsys.com/openapi/index Utility endpoints for geocoding, retrieving system properties, and rendering widgets. ```APIDOC ## GET /geocode ### Description Geocode location to address and vice-versa ### Method GET ### Endpoint /geocode --- ## GET /sysprops/{property} ### Description Read value of a public System Property ### Method GET ### Endpoint /sysprops/{property} --- ## GET /projects/{projectId}/widgets/{widgetId} ### Description Render widget and expose its HTML ### Method GET ### Endpoint /projects/{projectId}/widgets/{widgetId} ``` -------------------------------- ### Work Package Management Source: https://api.inventsys.com/openapi/index Endpoints for listing work packages within a project. ```APIDOC ## GET /projects/{projectId}/ticket_packages ### Description List all Work Packages in a Operation ### Method GET ### Endpoint /projects/{projectId}/ticket_packages ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **workPackages** (array) - A list of work packages. #### Response Example ```json { "workPackages": [ { "id": "wp-123", "name": "Sample Work Package" } ] } ``` ``` -------------------------------- ### Task and Incident Management Source: https://api.inventsys.com/openapi/index Endpoints for managing tasks and incidents within projects, including creation, retrieval, updates, and file management. ```APIDOC ## GET /projects/{projectId}/events ### Description List all Tasks and Incidents of an Operation ### Method GET ### Endpoint /projects/{projectId}/events ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **events** (array) - A list of tasks and incidents. #### Response Example ```json { "events": [ { "id": "event-abc", "type": "Task", "title": "Investigate Issue" } ] } ``` ``` ```APIDOC ## POST /projects/{projectId}/events ### Description Create Task or Incident ### Method POST ### Endpoint /projects/{projectId}/events ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. #### Request Body - **type** (string) - Required - The type of event (e.g., 'Task', 'Incident'). - **title** (string) - Required - The title of the task or incident. - **description** (string) - Optional - A detailed description. ### Request Example ```json { "type": "Task", "title": "Deploy New Feature", "description": "Deploy the latest version of the feature branch." } ``` ### Response #### Success Response (200) - **id** (string) - The ID of the newly created task or incident. - **title** (string) - The title of the event. #### Response Example ```json { "id": "event-def", "title": "Deploy New Feature" } ``` ``` ```APIDOC ## GET /projects/{projectId}/events/{eventId} ### Description Read Task or Incident details ### Method GET ### Endpoint /projects/{projectId}/events/{eventId} ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **eventId** (string) - Required - The ID of the task or incident. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **id** (string) - The ID of the event. - **type** (string) - The type of the event. - **title** (string) - The title of the event. - **description** (string) - The description of the event. #### Response Example ```json { "id": "event-ghi", "type": "Incident", "title": "System Outage", "description": "Investigate the cause of the system outage." } ``` ``` ```APIDOC ## DELETE /projects/{projectId}/events/{eventId} ### Description Delete Event ### Method DELETE ### Endpoint /projects/{projectId}/events/{eventId} ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **eventId** (string) - Required - The ID of the task or incident to delete. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message of deletion. #### Response Example ```json { "message": "Event deleted successfully." } ``` ``` ```APIDOC ## GET /projects/{projectId}/events/{eventId}/locations ### Description Read Locations recorded on Task ### Method GET ### Endpoint /projects/{projectId}/events/{eventId}/locations ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **eventId** (string) - Required - The ID of the task or incident. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **locations** (array) - A list of recorded locations for the task. #### Response Example ```json { "locations": [ { "latitude": 34.0522, "longitude": -118.2437, "timestamp": "2023-10-27T11:00:00Z" } ] } ``` ``` ```APIDOC ## POST /projects/{projectId}/events/{eventId}/approve ### Description Approve Task ### Method POST ### Endpoint /projects/{projectId}/events/{eventId}/approve ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **eventId** (string) - Required - The ID of the task or incident to approve. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message of approval. #### Response Example ```json { "message": "Task approved successfully." } ``` ``` ```APIDOC ## DELETE /projects/{projectId}/events/{eventId}/approve ### Description Undo approve Task ### Method DELETE ### Endpoint /projects/{projectId}/events/{eventId}/approve ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **eventId** (string) - Required - The ID of the task or incident to unapprove. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message of unapproval. #### Response Example ```json { "message": "Task unapproved successfully." } ``` ``` ```APIDOC ## GET /projects/{projectId}/events/{eventId}/files ### Description List Images and Documents of a Task or Incident ### Method GET ### Endpoint /projects/{projectId}/events/{eventId}/files ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **eventId** (string) - Required - The ID of the task or incident. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **files** (array) - A list of files associated with the event. #### Response Example ```json { "files": [ { "id": "file-123", "name": "report.pdf", "type": "document" } ] } ``` ``` ```APIDOC ## POST /projects/{projectId}/events/{eventId}/files ### Description Assign Image or Document to a Task or Incident ### Method POST ### Endpoint /projects/{projectId}/events/{eventId}/files ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **eventId** (string) - Required - The ID of the task or incident. #### Request Body - **file** (file) - Required - The file to upload. - **type** (string) - Required - The type of the file (e.g., 'image', 'document'). ### Request Example ```json (multipart/form-data request with file and type field) ``` ### Response #### Success Response (200) - **id** (string) - The ID of the uploaded file. - **name** (string) - The name of the uploaded file. #### Response Example ```json { "id": "file-456", "name": "screenshot.png" } ``` ``` ```APIDOC ## DELETE /projects/{projectId}/events/{eventId}/files/{fileId} ### Description Delete File from Task or Incident ### Method DELETE ### Endpoint /projects/{projectId}/events/{eventId}/files/{fileId} ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **eventId** (string) - Required - The ID of the task or incident. - **fileId** (string) - Required - The ID of the file to delete. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message of deletion. #### Response Example ```json { "message": "File deleted successfully." } ``` ``` ```APIDOC ## GET /projects/{projectId}/items/{itemId}/events ### Description List Tasks and Incidents of an Object ### Method GET ### Endpoint /projects/{projectId}/items/{itemId}/events ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **itemId** (string) - Required - The ID of the item. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **events** (array) - A list of tasks and incidents associated with the object. #### Response Example ```json { "events": [ { "id": "event-jkl", "type": "Task", "title": "Inspect Object" } ] } ``` ``` ```APIDOC ## POST /projects/{projectId}/items/{itemId}/events ### Description Create Task or Incident on an Object ### Method POST ### Endpoint /projects/{projectId}/items/{itemId}/events ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **itemId** (string) - Required - The ID of the item. #### Request Body - **type** (string) - Required - The type of event (e.g., 'Task', 'Incident'). - **title** (string) - Required - The title of the task or incident. - **description** (string) - Optional - A detailed description. ### Request Example ```json { "type": "Incident", "title": "Object Damage Report", "description": "Reported damage to the specified object." } ``` ### Response #### Success Response (200) - **id** (string) - The ID of the newly created task or incident. - **title** (string) - The title of the event. #### Response Example ```json { "id": "event-mno", "title": "Object Damage Report" } ``` ``` ```APIDOC ## GET /projects/{projectId}/items/{itemId}/events/{eventId} ### Description Read Task or Incident details ### Method GET ### Endpoint /projects/{projectId}/items/{itemId}/events/{eventId} ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **itemId** (string) - Required - The ID of the item. - **eventId** (string) - Required - The ID of the task or incident. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **id** (string) - The ID of the event. - **type** (string) - The type of the event. - **title** (string) - The title of the event. - **description** (string) - The description of the event. #### Response Example ```json { "id": "event-pqr", "type": "Task", "title": "Inspect Item Task", "description": "Perform inspection on the item." } ``` ``` -------------------------------- ### Object API Endpoints Source: https://api.inventsys.com/openapi/index Endpoints for managing objects within a project, including listing, creating, retrieving, updating, and deleting objects, as well as managing their properties, links, files, and events. ```APIDOC ## GET /projects/{projectId}/items ### Description List Objects of an Operation ### Method GET ### Endpoint /projects/{projectId}/items --- ## POST /projects/{projectId}/items ### Description Create Object in an Operation ### Method POST ### Endpoint /projects/{projectId}/items --- ## GET /projects/{projectId}/items/{itemId} ### Description Read details of an Object ### Method GET ### Endpoint /projects/{projectId}/items/{itemId} --- ## PUT /projects/{projectId}/items/{itemId} ### Description Update Object ### Method PUT ### Endpoint /projects/{projectId}/items/{itemId} --- ## DELETE /projects/{projectId}/items/{itemId} ### Description Delete Object ### Method DELETE ### Endpoint /projects/{projectId}/items/{itemId} --- ## GET /projects/{projectId}/items/{itemId}/infos ### Description List Properties of an Object ### Method GET ### Endpoint /projects/{projectId}/items/{itemId}/infos --- ## POST /projects/{projectId}/items/{itemId}/infos ### Description Add new entries to an Object Property. Values will be stored as history according to the provided datetime. ### Method POST ### Endpoint /projects/{projectId}/items/{itemId}/infos --- ## GET /projects/{projectId}/items/{itemId}/links ### Description List Web Links of an Object ### Method GET ### Endpoint /projects/{projectId}/items/{itemId}/links --- ## POST /projects/{projectId}/items/{itemId}/links ### Description Create a Web Link on an Object ### Method POST ### Endpoint /projects/{projectId}/items/{itemId}/links --- ## DELETE /projects/{projectId}/items/{itemId}/links/{linkId} ### Description Delete Web Link from an Object ### Method DELETE ### Endpoint /projects/{projectId}/items/{itemId}/links/{linkId} --- ## GET /projects/{projectId}/items/{itemId}/files ### Description List Images and Documents of an Object ### Method GET ### Endpoint /projects/{projectId}/items/{itemId}/files --- ## POST /projects/{projectId}/items/{itemId}/files ### Description Assign Image or Document File to an Object ### Method POST ### Endpoint /projects/{projectId}/items/{itemId}/files --- ## DELETE /projects/{projectId}/items/{itemId}/files/{fileId} ### Description Delete Image or Document from an Object ### Method DELETE ### Endpoint /projects/{projectId}/items/{itemId}/files/{fileId} --- ## GET /projects/{projectId}/items/{itemId}/events ### Description List Tasks and Incidents of an Object ### Method GET ### Endpoint /projects/{projectId}/items/{itemId}/events --- ## POST /projects/{projectId}/items/{itemId}/events ### Description Create Task or Incident on an Object ### Method POST ### Endpoint /projects/{projectId}/items/{itemId}/events --- ## GET /projects/{projectId}/items/{itemId}/events/{eventId} ### Description Read Task or Incident details ### Method GET ### Endpoint /projects/{projectId}/items/{itemId}/events/{eventId} --- ## GET /projects/{projectId}/items/{itemId}/tickets ### Description List Work Orders of an Object ### Method GET ### Endpoint /projects/{projectId}/items/{itemId}/tickets --- ## POST /projects/{projectId}/items/{itemId}/tickets ### Description Create new Work Order on an Object ### Method POST ### Endpoint /projects/{projectId}/items/{itemId}/tickets --- ## GET /projects/{projectId}/items/{itemId}/item_links ### Description List item links of an Object ### Method GET ### Endpoint /projects/{projectId}/items/{itemId}/item_links --- ## POST /projects/{projectId}/items/{itemId}/item_links ### Description Create a new item link or edit an existing one ### Method POST ### Endpoint /projects/{projectId}/items/{itemId}/item_links --- ## DELETE /projects/{projectId}/items/{itemId}/item_links/{itemLinkId} ### Description Delete item link ### Method DELETE ### Endpoint /projects/{projectId}/items/{itemId}/item_links/{itemLinkId} ``` -------------------------------- ### Authentication API Endpoints Source: https://api.inventsys.com/openapi/index Endpoints for user authentication and session management, including login, device registration, token validation, logout, and password reset. ```APIDOC ## GET /account ### Description Read public details about Account / Organization ### Method GET ### Endpoint /account --- ## GET /account/settings ### Description Read settings of Account ### Method GET ### Endpoint /account/settings --- ## POST /login ### Description Authenticate User and start new session ### Method POST ### Endpoint /login --- ## POST /device_register ### Description Register device information to the current session ### Method POST ### Endpoint /device_register --- ## GET /validate-authorization ### Description Return OK if authorization token is valid ### Method GET ### Endpoint /validate-authorization --- ## POST /logout ### Description Logout session and revoke authorization token ### Method POST ### Endpoint /logout --- ## POST /reset_password ### Description Request to reset user password ### Method POST ### Endpoint /reset_password --- ## POST /reset_password/confirm ### Description Confirm to reset and update password ### Method POST ### Endpoint /reset_password/confirm ``` -------------------------------- ### GISLayer API Source: https://api.inventsys.com/openapi/index Endpoints for managing GIS layers within a project, including listing, creating, updating, and deleting them. ```APIDOC ## GET /projects/{projectId}/zones ### Description List GIS Layers of an Operation. ### Method GET ### Endpoint /projects/{projectId}/zones #### Path Parameters - **projectId** (string) - Required - The ID of the project. ## POST /projects/{projectId}/zones ### Description Create a new GIS Layer on an Operation. ### Method POST ### Endpoint /projects/{projectId}/zones #### Path Parameters - **projectId** (string) - Required - The ID of the project. ## GET /projects/{projectId}/zones/{zoneId} ### Description Read GIS Layer details. ### Method GET ### Endpoint /projects/{projectId}/zones/{zoneId} #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **zoneId** (string) - Required - The ID of the zone. ## PUT /projects/{projectId}/zones/{zoneId} ### Description Update a GIS Layer. ### Method PUT ### Endpoint /projects/{projectId}/zones/{zoneId} #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **zoneId** (string) - Required - The ID of the zone. ## DELETE /projects/{projectId}/zones/{zoneId} ### Description Delete GIS Layer. ### Method DELETE ### Endpoint /projects/{projectId}/zones/{zoneId} #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **zoneId** (string) - Required - The ID of the zone. ``` -------------------------------- ### Series API Endpoints Source: https://api.inventsys.com/openapi/index Endpoints for managing routines, including listing, creating, showing, updating, and deleting routines, as well as managing routine items and attachments. ```APIDOC ## GET /projects/{projectId}/routines ### Description List of routines. ### Method GET ### Endpoint /projects/{projectId}/routines ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. ### Response #### Success Response (200) - **routines** (array) - A list of routine objects. #### Response Example { "routines": [ { "id": "routine_id_1", "name": "Routine 1" }, { "id": "routine_id_2", "name": "Routine 2" } ] } ``` ```APIDOC ## POST /projects/{projectId}/routines ### Description Create a new routine. ### Method POST ### Endpoint /projects/{projectId}/routines ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. #### Request Body - **name** (string) - Required - The name of the new routine. ### Request Example { "name": "New Routine Name" } ### Response #### Success Response (201) - **id** (string) - The ID of the newly created routine. - **name** (string) - The name of the newly created routine. #### Response Example { "id": "new_routine_id", "name": "New Routine Name" } ``` ```APIDOC ## GET /projects/{projectId}/routines/{routineId} ### Description Show routine details. ### Method GET ### Endpoint /projects/{projectId}/routines/{routineId} ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **routineId** (string) - Required - The ID of the routine. ### Response #### Success Response (200) - **id** (string) - The ID of the routine. - **name** (string) - The name of the routine. #### Response Example { "id": "routine_id_1", "name": "Routine 1" } ``` ```APIDOC ## DELETE /projects/{projectId}/routines/{routineId} ### Description Delete a routine. ### Method DELETE ### Endpoint /projects/{projectId}/routines/{routineId} ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **routineId** (string) - Required - The ID of the routine to delete. ### Response #### Success Response (204) No content. ``` ```APIDOC ## PUT /projects/{projectId}/routines/{routineId} ### Description Update a routine. ### Method PUT ### Endpoint /projects/{projectId}/routines/{routineId} ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **routineId** (string) - Required - The ID of the routine to update. #### Request Body - **name** (string) - Optional - The new name for the routine. ### Request Example { "name": "Updated Routine Name" } ### Response #### Success Response (200) - **id** (string) - The ID of the updated routine. - **name** (string) - The updated name of the routine. #### Response Example { "id": "routine_id_1", "name": "Updated Routine Name" } ``` ```APIDOC ## GET /projects/{projectId}/routines/{routineId}/routine-items ### Description List of routine items for a specific routine. ### Method GET ### Endpoint /projects/{projectId}/routines/{routineId}/routine-items ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **routineId** (string) - Required - The ID of the routine. ### Response #### Success Response (200) - **routineItems** (array) - A list of routine item objects. #### Response Example { "routineItems": [ { "itemId": "item_id_1", "quantity": 1 } ] } ``` ```APIDOC ## POST /projects/{projectId}/routines/{routineId}/items/{itemId} ### Description Create a routine item. ### Method POST ### Endpoint /projects/{projectId}/routines/{routineId}/items/{itemId} ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **routineId** (string) - Required - The ID of the routine. - **itemId** (string) - Required - The ID of the item to add. #### Request Body - **quantity** (integer) - Optional - The quantity of the item. ### Request Example { "quantity": 2 } ### Response #### Success Response (201) - **routineItemId** (string) - The ID of the created routine item. - **message** (string) - Confirmation message. #### Response Example { "routineItemId": "new_routine_item_id", "message": "Item added to routine successfully." } ``` ```APIDOC ## POST /projects/{projectId}/routines/{routineId}/items/{itemId}/attach ### Description Attach a new object (item) to a routine. ### Method POST ### Endpoint /projects/{projectId}/routines/{routineId}/items/{itemId}/attach ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **routineId** (string) - Required - The ID of the routine. - **itemId** (string) - Required - The ID of the item to attach. ### Response #### Success Response (200) - **message** (string) - Confirmation message. #### Response Example { "message": "Item attached successfully." } ``` ```APIDOC ## DELETE /projects/{projectId}/routines/{routineId}/items/{itemId}/detach ### Description Detach an object (item) from a routine. ### Method DELETE ### Endpoint /projects/{projectId}/routines/{routineId}/items/{itemId}/detach ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **routineId** (string) - Required - The ID of the routine. - **itemId** (string) - Required - The ID of the item to detach. ### Response #### Success Response (200) - **message** (string) - Confirmation message. #### Response Example { "message": "Item detached successfully." } ``` ```APIDOC ## GET /projects/{projectId}/routines/{routineId}/next-intervals ### Description Show next nth routine intervals including virtuals. ### Method GET ### Endpoint /projects/{projectId}/routines/{routineId}/next-intervals ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. - **routineId** (string) - Required - The ID of the routine. #### Query Parameters - **n** (integer) - Optional - The number of next intervals to retrieve. ### Response #### Success Response (200) - **intervals** (array) - A list of upcoming routine interval objects. #### Response Example { "intervals": [ { "intervalStart": "2023-10-27T10:00:00Z", "intervalEnd": "2023-10-27T11:00:00Z" } ] } ``` ```APIDOC ## GET /projects/{projectId}/routines/intervals ### Description List paginated intervals according filters. ### Method GET ### Endpoint /projects/{projectId}/routines/intervals ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. #### Query Parameters - **startDate** (string) - Optional - Filter intervals starting from this date (ISO 8601 format). - **endDate** (string) - Optional - Filter intervals ending by this date (ISO 8601 format). - **limit** (integer) - Optional - Number of intervals per page. - **offset** (integer) - Optional - Offset for pagination. ### Response #### Success Response (200) - **intervals** (array) - A list of interval objects. - **totalCount** (integer) - Total number of intervals matching the filters. #### Response Example { "intervals": [ { "start": "2023-10-27T10:00:00Z", "end": "2023-10-27T11:00:00Z" } ], "totalCount": 100 } ``` ```APIDOC ## GET /projects/{projectId}/routines/virtual-intervals ### Description List paginated intervals according filters that are not generated yet. ### Method GET ### Endpoint /projects/{projectId}/routines/virtual-intervals ### Parameters #### Path Parameters - **projectId** (string) - Required - The ID of the project. #### Query Parameters - **startDate** (string) - Optional - Filter intervals starting from this date (ISO 8601 format). - **endDate** (string) - Optional - Filter intervals ending by this date (ISO 8601 format). - **limit** (integer) - Optional - Number of intervals per page. - **offset** (integer) - Optional - Offset for pagination. ### Response #### Success Response (200) - **virtualIntervals** (array) - A list of virtual interval objects. - **totalCount** (integer) - Total number of virtual intervals matching the filters. #### Response Example { "virtualIntervals": [ { "estimatedStart": "2023-10-28T09:00:00Z", "estimatedEnd": "2023-10-28T10:00:00Z" } ], "totalCount": 50 } ``` -------------------------------- ### Profile API Endpoints Source: https://api.inventsys.com/openapi/index Endpoints for managing user profiles and properties, including retrieving and updating profile information, and managing user properties. ```APIDOC ## GET /me ### Description Return information about current session user ### Method GET ### Endpoint /me --- ## POST /me/locations ### Description Record geo position for the current user ### Method POST ### Endpoint /me/locations --- ## PATCH /me/profile ### Description Update information about user profile ### Method PATCH ### Endpoint /me/profile --- ## GET /me/props/{propName} ### Description Read user property or properties by pattern ### Method GET ### Endpoint /me/props/{propName} --- ## PUT /me/props/{propName} ### Description Create or update user property ### Method PUT ### Endpoint /me/props/{propName} ```