RemoteGymp · API v1

Référence API

Accès et comportement

Les exemples de référence sont des modèles. Remplacez les espaces réservés et vérifiez les paramètres, les autorisations et le schéma du point de terminaison avant de les exécuter. Pour les écritures incertaines, suivez les règles de récupération et de nouvelle tentative de ce point de terminaison.

Nécessite un jeton de support et les autorisations du point de terminaison. L’accès reste limité à la portée de votre identifiant. Vérifiez les fonctionnalités avant d’utiliser l’appareil ou les actions de gestion.

Résultats de recherche: 289

Alertes6
GETListe des alertes/v1/alerts

Parcourir les alertes du moniteur. Les alertes non résolues sont renvoyées par défaut ; utilisez state=all pour inclure l’historique résolu.

GET /v1/alerts ↗

mcp.cap.InventoryRead

Schémas (OpenAPI)

state

"all"
"Open"
"Acknowledged"
"Resolved"

severity

"Information"
"Warning"
"Critical"
"Recovery"

Historique des alertes du moniteur tapé et paginé. Le défaut n'est pas résolu ; state=all inclut l’historique résolu. Les filtres companyId et deviceId restent dans la portée des informations d'identification.

Paramètres

pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.
companyId · Requête · en option
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
deviceId · Requête · en option
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
state · Requête · en option
Omettre de renvoyer les alertes d'ouverture et d'acquittement. Utiliser Open, Acknowledged ou Resolved pour un état donné, ou « tous » pour tous les états.
severity · Requête · en option
Filtrez les alertes par gravité de notification.
monitorId · Requête · en option
Identifiant du moniteur à lire ou à filtrer.
observedFrom · Requête · en option
Inclut les alertes observées pour la dernière fois à cette date ou après, y compris un décalage UTC.
observedTo · Requête · en option
Inclut les alertes observées pour la dernière fois avant cet horodatage. Il doit être postérieur à l'horodatage de début.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/alerts' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Paginated typed monitor alert history. Default is unresolved; state=all includes resolved history. companyId and deviceId filters remain inside credential scope.",
  "operationId": "get_v1_alerts",
  "parameters": [
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "query",
      "name": "companyId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "query",
      "name": "deviceId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Omit to return open and acknowledged alerts. Use Open, Acknowledged or Resolved for one state, or all for every state.",
      "in": "query",
      "name": "state",
      "schema": {
        "enum": [
          "all",
          "Open",
          "Acknowledged",
          "Resolved"
        ],
        "type": "string"
      }
    },
    {
      "description": "Filter alerts by notification severity.",
      "in": "query",
      "name": "severity",
      "schema": {
        "enum": [
          "Information",
          "Warning",
          "Critical",
          "Recovery"
        ],
        "type": "string"
      }
    },
    {
      "description": "Identifier of the monitor to read or filter by.",
      "in": "query",
      "name": "monitorId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Include alerts last observed at or after this timestamp, including a UTC offset.",
      "in": "query",
      "name": "observedFrom",
      "schema": {
        "format": "date-time",
        "type": "string"
      }
    },
    {
      "description": "Include alerts last observed before this timestamp. It must be later than the start timestamp.",
      "in": "query",
      "name": "observedTo",
      "schema": {
        "format": "date-time",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfAlertResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List alerts",
  "tags": [
    "Alerts"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTAcquitter une alerte/v1/alerts/{alertId}/acknowledge

Marquer une alerte non résolue comme acquittée à l'aide de sa révision actuelle. Une révision obsolète est rejetée. Renvoie directement l'accusé de réception mis à jour ; le problème n'est pas résolu.

POST /v1/alerts/{alertId}/acknowledge ↗

mcp.cap.AlertWrite

Paramètres

alertId · Chemin · requis
Identifiant de l'alerte renvoyé par le point de terminaison des alertes.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "revision": 1
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/alerts/<alertId>/acknowledge' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Mark an unresolved alert as acknowledged using its current revision. A stale revision is rejected. Returns the updated acknowledgement directly; it does not fix the fault.",
  "operationId": "post_v1_alerts_alertId_acknowledge",
  "parameters": [
    {
      "description": "Identifier of the alert returned by the alerts endpoint.",
      "in": "path",
      "name": "alertId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/RevisionRequest"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AcknowledgementResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Acknowledge an alert",
  "tags": [
    "Alerts"
  ],
  "x-required-capabilities": [
    "mcp.cap.AlertWrite"
  ]
}
GETRecevoir le lien du ticket d'alerte/v1/alerts/{alertId}/ticket

Lire la référence du ticket externe, l'URL, l'état et la version joints à une alerte.

GET /v1/alerts/{alertId}/ticket ↗

mcp.cap.InventoryRead

Paramètres

alertId · Chemin · requis
Identifiant de l'alerte renvoyé par le point de terminaison des alertes.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/alerts/<alertId>/ticket' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the external ticket reference, URL, state and version attached to an alert.",
  "operationId": "get_v1_alerts_alertId_ticket",
  "parameters": [
    {
      "description": "Identifier of the alert returned by the alerts endpoint.",
      "in": "path",
      "name": "alertId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/TicketResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get an alert's ticket link",
  "tags": [
    "Alerts"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
PATCHMettre à jour le lien du ticket d'une alerte/v1/alerts/{alertId}/ticket

Enregistrez une référence de ticket externe à l'aide de la dernière version lue. La fermeture du ticket ne résout pas l’alerte.

PATCH /v1/alerts/{alertId}/ticket ↗

mcp.cap.AlertWrite

Paramètres

alertId · Chemin · requis
Identifiant de l'alerte renvoyé par le point de terminaison des alertes.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "externalId": "<value>",
  "state": "<value>",
  "url": "<value>",
  "version": 1
}'
Invoke-RestMethod -Method PATCH `
  -Uri 'https://api.remotegymp.com/v1/alerts/<alertId>/ticket' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Save an external ticket reference using the last-read version. Closing the ticket does not resolve the alert.",
  "operationId": "patch_v1_alerts_alertId_ticket",
  "parameters": [
    {
      "description": "Identifier of the alert returned by the alerts endpoint.",
      "in": "path",
      "name": "alertId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/TicketRequest"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/TicketResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Update an alert's ticket link",
  "tags": [
    "Alerts"
  ],
  "x-required-capabilities": [
    "mcp.cap.AlertWrite"
  ]
}
POSTRecevez des alertes pour plusieurs appareils/v1/alerts:batch-query

Lire les alertes enregistrées pour un ensemble d'appareils fournis en une seule requête.

POST /v1/alerts:batch-query ↗

mcp.cap.InventoryRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "ids": [
    "<UUID>"
  ]
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/alerts:batch-query' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read recorded alerts for a supplied set of devices in one request.",
  "operationId": "post_v1_alerts_batch_query",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IdBatch"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ItemCollectionOfAlertResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get alerts for several devices",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETRecevoir des alertes sur l'appareil/v1/devices/{deviceId}/alerts

Lire les alertes enregistrées pour un appareil.

GET /v1/devices/{deviceId}/alerts ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/alerts' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read recorded alerts for one device.",
  "operationId": "get_v1_devices_deviceId_alerts",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ItemCollectionOfAlertResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get device alerts",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
API5
POSTObtenir un jeton d'accès/v1/auth/token

Échangez vos informations d'identification API contre un jeton de support de courte durée à utiliser lors des demandes ultérieures.

POST /v1/auth/token ↗

Utilisez les informations d'identification API créées dans Paramètres → Accès API. Aucun jeton au porteur n'est nécessaire pour cet échange.

password: Ce champ JSON contient le secret de vos informations d'identification API, et non le mot de passe de connexion à votre compte.

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  'Content-Type' = 'application/json'
}
$body = '{
  "password": "<your-API-credential-secret>",
  "username": "<your-API-credential-username>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/auth/token' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Exchange API username and credential password for an opaque bearer token valid for 1800 seconds. Network, paid entitlement and regional token-attempt limits apply.",
  "operationId": "post_v1_auth_token",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/TokenRequest"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PublicApiTokenResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "summary": "Get an access token",
  "tags": [
    "API"
  ]
}
GETVérifier les fonctionnalités disponibles/v1/capabilities

Consultez les fonctionnalités, autorisations et limites disponibles pour votre identifiant avant d'utiliser une intégration.

GET /v1/capabilities ↗

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/capabilities' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "See the features, permissions and limits available to your credential before using an integration.",
  "operationId": "get_v1_capabilities",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/CapabilitiesResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Check available features",
  "tags": [
    "API"
  ],
  "x-required-capabilities": []
}
GETVérifier l'accès au API/v1/health

Vérifiez que vos informations d'identification peuvent atteindre et s'authentifier auprès du API.

GET /v1/health ↗

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/health' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Check that your credential can reach and authenticate with the API.",
  "operationId": "get_v1_health",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/HealthResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Check API access",
  "tags": [
    "API"
  ],
  "x-required-capabilities": []
}
GETVérifier les options d'installation/v1/management/installers/capabilities

Découvrez les fonctionnalités du programme d'installation disponibles sur cet hôte.

GET /v1/management/installers/capabilities ↗

mcp.cap.EnrollmentRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/management/installers/capabilities' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Discover the installer capabilities available on this host.",
  "operationId": "get_v1_management_installers_capabilities",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiInstallerCapabilities"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Check installer options",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.EnrollmentRead"
  ]
}
GETVérifier les capacités de fonctionnement/v1/operations/capabilities

Découvrez les capacités d’opération d’intégration avant de tenter des actions sur l’appareil.

GET /v1/operations/capabilities ↗

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/operations/capabilities' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Discover integration operation capabilities before attempting device actions.",
  "operationId": "get_v1_operations_capabilities",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiOperationCapabilities"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Check operation capabilities",
  "tags": [
    "Operations"
  ],
  "x-required-capabilities": []
}
Appareils58
GETListe des appareils/v1/devices

Parcourez les résumés des appareils une page à la fois. Suivez le curseur suivant pour plus de résultats.

GET /v1/devices ↗

mcp.cap.InventoryRead

Schémas (OpenAPI)

status

"Online"
"Offline"
"Busy"
"Error"
"Uninstalling"
"Uninstalled"

Paramètres

pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.
companyId · Requête · en option
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
siteId · Requête · en option
Identifiant du site. Un paramètre de requête restreint les résultats à ce site dans la portée des informations d'identification.
status · Requête · en option
Filtrer les appareils en fonction de leur état d'appareil stocké.
name · Requête · en option
Filtrer par nom d'appareil ou de logiciel, en fonction de la ressource interrogée.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Browse device summaries one page at a time. Follow the next cursor for more results.",
  "operationId": "get_v1_devices",
  "parameters": [
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "query",
      "name": "companyId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Site identifier. A query parameter narrows the results to this site within credential scope.",
      "in": "query",
      "name": "siteId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Filter devices by their stored device status.",
      "in": "query",
      "name": "status",
      "schema": {
        "enum": [
          "Online",
          "Offline",
          "Busy",
          "Error",
          "Uninstalling",
          "Uninstalled"
        ],
        "type": "string"
      }
    },
    {
      "description": "Filter by a device or software name, according to the resource being queried.",
      "in": "query",
      "name": "name",
      "schema": {
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfDeviceResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List devices",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETObtenir un appareil/v1/devices/{deviceId}

Lire le résumé d'un appareil à l'aide de son ID.

GET /v1/devices/{deviceId} ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read one device's summary using its ID.",
  "operationId": "get_v1_devices_deviceId",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/DeviceResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get a device",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTDésinstaller un agent/v1/devices/{deviceId}/agent/uninstall

Choisir si l'on conserve son entrée d'inventaire. L'acquittement ne prouve pas la suppression.

POST /v1/devices/{deviceId}/agent/uninstall ↗

mcp.cap.EnrollmentManage

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": false
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/agent/uninstall' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Choose whether to retain its inventory entry. Acknowledgement does not prove removal.",
  "operationId": "post_v1_devices_deviceId_agent_uninstall",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfboolean"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Uninstall an agent",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.EnrollmentManage"
  ]
}
POSTAnnuler une commande/v1/devices/{deviceId}/commands/{operationId}/cancel

Utiliser le reçu de commande original détenu par ces informations d'identification. L'annulation ne supprime pas les effets.

POST /v1/devices/{deviceId}/commands/{operationId}/cancel ↗

mcp.cap.CommandsExecute

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
operationId · Chemin · requis
Identificateur de reçu d'opération de niveau supérieur. Interrogez ce reçu pour inspecter les progrès et le résultat.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/commands/<operationId>/cancel' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Use the original command receipt owned by this credential. Cancellation does not undo effects.",
  "operationId": "post_v1_devices_deviceId_commands_operationId_cancel",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Top-level operation receipt identifier. Poll this receipt to inspect progress and the result.",
      "in": "path",
      "name": "operationId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationKey"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Cancel a command",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.CommandsExecute"
  ]
}
POSTAnalyser l'utilisation du disque/v1/devices/{deviceId}/disk-usage

Fournir un identifiant de scan et les volumes sélectionnés. Réutiliser l'identifiant pour annuler le scan.

POST /v1/devices/{deviceId}/disk-usage ↗

mcp.cap.DeviceMaintenance

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "operationId": "<UUID>",
    "volumeIds": [
      "<value>"
    ]
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/disk-usage' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Supply a scan identifier and selected volumes. Reuse the identifier to cancel the scan.",
  "operationId": "post_v1_devices_deviceId_disk_usage",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationDiskScan"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Scan disk usage",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.DeviceMaintenance"
  ]
}
POSTAnnuler une analyse de disque/v1/devices/{deviceId}/disk-usage/cancel

Fournir un identifiant de scan et les volumes sélectionnés. Réutiliser l'identifiant pour annuler le scan.

POST /v1/devices/{deviceId}/disk-usage/cancel ↗

mcp.cap.DeviceMaintenance

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/disk-usage/cancel' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Supply a scan identifier and selected volumes. Reuse the identifier to cancel the scan.",
  "operationId": "post_v1_devices_deviceId_disk_usage_cancel",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Cancel a disk scan",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.DeviceMaintenance"
  ]
}
GETLister les volumes de disque/v1/devices/{deviceId}/disk-usage/volumes

Lire le diagnostic actuel du point de terminaison dans le cadre des informations d'identification.

GET /v1/devices/{deviceId}/disk-usage/volumes ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/disk-usage/volumes' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current endpoint diagnostics within credential scope.",
  "operationId": "get_v1_devices_deviceId_disk_usage_volumes",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/DiskUsageVolumeInfoDto"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List disk volumes",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETLire les résultats du journal des événements stockés/v1/devices/{deviceId}/event-logs

Lire les résultats du journal des événements déjà collectés pour le périphérique.

GET /v1/devices/{deviceId}/event-logs ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
offset · Requête · en option
Nombre d'éléments à ignorer, en commençant à zéro. Continuez à utiliser le décalage renvoyé par le point de terminaison lorsqu'il est disponible.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/event-logs' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read event-log results already collected for the device.",
  "operationId": "get_v1_devices_deviceId_event_logs",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Number of items to skip, starting at zero. Continue using the offset returned by the endpoint when available.",
      "in": "query",
      "name": "offset",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AssetInventorySection"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read stored event-log results",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETLire les journaux d'événements en direct/v1/devices/{deviceId}/event-logs/live

Demandez des informations sur le journal des événements à l'appareil plutôt que de vous fier uniquement aux résultats stockés.

GET /v1/devices/{deviceId}/event-logs/live ↗

mcp.cap.InventoryRead

Schémas (OpenAPI)

level

"Critical"
"Error"
"Warning"

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
from · Requête · en option
Horodatage de début pour la plage horaire demandée. Incluez un décalage UTC.
to · Requête · en option
Horodatage de fin pour la plage horaire demandée. Incluez un décalage UTC et choisissez une heure après le début.
level · Requête · en option
Filtrez les journaux d'événements demandés par niveau d'événement.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/event-logs/live' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request event-log information from the device rather than relying only on stored results.",
  "operationId": "get_v1_devices_deviceId_event_logs_live",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Start timestamp for the requested time range. Include a UTC offset.",
      "in": "query",
      "name": "from",
      "schema": {
        "format": "date-time",
        "type": "string"
      }
    },
    {
      "description": "End timestamp for the requested time range. Include a UTC offset and choose a time after the start.",
      "in": "query",
      "name": "to",
      "schema": {
        "format": "date-time",
        "type": "string"
      }
    },
    {
      "description": "Filter the requested event logs by event level.",
      "in": "query",
      "name": "level",
      "schema": {
        "enum": [
          "Critical",
          "Error",
          "Warning"
        ],
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiLiveEventLogs"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read live event logs",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTCollecter les résultats du journal des événements/v1/devices/{deviceId}/event-logs/query

Demandez une requête de journal d'événements limitée sur l'appareil et enregistrez ses résultats pour une lecture ultérieure.

POST /v1/devices/{deviceId}/event-logs/query ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "channels": [
    "<value>"
  ],
  "fromUtc": "<UTC date and time>",
  "toUtc": "<UTC date and time>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/event-logs/query' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request a bounded event-log query on the device and record its results for later reading.",
  "operationId": "post_v1_devices_deviceId_event_logs_query",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/EventLogQueryDto"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationEventLogResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Collect event-log results",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETObtenir l'inventaire stocké/v1/devices/{deviceId}/inventory

Lire les informations collectées sur le matériel et la sécurité. Les valeurs manquantes sont inconnues ; cela ne déclenche pas une nouvelle analyse.

GET /v1/devices/{deviceId}/inventory ↗

mcp.cap.InventoryRead

Résumé des informations stockées sur le matériel et la sécurité. Les valeurs nulles sont inconnues ; les horodatages établissent la fraîcheur des observations. Pas de clés de récupération, de matériel secret ou d'autorité de contrôle des appareils.

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/inventory' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Stored hardware and security summary facts. Null values are unknown; timestamps establish observation freshness. No recovery keys, secret material or device-control authority.",
  "operationId": "get_v1_devices_deviceId_inventory",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/InventoryResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get stored inventory",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETObtenez une section d'inventaire/v1/devices/{deviceId}/inventory/{section}

Lire une section prise en charge de l'inventaire des ressources stockées de l'appareil.

GET /v1/devices/{deviceId}/inventory/{section} ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
section · Chemin · requis
Section Inventaire à lire. Lisez d'abord manifest pour connaître les sections prises en charge ; suivez nextOffset pour les sections de tableau.
offset · Requête · en option
Nombre d'éléments à ignorer, en commençant à zéro. Continuez à utiliser le décalage renvoyé par le point de terminaison lorsqu'il est disponible.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/inventory/<section>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read one supported section of the device's stored asset inventory.",
  "operationId": "get_v1_devices_deviceId_inventory_section",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Inventory section to read. Read manifest first for supported sections; follow nextOffset for array sections.",
      "in": "path",
      "name": "section",
      "required": true,
      "schema": {
        "type": "string"
      }
    },
    {
      "description": "Number of items to skip, starting at zero. Continue using the offset returned by the endpoint when available.",
      "in": "query",
      "name": "offset",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AssetInventorySection"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get an inventory section",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETLister les travaux en file d'attente/v1/devices/{deviceId}/jobs

Lire les travaux en attente et en cours d'exécution. Les travaux manquants ne prouvent pas le succès.

GET /v1/devices/{deviceId}/jobs ↗

mcp.cap.InventoryRead

Schémas (OpenAPI)

DeviceJobStatus

0 = Pending
1 = Running
2 = Completed
3 = Failed
4 = Cancelled

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/jobs' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read pending and running jobs. Missing jobs do not prove success.",
  "operationId": "get_v1_devices_deviceId_jobs",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationJobPage"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List queued jobs",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTMettre en file d'attente une commande hors ligne/v1/devices/{deviceId}/jobs/command

Mettre en file d'attente un travail pour la reconnexion. Les identifiants et permissions actuels sont vérifiés à nouveau avant l'exécution.

POST /v1/devices/{deviceId}/jobs/command ↗

mcp.cap.CommandsExecute

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "command": "<value>",
    "shell": "<value>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/jobs/command' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Queue work for reconnection. Current credentials and permissions are checked again before execution.",
  "operationId": "post_v1_devices_deviceId_jobs_command",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationQueuedCommand"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Queue an offline command",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.CommandsExecute"
  ]
}
POSTMettre en file d'attente une désinstallation d'agent/v1/devices/{deviceId}/jobs/uninstall

Mettre en file d'attente un travail pour la reconnexion. Les identifiants et permissions actuels sont vérifiés à nouveau avant l'exécution.

POST /v1/devices/{deviceId}/jobs/uninstall ↗

mcp.cap.EnrollmentManage

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": false
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/jobs/uninstall' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Queue work for reconnection. Current credentials and permissions are checked again before execution.",
  "operationId": "post_v1_devices_deviceId_jobs_uninstall",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfboolean"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Queue an agent uninstall",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.EnrollmentManage"
  ]
}
GETLire un travail en file d'attente/v1/devices/{deviceId}/jobs/{jobId}

Lire les travaux en attente et en cours d'exécution. Les travaux manquants ne prouvent pas le succès.

GET /v1/devices/{deviceId}/jobs/{jobId} ↗

mcp.cap.InventoryRead

Schémas (OpenAPI)

DeviceJobStatus

0 = Pending
1 = Running
2 = Completed
3 = Failed
4 = Cancelled

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
jobId · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/jobs/<jobId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read pending and running jobs. Missing jobs do not prove success.",
  "operationId": "get_v1_devices_deviceId_jobs_jobId",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "jobId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationJobView"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read a queued job",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTAnnuler un travail en file d'attente/v1/devices/{deviceId}/jobs/{jobId}/cancel

Annuler uniquement avant que le travail ne soit pris en charge pour l'exécution.

POST /v1/devices/{deviceId}/jobs/{jobId}/cancel ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
jobId · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/jobs/<jobId>/cancel' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Cancel only before the job is claimed for execution.",
  "operationId": "post_v1_devices_deviceId_jobs_jobId_cancel",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "jobId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationKey"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Cancel a queued job",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETVérifier la disponibilité de Linux/v1/devices/{deviceId}/linux-readiness

Lire le diagnostic actuel du point de terminaison dans le cadre des informations d'identification.

GET /v1/devices/{deviceId}/linux-readiness ↗

mcp.cap.InventoryRead

Schémas (OpenAPI)

LinuxReadinessState

0 = Ready
1 = Warning
2 = Blocked
3 = NotApplicable

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/linux-readiness' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current endpoint diagnostics within credential scope.",
  "operationId": "get_v1_devices_deviceId_linux_readiness",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/LinuxReadinessReportDto"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Check Linux readiness",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETObtenir l'état du patch enregistré/v1/devices/{deviceId}/patches

Lire les informations relatives aux correctifs stockés, les mises à jour manquantes et les échecs. Cela ne recherche ni n’installe les mises à jour.

GET /v1/devices/{deviceId}/patches ↗

mcp.cap.PatchingRead

Schémas (OpenAPI)

PatchRebootBehavior

0 = Unknown
1 = Never
2 = Always
3 = CanRequest

PatchSeverity

0 = Unknown
1 = Low
2 = Moderate
3 = Important
4 = Critical

PatchUpdateType

0 = Unknown
1 = Software
2 = Driver

PatchComplianceState

0 = Unknown
1 = Compliant
2 = MissingUpdates
3 = ScanFailed
4 = Unsupported

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/patches' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read stored patch facts, missing updates and failures. This does not scan for or install updates.",
  "operationId": "get_v1_devices_deviceId_patches",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PatchFactsResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get recorded patch status",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingRead"
  ]
}
GETObtenir l'historique des performances/v1/devices/{deviceId}/performance

Lire les échantillons de performances conservés pour une plage de temps. Les lacunes signifient qu’aucun échantillon n’a été collecté.

GET /v1/devices/{deviceId}/performance ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
from · Requête · en option
Horodatage de début pour la plage horaire demandée. Incluez un décalage UTC.
to · Requête · en option
Horodatage de fin pour la plage horaire demandée. Incluez un décalage UTC et choisissez une heure après le début.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/performance' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read retained performance samples for a time range. Gaps mean no sample was collected.",
  "operationId": "get_v1_devices_deviceId_performance",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Start timestamp for the requested time range. Include a UTC offset.",
      "in": "query",
      "name": "from",
      "schema": {
        "format": "date-time",
        "type": "string"
      }
    },
    {
      "description": "End timestamp for the requested time range. Include a UTC offset and choose a time after the start.",
      "in": "query",
      "name": "to",
      "schema": {
        "format": "date-time",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PerformanceHistoryResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get performance history",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETVérifier les conditions préalables de l'appareil/v1/devices/{deviceId}/preflight

Lisez les informations stockées sur la capacité et l'état de préparation de l'appareil sans envoyer d'action.

GET /v1/devices/{deviceId}/preflight ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/preflight' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read stored device capability and readiness information without dispatching an action.",
  "operationId": "get_v1_devices_deviceId_preflight",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationDevicePreflightResponse"
          }
        }
      },
      "description": "OK"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Check device prerequisites",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETLire les processus en cours/v1/devices/{deviceId}/processes

Demander des informations de processus à un appareil autorisé.

GET /v1/devices/{deviceId}/processes ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
offset · Requête · en option
Nombre d'éléments à ignorer, en commençant à zéro. Continuez à utiliser le décalage renvoyé par le point de terminaison lorsqu'il est disponible.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/processes' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request process information from an authorised device.",
  "operationId": "get_v1_devices_deviceId_processes",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Number of items to skip, starting at zero. Continue using the offset returned by the endpoint when available.",
      "in": "query",
      "name": "offset",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiObservedPageOfProcessInfoDto"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read running processes",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTTerminer un processus/v1/devices/{deviceId}/processes/terminate

Vérifier l'ID et le nom du processus avant la terminaison. Cette vérification n'est pas atomique au niveau du point de terminaison.

POST /v1/devices/{deviceId}/processes/terminate ↗

mcp.cap.InventoryRead + mcp.cap.CommandsExecute

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "expectedName": "<value>",
    "processId": 1
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/processes/terminate' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Check the process ID and name before termination. This check is not atomic at the endpoint.",
  "operationId": "post_v1_devices_deviceId_processes_terminate",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationKillProcess"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Terminate a process",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead",
    "mcp.cap.CommandsExecute"
  ]
}
GETVérifier le bureau à distance Windows/v1/devices/{deviceId}/rdp

Lire le diagnostic actuel du point de terminaison dans le cadre des informations d'identification.

GET /v1/devices/{deviceId}/rdp ↗

mcp.cap.InventoryRead

Schémas (OpenAPI)

WindowsRdpState

0 = Unknown
1 = Disabled
2 = Enabled
3 = PolicyBlocked
4 = Unsupported

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/rdp' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current endpoint diagnostics within credential scope.",
  "operationId": "get_v1_devices_deviceId_rdp",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationRdpStatus"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Check Windows remote desktop",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTActiver le bureau à distance Windows/v1/devices/{deviceId}/rdp/enable

Activer le bureau à distance avec les mesures de protection existantes du point de terminaison.

POST /v1/devices/{deviceId}/rdp/enable ↗

mcp.cap.DeviceMaintenance

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": false
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/rdp/enable' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Enable remote desktop with existing endpoint safeguards.",
  "operationId": "post_v1_devices_deviceId_rdp_enable",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfboolean"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Enable Windows remote desktop",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.DeviceMaintenance"
  ]
}
GETLire les services du périphérique/v1/devices/{deviceId}/services

Demander des informations de service à partir d'un appareil autorisé ; la disponibilité des appareils affecte le résultat.

GET /v1/devices/{deviceId}/services ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
offset · Requête · en option
Nombre d'éléments à ignorer, en commençant à zéro. Continuez à utiliser le décalage renvoyé par le point de terminaison lorsqu'il est disponible.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/services' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request service information from an authorised device; device availability affects the result.",
  "operationId": "get_v1_devices_deviceId_services",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Number of items to skip, starting at zero. Continue using the offset returned by the endpoint when available.",
      "in": "query",
      "name": "offset",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiObservedPageOfServiceInfoDto"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read device services",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETObtenir le logiciel installé/v1/devices/{deviceId}/software

Lire les observations logicielles enregistrées dans les pages. Cela n'analyse ni n'installe de logiciel.

GET /v1/devices/{deviceId}/software ↗

mcp.cap.InventoryRead

Observations logicielles stockées uniquement, au maximum 100 par page. items null signifie aucun instantané stocké ; vide items signifie une liste vide observée. Le numérique after est un décalage. Redémarrez une exportation si updatedAtUtc change.

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/software' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Stored software observations only, at most 100 per page. items null means no stored snapshot; empty items means an observed empty list. Numeric after is an offset. Restart an export if updatedAtUtc changes.",
  "operationId": "get_v1_devices_deviceId_software",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/SoftwareResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get installed software",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTInstaller le logiciel/v1/devices/{deviceId}/software/install

Demandez l'installation du logiciel fourni sur un appareil autorisé et inspectez le résultat de l'opération.

POST /v1/devices/{deviceId}/software/install ↗

mcp.cap.SoftwareManage + mcp.cap.AutomationRead + mcp.cap.AutomationExecute

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "packageVersionId": "<UUID>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/software/install' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request installation of the supplied software on an authorised device and inspect the operation result.",
  "operationId": "post_v1_devices_deviceId_software_install",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationSoftwareInstall"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Install software",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.SoftwareManage",
    "mcp.cap.AutomationRead",
    "mcp.cap.AutomationExecute"
  ]
}
POSTDésinstaller le logiciel/v1/devices/{deviceId}/software/uninstall

Demander la suppression du logiciel sélectionné d'un appareil autorisé.

POST /v1/devices/{deviceId}/software/uninstall ↗

mcp.cap.SoftwareManage

Schémas (OpenAPI)

SoftwareKind

0 = ClassicDesktop
1 = PackagedApp

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "identifier": "<value>",
    "kind": 0,
    "name": "<value>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/software/uninstall' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request removal of selected software from an authorised device.",
  "operationId": "post_v1_devices_deviceId_software_uninstall",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfSoftwareUninstallRequestDto"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Uninstall software",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.SoftwareManage"
  ]
}
GETObtenir l'état du test de vitesse/v1/devices/{deviceId}/speed-tests

Lisez l'état du test de vitesse de l'appareil et les résultats disponibles.

GET /v1/devices/{deviceId}/speed-tests ↗

mcp.cap.NetworkRead

Schémas (OpenAPI)

NetworkInternetSpeedRunStatus

0 = Queued
1 = Assigned
2 = Completed
3 = CancelRequested
4 = Cancelled
5 = Failed
6 = Expired

NetworkLinkMedium

0 = Unknown
1 = Ethernet
2 = WiFi
3 = Cellular
4 = OtherPhysical

NetworkInternetSpeedProfile

0 = Standard
1 = LowBandwidth

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/speed-tests' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the device's speed-test status and available results.",
  "operationId": "get_v1_devices_deviceId_speed_tests",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/NetworkInternetSpeedDeviceSummary"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get speed-test status",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
GETLire l'historique des tests de vitesse/v1/devices/{deviceId}/speed-tests/history

Parcourir les résultats de tests de vitesse conservés pour un appareil.

GET /v1/devices/{deviceId}/speed-tests/history ↗

mcp.cap.NetworkRead

Schémas (OpenAPI)

NetworkInternetSpeedRunKind

0 = Scheduled
1 = Manual

NetworkLinkMedium

0 = Unknown
1 = Ethernet
2 = WiFi
3 = Cellular
4 = OtherPhysical

NetworkInternetSpeedOutcome

0 = Succeeded
1 = Failed
2 = Cancelled
3 = DeferredBusy
4 = ServerConstrained
5 = InterfaceUnavailable

NetworkInternetSpeedRunStatus

0 = Queued
1 = Assigned
2 = Completed
3 = CancelRequested
4 = Cancelled
5 = Failed
6 = Expired

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/speed-tests/history' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Browse retained speed-test results for a device.",
  "operationId": "get_v1_devices_deviceId_speed_tests_history",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/NetworkInternetSpeedHistoryPage"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read speed-test history",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
GETObtenez un test de vitesse/v1/devices/{deviceId}/speed-tests/{runId}

Lire un test de vitesse enregistré à l'aide de son ID.

GET /v1/devices/{deviceId}/speed-tests/{runId} ↗

mcp.cap.NetworkRead

Schémas (OpenAPI)

NetworkInternetSpeedOutcome

0 = Succeeded
1 = Failed
2 = Cancelled
3 = DeferredBusy
4 = ServerConstrained
5 = InterfaceUnavailable

NetworkInternetSpeedRunStatus

0 = Queued
1 = Assigned
2 = Completed
3 = CancelRequested
4 = Cancelled
5 = Failed
6 = Expired

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
runId · Chemin · requis
Identifiant d'exécution de domaine renvoyé par le résultat de l'opération, et non l'identifiant de réception de l'opération.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/speed-tests/<runId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read one recorded speed-test run using its ID.",
  "operationId": "get_v1_devices_deviceId_speed_tests_runId",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Domain run identifier returned by the operation result, not the operation receipt identifier.",
      "in": "path",
      "name": "runId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/NetworkInternetSpeedRunSummary"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get a speed-test run",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
POSTCréer un administrateur temporaire/v1/devices/{deviceId}/temporary-admin

Retourner les informations d'identification une seule fois, pour une durée allant jusqu'à 24 heures. Les reçus stockés ne contiennent jamais le mot de passe.

POST /v1/devices/{deviceId}/temporary-admin ↗

mcp.cap.CommandsExecute + mcp.cap.SecurityRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": 1
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/temporary-admin' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Return credentials once, for up to 24 hours. Stored receipts never contain the password.",
  "operationId": "post_v1_devices_deviceId_temporary_admin",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfint"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationTemporaryAdminResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a temporary administrator",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.CommandsExecute",
    "mcp.cap.SecurityRead"
  ]
}
GETLire la vignette d'un appareil/v1/devices/{deviceId}/thumbnail

Lire une miniature de bureau disponible, soumise à la politique d'accès et de miniature.

GET /v1/devices/{deviceId}/thumbnail ↗

mcp.cap.ScreenRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/thumbnail' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read an available desktop thumbnail, subject to access and thumbnail policy.",
  "operationId": "get_v1_devices_deviceId_thumbnail",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationThumbnailImage"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read a device thumbnail",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.ScreenRead"
  ]
}
POSTActualiser la vignette d'un appareil/v1/devices/{deviceId}/thumbnail/refresh

Demandez une nouvelle miniature de bureau à partir d'un appareil éligible. Dispatch ne garantit pas une nouvelle image.

POST /v1/devices/{deviceId}/thumbnail/refresh ↗

mcp.cap.ScreenRead + mcp.cap.DeviceRefresh

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/thumbnail/refresh' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request a new desktop thumbnail from an eligible device. Dispatch does not guarantee a new image.",
  "operationId": "post_v1_devices_deviceId_thumbnail_refresh",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationKey"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Refresh a device thumbnail",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.ScreenRead",
    "mcp.cap.DeviceRefresh"
  ]
}
GETListe des machines virtuelles/v1/devices/{deviceId}/virtual-machines

Lire les machines virtuelles signalées par ce périphérique.

GET /v1/devices/{deviceId}/virtual-machines ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/virtual-machines' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the virtual machines reported by this device.",
  "operationId": "get_v1_devices_deviceId_virtual_machines",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ItemCollectionOfVirtualMachineResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List virtual machines",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETObtenir les détails de la virtualisation/v1/devices/{deviceId}/virtualisation

Lisez le résumé de virtualisation stocké sur l'appareil.

GET /v1/devices/{deviceId}/virtualisation ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/virtualisation' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the device's stored virtualisation summary.",
  "operationId": "get_v1_devices_deviceId_virtualisation",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/VirtualisationResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get virtualisation details",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETObtenir les disques du périphérique/v1/devices/{deviceId}/volumes

Lit les informations sur le volume stocké, telles que la capacité du disque et l'espace disponible.

GET /v1/devices/{deviceId}/volumes ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/volumes' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read stored volume information, such as disk capacity and available space.",
  "operationId": "get_v1_devices_deviceId_volumes",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ItemCollectionOfVolumeResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get device disks",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETLire les informations de garantie/v1/devices/{deviceId}/warranty

Lisez la recherche de garantie stockée et ses informations de fraîcheur.

GET /v1/devices/{deviceId}/warranty ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/warranty' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the stored warranty lookup and its freshness information.",
  "operationId": "get_v1_devices_deviceId_warranty",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AssetInventorySection"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read warranty information",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTActualiser les informations de garantie/v1/devices/{deviceId}/warranty/refresh

Demandez une recherche de garantie mise à jour plutôt que de lire uniquement le résultat stocké.

POST /v1/devices/{deviceId}/warranty/refresh ↗

mcp.cap.DeviceRefresh

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/warranty/refresh' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request an updated warranty lookup rather than reading only the stored result.",
  "operationId": "post_v1_devices_deviceId_warranty_refresh",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationWarrantyRefresh"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Refresh warranty information",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.DeviceRefresh"
  ]
}
POSTObtenez plusieurs appareils/v1/devices:batch-get

Lire les résumés d’une liste fournie d’ID de périphérique en une seule requête.

POST /v1/devices:batch-get ↗

mcp.cap.InventoryRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "ids": [
    "<UUID>"
  ]
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices:batch-get' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read summaries for a supplied list of device IDs in one request.",
  "operationId": "post_v1_devices_batch_get",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IdBatch"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ItemCollectionOfDeviceResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get several devices",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTAudit de l’appareil en requête/v1/history/devices/query

Lisez les preuves actuelles à l’encadrement. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée. Fournissez un CompanyId autorisé.

POST /v1/history/devices/query ↗

mcp.cap.ActivityRead

Schémas (OpenAPI)

AuditRowKind

0 = Session
1 = AgentConnected
2 = AgentDisconnected
3 = TechnicianConnected
4 = TechnicianDisconnected
5 = ResourceBrowsed
6 = DeviceWoken
7 = CommandRun
8 = ConsoleCommand
9 = FileOperation
10 = WebNavigation
11 = GuestPassGenerated
12 = GuestPassRevoked
13 = GuestPassUsed
14 = AiResolver
15 = UserLogon
16 = UserLogoff
17 = SessionLocked
18 = SessionUnlocked
19 = RdpConnected
20 = RdpDisconnected
21 = MachineShuttingDown
22 = MachinePoweredOn
23 = AgentServiceStarted
24 = AgentServiceStopped
25 = MachineSuspending
26 = MachineResumed
27 = HardwareAdded
28 = HardwareRemoved
29 = HardwareChanged
30 = SoftwareInstalled
31 = SoftwareRemoved
32 = SoftwareUpdated
33 = OperatingSystemChanged
34 = AgentUpdated
35 = PatchComplianceChanged
36 = SecurityChanged
37 = NetworkConfigurationChanged
38 = BitLockerManagement
39 = SessionLaunch
40 = DeviceTool
41 = SessionControl
42 = RemoteResource
43 = JobQueue
44 = Chat
45 = SessionAction
46 = IdracMonitoringAccount

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "companyId": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/history/devices/query' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started. Supply an authorized CompanyId.",
  "operationId": "post_v1_history_devices_query",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationHistoryQuery"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/DeviceAuditRowsPageDto"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Query device audit",
  "tags": [
    "Reports"
  ],
  "x-required-capabilities": [
    "mcp.cap.ActivityRead"
  ]
}
POSTHistorique des requêtes de la session/v1/history/sessions/query

Lisez les preuves actuelles à l’encadrement. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée. Fournissez un CompanyId autorisé.

POST /v1/history/sessions/query ↗

mcp.cap.ActivityRead

Schémas (OpenAPI)

AuditRowKind

0 = Session
1 = AgentConnected
2 = AgentDisconnected
3 = TechnicianConnected
4 = TechnicianDisconnected
5 = ResourceBrowsed
6 = DeviceWoken
7 = CommandRun
8 = ConsoleCommand
9 = FileOperation
10 = WebNavigation
11 = GuestPassGenerated
12 = GuestPassRevoked
13 = GuestPassUsed
14 = AiResolver
15 = UserLogon
16 = UserLogoff
17 = SessionLocked
18 = SessionUnlocked
19 = RdpConnected
20 = RdpDisconnected
21 = MachineShuttingDown
22 = MachinePoweredOn
23 = AgentServiceStarted
24 = AgentServiceStopped
25 = MachineSuspending
26 = MachineResumed
27 = HardwareAdded
28 = HardwareRemoved
29 = HardwareChanged
30 = SoftwareInstalled
31 = SoftwareRemoved
32 = SoftwareUpdated
33 = OperatingSystemChanged
34 = AgentUpdated
35 = PatchComplianceChanged
36 = SecurityChanged
37 = NetworkConfigurationChanged
38 = BitLockerManagement
39 = SessionLaunch
40 = DeviceTool
41 = SessionControl
42 = RemoteResource
43 = JobQueue
44 = Chat
45 = SessionAction
46 = IdracMonitoringAccount

SessionEndReason

0 = EndedByTechnician
1 = ClientEnded
2 = TimedOutIdle
3 = ConnectionLost
4 = TechnicianDisconnected
5 = RelayRestarted
6 = GuestPassRevoked
7 = GuestPassExpired
8 = LicenseSuspended
9 = LicenseDeleted
10 = CommerciallyRestricted
11 = ConsentDenied
12 = ConsentTimedOut
13 = EndedByEndUser

SessionKind

0 = Desktop
1 = Browsing
2 = Console
3 = FileBrowser
4 = Ghost
5 = RemoteResources
6 = RemoteIpScan
7 = HyperVConsole

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "companyId": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/history/sessions/query' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started. Supply an authorized CompanyId.",
  "operationId": "post_v1_history_sessions_query",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationHistoryQuery"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AuditRowsPageDto"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Query session history",
  "tags": [
    "Reports"
  ],
  "x-required-capabilities": [
    "mcp.cap.ActivityRead"
  ]
}
GETObtenez des intégrations PSA/v1/integrations/psa

Lire les preuves actuelles à portée de poids. Les preuves manquantes sont inconnues. Aucune action sur le point final ni charge IA n’est lancée. SaaS seulement ; portée à l’échelle de l’organisation. Les identifiants du fournisseur sont en écriture seule et les révisions existantes sont requises pour les modifications.

GET /v1/integrations/psa ↗

mcp.cap.SettingsRead + mcp.cap.WebhooksRead

Paramètres

after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/integrations/psa' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started. SaaS only; organization-wide scope. Provider credentials are write-only and existing revisions are required for edits.",
  "operationId": "get_v1_integrations_psa",
  "parameters": [
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationPsaView"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get PSA integrations",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.SettingsRead",
    "mcp.cap.WebhooksRead"
  ]
}
PUTSauvegarder la connexion PSA/v1/integrations/psa/connections

Nécessite FullAccess et l’autorité actuelle du propriétaire. Fournir une clé d’idempotence, réutiliser la même demande after incertitude, et inspecter le reçu d’opération. SaaS seulement ; portée à l’échelle de l’organisation. Les identifiants du fournisseur sont en écriture seule et les révisions existantes sont requises pour les modifications.

PUT /v1/integrations/psa/connections ↗

mcp.cap.SettingsManage + mcp.cap.WebhooksWrite

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "baseUrl": "<value>",
    "credentials": {
      "clientId": "<value>",
      "secret": "<secret>"
    },
    "enabled": false,
    "id": "<UUID>",
    "provider": "<value>",
    "revision": 1
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/integrations/psa/connections' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt. SaaS only; organization-wide scope. Provider credentials are write-only and existing revisions are required for edits.",
  "operationId": "put_v1_integrations_psa_connections",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationPsaConnection"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Save PSA connection",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.SettingsManage",
    "mcp.cap.WebhooksWrite"
  ]
}
PUTMise en pause de la livraison du PSA/v1/integrations/psa/deliveries/pause

Nécessite FullAccess et l’autorité actuelle du propriétaire. Fournir une clé d’idempotence, réutiliser la même demande after incertitude, et inspecter le reçu d’opération. SaaS seulement ; portée à l’échelle de l’organisation. Les identifiants du fournisseur sont en écriture seule et les révisions existantes sont requises pour les modifications.

PUT /v1/integrations/psa/deliveries/pause ↗

mcp.cap.WebhooksWrite

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "id": "<UUID>",
    "paused": false,
    "revision": 1
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/integrations/psa/deliveries/pause' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt. SaaS only; organization-wide scope. Provider credentials are write-only and existing revisions are required for edits.",
  "operationId": "put_v1_integrations_psa_deliveries_pause",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationPsaPause"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Set PSA delivery paused",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.WebhooksWrite"
  ]
}
PUTSauvegarder la cartographie PSA/v1/integrations/psa/mappings

Nécessite FullAccess et l’autorité actuelle du propriétaire. Fournir une clé d’idempotence, réutiliser la même demande after incertitude, et inspecter le reçu d’opération. SaaS seulement ; portée à l’échelle de l’organisation. Les identifiants du fournisseur sont en écriture seule et les révisions existantes sont requises pour les modifications.

PUT /v1/integrations/psa/mappings ↗

mcp.cap.SettingsManage + mcp.cap.WebhooksWrite

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "closedStatusId": 1,
    "companyId": "<UUID>",
    "connectionId": "<UUID>",
    "customerId": 1,
    "openStatusId": 1,
    "priorityId": 1,
    "queueId": 1,
    "revision": 1,
    "ticketTypeId": 1
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/integrations/psa/mappings' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt. SaaS only; organization-wide scope. Provider credentials are write-only and existing revisions are required for edits.",
  "operationId": "put_v1_integrations_psa_mappings",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationPsaMapping"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Save PSA mapping",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.SettingsManage",
    "mcp.cap.WebhooksWrite"
  ]
}
GETRechercher les clients PSA/v1/integrations/psa/{id}/customers

Lire les preuves actuelles à portée de poids. Les preuves manquantes sont inconnues. Aucune action sur le point final ni charge IA n’est lancée. SaaS seulement ; portée à l’échelle de l’organisation. Les identifiants du fournisseur sont en écriture seule et les révisions existantes sont requises pour les modifications.

GET /v1/integrations/psa/{id}/customers ↗

mcp.cap.SettingsRead + mcp.cap.WebhooksRead

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.
search · Requête · requis
Texte de recherche client, maximum 200 caractères.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/integrations/psa/<id>/customers?search=<search>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started. SaaS only; organization-wide scope. Provider credentials are write-only and existing revisions are required for edits.",
  "operationId": "get_v1_integrations_psa_id_customers",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Customer search text, at most 200 characters.",
      "in": "query",
      "name": "search",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/IntegrationPsaCustomer"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Search PSA customers",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.SettingsRead",
    "mcp.cap.WebhooksRead"
  ]
}
GETParcourir l'inventaire de la flotte/v1/queries/inventory

Lisez les résumés de matériel et de sécurité stockés sur tous les appareils, éventuellement limités à une seule entreprise.

GET /v1/queries/inventory ↗

mcp.cap.InventoryRead

Paramètres

companyId · Requête · en option
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/queries/inventory' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read stored hardware and security summaries across devices, optionally restricted to one company.",
  "operationId": "get_v1_queries_inventory",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "query",
      "name": "companyId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfInventoryResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Browse fleet inventory",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETRechercher les logiciels installés/v1/queries/software

Lisez les inventaires de logiciels enregistrés sur tous les appareils, avec un filtre de nom de logiciel en option. Aucune analyse n'est lancée.

GET /v1/queries/software ↗

mcp.cap.InventoryRead

Paramètres

companyId · Requête · en option
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
name · Requête · en option
Filtrer par nom d'appareil ou de logiciel, en fonction de la ressource interrogée.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/queries/software' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read saved software inventories across devices, with an optional software-name filter. No scan is started.",
  "operationId": "get_v1_queries_software",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "query",
      "name": "companyId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Filter by a device or software name, according to the resource being queried.",
      "in": "query",
      "name": "name",
      "schema": {
        "type": "string"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfFleetSoftwareItem"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Find installed software",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETRechercher des sessions utilisateur/v1/queries/user-sessions

Recherchez des informations sur la session utilisateur dans la portée de votre appareil autorisé.

GET /v1/queries/user-sessions ↗

mcp.cap.InventoryRead

Paramètres

userName · Requête · requis
Nom d'utilisateur à rechercher dans les sessions utilisateur actives dans la portée des informations d'identification.
companyId · Requête · en option
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/queries/user-sessions?userName=<userName>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Search for user-session information within your permitted device scope.",
  "operationId": "get_v1_queries_user_sessions",
  "parameters": [
    {
      "description": "User name to find in active user sessions within credential scope.",
      "in": "query",
      "name": "userName",
      "required": true,
      "schema": {
        "type": "string"
      }
    },
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "query",
      "name": "companyId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiUserSessionPage"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Find user sessions",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTHistorique des résolveurs de requêtes/v1/resolver/history/query

Lisez les preuves actuelles avec un périmètre. Les preuves manquantes sont inconnues. Aucune action sur le point final ni accusation d’IA n’est engagée. Enquêtes créatrices des 30 derniers jours, jusqu’à 100 par page ; poursuivre avec Next. Fournir un CompanyId autorisé.

POST /v1/resolver/history/query ↗

mcp.cap.AssistantRead + mcp.cap.SecurityRead

Schémas (OpenAPI)

AiResolverChargeMode

0 = CustomerUsage
1 = ProviderCost
2 = TrialIncluded

AiResolverEventType

0 = Initial
1 = FollowUp
2 = Retry

AiResolverRunStatus

0 = Accepted
1 = Queued
2 = Running
3 = CollectingEvidence
4 = Synthesizing
5 = Validating
6 = Completed
7 = Failed
8 = Refused
9 = TimedOut
10 = Cancelled

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "companyId": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/resolver/history/query' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started. Creator-owned investigations from the last 30 days, up to 100 per page; continue with Next. Supply an authorized CompanyId.",
  "operationId": "post_v1_resolver_history_query",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationResolverQuery"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationResolverPage"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Query resolver history",
  "tags": [
    "AI"
  ],
  "x-required-capabilities": [
    "mcp.cap.AssistantRead",
    "mcp.cap.SecurityRead"
  ]
}
GETObtenir un résultat du résolveur/v1/resolver/runs/{id}

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

GET /v1/resolver/runs/{id} ↗

mcp.cap.AssistantRead + mcp.cap.SecurityRead

Schémas (OpenAPI)

AiResolverChargeMode

0 = CustomerUsage
1 = ProviderCost
2 = TrialIncluded

AiResolverEventType

0 = Initial
1 = FollowUp
2 = Retry

AiResolverRunStatus

0 = Accepted
1 = Queued
2 = Running
3 = CollectingEvidence
4 = Synthesizing
5 = Validating
6 = Completed
7 = Failed
8 = Refused
9 = TimedOut
10 = Cancelled

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/resolver/runs/<id>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "get_v1_resolver_runs_id",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AiResolverRunView"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get resolver result",
  "tags": [
    "AI"
  ],
  "x-required-capabilities": [
    "mcp.cap.AssistantRead",
    "mcp.cap.SecurityRead"
  ]
}
GETPolitique de lecture des vignettes/v1/settings/device-thumbnails

Lisez les paramètres contrôlant la collection de vignettes du bureau.

GET /v1/settings/device-thumbnails ↗

mcp.cap.SettingsRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/settings/device-thumbnails' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the settings controlling desktop thumbnail collection.",
  "operationId": "get_v1_settings_device_thumbnails",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationThumbnailPolicyView"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read thumbnail policy",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.SettingsRead"
  ]
}
PUTMettre à jour la politique relative aux vignettes/v1/settings/device-thumbnails

Modifiez la stratégie contrôlant la collection de miniatures de bureau pour la portée autorisée.

PUT /v1/settings/device-thumbnails ↗

mcp.cap.SettingsManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "enabled": false
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/settings/device-thumbnails' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Change the policy controlling desktop thumbnail collection for the permitted scope.",
  "operationId": "put_v1_settings_device_thumbnails",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationThumbnailPolicy"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Update thumbnail policy",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.SettingsManage"
  ]
}
POSTTests de vitesse de démarrage/v1/speed-tests

Demander des tests de vitesse pour les cibles fournies. Ces tests génèrent du trafic réseau.

POST /v1/speed-tests ↗

mcp.cap.NetworkScan

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "deviceId": "<UUID>",
    "interfaceId": "<value>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/speed-tests' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request speed tests for the supplied targets. These tests generate network traffic.",
  "operationId": "post_v1_speed_tests",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationSpeedTestStart"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Start speed tests",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkScan"
  ]
}
POSTAnnuler les tests de vitesse/v1/speed-tests/cancel

Demander l'annulation du travail de test de vitesse sélectionné.

POST /v1/speed-tests/cancel ↗

mcp.cap.NetworkScan

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "deviceId": "<UUID>",
    "runId": "<UUID>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/speed-tests/cancel' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request cancellation of the selected speed-test work.",
  "operationId": "post_v1_speed_tests_cancel",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationSpeedTestCancel"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Cancel speed tests",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkScan"
  ]
}
POSTObtenez des disques pour plusieurs appareils/v1/volumes:batch-query

Lire les informations de volume stockées pour un ensemble d'appareils fourni.

POST /v1/volumes:batch-query ↗

mcp.cap.InventoryRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "ids": [
    "<UUID>"
  ]
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/volumes:batch-query' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read stored volume information for a supplied set of devices.",
  "operationId": "post_v1_volumes_batch_query",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IdBatch"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ItemCollectionOfVolumeResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get disks for several devices",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
Assistance9
POSTDemander la confirmation de l'utilisateur/v1/devices/{deviceId}/confirmations

Demander une réponse à l'utilisateur de l'appareil avant de poursuivre un flux de travail pris en charge.

POST /v1/devices/{deviceId}/confirmations ↗

mcp.cap.InventoryRead + mcp.cap.DeviceMessage

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "expectedUserName": "<value>",
    "message": "<value>",
    "windowsSessionId": 1
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/confirmations' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request a response from the device user before continuing a supported workflow.",
  "operationId": "post_v1_devices_deviceId_confirmations",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationUserMessage"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Ask for user confirmation",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead",
    "mcp.cap.DeviceMessage"
  ]
}
POSTRedémarrer après confirmation/v1/devices/{deviceId}/confirmed-restart

Demandez un redémarrage à l'aide du workflow de confirmation utilisateur. Une requête ne prouve pas en elle-même que le redémarrage est terminé.

POST /v1/devices/{deviceId}/confirmed-restart ↗

mcp.cap.InventoryRead + mcp.cap.PowerControl + mcp.cap.DeviceMessage

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "confirmationId": "<UUID>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/confirmed-restart' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request a restart using the user-confirmation workflow. A request does not itself prove the restart completed.",
  "operationId": "post_v1_devices_deviceId_confirmed_restart",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationConsentRestart"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Restart after confirmation",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead",
    "mcp.cap.PowerControl",
    "mcp.cap.DeviceMessage"
  ]
}
POSTEnvoyer un message utilisateur/v1/devices/{deviceId}/messages

Afficher un message à la personne utilisant l'appareil sélectionné.

POST /v1/devices/{deviceId}/messages ↗

mcp.cap.InventoryRead + mcp.cap.DeviceMessage

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "expectedUserName": "<value>",
    "message": "<value>",
    "windowsSessionId": 1
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/messages' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Display a message to the person using the selected device.",
  "operationId": "post_v1_devices_deviceId_messages",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationUserMessage"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Send a user message",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead",
    "mcp.cap.DeviceMessage"
  ]
}
GETListe des laissez-passer visiteurs/v1/devices/{deviceId}/visitor-passes

Lire les laissez-passer des visiteurs associés à un appareil.

GET /v1/devices/{deviceId}/visitor-passes ↗

mcp.cap.ScreenRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/visitor-passes' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read visitor passes associated with one device.",
  "operationId": "get_v1_devices_deviceId_visitor_passes",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiVisitorPassPage"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List visitor passes",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.ScreenRead"
  ]
}
GETRépertorier les sessions d'assistance rapide/v1/quick-support

Lisez les sessions d'assistance rapide disponibles pour votre identifiant.

GET /v1/quick-support ↗

mcp.cap.ScreenRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/quick-support' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the Quick Support sessions available to your credential.",
  "operationId": "get_v1_quick_support",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/ApiQuickSupportItem"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List Quick Support sessions",
  "tags": [
    "Support"
  ],
  "x-required-capabilities": [
    "mcp.cap.ScreenRead"
  ]
}
POSTCréer un accès au support rapide/v1/quick-support

Créez une invitation d'assistance assistée à l'aide des paramètres d'accès fournis.

POST /v1/quick-support ↗

mcp.cap.ScreenControl + mcp.cap.EnrollmentManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/quick-support' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Create an attended-support invitation using the supplied access settings.",
  "operationId": "post_v1_quick_support",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationKey"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create Quick Support access",
  "tags": [
    "Support"
  ],
  "x-required-capabilities": [
    "mcp.cap.ScreenControl",
    "mcp.cap.EnrollmentManage"
  ]
}
POSTRévoquer l’accès à l’assistance rapide/v1/quick-support/{id}/revoke

Révoquer l'invitation d'assistance rapide sélectionnée.

POST /v1/quick-support/{id}/revoke ↗

mcp.cap.ScreenControl + mcp.cap.EnrollmentManage

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/quick-support/<id>/revoke' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Revoke the selected Quick Support invitation.",
  "operationId": "post_v1_quick_support_id_revoke",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationKey"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Revoke Quick Support access",
  "tags": [
    "Support"
  ],
  "x-required-capabilities": [
    "mcp.cap.ScreenControl",
    "mcp.cap.EnrollmentManage"
  ]
}
POSTCréer un pass visiteur/v1/visitor-passes

Créez un accès visiteur temporaire avec le périphérique et les restrictions demandés.

POST /v1/visitor-passes ↗

mcp.cap.ScreenControl + mcp.cap.EnrollmentManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "deviceId": "<UUID>",
    "lifetimeMinutes": 1
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/visitor-passes' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Create temporary visitor access with the requested device and restrictions.",
  "operationId": "post_v1_visitor_passes",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationVisitorPass"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a visitor pass",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.ScreenControl",
    "mcp.cap.EnrollmentManage"
  ]
}
POSTRévoquer un laissez-passer visiteur/v1/visitor-passes/{id}/revoke

Empêche le pass visiteur sélectionné d'accorder un accès supplémentaire.

POST /v1/visitor-passes/{id}/revoke ↗

mcp.cap.ScreenControl + mcp.cap.EnrollmentManage

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/visitor-passes/<id>/revoke' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Stop the selected visitor pass from granting further access.",
  "operationId": "post_v1_visitor_passes_id_revoke",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationKey"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Revoke a visitor pass",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.ScreenControl",
    "mcp.cap.EnrollmentManage"
  ]
}
Automatisation72
PUTAlerte d’enregistrement du routage/v1/automation/alert-routing

Cela nécessite FullAccess et l’autorité du propriétaire actuel. Fournissez une clé d’idempotence, réutilisez la même demande after incertitude, et inspectez le reçu d’opération.

PUT /v1/automation/alert-routing ↗

mcp.cap.AutomationManage + mcp.cap.AlertWrite

Schémas (OpenAPI)

AutomationAlertRoutingKind

0 = QuietHours
1 = ParentDependency

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "expectedRevision": 1,
    "id": "<UUID>",
    "kind": 0,
    "name": "<value>"
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/automation/alert-routing' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt.",
  "operationId": "put_v1_automation_alert_routing",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfAutomationAlertRoutingInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Save alert routing",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AlertWrite"
  ]
}
POSTValider le routage d’alerte/v1/automation/alert-routing/validate

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

POST /v1/automation/alert-routing/validate ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationAlertRoutingKind

0 = QuietHours
1 = ParentDependency

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "companyId": "<UUID>",
  "expectedRevision": 1,
  "id": "<UUID>",
  "kind": 0,
  "name": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/alert-routing/validate' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "post_v1_automation_alert_routing_validate",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/AutomationAlertRoutingInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationValidation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Validate alert routing",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
POSTAcquitter une alerte de moniteur/v1/automation/alerts/{id}/acknowledge

Accuser réception d'une alerte via le service d'automatisation. Envoyer idempotencyKey dans le corps de la requête et suivre le reçu d'opération. Le problème n'est pas résolu.

POST /v1/automation/alerts/{id}/acknowledge ↗

mcp.cap.AutomationManage

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/alerts/<id>/acknowledge' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Acknowledge an alert through the automation service. Send idempotencyKey in the request body and follow the returned operation receipt. It does not fix the fault.",
  "operationId": "post_v1_automation_alerts_id_acknowledge",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationKey"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Acknowledge a monitor alert",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage"
  ]
}
GETRoutage d’alertes par liste/v1/automation/companies/{companyId}/alert-routing

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

GET /v1/automation/companies/{companyId}/alert-routing ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationAlertRoutingKind

0 = QuietHours
1 = ParentDependency

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/companies/<companyId>/alert-routing' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "get_v1_automation_companies_companyId_alert_routing",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/AutomationAlertRoutingInput"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List alert routing",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
PUTExclusions des patchs de sauvegarde/v1/automation/companies/{companyId}/patch-exclusions

Cela nécessite FullAccess et l’autorité du propriétaire actuel. Fournissez une clé d’idempotence, réutilisez la même demande after incertitude, et inspectez le reçu d’opération.

PUT /v1/automation/companies/{companyId}/patch-exclusions ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": [
    "<UUID>"
  ]
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/automation/companies/<companyId>/patch-exclusions' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt.",
  "operationId": "put_v1_automation_companies_companyId_patch_exclusions",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid[]"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Save patch exclusions",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingManage",
    "mcp.cap.PatchingExecute"
  ]
}
GETBalises de liste/v1/automation/companies/{companyId}/tags

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

GET /v1/automation/companies/{companyId}/tags ↗

mcp.cap.AutomationRead

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/companies/<companyId>/tags' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "get_v1_automation_companies_companyId_tags",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationTagPage"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List tags",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
GETListe des politiques de configuration/v1/automation/configuration-policies

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

GET /v1/automation/configuration-policies ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

ConfigurationBaselineControl

0 = Firewall
1 = BitLocker
2 = LocalAdministrators
3 = ScreenLock
4 = UsbStorage

ConfigurationBaselineMode

0 = Audit
1 = Enforce

BaselineUsbAccess

0 = Allow
1 = ReadOnly
2 = Block

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationSimpleTriggerKind

0 = Once
1 = EveryMinutes
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = DeviceOnline
7 = DeviceOffline
8 = DeviceBooted
9 = FactsChanged
10 = UserLogon
11 = UserLogoff
12 = SessionLocked
13 = SessionUnlocked
14 = RdpConnected
15 = RdpDisconnected
16 = MachineShuttingDown
17 = MachinePoweredOn
18 = AgentServiceStarted
19 = AgentServiceStopped
20 = MachineSuspending
21 = MachineResumed
22 = Cron

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

AutomationState

0 = Draft
1 = Enabled
2 = Paused
3 = Archived

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/configuration-policies' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "get_v1_automation_configuration_policies",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/ConfigurationBaselineListItem"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List configuration policies",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
POSTCréer une politique de configuration/v1/automation/configuration-policies

Cela nécessite FullAccess et l’autorité du propriétaire actuel. Fournissez une clé d’idempotence, réutilisez la même demande after incertitude, et inspectez le reçu d’opération.

POST /v1/automation/configuration-policies ↗

mcp.cap.AutomationManage + mcp.cap.SettingsManage

Schémas (OpenAPI)

ConfigurationBaselineControl

0 = Firewall
1 = BitLocker
2 = LocalAdministrators
3 = ScreenLock
4 = UsbStorage

ConfigurationBaselineMode

0 = Audit
1 = Enforce

BaselineUsbAccess

0 = Allow
1 = ReadOnly
2 = Block

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationSimpleTriggerKind

0 = Once
1 = EveryMinutes
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = DeviceOnline
7 = DeviceOffline
8 = DeviceBooted
9 = FactsChanged
10 = UserLogon
11 = UserLogoff
12 = SessionLocked
13 = SessionUnlocked
14 = RdpConnected
15 = RdpDisconnected
16 = MachineShuttingDown
17 = MachinePoweredOn
18 = AgentServiceStarted
19 = AgentServiceStopped
20 = MachineSuspending
21 = MachineResumed
22 = Cron

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "description": "<value>",
    "name": "<value>",
    "policy": {
      "control": 0
    },
    "schedule": {
      "kind": 0
    },
    "scope": {
      "kind": 0
    }
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/configuration-policies' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt.",
  "operationId": "post_v1_automation_configuration_policies",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfConfigurationBaselineInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create configuration policy",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.SettingsManage"
  ]
}
POSTPolitique de configuration de l’aperçu/v1/automation/configuration-policies/preview

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

POST /v1/automation/configuration-policies/preview ↗

mcp.cap.AutomationRead + mcp.cap.SecurityRead

Schémas (OpenAPI)

ConfigurationBaselineControl

0 = Firewall
1 = BitLocker
2 = LocalAdministrators
3 = ScreenLock
4 = UsbStorage

ConfigurationBaselineMode

0 = Audit
1 = Enforce

BaselineUsbAccess

0 = Allow
1 = ReadOnly
2 = Block

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationSimpleTriggerKind

0 = Once
1 = EveryMinutes
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = DeviceOnline
7 = DeviceOffline
8 = DeviceBooted
9 = FactsChanged
10 = UserLogon
11 = UserLogoff
12 = SessionLocked
13 = SessionUnlocked
14 = RdpConnected
15 = RdpDisconnected
16 = MachineShuttingDown
17 = MachinePoweredOn
18 = AgentServiceStarted
19 = AgentServiceStopped
20 = MachineSuspending
21 = MachineResumed
22 = Cron

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "description": "<value>",
  "name": "<value>",
  "policy": {
    "control": 0
  },
  "schedule": {
    "kind": 0
  },
  "scope": {
    "kind": 0
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/configuration-policies/preview' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "post_v1_automation_configuration_policies_preview",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/ConfigurationBaselineInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AutomationSimpleScopePreview"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Preview configuration policy",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead",
    "mcp.cap.SecurityRead"
  ]
}
POSTInstaller Windows correctif/v1/automation/devices/{deviceId}/patch-install

Cela nécessite FullAccess et l’autorité du propriétaire actuel. Fournissez une clé d’idempotence, réutilisez la même demande after incertitude, et inspectez le reçu d’opération.

POST /v1/automation/devices/{deviceId}/patch-install ↗

mcp.cap.PatchingExecute

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "revisionNumber": 1,
    "updateId": "<value>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/devices/<deviceId>/patch-install' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt.",
  "operationId": "post_v1_automation_devices_deviceId_patch_install",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfPatchUpdateIdentity"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Install Windows patch",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingExecute"
  ]
}
GETObtenir des étiquettes d’appareil/v1/automation/devices/{deviceId}/tags

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

GET /v1/automation/devices/{deviceId}/tags ↗

mcp.cap.AutomationRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/devices/<deviceId>/tags' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "get_v1_automation_devices_deviceId_tags",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/IntegrationTagView"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get device tags",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
PUTAssigner les balises de l’appareil/v1/automation/devices/{deviceId}/tags

Cela nécessite FullAccess et l’autorité du propriétaire actuel. Fournissez une clé d’idempotence, réutilisez la même demande after incertitude, et inspectez le reçu d’opération.

PUT /v1/automation/devices/{deviceId}/tags ↗

mcp.cap.AutomationManage

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": [
    "<UUID>"
  ]
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/automation/devices/<deviceId>/tags' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt.",
  "operationId": "put_v1_automation_devices_deviceId_tags",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid[]"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Assign device tags",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage"
  ]
}
POSTRéinitialisation Windows mise à jour/v1/automation/devices/{deviceId}/update-reset

Cela nécessite FullAccess et l’autorité du propriétaire actuel. Fournissez une clé d’idempotence, réutilisez la même demande after incertitude, et inspectez le reçu d’opération.

POST /v1/automation/devices/{deviceId}/update-reset ↗

mcp.cap.PatchingExecute

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/devices/<deviceId>/update-reset' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt.",
  "operationId": "post_v1_automation_devices_deviceId_update_reset",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationKey"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Reset Windows update",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingExecute"
  ]
}
POSTExécuter une stratégie de correctifs/v1/automation/devices/{id}/patch-runs

Demander l'exécution d'une stratégie de correctifs sur le périphérique autorisé sélectionné.

POST /v1/automation/devices/{id}/patch-runs ↗

mcp.cap.PatchingExecute

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/devices/<id>/patch-runs' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request a patch-policy run on the selected authorised device.",
  "operationId": "post_v1_automation_devices_id_patch_runs",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationKey"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Run a patch policy",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingExecute"
  ]
}
GETLire l'état de la stratégie de correctif du périphérique/v1/automation/devices/{id}/patch-status

Lisez l'état de la stratégie de correctif de l'appareil et les informations relatives aux correctifs signalées.

GET /v1/automation/devices/{id}/patch-status ↗

mcp.cap.PatchingRead

Schémas (OpenAPI)

PatchRebootBehavior

0 = Unknown
1 = Never
2 = Always
3 = CanRequest

PatchSeverity

0 = Unknown
1 = Low
2 = Moderate
3 = Important
4 = Critical

PatchUpdateType

0 = Unknown
1 = Software
2 = Driver

PatchComplianceState

0 = Unknown
1 = Compliant
2 = MissingUpdates
3 = ScanFailed
4 = Unsupported

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.
offset · Requête · en option
Nombre d'éléments à ignorer, en commençant à zéro. Continuez à utiliser le décalage renvoyé par le point de terminaison lorsqu'il est disponible.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/devices/<id>/patch-status' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the device's patch-policy status and reported patching information.",
  "operationId": "get_v1_automation_devices_id_patch_status",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Number of items to skip, starting at zero. Continue using the offset returned by the endpoint when available.",
      "in": "query",
      "name": "offset",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/DevicePatchStatusView"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read device patch-policy status",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingRead"
  ]
}
POSTChanger l'arrêt d'urgence/v1/automation/emergency-stop

Définit l’état d’arrêt d’urgence de l’automatisation. Inspectez le résultat avant de supposer que le travail actif est arrêté.

POST /v1/automation/emergency-stop ↗

mcp.cap.AutomationStop

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": false
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/emergency-stop' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Set the automation emergency-stop state. Inspect the result before assuming active work has stopped.",
  "operationId": "post_v1_automation_emergency_stop",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfboolean"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Change the emergency stop",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationStop"
  ]
}
GETListe des groupes intelligents/v1/automation/groups

Parcourir les groupes de dispositifs d'automatisation et leurs définitions.

GET /v1/automation/groups ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationFactValueType

0 = String
1 = Boolean
2 = Integer
3 = Number
4 = Timestamp
5 = Duration
6 = Guid
7 = Collection
8 = Object

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/groups' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Browse automation device groups and their definitions.",
  "operationId": "get_v1_automation_groups",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiGroupsWorkspace"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List smart groups",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
POSTCréer un groupe intelligent/v1/automation/groups

Créez un groupe d'automatisation à l'aide des règles de sélection fournies.

POST /v1/automation/groups ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Schémas (OpenAPI)

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "condition": {
      "kind": 0
    },
    "name": "<value>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/groups' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Create an automation group using the supplied selection rules.",
  "operationId": "post_v1_automation_groups",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationGroupDefinition"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a smart group",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
POSTSupprimer un groupe intelligent/v1/automation/groups/delete

Supprimez le groupe d'automatisation sélectionné.

POST /v1/automation/groups/delete ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "expectedVersionId": "<UUID>",
    "id": "<UUID>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/groups/delete' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Remove the selected automation group.",
  "operationId": "post_v1_automation_groups_delete",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationVersionIdentity"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Delete a smart group",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
POSTAperçu de l'appartenance à un groupe intelligent/v1/automation/groups/preview

Évaluez les règles de groupe proposées pour voir quels appareils autorisés correspondraient avant de les enregistrer.

POST /v1/automation/groups/preview ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "companyId": "<UUID>",
  "condition": {
    "kind": 0
  },
  "name": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/groups/preview' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Evaluate proposed group rules to see which permitted devices would match before saving.",
  "operationId": "post_v1_automation_groups_preview",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationGroupDefinition"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AutomationSimpleScopePreview"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Preview smart-group membership",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
GETObtenez un groupe intelligent/v1/automation/groups/{id}

Lire la définition et les informations d'adhésion d'un groupe d'automatisation.

GET /v1/automation/groups/{id} ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/groups/<id>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read one automation group's definition and membership information.",
  "operationId": "get_v1_automation_groups_id",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AutomationGroupDraft"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get a smart group",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
PUTMettre à jour un groupe intelligent/v1/automation/groups/{id}

Modifier la définition d'un groupe d'automatisation existant.

PUT /v1/automation/groups/{id} ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Schémas (OpenAPI)

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "condition": {
      "kind": 0
    },
    "name": "<value>"
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/automation/groups/<id>' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Change an existing automation group's definition.",
  "operationId": "put_v1_automation_groups_id",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationGroupDefinition"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Update a smart group",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
POSTPack d’installation de moniteur/v1/automation/monitor-packs/install

Cela nécessite FullAccess et l’autorité du propriétaire actuel. Fournissez une clé d’idempotence, réutilisez la même demande after incertitude, et inspectez le reçu d’opération.

POST /v1/automation/monitor-packs/install ↗

mcp.cap.AutomationManage

Schémas (OpenAPI)

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "key": "<value>",
    "scope": {
      "kind": 0
    }
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/monitor-packs/install' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt.",
  "operationId": "post_v1_automation_monitor_packs_install",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationMonitorPack"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Install monitor pack",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage"
  ]
}
POSTPacks de moniteurs de liste/v1/automation/monitor-packs/query

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

POST /v1/automation/monitor-packs/query ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

AutomationTemplateReadiness

0 = ReadyNow
1 = CollectorRequired
2 = IntegrationRequired
3 = Future

AutomationNotificationSeverity

0 = Information
1 = Warning
2 = Critical
3 = Recovery

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "kind": 0
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/monitor-packs/query' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "post_v1_automation_monitor_packs_query",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/AutomationHierarchyScope"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/AutomationBaselinePackView"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List monitor packs",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
GETListe des moniteurs/v1/automation/monitors

Parcourir les définitions de surveillance configurées.

GET /v1/automation/monitors ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationMonitorLifecycleState

0 = Enabled
1 = Paused
2 = Archived

Paramètres

offset · Requête · en option
Nombre d'éléments à ignorer, en commençant à zéro. Continuez à utiliser le décalage renvoyé par le point de terminaison lorsqu'il est disponible.
take · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Le serveur limite cette valeur à la limite du point de terminaison.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/monitors' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Browse configured monitoring definitions.",
  "operationId": "get_v1_automation_monitors",
  "parameters": [
    {
      "description": "Number of items to skip, starting at zero. Continue using the offset returned by the endpoint when available.",
      "in": "query",
      "name": "offset",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Maximum number of items requested for this page. The server clamps this value to the endpoint limit.",
      "in": "query",
      "name": "take",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiOffsetPageOfApiMonitorItem"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List monitors",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
POSTCréer un moniteur/v1/automation/monitors

Créez une définition de surveillance à l'aide des vérifications et des paramètres fournis.

POST /v1/automation/monitors ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Schémas (OpenAPI)

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

AutomationNotificationAudience

0 = None
1 = Owners
2 = Technicians
4 = Clients

AutomationNotificationChannel

0 = None
1 = InApp
2 = Email

AutomationSimpleActionKind

0 = Script
1 = Notification
2 = RefreshFacts
3 = ControlService
4 = RestartDevice
5 = WindowsDiskCleanup
6 = LinuxMaintenance
7 = WakeDevice
8 = SendUserMessage
9 = UninstallSoftware

LinuxMaintenanceAction

0 = RefreshPackageInventory
1 = InstallPackageUpdates
2 = RefreshFirmwareMetadata
3 = InstallFirmwareUpdates
4 = InstallAllUpdates

AutomationOutcomeMatch

0 = Failure
1 = Success
2 = Always
3 = ResultMatches

AutomationNotificationSeverity

0 = Information
1 = Warning
2 = Critical
3 = Recovery

AutomationScriptPlatform

0 = WindowsPowerShell51
1 = LinuxBash
2 = MacOsZsh
3 = WindowsCmd
4 = WindowsPowerShell7
5 = LinuxPowerShell7
6 = MacOsPowerShell7
7 = WindowsPython3
8 = LinuxPython3
9 = MacOsPython3

ServiceAction

0 = Start
1 = Stop
2 = Restart

SoftwareKind

0 = ClassicDesktop
1 = PackagedApp

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "condition": {
      "kind": 0
    },
    "description": "<value>",
    "name": "<value>",
    "scope": {
      "kind": 0
    }
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/monitors' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Create a monitoring definition using the supplied checks and settings.",
  "operationId": "post_v1_automation_monitors",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfAutomationSimpleMonitorInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a monitor",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
POSTÉtat du moniteur d’aperçu/v1/automation/monitors/preview

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

POST /v1/automation/monitors/preview ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

AutomationScriptPlatform

0 = WindowsPowerShell51
1 = LinuxBash
2 = MacOsZsh
3 = WindowsCmd
4 = WindowsPowerShell7
5 = LinuxPowerShell7
6 = MacOsPowerShell7
7 = WindowsPython3
8 = LinuxPython3
9 = MacOsPython3

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

AutomationTruthValue

0 = False
1 = True
2 = Unknown

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "condition": {
    "kind": 0
  },
  "scope": {
    "kind": 0
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/monitors/preview' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "post_v1_automation_monitors_preview",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMonitorPreview"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/MonitorConditionPreview"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Preview monitor condition",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
GETObtenez un moniteur/v1/automation/monitors/{id}

Lire les vérifications et la configuration d'un moniteur.

GET /v1/automation/monitors/{id} ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

AutomationNotificationAudience

0 = None
1 = Owners
2 = Technicians
4 = Clients

AutomationNotificationChannel

0 = None
1 = InApp
2 = Email

AutomationSimpleActionKind

0 = Script
1 = Notification
2 = RefreshFacts
3 = ControlService
4 = RestartDevice
5 = WindowsDiskCleanup
6 = LinuxMaintenance
7 = WakeDevice
8 = SendUserMessage
9 = UninstallSoftware

LinuxMaintenanceAction

0 = RefreshPackageInventory
1 = InstallPackageUpdates
2 = RefreshFirmwareMetadata
3 = InstallFirmwareUpdates
4 = InstallAllUpdates

AutomationOutcomeMatch

0 = Failure
1 = Success
2 = Always
3 = ResultMatches

AutomationNotificationSeverity

0 = Information
1 = Warning
2 = Critical
3 = Recovery

AutomationScriptPlatform

0 = WindowsPowerShell51
1 = LinuxBash
2 = MacOsZsh
3 = WindowsCmd
4 = WindowsPowerShell7
5 = LinuxPowerShell7
6 = MacOsPowerShell7
7 = WindowsPython3
8 = LinuxPython3
9 = MacOsPython3

ServiceAction

0 = Start
1 = Stop
2 = Restart

SoftwareKind

0 = ClassicDesktop
1 = PackagedApp

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/monitors/<id>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read one monitor's checks and configuration.",
  "operationId": "get_v1_automation_monitors_id",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AutomationSimpleMonitorDraft"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get a monitor",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
PUTMettre à jour un moniteur/v1/automation/monitors/{id}

Enregistrez les modifications apportées à une définition de surveillance existante.

PUT /v1/automation/monitors/{id} ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Schémas (OpenAPI)

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

AutomationNotificationAudience

0 = None
1 = Owners
2 = Technicians
4 = Clients

AutomationNotificationChannel

0 = None
1 = InApp
2 = Email

AutomationSimpleActionKind

0 = Script
1 = Notification
2 = RefreshFacts
3 = ControlService
4 = RestartDevice
5 = WindowsDiskCleanup
6 = LinuxMaintenance
7 = WakeDevice
8 = SendUserMessage
9 = UninstallSoftware

LinuxMaintenanceAction

0 = RefreshPackageInventory
1 = InstallPackageUpdates
2 = RefreshFirmwareMetadata
3 = InstallFirmwareUpdates
4 = InstallAllUpdates

AutomationOutcomeMatch

0 = Failure
1 = Success
2 = Always
3 = ResultMatches

AutomationNotificationSeverity

0 = Information
1 = Warning
2 = Critical
3 = Recovery

AutomationScriptPlatform

0 = WindowsPowerShell51
1 = LinuxBash
2 = MacOsZsh
3 = WindowsCmd
4 = WindowsPowerShell7
5 = LinuxPowerShell7
6 = MacOsPowerShell7
7 = WindowsPython3
8 = LinuxPython3
9 = MacOsPython3

ServiceAction

0 = Start
1 = Stop
2 = Restart

SoftwareKind

0 = ClassicDesktop
1 = PackagedApp

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "condition": {
      "kind": 0
    },
    "description": "<value>",
    "name": "<value>",
    "scope": {
      "kind": 0
    }
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/automation/monitors/<id>' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Save changes to an existing monitoring definition.",
  "operationId": "put_v1_automation_monitors_id",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfAutomationSimpleMonitorInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Update a monitor",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
POSTModifier l'état du moniteur/v1/automation/monitors/{id}/state

Activer ou désactiver le moniteur sélectionné.

POST /v1/automation/monitors/{id}/state ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Schémas (OpenAPI)

AutomationMonitorLifecycleState

0 = Enabled
1 = Paused
2 = Archived

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": 0
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/monitors/<id>/state' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Enable or disable the selected monitor.",
  "operationId": "post_v1_automation_monitors_id_state",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfAutomationMonitorLifecycleState"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Change monitor state",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
GETObtenir l'état de fonctionnement de l'automatisation/v1/automation/operations/{operationId}

Lire la réception et l'état d'une opération de gestion d'automatisation.

GET /v1/automation/operations/{operationId} ↗

mcp.cap.AutomationRead

Paramètres

operationId · Chemin · requis
Identificateur de reçu d'opération de niveau supérieur. Interrogez ce reçu pour inspecter les progrès et le résultat.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/operations/<operationId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the receipt and status of an automation management operation.",
  "operationId": "get_v1_automation_operations_operationId",
  "parameters": [
    {
      "description": "Top-level operation receipt identifier. Poll this receipt to inspect progress and the result.",
      "in": "path",
      "name": "operationId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get automation operation status",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
GETObtenez les résultats de l'automatisation/v1/automation/outcomes

Lire les résultats d'automatisation enregistrés par appareil. L’état d’exécution à lui seul ne prouve pas l’état de l’appareil.

GET /v1/automation/outcomes ↗

mcp.cap.AutomationRead

Paramètres

companyId · Requête · en option
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
deviceId · Requête · en option
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/outcomes' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read recorded per-device automation outcomes. Execution status alone does not prove device health.",
  "operationId": "get_v1_automation_outcomes",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "query",
      "name": "companyId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "query",
      "name": "deviceId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfOutcomeResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get automation outcomes",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
GETListe des progiciels/v1/automation/packages

Parcourez les packages disponibles pour les flux de travail d'automatisation.

GET /v1/automation/packages ↗

mcp.cap.AutomationRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/packages' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Browse packages available to automation workflows.",
  "operationId": "get_v1_automation_packages",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/AutomationPackageEntry"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List software packages",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
PUTEnregistrer un progiciel/v1/automation/packages

Créer ou mettre à jour une définition de package dans le catalogue d'automatisation.

PUT /v1/automation/packages ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "expectedVersionId": "<UUID>",
    "manifest": {
      "downloadUrl": "<value>",
      "productName": "<value>",
      "sha256": "<value>",
      "version": "<value>"
    },
    "name": "<value>",
    "scriptId": "<UUID>"
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/automation/packages' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Create or update a package definition in the automation catalogue.",
  "operationId": "put_v1_automation_packages",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfAutomationPackageSave"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Save a software package",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
POSTRévoquer un progiciel/v1/automation/packages/revoke

Retirer le package sélectionné de toute utilisation autorisée ultérieure.

POST /v1/automation/packages/revoke ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "expectedVersionId": "<UUID>",
    "id": "<UUID>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/packages/revoke' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Revoke the selected package from further authorised use.",
  "operationId": "post_v1_automation_packages_revoke",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationVersionIdentity"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Revoke a software package",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
GETLire les approbations des correctifs/v1/automation/patch-approvals

Examinez les informations d'approbation des correctifs avant de prendre des décisions d'approbation.

GET /v1/automation/patch-approvals ↗

mcp.cap.PatchingRead

Schémas (OpenAPI)

AutomationPatchApprovalState

0 = Unapproved
1 = Approved
2 = Denied

Paramètres

offset · Requête · en option
Nombre d'éléments à ignorer, en commençant à zéro. Continuez à utiliser le décalage renvoyé par le point de terminaison lorsqu'il est disponible.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
state · Requête · en option
Filtrer par état de ressource. Les états autorisés et les valeurs par défaut dépendent du point de terminaison.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/patch-approvals' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Review patch approval information before making approval decisions.",
  "operationId": "get_v1_automation_patch_approvals",
  "parameters": [
    {
      "description": "Number of items to skip, starting at zero. Continue using the offset returned by the endpoint when available.",
      "in": "query",
      "name": "offset",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Filter by the resource state. Allowed states and defaults depend on the endpoint.",
      "in": "query",
      "name": "state",
      "schema": {
        "$ref": "#/components/schemas/AutomationPatchApprovalState"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationPatchApprovalPage"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read patch approvals",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingRead"
  ]
}
POSTDécider des approbations de correctifs/v1/automation/patch-approvals/decisions

Enregistrer les décisions d'approbation pour les correctifs sélectionnés. L'approbation ne constitue pas une preuve d'installation.

POST /v1/automation/patch-approvals/decisions ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

Schémas (OpenAPI)

AutomationPatchApprovalState

0 = Unapproved
1 = Approved
2 = Denied

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "patches": [
      {
        "revisionNumber": 1,
        "updateId": "<value>"
      }
    ],
    "state": 0
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/patch-approvals/decisions' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Record approval decisions for the selected patches. Approval is not proof of installation.",
  "operationId": "post_v1_automation_patch_approvals_decisions",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationPatchDecision"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Decide patch approvals",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingManage",
    "mcp.cap.PatchingExecute"
  ]
}
POSTInspecter le retard dans les correctifs/v1/automation/patch-backlog:query

Interroger le retard de correctifs stocké pour la portée demandée. Cela n'installe pas les mises à jour.

POST /v1/automation/patch-backlog:query ↗

mcp.cap.PatchingRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "company": "<value>",
  "companyId": "<UUID>",
  "device": "<value>",
  "deviceId": "<UUID>",
  "limit": 50,
  "machineOffset": 0,
  "offset": 0,
  "onlyUnapproved": true,
  "revisionNumber": 1,
  "search": "<value>",
  "site": "<value>",
  "siteId": "<UUID>",
  "updateId": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/patch-backlog:query' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Query stored patch backlog for the requested scope. This does not install updates.",
  "operationId": "post_v1_automation_patch_backlog_query",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/PatchBacklogRequest"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PatchBacklogPage"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Inspect patch backlog",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingRead"
  ]
}
GETRépertorier les stratégies de correctifs/v1/automation/patch-policies

Lire les stratégies configurées contrôlant l’application des correctifs aux périphériques.

GET /v1/automation/patch-policies ↗

mcp.cap.PatchingRead

Schémas (OpenAPI)

PatchPolicyCriterionField

0 = All
1 = Category
2 = Description
3 = MaximumSizeBytes
4 = KbArticle
5 = Severity
6 = RebootBehavior
7 = ReleaseAgeDays
8 = RequestsUserInput
9 = Title
10 = UpdateType
11 = Optional
12 = InstalledDotNetMajor

PatchPolicyCriterionOperator

0 = Equals
1 = Contains
2 = LessThanOrEqual
3 = GreaterThanOrEqual
4 = NotEquals
5 = NotContains
6 = StartsWith
7 = EndsWith
8 = LessThan
9 = GreaterThan

PatchRestartMode

0 = DoNotRestart
1 = RestartIfRequired
2 = RestartIfRequiredWithNotice
3 = ShutdownAfterPatching

PatchPolicyDecision

0 = Unapproved
1 = Approved
2 = Denied

PatchPolicyMode

0 = AuditOnly
1 = InstallApproved

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationScheduleKind

0 = Once
1 = Interval
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = Cron

WindowsAutomaticUpdateMode

0 = NotConfigured
1 = NotifyBeforeDownload
2 = AutoDownloadNotifyInstall
3 = ScheduledInstall
4 = Disabled

WindowsUpdateSetting

0 = AutomaticUpdates
1 = Drivers
2 = MicrosoftUpdate
3 = UpdateServer
4 = FeatureDeferral
5 = QualityDeferral
6 = ActiveHours
7 = RestartPolicy
8 = DeliveryOptimization
9 = FastStartup
10 = FeatureRelease

WindowsUpdateConfigurationMode

0 = AuditOnly
1 = Enforce

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationSimpleTriggerKind

0 = Once
1 = EveryMinutes
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = DeviceOnline
7 = DeviceOffline
8 = DeviceBooted
9 = FactsChanged
10 = UserLogon
11 = UserLogoff
12 = SessionLocked
13 = SessionUnlocked
14 = RdpConnected
15 = RdpDisconnected
16 = MachineShuttingDown
17 = MachinePoweredOn
18 = AgentServiceStarted
19 = AgentServiceStopped
20 = MachineSuspending
21 = MachineResumed
22 = Cron

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

AutomationState

0 = Draft
1 = Enabled
2 = Paused
3 = Archived

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/patch-policies' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read configured policies controlling device patching.",
  "operationId": "get_v1_automation_patch_policies",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/WindowsPatchPolicyListItem"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List patch policies",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingRead"
  ]
}
POSTCréer une stratégie de correctifs/v1/automation/patch-policies

Créez une stratégie définissant la manière dont les appareils éligibles doivent être corrigés.

POST /v1/automation/patch-policies ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

Schémas (OpenAPI)

PatchPolicyCriterionField

0 = All
1 = Category
2 = Description
3 = MaximumSizeBytes
4 = KbArticle
5 = Severity
6 = RebootBehavior
7 = ReleaseAgeDays
8 = RequestsUserInput
9 = Title
10 = UpdateType
11 = Optional
12 = InstalledDotNetMajor

PatchPolicyCriterionOperator

0 = Equals
1 = Contains
2 = LessThanOrEqual
3 = GreaterThanOrEqual
4 = NotEquals
5 = NotContains
6 = StartsWith
7 = EndsWith
8 = LessThan
9 = GreaterThan

PatchRestartMode

0 = DoNotRestart
1 = RestartIfRequired
2 = RestartIfRequiredWithNotice
3 = ShutdownAfterPatching

PatchPolicyDecision

0 = Unapproved
1 = Approved
2 = Denied

PatchPolicyMode

0 = AuditOnly
1 = InstallApproved

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationScheduleKind

0 = Once
1 = Interval
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = Cron

WindowsAutomaticUpdateMode

0 = NotConfigured
1 = NotifyBeforeDownload
2 = AutoDownloadNotifyInstall
3 = ScheduledInstall
4 = Disabled

WindowsUpdateSetting

0 = AutomaticUpdates
1 = Drivers
2 = MicrosoftUpdate
3 = UpdateServer
4 = FeatureDeferral
5 = QualityDeferral
6 = ActiveHours
7 = RestartPolicy
8 = DeliveryOptimization
9 = FastStartup
10 = FeatureRelease

WindowsUpdateConfigurationMode

0 = AuditOnly
1 = Enforce

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationSimpleTriggerKind

0 = Once
1 = EveryMinutes
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = DeviceOnline
7 = DeviceOffline
8 = DeviceBooted
9 = FactsChanged
10 = UserLogon
11 = UserLogoff
12 = SessionLocked
13 = SessionUnlocked
14 = RdpConnected
15 = RdpDisconnected
16 = MachineShuttingDown
17 = MachinePoweredOn
18 = AgentServiceStarted
19 = AgentServiceStopped
20 = MachineSuspending
21 = MachineResumed
22 = Cron

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "description": "<value>",
    "name": "<value>",
    "policy": {
      "approveFilters": [
        {
          "criteria": [
            "<see schema>"
          ]
        }
      ],
      "denyFilters": [
        {
          "criteria": [
            "<see schema>"
          ]
        }
      ],
      "manualDecisions": [
        {
          "decision": 0,
          "identity": {
            "revisionNumber": "<see schema>",
            "updateId": "<see schema>"
          }
        }
      ],
      "mode": 0
    },
    "schedule": {
      "kind": 0
    },
    "scope": {
      "kind": 0
    }
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/patch-policies' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Create a policy defining how eligible devices should be patched.",
  "operationId": "post_v1_automation_patch_policies",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfWindowsPatchPolicyInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a patch policy",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingManage",
    "mcp.cap.PatchingExecute"
  ]
}
POSTPolitique de correctif de prévisualisation/v1/automation/patch-policies/preview

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

POST /v1/automation/patch-policies/preview ↗

mcp.cap.PatchingRead

Schémas (OpenAPI)

PatchPolicyCriterionField

0 = All
1 = Category
2 = Description
3 = MaximumSizeBytes
4 = KbArticle
5 = Severity
6 = RebootBehavior
7 = ReleaseAgeDays
8 = RequestsUserInput
9 = Title
10 = UpdateType
11 = Optional
12 = InstalledDotNetMajor

PatchPolicyCriterionOperator

0 = Equals
1 = Contains
2 = LessThanOrEqual
3 = GreaterThanOrEqual
4 = NotEquals
5 = NotContains
6 = StartsWith
7 = EndsWith
8 = LessThan
9 = GreaterThan

PatchRestartMode

0 = DoNotRestart
1 = RestartIfRequired
2 = RestartIfRequiredWithNotice
3 = ShutdownAfterPatching

PatchPolicyDecision

0 = Unapproved
1 = Approved
2 = Denied

PatchPolicyMode

0 = AuditOnly
1 = InstallApproved

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationScheduleKind

0 = Once
1 = Interval
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = Cron

WindowsAutomaticUpdateMode

0 = NotConfigured
1 = NotifyBeforeDownload
2 = AutoDownloadNotifyInstall
3 = ScheduledInstall
4 = Disabled

WindowsUpdateSetting

0 = AutomaticUpdates
1 = Drivers
2 = MicrosoftUpdate
3 = UpdateServer
4 = FeatureDeferral
5 = QualityDeferral
6 = ActiveHours
7 = RestartPolicy
8 = DeliveryOptimization
9 = FastStartup
10 = FeatureRelease

WindowsUpdateConfigurationMode

0 = AuditOnly
1 = Enforce

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationSimpleTriggerKind

0 = Once
1 = EveryMinutes
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = DeviceOnline
7 = DeviceOffline
8 = DeviceBooted
9 = FactsChanged
10 = UserLogon
11 = UserLogoff
12 = SessionLocked
13 = SessionUnlocked
14 = RdpConnected
15 = RdpDisconnected
16 = MachineShuttingDown
17 = MachinePoweredOn
18 = AgentServiceStarted
19 = AgentServiceStopped
20 = MachineSuspending
21 = MachineResumed
22 = Cron

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "description": "<value>",
  "name": "<value>",
  "policy": {
    "approveFilters": [
      {
        "criteria": [
          {
            "field": 0
          }
        ]
      }
    ],
    "denyFilters": [
      {
        "criteria": [
          {
            "field": 0
          }
        ]
      }
    ],
    "manualDecisions": [
      {
        "decision": 0,
        "identity": {
          "revisionNumber": 1,
          "updateId": "<value>"
        }
      }
    ],
    "mode": 0
  },
  "schedule": {
    "kind": 0
  },
  "scope": {
    "kind": 0
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/patch-policies/preview' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "post_v1_automation_patch_policies_preview",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/WindowsPatchPolicyInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AutomationSimpleScopePreview"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Preview patch policy",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingRead"
  ]
}
PUTMettre à jour une stratégie de correctifs/v1/automation/patch-policies/{id}

Modifiez les paramètres d'une stratégie de correctifs existante.

PUT /v1/automation/patch-policies/{id} ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

Schémas (OpenAPI)

PatchPolicyCriterionField

0 = All
1 = Category
2 = Description
3 = MaximumSizeBytes
4 = KbArticle
5 = Severity
6 = RebootBehavior
7 = ReleaseAgeDays
8 = RequestsUserInput
9 = Title
10 = UpdateType
11 = Optional
12 = InstalledDotNetMajor

PatchPolicyCriterionOperator

0 = Equals
1 = Contains
2 = LessThanOrEqual
3 = GreaterThanOrEqual
4 = NotEquals
5 = NotContains
6 = StartsWith
7 = EndsWith
8 = LessThan
9 = GreaterThan

PatchRestartMode

0 = DoNotRestart
1 = RestartIfRequired
2 = RestartIfRequiredWithNotice
3 = ShutdownAfterPatching

PatchPolicyDecision

0 = Unapproved
1 = Approved
2 = Denied

PatchPolicyMode

0 = AuditOnly
1 = InstallApproved

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationScheduleKind

0 = Once
1 = Interval
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = Cron

WindowsAutomaticUpdateMode

0 = NotConfigured
1 = NotifyBeforeDownload
2 = AutoDownloadNotifyInstall
3 = ScheduledInstall
4 = Disabled

WindowsUpdateSetting

0 = AutomaticUpdates
1 = Drivers
2 = MicrosoftUpdate
3 = UpdateServer
4 = FeatureDeferral
5 = QualityDeferral
6 = ActiveHours
7 = RestartPolicy
8 = DeliveryOptimization
9 = FastStartup
10 = FeatureRelease

WindowsUpdateConfigurationMode

0 = AuditOnly
1 = Enforce

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationSimpleTriggerKind

0 = Once
1 = EveryMinutes
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = DeviceOnline
7 = DeviceOffline
8 = DeviceBooted
9 = FactsChanged
10 = UserLogon
11 = UserLogoff
12 = SessionLocked
13 = SessionUnlocked
14 = RdpConnected
15 = RdpDisconnected
16 = MachineShuttingDown
17 = MachinePoweredOn
18 = AgentServiceStarted
19 = AgentServiceStopped
20 = MachineSuspending
21 = MachineResumed
22 = Cron

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "description": "<value>",
    "name": "<value>",
    "policy": {
      "approveFilters": [
        {
          "criteria": [
            "<see schema>"
          ]
        }
      ],
      "denyFilters": [
        {
          "criteria": [
            "<see schema>"
          ]
        }
      ],
      "manualDecisions": [
        {
          "decision": 0,
          "identity": {
            "revisionNumber": "<see schema>",
            "updateId": "<see schema>"
          }
        }
      ],
      "mode": 0
    },
    "schedule": {
      "kind": 0
    },
    "scope": {
      "kind": 0
    }
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/automation/patch-policies/<id>' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Change an existing patch policy's settings.",
  "operationId": "put_v1_automation_patch_policies_id",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfWindowsPatchPolicyInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Update a patch policy",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingManage",
    "mcp.cap.PatchingExecute"
  ]
}
GETListe des calendriers de rapports/v1/automation/report-schedules

Lire les planifications configurées pour les rapports d'automatisation.

GET /v1/automation/report-schedules ↗

mcp.cap.ReportsRead

Schémas (OpenAPI)

AutomationNotificationAudience

0 = None
1 = Owners
2 = Technicians
4 = Clients

AutomationNotificationChannel

0 = None
1 = InApp
2 = Email

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationScheduleKind

0 = Once
1 = Interval
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = Cron

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/report-schedules' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read configured schedules for automation reports.",
  "operationId": "get_v1_automation_report_schedules",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/AutomationReportScheduleView"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List report schedules",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.ReportsRead"
  ]
}
PUTEnregistrer un calendrier de rapport/v1/automation/report-schedules

Créer ou mettre à jour le moment où un rapport d'automatisation doit être produit.

PUT /v1/automation/report-schedules ↗

mcp.cap.ReportsManage

Schémas (OpenAPI)

AutomationNotificationAudience

0 = None
1 = Owners
2 = Technicians
4 = Clients

AutomationNotificationChannel

0 = None
1 = InApp
2 = Email

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationScheduleKind

0 = Once
1 = Interval
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = Cron

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "audience": 1,
    "capabilityId": "<value>",
    "channels": 1,
    "companyId": "<UUID>",
    "enabled": false,
    "id": "<UUID>",
    "name": "<value>",
    "periodDays": 1,
    "schedule": {
      "kind": 0,
      "timeZoneId": "<value>"
    }
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/automation/report-schedules' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Create or update when an automation report should be produced.",
  "operationId": "put_v1_automation_report_schedules",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfAutomationReportScheduleInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Save a report schedule",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.ReportsManage"
  ]
}
POSTSupprimer une planification de rapport/v1/automation/report-schedules/{id}/delete

Supprimez le calendrier de rapport sélectionné.

POST /v1/automation/report-schedules/{id}/delete ↗

mcp.cap.ReportsManage

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/report-schedules/<id>/delete' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Remove the selected report schedule.",
  "operationId": "post_v1_automation_report_schedules_id_delete",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationKey"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Delete a report schedule",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.ReportsManage"
  ]
}
GETLire les rapports d'automatisation/v1/automation/reports

Lisez les données de rapport d'automatisation à l'aide des filtres fournis.

GET /v1/automation/reports ↗

mcp.cap.ReportsRead

Paramètres

companyId · Requête · en option
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/reports' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read automation reporting data using the supplied filters.",
  "operationId": "get_v1_automation_reports",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "query",
      "name": "companyId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AutomationRmmReportView"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read automation reports",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.ReportsRead"
  ]
}
GETRépertorier les exécutions de flux de travail/v1/automation/runs

Parcourez les exécutions de flux de travail enregistrées et leurs états d'exécution.

GET /v1/automation/runs ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationRunState

0 = Materializing
1 = Queued
2 = Running
3 = Succeeded
4 = PartiallySucceeded
5 = Failed
6 = Skipped
7 = Cancelled
8 = Indeterminate

Paramètres

offset · Requête · en option
Nombre d'éléments à ignorer, en commençant à zéro. Continuez à utiliser le décalage renvoyé par le point de terminaison lorsqu'il est disponible.
take · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Le serveur limite cette valeur à la limite du point de terminaison.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/runs' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Browse recorded workflow runs and their execution states.",
  "operationId": "get_v1_automation_runs",
  "parameters": [
    {
      "description": "Number of items to skip, starting at zero. Continue using the offset returned by the endpoint when available.",
      "in": "query",
      "name": "offset",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Maximum number of items requested for this page. The server clamps this value to the endpoint limit.",
      "in": "query",
      "name": "take",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiOffsetPageOfApiRunItem"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List workflow runs",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
GETObtenez une exécution de flux de travail/v1/automation/runs/{runId}

Lire la progression d'une exécution et les résultats cibles.

GET /v1/automation/runs/{runId} ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationRunState

0 = Materializing
1 = Queued
2 = Running
3 = Succeeded
4 = PartiallySucceeded
5 = Failed
6 = Skipped
7 = Cancelled
8 = Indeterminate

AutomationTargetState

0 = Queued
1 = WaitingForDevice
2 = Running
3 = Succeeded
4 = Failed
5 = Skipped
6 = CancelRequested
7 = Cancelled
8 = Indeterminate

AutomationAttemptState

0 = Pending
1 = Dispatching
2 = Accepted
3 = Running
4 = Succeeded
5 = Failed
6 = TimedOut
7 = Cancelled
8 = Interrupted
9 = Indeterminate
10 = Rejected

AutomationWorkflowNodeType

0 = Script
1 = Condition
2 = Delay
3 = Stop
4 = Notification
5 = DeviceAction

AutomationPayloadKind

0 = FactContext
1 = ExecutionRequest
2 = StandardOutput
3 = StandardError
4 = StructuredOutput

AutomationStepState

0 = Pending
1 = Waiting
2 = Dispatching
3 = Running
4 = Succeeded
5 = Failed
6 = Skipped
7 = TimedOut
8 = CancelRequested
9 = Cancelled
10 = Indeterminate

Paramètres

runId · Chemin · requis
Identifiant d'exécution de domaine renvoyé par le résultat de l'opération, et non l'identifiant de réception de l'opération.
offset · Requête · en option
Nombre d'éléments à ignorer, en commençant à zéro. Continuez à utiliser le décalage renvoyé par le point de terminaison lorsqu'il est disponible.
take · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Le serveur limite cette valeur à la limite du point de terminaison.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/runs/<runId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read one run's progress and target results.",
  "operationId": "get_v1_automation_runs_runId",
  "parameters": [
    {
      "description": "Domain run identifier returned by the operation result, not the operation receipt identifier.",
      "in": "path",
      "name": "runId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Number of items to skip, starting at zero. Continue using the offset returned by the endpoint when available.",
      "in": "query",
      "name": "offset",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Maximum number of items requested for this page. The server clamps this value to the endpoint limit.",
      "in": "query",
      "name": "take",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AutomationRunDetail"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get a workflow run",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
POSTAnnuler une exécution de flux de travail/v1/automation/runs/{runId}/cancel

Demande d'annulation d'une exécution de workflow. Les actions terminées ne sont pas annulées.

POST /v1/automation/runs/{runId}/cancel ↗

mcp.cap.AutomationStop

Paramètres

runId · Chemin · requis
Identifiant d'exécution de domaine renvoyé par le résultat de l'opération, et non l'identifiant de réception de l'opération.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/runs/<runId>/cancel' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request cancellation of a workflow run. Completed actions are not reversed.",
  "operationId": "post_v1_automation_runs_runId_cancel",
  "parameters": [
    {
      "description": "Domain run identifier returned by the operation result, not the operation receipt identifier.",
      "in": "path",
      "name": "runId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationKey"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Cancel a workflow run",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationStop"
  ]
}
GETListe des scripts/v1/automation/scripts

Parcourez les définitions de script d'automatisation disponibles pour vos informations d'identification.

GET /v1/automation/scripts ↗

mcp.cap.AutomationRead

Paramètres

offset · Requête · en option
Nombre d'éléments à ignorer, en commençant à zéro. Continuez à utiliser le décalage renvoyé par le point de terminaison lorsqu'il est disponible.
take · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Le serveur limite cette valeur à la limite du point de terminaison.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/scripts' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Browse automation script definitions available to your credential.",
  "operationId": "get_v1_automation_scripts",
  "parameters": [
    {
      "description": "Number of items to skip, starting at zero. Continue using the offset returned by the endpoint when available.",
      "in": "query",
      "name": "offset",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Maximum number of items requested for this page. The server clamps this value to the endpoint limit.",
      "in": "query",
      "name": "take",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiOffsetPageOfApiScriptItem"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List scripts",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
POSTCréer un script/v1/automation/scripts

Ajoutez une définition de script à la bibliothèque d'automatisation. L'enregistrement d'un script ne l'exécute pas.

POST /v1/automation/scripts ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "companyId": "<UUID>",
  "description": "<value>",
  "idempotencyKey": "<value>",
  "name": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/scripts' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Add a script definition to the automation library. Saving a script does not run it.",
  "operationId": "post_v1_automation_scripts",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationCreate"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a script",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
PUTMettre à jour un script/v1/automation/scripts

Enregistrez les modifications apportées à une définition de script. Cela n'exécute pas le script.

PUT /v1/automation/scripts ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Schémas (OpenAPI)

AutomationScriptPlatform

0 = WindowsPowerShell51
1 = LinuxBash
2 = MacOsZsh
3 = WindowsCmd
4 = WindowsPowerShell7
5 = LinuxPowerShell7
6 = MacOsPowerShell7
7 = WindowsPython3
8 = LinuxPython3
9 = MacOsPython3

AutomationScriptSource

0 = Human
1 = ScriptAi
2 = Inline
3 = RmmAssistant

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "content": "<value>",
    "id": "<UUID>",
    "name": "<value>",
    "platform": 0,
    "timeoutSeconds": 1,
    "versionId": "<UUID>"
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/automation/scripts' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Save changes to a script definition. This does not execute the script.",
  "operationId": "put_v1_automation_scripts",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfAutomationActionDraft"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Update a script",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
POSTSupprimer un script/v1/automation/scripts/delete

Supprimez la définition de script sélectionnée de la bibliothèque.

POST /v1/automation/scripts/delete ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "expectedVersionId": "<UUID>",
    "id": "<UUID>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/scripts/delete' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Remove the selected script definition from the library.",
  "operationId": "post_v1_automation_scripts_delete",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationVersionIdentity"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Delete a script",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
GETObtenir un script/v1/automation/scripts/{id}

Lire une définition de script, y compris son contenu configuré.

GET /v1/automation/scripts/{id} ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationScriptPlatform

0 = WindowsPowerShell51
1 = LinuxBash
2 = MacOsZsh
3 = WindowsCmd
4 = WindowsPowerShell7
5 = LinuxPowerShell7
6 = MacOsPowerShell7
7 = WindowsPython3
8 = LinuxPython3
9 = MacOsPython3

AutomationScriptSource

0 = Human
1 = ScriptAi
2 = Inline
3 = RmmAssistant

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/scripts/<id>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read one script definition, including its configured content.",
  "operationId": "get_v1_automation_scripts_id",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AutomationActionDraft"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get a script",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
POSTCréer un tag/v1/automation/tags

Cela nécessite FullAccess et l’autorité du propriétaire actuel. Fournissez une clé d’idempotence, réutilisez la même demande after incertitude, et inspectez le reçu d’opération.

POST /v1/automation/tags ↗

mcp.cap.AutomationManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "colour": "<value>",
    "companyId": "<UUID>",
    "name": "<value>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/tags' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt.",
  "operationId": "post_v1_automation_tags",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationTag"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create tag",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage"
  ]
}
GETLister les approbations de correctifs tiers/v1/automation/third-party/approvals

Lire les approbations actuelles et les affectations de politique dans le champ des identifiants.

GET /v1/automation/third-party/approvals ↗

mcp.cap.PatchingRead

Schémas (OpenAPI)

ThirdPartyPatchApprovalMode

0 = VersionOnly
1 = ProductFutureVersions

ThirdPartyPatchApprovalState

0 = Unapproved
1 = Approved
2 = Denied

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/third-party/approvals' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current approvals and policy assignments within credential scope.",
  "operationId": "get_v1_automation_third_party_approvals",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/ThirdPartyPatchApprovalListItem"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List third-party patch approvals",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingRead"
  ]
}
POSTDéfinir une approbation de correctif tiers/v1/automation/third-party/approvals

Approbations de changement ou affectations de politique. Activer une politique peut permettre l'installation.

POST /v1/automation/third-party/approvals ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

Schémas (OpenAPI)

ThirdPartyPatchApprovalMode

0 = VersionOnly
1 = ProductFutureVersions

AutomationPatchApprovalState

0 = Unapproved
1 = Approved
2 = Denied

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "approval": {
      "identity": {
        "packageId": "<value>",
        "provider": "<value>",
        "publisher": "<value>"
      },
      "mode": 0
    },
    "state": 0
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/third-party/approvals' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Change approvals or policy assignments. Enabling a policy can permit installation.",
  "operationId": "post_v1_automation_third_party_approvals",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationThirdPartyApproval"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Set a third-party patch approval",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingManage",
    "mcp.cap.PatchingExecute"
  ]
}
GETLister les politiques de correctifs tiers/v1/automation/third-party/policies

Lire les approbations actuelles et les affectations de politique dans le champ des identifiants.

GET /v1/automation/third-party/policies ↗

mcp.cap.PatchingRead

Schémas (OpenAPI)

ThirdPartyPatchApprovalMode

0 = VersionOnly
1 = ProductFutureVersions

PatchPolicyMode

0 = AuditOnly
1 = InstallApproved

ThirdPartyPatchRebootBehavior

0 = Defer
1 = Allow
2 = RequireApproval

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationScheduleKind

0 = Once
1 = Interval
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = Cron

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/third-party/policies' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current approvals and policy assignments within credential scope.",
  "operationId": "get_v1_automation_third_party_policies",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/ThirdPartyPatchPolicyAssignmentListItem"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List third-party patch policies",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingRead"
  ]
}
POSTCréer une politique de correctif tiers/v1/automation/third-party/policies

Approbations de changement ou affectations de politique. Activer une politique peut permettre l'installation.

POST /v1/automation/third-party/policies ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

Schémas (OpenAPI)

ThirdPartyPatchApprovalMode

0 = VersionOnly
1 = ProductFutureVersions

PatchPolicyMode

0 = AuditOnly
1 = InstallApproved

ThirdPartyPatchRebootBehavior

0 = Defer
1 = Allow
2 = RequireApproval

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationScheduleKind

0 = Once
1 = Interval
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = Cron

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "name": "<value>",
    "policy": {
      "approvals": [
        {
          "identity": {
            "packageId": "<see schema>",
            "provider": "<see schema>",
            "publisher": "<see schema>"
          },
          "mode": 0
        }
      ],
      "deniedPackages": [
        {
          "packageId": "<value>",
          "provider": "<value>",
          "publisher": "<value>"
        }
      ]
    },
    "target": {
      "deviceIds": [
        "<UUID>"
      ],
      "intersectSmartGroupsWithScope": false,
      "operatingSystems": [
        0
      ],
      "restriction": {
        "deviceIds": [
          "<see schema>"
        ],
        "operatingSystem": "<see schema>",
        "tagId": "<UUID>"
      },
      "schemaVersion": 1,
      "scope": {
        "kind": 0
      },
      "smartGroupIds": [
        "<UUID>"
      ],
      "tagIds": [
        "<UUID>"
      ]
    }
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/third-party/policies' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Change approvals or policy assignments. Enabling a policy can permit installation.",
  "operationId": "post_v1_automation_third_party_policies",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfThirdPartyPatchPolicyAssignment"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a third-party patch policy",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingManage",
    "mcp.cap.PatchingExecute"
  ]
}
PUTMettre à jour une politique de correctif tiers/v1/automation/third-party/policies/{id}

Approbations de changement ou affectations de politique. Activer une politique peut permettre l'installation.

PUT /v1/automation/third-party/policies/{id} ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

Schémas (OpenAPI)

ThirdPartyPatchApprovalMode

0 = VersionOnly
1 = ProductFutureVersions

PatchPolicyMode

0 = AuditOnly
1 = InstallApproved

ThirdPartyPatchRebootBehavior

0 = Defer
1 = Allow
2 = RequireApproval

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationScheduleKind

0 = Once
1 = Interval
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = Cron

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "name": "<value>",
    "policy": {
      "approvals": [
        {
          "identity": {
            "packageId": "<see schema>",
            "provider": "<see schema>",
            "publisher": "<see schema>"
          },
          "mode": 0
        }
      ],
      "deniedPackages": [
        {
          "packageId": "<value>",
          "provider": "<value>",
          "publisher": "<value>"
        }
      ]
    },
    "target": {
      "deviceIds": [
        "<UUID>"
      ],
      "intersectSmartGroupsWithScope": false,
      "operatingSystems": [
        0
      ],
      "restriction": {
        "deviceIds": [
          "<see schema>"
        ],
        "operatingSystem": "<see schema>",
        "tagId": "<UUID>"
      },
      "schemaVersion": 1,
      "scope": {
        "kind": 0
      },
      "smartGroupIds": [
        "<UUID>"
      ],
      "tagIds": [
        "<UUID>"
      ]
    }
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/automation/third-party/policies/<id>' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Change approvals or policy assignments. Enabling a policy can permit installation.",
  "operationId": "put_v1_automation_third_party_policies_id",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfThirdPartyPatchPolicyAssignment"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Update a third-party patch policy",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingManage",
    "mcp.cap.PatchingExecute"
  ]
}
POSTActiver ou désactiver une politique de correctif/v1/automation/third-party/policies/{id}/enabled

Approbations de changement ou affectations de politique. Activer une politique peut permettre l'installation.

POST /v1/automation/third-party/policies/{id}/enabled ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": false
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/third-party/policies/<id>/enabled' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Change approvals or policy assignments. Enabling a policy can permit installation.",
  "operationId": "post_v1_automation_third_party_policies_id_enabled",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfboolean"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Enable or disable a patch policy",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingManage",
    "mcp.cap.PatchingExecute"
  ]
}
GETConfigurations de mise à jour de liste/v1/automation/update-configurations

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

GET /v1/automation/update-configurations ↗

mcp.cap.PatchingRead

Schémas (OpenAPI)

WindowsAutomaticUpdateMode

0 = NotConfigured
1 = NotifyBeforeDownload
2 = AutoDownloadNotifyInstall
3 = ScheduledInstall
4 = Disabled

WindowsUpdateSetting

0 = AutomaticUpdates
1 = Drivers
2 = MicrosoftUpdate
3 = UpdateServer
4 = FeatureDeferral
5 = QualityDeferral
6 = ActiveHours
7 = RestartPolicy
8 = DeliveryOptimization
9 = FastStartup
10 = FeatureRelease

WindowsUpdateConfigurationMode

0 = AuditOnly
1 = Enforce

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationSimpleTriggerKind

0 = Once
1 = EveryMinutes
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = DeviceOnline
7 = DeviceOffline
8 = DeviceBooted
9 = FactsChanged
10 = UserLogon
11 = UserLogoff
12 = SessionLocked
13 = SessionUnlocked
14 = RdpConnected
15 = RdpDisconnected
16 = MachineShuttingDown
17 = MachinePoweredOn
18 = AgentServiceStarted
19 = AgentServiceStopped
20 = MachineSuspending
21 = MachineResumed
22 = Cron

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

AutomationState

0 = Draft
1 = Enabled
2 = Paused
3 = Archived

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/update-configurations' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "get_v1_automation_update_configurations",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/WindowsUpdateConfigurationListItem"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List update configurations",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingRead"
  ]
}
POSTCréer une mise à jour de configuration/v1/automation/update-configurations

Cela nécessite FullAccess et l’autorité du propriétaire actuel. Fournissez une clé d’idempotence, réutilisez la même demande after incertitude, et inspectez le reçu d’opération.

POST /v1/automation/update-configurations ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

Schémas (OpenAPI)

WindowsAutomaticUpdateMode

0 = NotConfigured
1 = NotifyBeforeDownload
2 = AutoDownloadNotifyInstall
3 = ScheduledInstall
4 = Disabled

WindowsUpdateSetting

0 = AutomaticUpdates
1 = Drivers
2 = MicrosoftUpdate
3 = UpdateServer
4 = FeatureDeferral
5 = QualityDeferral
6 = ActiveHours
7 = RestartPolicy
8 = DeliveryOptimization
9 = FastStartup
10 = FeatureRelease

WindowsUpdateConfigurationMode

0 = AuditOnly
1 = Enforce

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationSimpleTriggerKind

0 = Once
1 = EveryMinutes
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = DeviceOnline
7 = DeviceOffline
8 = DeviceBooted
9 = FactsChanged
10 = UserLogon
11 = UserLogoff
12 = SessionLocked
13 = SessionUnlocked
14 = RdpConnected
15 = RdpDisconnected
16 = MachineShuttingDown
17 = MachinePoweredOn
18 = AgentServiceStarted
19 = AgentServiceStopped
20 = MachineSuspending
21 = MachineResumed
22 = Cron

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "description": "<value>",
    "name": "<value>",
    "policy": {
      "mode": 0
    },
    "schedule": {
      "kind": 0
    },
    "scope": {
      "kind": 0
    }
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/update-configurations' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt.",
  "operationId": "post_v1_automation_update_configurations",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfWindowsUpdateConfigurationInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create update configuration",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingManage",
    "mcp.cap.PatchingExecute"
  ]
}
POSTConfiguration de mise à jour de l’aperçu/v1/automation/update-configurations/preview

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

POST /v1/automation/update-configurations/preview ↗

mcp.cap.PatchingRead

Schémas (OpenAPI)

WindowsAutomaticUpdateMode

0 = NotConfigured
1 = NotifyBeforeDownload
2 = AutoDownloadNotifyInstall
3 = ScheduledInstall
4 = Disabled

WindowsUpdateSetting

0 = AutomaticUpdates
1 = Drivers
2 = MicrosoftUpdate
3 = UpdateServer
4 = FeatureDeferral
5 = QualityDeferral
6 = ActiveHours
7 = RestartPolicy
8 = DeliveryOptimization
9 = FastStartup
10 = FeatureRelease

WindowsUpdateConfigurationMode

0 = AuditOnly
1 = Enforce

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationSimpleTriggerKind

0 = Once
1 = EveryMinutes
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = DeviceOnline
7 = DeviceOffline
8 = DeviceBooted
9 = FactsChanged
10 = UserLogon
11 = UserLogoff
12 = SessionLocked
13 = SessionUnlocked
14 = RdpConnected
15 = RdpDisconnected
16 = MachineShuttingDown
17 = MachinePoweredOn
18 = AgentServiceStarted
19 = AgentServiceStopped
20 = MachineSuspending
21 = MachineResumed
22 = Cron

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "description": "<value>",
  "name": "<value>",
  "policy": {
    "mode": 0
  },
  "schedule": {
    "kind": 0
  },
  "scope": {
    "kind": 0
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/update-configurations/preview' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "post_v1_automation_update_configurations_preview",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/WindowsUpdateConfigurationInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AutomationSimpleScopePreview"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Preview update configuration",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingRead"
  ]
}
PUTMise à jour de sauvegarde/v1/automation/update-configurations/{id}

Nécessite FullAccess et l’autorité actuelle du propriétaire. Fournir une clé d’idempotence, réutiliser la demande identique after incertitude, et inspecter le reçu d’opération. Fournir ExpectedVersionId de la réponse de la liste actuelle ; les modifications obsolètes sont rejetées.

PUT /v1/automation/update-configurations/{id} ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

Schémas (OpenAPI)

WindowsAutomaticUpdateMode

0 = NotConfigured
1 = NotifyBeforeDownload
2 = AutoDownloadNotifyInstall
3 = ScheduledInstall
4 = Disabled

WindowsUpdateSetting

0 = AutomaticUpdates
1 = Drivers
2 = MicrosoftUpdate
3 = UpdateServer
4 = FeatureDeferral
5 = QualityDeferral
6 = ActiveHours
7 = RestartPolicy
8 = DeliveryOptimization
9 = FastStartup
10 = FeatureRelease

WindowsUpdateConfigurationMode

0 = AuditOnly
1 = Enforce

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationSimpleTriggerKind

0 = Once
1 = EveryMinutes
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = DeviceOnline
7 = DeviceOffline
8 = DeviceBooted
9 = FactsChanged
10 = UserLogon
11 = UserLogoff
12 = SessionLocked
13 = SessionUnlocked
14 = RdpConnected
15 = RdpDisconnected
16 = MachineShuttingDown
17 = MachinePoweredOn
18 = AgentServiceStarted
19 = AgentServiceStopped
20 = MachineSuspending
21 = MachineResumed
22 = Cron

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "description": "<value>",
    "name": "<value>",
    "policy": {
      "mode": 0
    },
    "schedule": {
      "kind": 0
    },
    "scope": {
      "kind": 0
    }
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/automation/update-configurations/<id>' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt. Supply ExpectedVersionId from the current list response; stale edits are rejected.",
  "operationId": "put_v1_automation_update_configurations_id",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfWindowsUpdateConfigurationInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Save update configuration",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingManage",
    "mcp.cap.PatchingExecute"
  ]
}
POSTRequête des vulnérabilités des correctifs/v1/automation/vulnerabilities:query

Lire les CVE à portée d’optique, CVSS, les dispositifs affectés et corriger les correctifs. Préserver les scores inconnus et la couverture incomplète ; les associations de correctifs ne prouvent pas l’exploitabilité des appareils.

POST /v1/automation/vulnerabilities:query ↗

mcp.cap.PatchingRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "company": "<value>",
  "companyId": "<UUID>",
  "device": "<value>",
  "deviceId": "<UUID>",
  "limit": 50,
  "machineOffset": 0,
  "minimumCvss": 1,
  "offset": 0,
  "onlyUnknownCvss": false,
  "search": "<value>",
  "site": "<value>",
  "siteId": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/vulnerabilities:query' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read scoped CVE, CVSS, affected devices and fixing patches. Preserve unknown scores and incomplete coverage; patch associations do not prove device exploitability.",
  "operationId": "post_v1_automation_vulnerabilities_query",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/PatchVulnerabilityRequest"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PatchVulnerabilityPage"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Query patch vulnerabilities",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.PatchingRead"
  ]
}
GETListe des flux de travail/v1/automation/workflows

Parcourez les flux de travail d'automatisation disponibles pour vos informations d'identification.

GET /v1/automation/workflows ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationState

0 = Draft
1 = Enabled
2 = Paused
3 = Archived

Paramètres

offset · Requête · en option
Nombre d'éléments à ignorer, en commençant à zéro. Continuez à utiliser le décalage renvoyé par le point de terminaison lorsqu'il est disponible.
take · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Le serveur limite cette valeur à la limite du point de terminaison.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/workflows' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Browse automation workflows available to your credential.",
  "operationId": "get_v1_automation_workflows",
  "parameters": [
    {
      "description": "Number of items to skip, starting at zero. Continue using the offset returned by the endpoint when available.",
      "in": "query",
      "name": "offset",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Maximum number of items requested for this page. The server clamps this value to the endpoint limit.",
      "in": "query",
      "name": "take",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiOffsetPageOfApiWorkflowItem"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List workflows",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
POSTCréer un flux de travail/v1/automation/workflows

Créez un workflow d'automatisation à partir de la définition fournie.

POST /v1/automation/workflows ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "companyId": "<UUID>",
  "description": "<value>",
  "idempotencyKey": "<value>",
  "name": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/workflows' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Create an automation workflow from the supplied definition.",
  "operationId": "post_v1_automation_workflows",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationCreate"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a workflow",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
GETObtenez un flux de travail/v1/automation/workflows/{automationId}

Lire une définition et une configuration de flux de travail d'automatisation.

GET /v1/automation/workflows/{automationId} ↗

mcp.cap.AutomationRead

Schémas (OpenAPI)

AutomationTriggerType

0 = Manual
1 = Once
2 = Interval
3 = Calendar
4 = Cron
5 = DeviceEvent
6 = FactEvent
7 = Api

AutomationDeviceConnectivityPolicy

0 = ConnectedOnly
1 = LeasedOffline

AutomationExecutionLocation

0 = RelayScheduled
1 = DeviceScheduled

AutomationMissedRunPolicy

0 = Skip
1 = RunOnce
2 = RunEach

AutomationOfflinePolicy

0 = Skip
1 = WaitUntilOnline
2 = Fail

AutomationOverlapPolicy

0 = Skip
1 = QueueOne
2 = Allow

AutomationResultReportingMode

0 = Detailed
1 = FailuresAndRollups

AutomationUnknownPolicy

0 = Skip
1 = Fail

AutomationState

0 = Draft
1 = Enabled
2 = Paused
3 = Archived

Paramètres

automationId · Chemin · requis
Identifiant du workflow d'automatisation, et non sa version ou une exécution individuelle.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/automation/workflows/<automationId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read an automation workflow definition and configuration.",
  "operationId": "get_v1_automation_workflows_automationId",
  "parameters": [
    {
      "description": "Identifier of the automation workflow, not its version or an individual run.",
      "in": "path",
      "name": "automationId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiWorkflowDetail"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get a workflow",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationRead"
  ]
}
PUTMettre à jour un workflow/v1/automation/workflows/{automationId}

Enregistrez les modifications apportées à un flux de travail d'automatisation existant.

PUT /v1/automation/workflows/{automationId} ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Schémas (OpenAPI)

AutomationDeviceConnectivityPolicy

0 = ConnectedOnly
1 = LeasedOffline

AutomationExecutionLocation

0 = RelayScheduled
1 = DeviceScheduled

AutomationMissedRunPolicy

0 = Skip
1 = RunOnce
2 = RunEach

AutomationOfflinePolicy

0 = Skip
1 = WaitUntilOnline
2 = Fail

AutomationOverlapPolicy

0 = Skip
1 = QueueOne
2 = Allow

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

AutomationResultReportingMode

0 = Detailed
1 = FailuresAndRollups

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

AutomationTriggerType

0 = Manual
1 = Once
2 = Interval
3 = Calendar
4 = Cron
5 = DeviceEvent
6 = FactEvent
7 = Api

AutomationUnknownPolicy

0 = Skip
1 = Fail

AutomationDeviceActionKind

0 = RefreshFacts
1 = ControlService
2 = RestartDevice
3 = WindowsDiskCleanup
4 = LinuxMaintenance
5 = WakeDevice
6 = SendUserMessage
7 = UninstallSoftware

LinuxMaintenanceAction

0 = RefreshPackageInventory
1 = InstallPackageUpdates
2 = RefreshFirmwareMetadata
3 = InstallFirmwareUpdates
4 = InstallAllUpdates

ServiceAction

0 = Start
1 = Stop
2 = Restart

SoftwareKind

0 = ClassicDesktop
1 = PackagedApp

AutomationStepFailurePolicy

0 = Stop
1 = Continue
2 = Retry

AutomationNotificationAudience

0 = None
1 = Owners
2 = Technicians
4 = Clients

AutomationNotificationChannel

0 = None
1 = InApp
2 = Email

AutomationNotificationSeverity

0 = Information
1 = Warning
2 = Critical
3 = Recovery

AutomationOutcomeMatch

0 = Failure
1 = Success
2 = Always
3 = ResultMatches

AutomationWorkflowNodeType

0 = Script
1 = Condition
2 = Delay
3 = Stop
4 = Notification
5 = DeviceAction

Paramètres

automationId · Chemin · requis
Identifiant du workflow d'automatisation, et non sa version ou une exécution individuelle.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "definition": {
    "precondition": {
      "kind": 0
    },
    "target": {
      "deviceIds": [
        "<UUID>"
      ],
      "intersectSmartGroupsWithScope": false,
      "operatingSystems": [
        0
      ],
      "restriction": {
        "deviceIds": [
          "<UUID>"
        ],
        "operatingSystem": 0,
        "tagId": "<UUID>"
      },
      "schemaVersion": 1,
      "scope": {
        "kind": 0
      },
      "smartGroupIds": [
        "<UUID>"
      ],
      "tagIds": [
        "<UUID>"
      ]
    },
    "triggers": [
      {
        "configurationJson": "<value>",
        "type": 0
      }
    ],
    "workflow": {
      "entryNodeId": "<value>",
      "nodes": [
        {
          "id": "<value>",
          "type": 0
        }
      ]
    }
  },
  "description": "<value>",
  "expectedVersionId": "<UUID>",
  "idempotencyKey": "<value>",
  "name": "<value>"
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/automation/workflows/<automationId>' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Save changes to an existing automation workflow.",
  "operationId": "put_v1_automation_workflows_automationId",
  "parameters": [
    {
      "description": "Identifier of the automation workflow, not its version or an individual run.",
      "in": "path",
      "name": "automationId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationSave"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Update a workflow",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
POSTExécuter un flux de travail/v1/automation/workflows/{automationId}/runs

Démarrez une exécution de flux de travail pour les cibles autorisées fournies.

POST /v1/automation/workflows/{automationId}/runs ↗

mcp.cap.AutomationExecute

Paramètres

automationId · Chemin · requis
Identifiant du workflow d'automatisation, et non sa version ou une exécution individuelle.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/workflows/<automationId>/runs' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Start a workflow run for the supplied authorised targets.",
  "operationId": "post_v1_automation_workflows_automationId_runs",
  "parameters": [
    {
      "description": "Identifier of the automation workflow, not its version or an individual run.",
      "in": "path",
      "name": "automationId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationKey"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Run a workflow",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationExecute"
  ]
}
POSTModifier l'état du flux de travail/v1/automation/workflows/{automationId}/state

Activez ou désactivez le flux de travail sélectionné à l'aide de l'état fourni.

POST /v1/automation/workflows/{automationId}/state ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

Schémas (OpenAPI)

AutomationState

0 = Draft
1 = Enabled
2 = Paused
3 = Archived

Paramètres

automationId · Chemin · requis
Identifiant du workflow d'automatisation, et non sa version ou une exécution individuelle.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "state": 0
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/automation/workflows/<automationId>/state' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Enable or disable the selected workflow using the supplied state.",
  "operationId": "post_v1_automation_workflows_automationId_state",
  "parameters": [
    {
      "description": "Identifier of the automation workflow, not its version or an individual run.",
      "in": "path",
      "name": "automationId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationState"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Change workflow state",
  "tags": [
    "Automation"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute"
  ]
}
Champs personnalisés7
GETObtenir les champs personnalisés de l'entreprise/v1/companies/{companyId}/custom-fields

Lire les champs de métadonnées supplémentaires stockés pour une entreprise.

GET /v1/companies/{companyId}/custom-fields ↗

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/companies/<companyId>/custom-fields' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the extra metadata fields stored against a company.",
  "operationId": "get_v1_companies_companyId_custom_fields",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ItemCollectionOfCustomFieldResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get company custom fields",
  "tags": [
    "Companies"
  ]
}
PATCHMettre à jour un champ personnalisé/v1/custom-fields/{fieldId}

Modifiez une valeur de métadonnées à l'aide de sa version de dernière lecture. Un conflit signifie que vous devez le relire avant de procéder à la mise à jour.

PATCH /v1/custom-fields/{fieldId} ↗

mcp.cap.MetadataWrite

fieldId est {scope}:{scopeUuid}:{key}. Envoyez la dernière version lue et au maximum 4 000 caractères de valeur. Un 409 comprend currentVersion. ReadWrite autorise uniquement les métadonnées ; les valeurs n’exécutent pas d’actions sur l’appareil.

Paramètres

fieldId · Chemin · requis
Identifiant de la valeur du champ personnalisé à mettre à jour. Lisez sa version actuelle avant d'écrire.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "value": "<value>",
  "version": 1
}'
Invoke-RestMethod -Method PATCH `
  -Uri 'https://api.remotegymp.com/v1/custom-fields/<fieldId>' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "fieldId is {scope}:{scopeUuid}:{key}. Send the last-read version and at most 4000 value characters. A 409 includes currentVersion. ReadWrite permits metadata only; values do not execute device actions.",
  "operationId": "patch_v1_custom_fields_fieldId",
  "parameters": [
    {
      "description": "Identifier of the custom-field value to update. Read its current version before writing.",
      "in": "path",
      "name": "fieldId",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/PatchFieldRequest"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/FieldWriteResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/VersionConflictResponse"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Update a custom field",
  "tags": [
    "Custom fields"
  ],
  "x-required-capabilities": [
    "mcp.cap.MetadataWrite"
  ]
}
POSTObtenez plusieurs champs personnalisés/v1/custom-fields:batch-get

Lit simultanément les valeurs des champs personnalisés pour plusieurs cibles fournies.

POST /v1/custom-fields:batch-get ↗

mcp.cap.InventoryRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "targets": [
    {
      "id": "<UUID>",
      "scope": "<value>"
    }
  ]
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/custom-fields:batch-get' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read custom-field values for several supplied targets at once.",
  "operationId": "post_v1_custom_fields_batch_get",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/CustomFieldBatchRequest"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/FieldBatchResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get several custom fields",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETObtenir les champs personnalisés de l'appareil/v1/devices/{deviceId}/custom-fields

Lit les champs de métadonnées supplémentaires stockés sur un appareil.

GET /v1/devices/{deviceId}/custom-fields ↗

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/custom-fields' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the extra metadata fields stored against a device.",
  "operationId": "get_v1_devices_deviceId_custom_fields",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ItemCollectionOfCustomFieldResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get device custom fields",
  "tags": [
    "Devices"
  ]
}
GETListe des définitions des champs/v1/field-definitions

Découvrez les champs personnalisés intégrés et définis par l'intégration ainsi que leurs types de données.

GET /v1/field-definitions ↗

mcp.cap.InventoryRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/field-definitions' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Discover built-in and integration-defined custom fields and their data types.",
  "operationId": "get_v1_field_definitions",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/FieldDefinitionsResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List field definitions",
  "tags": [
    "Custom fields"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTCréer une définition de champ/v1/field-definitions

Définissez un champ personnalisé d'intégration avec une portée, une clé, une étiquette et un type. Les définitions sont immuables.

POST /v1/field-definitions ↗

mcp.cap.FieldDefinitionsWrite

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "key": "<value>",
  "label": "<value>",
  "scope": "<value>",
  "type": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/field-definitions' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Define an integration custom field with a scope, key, label and type. Definitions are immutable.",
  "operationId": "post_v1_field_definitions",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/FieldDefinitionRequest"
        }
      }
    },
    "required": true
  },
  "responses": {
    "201": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationFieldDefinition"
          }
        }
      },
      "description": "Created"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a field definition",
  "tags": [
    "Custom fields"
  ],
  "x-required-capabilities": [
    "mcp.cap.FieldDefinitionsWrite"
  ]
}
GETObtenir les champs personnalisés du site/v1/sites/{siteId}/custom-fields

Lit les champs de métadonnées supplémentaires stockés sur un site.

GET /v1/sites/{siteId}/custom-fields ↗

Paramètres

siteId · Chemin · requis
Identifiant du site. Un paramètre de requête restreint les résultats à ce site dans la portée des informations d'identification.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/sites/<siteId>/custom-fields' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the extra metadata fields stored against a site.",
  "operationId": "get_v1_sites_siteId_custom_fields",
  "parameters": [
    {
      "description": "Site identifier. A query parameter narrows the results to this site within credential scope.",
      "in": "path",
      "name": "siteId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ItemCollectionOfCustomFieldResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get site custom fields",
  "tags": [
    "Companies"
  ]
}
Entreprises11
GETListe des sociétés/v1/companies

Obtenez une liste limitée des entreprises auxquelles vous pouvez accéder. Utilisez la requête d’entreprise paginée pour les exportations plus importantes.

GET /v1/companies ↗

mcp.cap.InventoryRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/companies' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Get a bounded list of companies you can access. Use the paginated company query for larger exports.",
  "operationId": "get_v1_companies",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/CompanyResponse"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List companies",
  "tags": [
    "Companies"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETObtenir une entreprise/v1/companies/{companyId}

Recherchez l'ID et le nom d'une entreprise.

GET /v1/companies/{companyId} ↗

mcp.cap.InventoryRead

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/companies/<companyId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Look up a company's ID and name.",
  "operationId": "get_v1_companies_companyId",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/CompanyResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get a company",
  "tags": [
    "Companies"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETListe des sites de l'entreprise/v1/companies/{companyId}/sites

Rechercher les sites appartenant à une entreprise.

GET /v1/companies/{companyId}/sites ↗

mcp.cap.InventoryRead

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/companies/<companyId>/sites' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Find the sites belonging to one company.",
  "operationId": "get_v1_companies_companyId_sites",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/SiteResponse"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List company sites",
  "tags": [
    "Companies"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETObtenez votre organisation/v1/organization

Lisez les détails de l'organisation associés à vos informations d'identification.

GET /v1/organization ↗

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/organization' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the organisation details associated with your credential.",
  "operationId": "get_v1_organization",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/CompanyResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get your organisation",
  "tags": [
    "Companies"
  ],
  "x-required-capabilities": []
}
GETParcourir les entreprises dans les pages/v1/queries/companies

Exportez les sociétés dans des pages délimitées, en suivant la suivante jusqu'à ce qu'il ne reste plus aucune page.

GET /v1/queries/companies ↗

mcp.cap.InventoryRead

Paramètres

pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/queries/companies' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Export companies in bounded pages, following next until no further page remains.",
  "operationId": "get_v1_queries_companies",
  "parameters": [
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfCompanyResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Browse companies in pages",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETParcourir les sites en pages/v1/queries/sites

Exportez les sites dans des pages délimitées, éventuellement limitées à une seule entreprise.

GET /v1/queries/sites ↗

mcp.cap.InventoryRead

Paramètres

companyId · Requête · en option
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/queries/sites' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Export sites in bounded pages, optionally restricted to one company.",
  "operationId": "get_v1_queries_sites",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "query",
      "name": "companyId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfSiteResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Browse sites in pages",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETLister les rapports clients/v1/reports/companies/{companyId}/monthly

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

GET /v1/reports/companies/{companyId}/monthly ↗

mcp.cap.ReportsRead

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
offset · Requête · en option
Nombre d'éléments à ignorer, en commençant à zéro. Continuez à utiliser le décalage renvoyé par le point de terminaison lorsqu'il est disponible.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/reports/companies/<companyId>/monthly' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "get_v1_reports_companies_companyId_monthly",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Number of items to skip, starting at zero. Continue using the offset returned by the endpoint when available.",
      "in": "query",
      "name": "offset",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/ClientReportArchiveItem"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List client reports",
  "tags": [
    "Reports"
  ],
  "x-required-capabilities": [
    "mcp.cap.ReportsRead"
  ]
}
GETObtenez les paramètres du rapport client/v1/reports/companies/{companyId}/monthly/settings

Lisez les preuves actuelles avec le champ de vision. Les preuves manquantes sont inconnues. Aucune action finale ni charge IA n’est lancée.

GET /v1/reports/companies/{companyId}/monthly/settings ↗

mcp.cap.ReportsRead

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/reports/companies/<companyId>/monthly/settings' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started.",
  "operationId": "get_v1_reports_companies_companyId_monthly_settings",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ClientReportSettingsView"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get client report settings",
  "tags": [
    "Reports"
  ],
  "x-required-capabilities": [
    "mcp.cap.ReportsRead"
  ]
}
GETObtenez un rapport client/v1/reports/companies/{companyId}/monthly/{id}

Lisez les preuves actuelles à portée de poids. Les preuves manquantes sont inconnues. Aucune action de point final ni charge IA n’est engagée. Les preuves d’audit de mot de passe nécessitent également la capacité explicite de PasswordAudit.

GET /v1/reports/companies/{companyId}/monthly/{id} ↗

mcp.cap.ReportsRead

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/reports/companies/<companyId>/monthly/<id>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started. Password-audit evidence additionally requires the explicit PasswordAudit capability.",
  "operationId": "get_v1_reports_companies_companyId_monthly_id",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ClientReportView"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get client report",
  "tags": [
    "Reports"
  ],
  "x-required-capabilities": [
    "mcp.cap.ReportsRead"
  ]
}
GETRapport client d’exportation/v1/reports/companies/{companyId}/monthly/{id}/html

Lisez les preuves actuelles à portée de poids. Les preuves manquantes sont inconnues. Aucune action de point final ni charge IA n’est engagée. Les preuves d’audit de mot de passe nécessitent également la capacité explicite de PasswordAudit.

GET /v1/reports/companies/{companyId}/monthly/{id}/html ↗

mcp.cap.ReportsRead

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/reports/companies/<companyId>/monthly/<id>/html' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started. Password-audit evidence additionally requires the explicit PasswordAudit capability.",
  "operationId": "get_v1_reports_companies_companyId_monthly_id_html",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationReportHtml"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Export client report",
  "tags": [
    "Reports"
  ],
  "x-required-capabilities": [
    "mcp.cap.ReportsRead"
  ]
}
GETObtenir un site/v1/sites/{siteId}

Recherchez un site à l'aide de son ID.

GET /v1/sites/{siteId} ↗

mcp.cap.InventoryRead

Paramètres

siteId · Chemin · requis
Identifiant du site. Un paramètre de requête restreint les résultats à ce site dans la portée des informations d'identification.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/sites/<siteId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Look up one site using its ID.",
  "operationId": "get_v1_sites_siteId",
  "parameters": [
    {
      "description": "Site identifier. A query parameter narrows the results to this site within credential scope.",
      "in": "path",
      "name": "siteId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/SiteResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get a site",
  "tags": [
    "Companies"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
Entretien5
GETListe des fenêtres de maintenance/v1/maintenance-windows

Parcourez les fenêtres de maintenance planifiée dans le cadre de vos informations d'identification.

GET /v1/maintenance-windows ↗

mcp.cap.InventoryRead

Schémas (OpenAPI)

state

"all"
"active"
"upcoming"
"cancelled"
"ended"

Paramètres

pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.
state · Requête · en option
Filtrer par état de ressource. Les états autorisés et les valeurs par défaut dépendent du point de terminaison.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/maintenance-windows' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Browse scheduled maintenance windows within your credential's scope.",
  "operationId": "get_v1_maintenance_windows",
  "parameters": [
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Filter by the resource state. Allowed states and defaults depend on the endpoint.",
      "in": "query",
      "name": "state",
      "schema": {
        "enum": [
          "all",
          "active",
          "upcoming",
          "cancelled",
          "ended"
        ],
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfMaintenanceResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List maintenance windows",
  "tags": [
    "Maintenance"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTCréer une fenêtre de maintenance/v1/maintenance-windows

Planifiez les métadonnées de maintenance pour une entreprise, un site ou un appareil, avec un motif et une durée.

POST /v1/maintenance-windows ↗

mcp.cap.MetadataWrite

La portée est une entreprise, un site ou un appareil. Le motif est requis et comporte au maximum 500 caractères ; la durée est d'au plus 31 jours. Le Idempotency-Key facultatif (1 à 128 caractères) renvoie 200 pour une rediffusion identique et 409 pour une demande modifiée ; la nouvelle création renvoie 201.

Paramètres

Idempotency-Key · En-tête · en option
Utilisez la même clé et le même corps après un résultat de création incertain. Portée sur les informations d'identification.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "endsAtUtc": "<UTC date and time>",
  "reason": "<value>",
  "scope": "<value>",
  "scopeId": "<UUID>",
  "startsAtUtc": "<UTC date and time>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/maintenance-windows' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Scope is company, site or device. Reason is required and at most 500 characters; duration is at most 31 days. Optional Idempotency-Key (1-128 characters) returns 200 for an identical replay and 409 for a changed request; new creation returns 201.",
  "operationId": "post_v1_maintenance_windows",
  "parameters": [
    {
      "description": "Use the same key and body after an uncertain create outcome. Scoped to the credential.",
      "in": "header",
      "name": "Idempotency-Key",
      "schema": {
        "maxLength": 128,
        "minLength": 1,
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/CreateMaintenanceRequest"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/MaintenanceResponse"
          }
        }
      },
      "description": "OK"
    },
    "201": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/MaintenanceResponse"
          }
        }
      },
      "description": "Created"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a maintenance window",
  "tags": [
    "Maintenance"
  ],
  "x-required-capabilities": [
    "mcp.cap.MetadataWrite"
  ]
}
DELETESupprimer une fenêtre de maintenance/v1/maintenance-windows/{windowId}

Supprimez la fenêtre de maintenance sélectionnée.

DELETE /v1/maintenance-windows/{windowId} ↗

mcp.cap.MetadataWrite

Paramètres

windowId · Chemin · requis
Identifiant de la fenêtre de maintenance renvoyé lors de sa création ou de son référencement.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method DELETE `
  -Uri 'https://api.remotegymp.com/v1/maintenance-windows/<windowId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Delete the selected maintenance window.",
  "operationId": "delete_v1_maintenance_windows_windowId",
  "parameters": [
    {
      "description": "Identifier of the maintenance window returned when it was created or listed.",
      "in": "path",
      "name": "windowId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "204": {
      "description": "No Content"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Remove a maintenance window",
  "tags": [
    "Maintenance"
  ],
  "x-required-capabilities": [
    "mcp.cap.MetadataWrite"
  ]
}
GETObtenez une fenêtre de maintenance/v1/maintenance-windows/{windowId}

Lisez le calendrier, la portée et les détails d'une fenêtre de maintenance.

GET /v1/maintenance-windows/{windowId} ↗

mcp.cap.InventoryRead

Paramètres

windowId · Chemin · requis
Identifiant de la fenêtre de maintenance renvoyé lors de sa création ou de son référencement.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/maintenance-windows/<windowId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the timing, scope and details of one maintenance window.",
  "operationId": "get_v1_maintenance_windows_windowId",
  "parameters": [
    {
      "description": "Identifier of the maintenance window returned when it was created or listed.",
      "in": "path",
      "name": "windowId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/MaintenanceResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get a maintenance window",
  "tags": [
    "Maintenance"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTRechercher une maintenance active/v1/maintenance-windows:active-query

Vérifiez quelles fenêtres de maintenance sont actives pour les cibles fournies.

POST /v1/maintenance-windows:active-query ↗

mcp.cap.InventoryRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "ids": [
    "<UUID>"
  ]
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/maintenance-windows:active-query' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Check which maintenance windows are active for the supplied targets.",
  "operationId": "post_v1_maintenance_windows_active_query",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IdBatch"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ItemCollectionOfMaintenanceResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Find active maintenance",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
Gestion30
POSTCréer une entreprise/v1/management/companies

Ajoutez une entreprise au sein de votre organisation autorisée.

POST /v1/management/companies ↗

mcp.cap.CompaniesManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/companies' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Add a company within your authorised organisation.",
  "operationId": "post_v1_management_companies",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfstring"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a company",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.CompaniesManage"
  ]
}
POSTSupprimer une entreprise/v1/management/companies/delete

Demander la suppression d'une entreprise via les garanties de gestion existantes. Examinez attentivement la cible.

POST /v1/management/companies/delete ↗

mcp.cap.CompaniesDelete

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/companies/delete' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request removal of a company through the existing management safeguards. Review the target carefully.",
  "operationId": "post_v1_management_companies_delete",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Delete a company",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.CompaniesDelete"
  ]
}
POSTSupprimer un appareil/v1/management/devices/delete

Demander la suppression du périphérique via le flux de travail de gestion.

POST /v1/management/devices/delete ↗

mcp.cap.DevicesDelete

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/devices/delete' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request device removal through the management workflow.",
  "operationId": "post_v1_management_devices_delete",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Delete a device",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.DevicesDelete"
  ]
}
POSTDéplacer un appareil/v1/management/devices/move

Modifiez l'affectation de la société ou du site d'un appareil dans la portée autorisée.

POST /v1/management/devices/move ↗

mcp.cap.DevicesManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "deviceId": "<UUID>",
    "siteId": "<UUID>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/devices/move' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Change a device's company or site assignment within the permitted scope.",
  "operationId": "post_v1_management_devices_move",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationDeviceMove"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Move a device",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.DevicesManage"
  ]
}
POSTRévoquer l'accès à l'appareil/v1/management/devices/revoke

Révoquer l'accès agent du périphérique sélectionné.

POST /v1/management/devices/revoke ↗

mcp.cap.DevicesManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/devices/revoke' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Revoke the selected device's agent access.",
  "operationId": "post_v1_management_devices_revoke",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Revoke device access",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.DevicesManage"
  ]
}
POSTRestaurer l'accès à l'appareil/v1/management/devices/unrevoke

Supprimez l'état révoqué d'un appareil à l'aide du workflow de gestion autorisé.

POST /v1/management/devices/unrevoke ↗

mcp.cap.DevicesManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/devices/unrevoke' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Remove a device's revoked state using the authorised management workflow.",
  "operationId": "post_v1_management_devices_unrevoke",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Restore device access",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.DevicesManage"
  ]
}
POSTRotation d'une clé d'inscription/v1/management/enrollment/rotate

Remplacez les informations d'identification d'inscription d'une entreprise. Les installateurs d’inscription existants utilisant l’ancienne clé perdent la capacité d’inscription.

POST /v1/management/enrollment/rotate ↗

mcp.cap.EnrollmentRotate

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/enrollment/rotate' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Replace a company's enrollment credential. Existing enrollment installers using the old key lose enrollment ability.",
  "operationId": "post_v1_management_enrollment_rotate",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Rotate an enrollment key",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.EnrollmentRotate"
  ]
}
POSTDemander un installateur/v1/management/installers

Préparation de l'installateur de file d'attente pour une entreprise et une plateforme autorisées.

POST /v1/management/installers ↗

mcp.cap.EnrollmentManage

Schémas (OpenAPI)

InstallerPlatform

0 = Windows
1 = Linux
2 = MacOs

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "platform": 0,
    "siteId": "<UUID>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/installers' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Queue installer preparation for an authorised company and platform.",
  "operationId": "post_v1_management_installers",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationInstallerBuild"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Request an installer",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.EnrollmentManage"
  ]
}
GETLire l'historique de l'installateur/v1/management/installers/history

Lire l’historique de construction et de distribution du programme d’installation conservé.

GET /v1/management/installers/history ↗

mcp.cap.EnrollmentRead

Schémas (OpenAPI)

InstallerPlatform

0 = Windows
1 = Linux
2 = MacOs

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/management/installers/history' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read retained installer build and distribution history.",
  "operationId": "get_v1_management_installers_history",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/InstallerHistoryItem"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read installer history",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.EnrollmentRead"
  ]
}
GETRépertorier les tâches d'installation/v1/management/installers/jobs

Lire les tâches d'installation en file d'attente et leur état.

GET /v1/management/installers/jobs ↗

mcp.cap.EnrollmentRead

Schémas (OpenAPI)

InstallerPlatform

0 = Windows
1 = Linux
2 = MacOs

DeviceJobStatus

0 = Pending
1 = Running
2 = Completed
3 = Failed
4 = Cancelled

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/management/installers/jobs' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read queued installer jobs and their status.",
  "operationId": "get_v1_management_installers_jobs",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/InstallerBuildJobItem"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List installer jobs",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.EnrollmentRead"
  ]
}
GETObtenir l'état des opérations de gestion/v1/management/operations/{operationId}

Lire l'état et le résultat retenu d'un changement de gestion sans le répéter.

GET /v1/management/operations/{operationId} ↗

Paramètres

operationId · Chemin · requis
Identificateur de reçu d'opération de niveau supérieur. Interrogez ce reçu pour inspecter les progrès et le résultat.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/management/operations/<operationId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the status and retained result of a management change without repeating it.",
  "operationId": "get_v1_management_operations_operationId",
  "parameters": [
    {
      "description": "Top-level operation receipt identifier. Poll this receipt to inspect progress and the result.",
      "in": "path",
      "name": "operationId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get management-operation status",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": []
}
GETLire un paramètre/v1/management/settings

Lire un paramètre de gestion pris en charge dans la portée autorisée demandée.

GET /v1/management/settings ↗

mcp.cap.SettingsRead

Schémas (OpenAPI)

SettingScopeType

0 = Device
1 = Site
2 = Company
3 = Organization

SettingKey

0 = RequireUserConsent
1 = LockComputerOnSessionEnd
2 = OpenSessionsInNewTab
3 = WakeRelay
4 = TerminalExperience
5 = DefaultSessionColorQuality
6 = DefaultSuppressWallpaper
7 = DefaultOptimizeWindowsVisualEffects
8 = DefaultDeviceListLayout
9 = DeviceLocationReporting
10 = NetworkDiscoveryMode
11 = NetworkDiscoveryPolicy
12 = NetworkDiscoveryRetentionPolicy
13 = NetworkDiscoverySensorAssignment
14 = NetworkTcpMonitoringPolicy
15 = NetworkDiscoveryAllowWindowsPublicProfile
16 = NetworkInternetSpeedEnabled
17 = IloMonitoringEnabled
18 = IdracMonitoringEnabled

Paramètres

scopeType · Requête · requis
Type de portée des paramètres. Utilisez la valeur enum correspondant à la portée prévue.
scopeId · Requête · requis
Identifiant du périmètre de paramétrage sélectionné par scopeType.
key · Requête · requis
Clé de réglage à lire. Utilisez la valeur enum pour le paramètre souhaité.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/management/settings?scopeType=<scopeType>&scopeId=<scopeId>&key=<key>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read a supported management setting in the requested authorised scope.",
  "operationId": "get_v1_management_settings",
  "parameters": [
    {
      "description": "Kind of settings scope. Use the enum value matching the intended scope.",
      "in": "query",
      "name": "scopeType",
      "required": true,
      "schema": {
        "$ref": "#/components/schemas/SettingScopeType"
      }
    },
    {
      "description": "Identifier of the settings scope selected by scopeType.",
      "in": "query",
      "name": "scopeId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Setting key to read. Use the enum value for the intended setting.",
      "in": "query",
      "name": "key",
      "required": true,
      "schema": {
        "$ref": "#/components/schemas/SettingKey"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiSettingValue"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read a setting",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.SettingsRead"
  ]
}
PUTMettre à jour un paramètre/v1/management/settings

Modifiez un paramètre de gestion pris en charge dans la portée autorisée.

PUT /v1/management/settings ↗

mcp.cap.SettingsManage

Schémas (OpenAPI)

SettingKey

0 = RequireUserConsent
1 = LockComputerOnSessionEnd
2 = OpenSessionsInNewTab
3 = WakeRelay
4 = TerminalExperience
5 = DefaultSessionColorQuality
6 = DefaultSuppressWallpaper
7 = DefaultOptimizeWindowsVisualEffects
8 = DefaultDeviceListLayout
9 = DeviceLocationReporting
10 = NetworkDiscoveryMode
11 = NetworkDiscoveryPolicy
12 = NetworkDiscoveryRetentionPolicy
13 = NetworkDiscoverySensorAssignment
14 = NetworkTcpMonitoringPolicy
15 = NetworkDiscoveryAllowWindowsPublicProfile
16 = NetworkInternetSpeedEnabled
17 = IloMonitoringEnabled
18 = IdracMonitoringEnabled

SettingScopeType

0 = Device
1 = Site
2 = Company
3 = Organization

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "key": 0,
    "scopeId": "<UUID>",
    "scopeType": 0,
    "value": "<value>"
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/management/settings' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Change a supported management setting within the permitted scope.",
  "operationId": "put_v1_management_settings",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationSetting"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Update a setting",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.SettingsManage"
  ]
}
POSTCréer un site/v1/management/sites

Ajoutez un site à une entreprise autorisée.

POST /v1/management/sites ↗

mcp.cap.CompaniesManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "name": "<value>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/sites' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Add a site to an authorised company.",
  "operationId": "post_v1_management_sites",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationSiteCreate"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a site",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.CompaniesManage"
  ]
}
POSTSupprimer un site/v1/management/sites/delete

Supprimez un site à l'aide du workflow de gestion et de ses vérifications de portée.

POST /v1/management/sites/delete ↗

mcp.cap.CompaniesDelete

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/sites/delete' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Remove a site using the management workflow and its scope checks.",
  "operationId": "post_v1_management_sites_delete",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Delete a site",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.CompaniesDelete"
  ]
}
PUTModifier l'accès de l'équipe/v1/management/team/access

Mettre à jour la portée autorisée et les attributions de rôles d'un membre de l'équipe.

PUT /v1/management/team/access ↗

mcp.cap.TeamAccessManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyIds": [
      "<UUID>"
    ],
    "roleKeys": [
      "<value>"
    ],
    "userId": "<UUID>"
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/management/team/access' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Update a team member's permitted scope and role assignments.",
  "operationId": "put_v1_management_team_access",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationUserAccess"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Change team access",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamAccessManage"
  ]
}
GETListe des invitations aux équipes/v1/management/team/invites

Lire les invitations des équipes et leur état actuel.

GET /v1/management/team/invites ↗

mcp.cap.TeamRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/management/team/invites' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read team invitations and their current state.",
  "operationId": "get_v1_management_team_invites",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/UserInviteDto"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List team invitations",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamRead"
  ]
}
POSTInviter un membre de l'équipe/v1/management/team/invites

Envoyez une invitation avec l’accès d’équipe demandé.

POST /v1/management/team/invites ↗

mcp.cap.TeamManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "email": "<value>",
    "grantOwner": false,
    "rmmRoleKeys": [
      "<value>"
    ],
    "role": "<value>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/team/invites' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Send an invitation with the requested team access.",
  "operationId": "post_v1_management_team_invites",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationUserInvite"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Invite a team member",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamManage"
  ]
}
POSTRenvoyer une invitation/v1/management/team/invites/resend

Renvoyer une invitation d'équipe existante.

POST /v1/management/team/invites/resend ↗

mcp.cap.TeamManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/team/invites/resend' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Resend an existing team invitation.",
  "operationId": "post_v1_management_team_invites_resend",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Resend an invitation",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamManage"
  ]
}
POSTRévoquer une invitation/v1/management/team/invites/revoke

Invalider une invitation d'équipe qui ne devrait plus être acceptée.

POST /v1/management/team/invites/revoke ↗

mcp.cap.TeamManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/team/invites/revoke' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Invalidate a team invitation that should no longer be accepted.",
  "operationId": "post_v1_management_team_invites_revoke",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Revoke an invitation",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamManage"
  ]
}
PUTModifier le nom d'un membre de l'équipe/v1/management/team/name

Mettre à jour le nom d'affichage de l'utilisateur sélectionné.

PUT /v1/management/team/name ↗

mcp.cap.TeamManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "displayName": "<value>",
    "userId": "<UUID>"
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/management/team/name' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Update the selected user's display name.",
  "operationId": "put_v1_management_team_name",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationUserName"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Change a team member's name",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamManage"
  ]
}
PUTChanger le statut de propriétaire/v1/management/team/owner

Mettre à jour le statut de propriétaire d'un membre de l'équipe, sous réserve des garanties de gestion du propriétaire.

PUT /v1/management/team/owner ↗

mcp.cap.TeamOwnerManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "isOwner": false,
    "userId": "<UUID>"
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/management/team/owner' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Update a team member's owner status, subject to owner-management safeguards.",
  "operationId": "put_v1_management_team_owner",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationUserOwner"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Change owner status",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamOwnerManage"
  ]
}
GETRépertorier les rôles de l'équipe/v1/management/team/roles

Lire les rôles configurés et leurs autorisations.

GET /v1/management/team/roles ↗

mcp.cap.TeamRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/management/team/roles' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read configured roles and their permissions.",
  "operationId": "get_v1_management_team_roles",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/RmmRoleDto"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List team roles",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamRead"
  ]
}
PUTEnregistrer un rôle d'équipe/v1/management/team/roles

Créer ou mettre à jour le nom et les autorisations d'un rôle.

PUT /v1/management/team/roles ↗

mcp.cap.TeamAccessManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "description": "<value>",
    "name": "<value>",
    "permissions": 1,
    "roleId": "<UUID>"
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/management/team/roles' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Create or update a role's name and permissions.",
  "operationId": "put_v1_management_team_roles",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationRole"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Save a team role",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamAccessManage"
  ]
}
POSTSupprimer un rôle/v1/management/team/roles/delete

Supprimez le rôle sélectionné via les contrôles de gestion d'équipe.

POST /v1/management/team/roles/delete ↗

mcp.cap.TeamAccessManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/team/roles/delete' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Remove the selected role through the team-management checks.",
  "operationId": "post_v1_management_team_roles_delete",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Delete a role",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamAccessManage"
  ]
}
GETListe des utilisateurs de l'équipe/v1/management/team/users

Lire les utilisateurs de l'équipe visibles par vos informations d'identification de gestion.

GET /v1/management/team/users ↗

mcp.cap.TeamRead

Schémas (OpenAPI)

AccountAccessState

0 = Active
1 = TemporarilyLocked
2 = Deactivated

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/management/team/users' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read team users visible to your management credential.",
  "operationId": "get_v1_management_team_users",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/RosterUserDto"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List team users",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamRead"
  ]
}
POSTDésactiver un membre de l'équipe/v1/management/team/users/deactivate

Désactivez l'accès d'un utilisateur via le flux de travail de gestion d'équipe.

POST /v1/management/team/users/deactivate ↗

mcp.cap.TeamManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/team/users/deactivate' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Disable a user's access through the team-management workflow.",
  "operationId": "post_v1_management_team_users_deactivate",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Deactivate a team member",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamManage"
  ]
}
POSTRéactiver un membre de l'équipe/v1/management/team/users/reactivate

Restaurez l'accès à l'équipe d'un utilisateur inactif éligible.

POST /v1/management/team/users/reactivate ↗

mcp.cap.TeamManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/team/users/reactivate' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Restore an eligible inactive user's team access.",
  "operationId": "post_v1_management_team_users_reactivate",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Reactivate a team member",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamManage"
  ]
}
POSTSupprimer un membre de l'équipe/v1/management/team/users/remove

Supprimez un utilisateur de l'équipe gérée via les protections existantes.

POST /v1/management/team/users/remove ↗

mcp.cap.TeamManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/team/users/remove' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Remove a user from the managed team through the existing safeguards.",
  "operationId": "post_v1_management_team_users_remove",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Remove a team member",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamManage"
  ]
}
POSTDébloquez un membre de l'équipe/v1/management/team/users/unlock

Supprimez le verrouillage du compte d'un utilisateur éligible via le workflow de gestion.

POST /v1/management/team/users/unlock ↗

mcp.cap.TeamManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/management/team/users/unlock' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Clear an eligible user's account lockout through the management workflow.",
  "operationId": "post_v1_management_team_users_unlock",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Unlock a team member",
  "tags": [
    "Management"
  ],
  "x-required-capabilities": [
    "mcp.cap.TeamManage"
  ]
}
Groupes3
GETListe des groupes/v1/groups

Parcourez les groupes de périphériques disponibles pour vos informations d'identification.

GET /v1/groups ↗

mcp.cap.InventoryRead

Paramètres

pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/groups' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Browse the device groups available to your credential.",
  "operationId": "get_v1_groups",
  "parameters": [
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfGroupResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List groups",
  "tags": [
    "Groups"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETObtenez un groupe/v1/groups/{groupId}

Lire les détails d'un groupe de périphériques.

GET /v1/groups/{groupId} ↗

mcp.cap.InventoryRead

Paramètres

groupId · Chemin · requis
Identifiant du groupe de périphériques à lire.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/groups/<groupId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read details of one device group.",
  "operationId": "get_v1_groups_groupId",
  "parameters": [
    {
      "description": "Identifier of the device group to read.",
      "in": "path",
      "name": "groupId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/GroupResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get a group",
  "tags": [
    "Groups"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETListe des membres du groupe/v1/groups/{groupId}/devices

Lit les ID de périphérique de la dernière adhésion évaluée du groupe. Suivez next pour plus de membres.

GET /v1/groups/{groupId}/devices ↗

mcp.cap.InventoryRead

Appartenance à la dernière version du groupe actif évalué. Suivez next pour le deviceIds restant ; maximumReturned est la taille de page sélectionnée.

Paramètres

groupId · Chemin · requis
Identifiant du groupe de périphériques à lire.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/groups/<groupId>/devices' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Membership of the last evaluated active group version. Follow next for remaining deviceIds; maximumReturned is the selected page size.",
  "operationId": "get_v1_groups_groupId_devices",
  "parameters": [
    {
      "description": "Identifier of the device group to read.",
      "in": "path",
      "name": "groupId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/GroupDevicesResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List group members",
  "tags": [
    "Groups"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
IA11
POSTLire les actions IA enregistrées/v1/assistant/actions

Lire les actions enregistrées pour l'oscilloscope assistant fourni.

POST /v1/assistant/actions ↗

mcp.cap.AssistantRead

Schémas (OpenAPI)

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

AutomationScriptPlatform

0 = WindowsPowerShell51
1 = LinuxBash
2 = MacOsZsh
3 = WindowsCmd
4 = WindowsPowerShell7
5 = LinuxPowerShell7
6 = MacOsPowerShell7
7 = WindowsPython3
8 = LinuxPython3
9 = MacOsPython3

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "kind": 0
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/assistant/actions' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read saved actions for the supplied assistant scope.",
  "operationId": "post_v1_assistant_actions",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/AutomationHierarchyScope"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/AutomationAssistantSavedAction"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read saved AI actions",
  "tags": [
    "AI"
  ],
  "x-required-capabilities": [
    "mcp.cap.AssistantRead"
  ]
}
POSTAppliquer une tâche IA/v1/assistant/apply

Appliquer le travail pris en charge à partir d'une tâche assistante à l'aide de ses approbations et contraintes requises.

POST /v1/assistant/apply ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute + mcp.cap.AssistantApply

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/assistant/apply' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Apply supported work from an assistant task using its required approvals and constraints.",
  "operationId": "post_v1_assistant_apply",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Apply an AI task",
  "tags": [
    "AI"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationManage",
    "mcp.cap.AutomationExecute",
    "mcp.cap.AssistantApply"
  ]
}
GETLire la stratégie d'action élevée de l'IA/v1/assistant/elevated-policy

Inspectez la politique régissant les actions des assistants élevés avant de planifier le travail.

GET /v1/assistant/elevated-policy ↗

mcp.cap.AssistantRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/assistant/elevated-policy' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Inspect the policy governing elevated assistant actions before planning work.",
  "operationId": "get_v1_assistant_elevated_policy",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiAssistantPolicy"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read AI elevated-action policy",
  "tags": [
    "AI"
  ],
  "x-required-capabilities": [
    "mcp.cap.AssistantRead"
  ]
}
POSTEstimer une tâche d'IA/v1/assistant/estimate

Estimer une tâche d'assistant proposée avant de la démarrer.

POST /v1/assistant/estimate ↗

mcp.cap.AssistantRead

Schémas (OpenAPI)

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "execute": false,
  "recipients": [
    "<value>"
  ],
  "request": "<value>",
  "scope": {
    "kind": 0
  },
  "submissionKey": "<value>",
  "timeZoneId": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/assistant/estimate' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Estimate a proposed assistant task before starting it.",
  "operationId": "post_v1_assistant_estimate",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/AutomationAssistantRequest"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AutomationAssistantEstimate"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Estimate an AI task",
  "tags": [
    "AI"
  ],
  "x-required-capabilities": [
    "mcp.cap.AssistantRead"
  ]
}
POSTExécuter un pilote d'IA/v1/assistant/pilot

Exécutez le workflow pilote de la tâche assistante avant un déploiement plus large.

POST /v1/assistant/pilot ↗

mcp.cap.AutomationExecute + mcp.cap.AssistantPilot

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "deviceId": "<UUID>",
    "proposalId": "<UUID>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/assistant/pilot' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Run the assistant task's pilot workflow before a broader rollout.",
  "operationId": "post_v1_assistant_pilot",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationAssistantPilot"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Run an AI pilot",
  "tags": [
    "AI"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationExecute",
    "mcp.cap.AssistantPilot"
  ]
}
GETLire les rapports IA/v1/assistant/reports

Lire les rapports produits par les tâches de l'assistant.

GET /v1/assistant/reports ↗

mcp.cap.AssistantRead

Schémas (OpenAPI)

AutomationNotificationAudience

0 = None
1 = Owners
2 = Technicians
4 = Clients

AutomationNotificationChannel

0 = None
1 = InApp
2 = Email

DayOfWeek

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday

AutomationScheduleKind

0 = Once
1 = Interval
2 = Daily
3 = Weekdays
4 = Weekly
5 = Monthly
6 = Cron

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/assistant/reports' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read reports produced by assistant tasks.",
  "operationId": "get_v1_assistant_reports",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/AutomationReportScheduleView"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read AI reports",
  "tags": [
    "AI"
  ],
  "x-required-capabilities": [
    "mcp.cap.AssistantRead"
  ]
}
POSTRéessayer un pilote d'IA/v1/assistant/retry-pilot

Demander une nouvelle tentative du pilote assistant à l'aide du contexte de tâche fourni.

POST /v1/assistant/retry-pilot ↗

mcp.cap.AutomationExecute + mcp.cap.AssistantPilot

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/assistant/retry-pilot' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request a retry of the assistant pilot using the supplied task context.",
  "operationId": "post_v1_assistant_retry_pilot",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfGuid"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Retry an AI pilot",
  "tags": [
    "AI"
  ],
  "x-required-capabilities": [
    "mcp.cap.AutomationExecute",
    "mcp.cap.AssistantPilot"
  ]
}
POSTDémarrer une tâche IA/v1/assistant/start

Démarrez une tâche d'assistant avec les cibles et les instructions fournies.

POST /v1/assistant/start ↗

mcp.cap.AssistantPropose

Schémas (OpenAPI)

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "acceptQuotedCharge": false,
    "estimateToken": "<estimateToken>",
    "request": {
      "execute": false,
      "recipients": [
        "<value>"
      ],
      "request": "<value>",
      "scope": {
        "kind": 0
      },
      "submissionKey": "<value>",
      "timeZoneId": "<value>"
    }
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/assistant/start' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Start an assistant task with the supplied targets and instructions.",
  "operationId": "post_v1_assistant_start",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationAssistantStart"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Start an AI task",
  "tags": [
    "AI"
  ],
  "x-required-capabilities": [
    "mcp.cap.AssistantPropose"
  ]
}
POSTInspecter le contexte cible de l'IA/v1/assistant/target-context

Lire le contexte cible autorisé utilisé pour préparer une tâche assistante.

POST /v1/assistant/target-context ↗

mcp.cap.AssistantRead

Schémas (OpenAPI)

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "scope": {
    "kind": 0
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/assistant/target-context' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the permitted target context used to prepare an assistant task.",
  "operationId": "post_v1_assistant_target_context",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAssistantTargets"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AutomationAssistantTargetContext"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Inspect AI target context",
  "tags": [
    "AI"
  ],
  "x-required-capabilities": [
    "mcp.cap.AssistantRead"
  ]
}
GETListe des tâches IA/v1/assistant/tasks

Parcourez les tâches de l'assistant AI visibles pour vos informations d'identification.

GET /v1/assistant/tasks ↗

mcp.cap.AssistantRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/assistant/tasks' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Browse AI assistant tasks visible to your credential.",
  "operationId": "get_v1_assistant_tasks",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/AutomationAssistantHistoryItem"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List AI tasks",
  "tags": [
    "AI"
  ],
  "x-required-capabilities": [
    "mcp.cap.AssistantRead"
  ]
}
GETObtenez une tâche IA/v1/assistant/tasks/{id}

Lire l'état et les détails d'une tâche d'assistant.

GET /v1/assistant/tasks/{id} ↗

mcp.cap.AssistantRead

Schémas (OpenAPI)

AutomationNotificationAudience

0 = None
1 = Owners
2 = Technicians
4 = Clients

AutomationNotificationChannel

0 = None
1 = InApp
2 = Email

AutomationSimpleActionKind

0 = Script
1 = Notification
2 = RefreshFacts
3 = ControlService
4 = RestartDevice
5 = WindowsDiskCleanup
6 = LinuxMaintenance
7 = WakeDevice
8 = SendUserMessage
9 = UninstallSoftware

LinuxMaintenanceAction

0 = RefreshPackageInventory
1 = InstallPackageUpdates
2 = RefreshFirmwareMetadata
3 = InstallFirmwareUpdates
4 = InstallAllUpdates

AutomationOutcomeMatch

0 = Failure
1 = Success
2 = Always
3 = ResultMatches

AutomationNotificationSeverity

0 = Information
1 = Warning
2 = Critical
3 = Recovery

AutomationScriptPlatform

0 = WindowsPowerShell51
1 = LinuxBash
2 = MacOsZsh
3 = WindowsCmd
4 = WindowsPowerShell7
5 = LinuxPowerShell7
6 = MacOsPowerShell7
7 = WindowsPython3
8 = LinuxPython3
9 = MacOsPython3

ServiceAction

0 = Start
1 = Stop
2 = Restart

SoftwareKind

0 = ClassicDesktop
1 = PackagedApp

AutomationTruthValue

0 = False
1 = True
2 = Unknown

OsKind

0 = Windows
1 = MacOs
2 = Linux
3 = Android
4 = Ios

AutomationConditionKind

0 = All
1 = Any
2 = Not
3 = Predicate

AutomationConditionOperator

0 = Equal
1 = NotEqual
2 = GreaterThan
3 = GreaterThanOrEqual
4 = LessThan
5 = LessThanOrEqual
6 = Contains
7 = NotContains
8 = StartsWith
9 = EndsWith
10 = In
11 = NotIn
12 = Exists
13 = NotExists
14 = OlderThan
15 = NewerThan
16 = CountEqual
17 = CountGreaterThan
18 = CountLessThan
19 = Changed
20 = ChangedFrom
21 = ChangedTo
22 = ServiceMatches
23 = ServiceMissing
24 = SoftwareMatches
25 = DriveMatches

AutomationScopeKind

0 = Organization
1 = Company
2 = Site
3 = Device

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/assistant/tasks/<id>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read one assistant task's state and details.",
  "operationId": "get_v1_assistant_tasks_id",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AutomationAssistantResult"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get an AI task",
  "tags": [
    "AI"
  ],
  "x-required-capabilities": [
    "mcp.cap.AssistantRead"
  ]
}
Intégrations12
GETObtenir l'activité des informations d'identification/v1/activity

Lecture de l'activité d'audit API conservée pour ce justificatif. Il ne s’agit pas ici de l’historique complet des audits de l’organisation.

GET /v1/activity ↗

mcp.cap.ActivityRead

Paramètres

pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/activity' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read retained API audit activity for this credential. This is not the organisation's complete audit history.",
  "operationId": "get_v1_activity",
  "parameters": [
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfActivityResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get credential activity",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.ActivityRead"
  ]
}
GETLire les modifications récentes/v1/events

Lire les modifications de l'appareil suivi et des alertes à partir du flux d'événements rejouable. Gardez le curseur et rapprochez périodiquement un inventaire complet.

GET /v1/events ↗

mcp.cap.InventoryRead

Paramètres

after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/events' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read tracked device and alert changes from the replayable event feed. Keep the cursor and periodically reconcile a full inventory.",
  "operationId": "get_v1_events",
  "parameters": [
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "int64",
        "type": "integer"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/EventPage"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read recent changes",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTCréer un instantané de périphérique/v1/sync/devices

Démarrez une exportation stable du résumé du périphérique ou comparez-le avec un instantané terminé précédent pour rechercher les modifications.

POST /v1/sync/devices ↗

mcp.cap.InventoryRead

Créez un instantané stable de résumé de périphérique ; previousSnapshotId est null pour une référence complète ou un ID d'instantané complet pour les modifications. Expire après sept jours. Limites : 10 000 appareils, quatre instantanés par identifiant et organisation par heure, 256 Mio de stockage compressé par organisation. Aucun logiciel, alerte, champ personnalisé ou suivi des modifications d'inventaire.

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "previousSnapshotId": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/sync/devices' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Create a stable device-summary snapshot; previousSnapshotId is null for a full baseline or a completed snapshot ID for changes. Expires after seven days. Limits: 10000 devices, four snapshots per credential and organisation per hour, 256 MiB compressed storage per organisation. No software, alert, custom-field or inventory change tracking.",
  "operationId": "post_v1_sync_devices",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/SyncRequest"
        }
      }
    },
    "required": true
  },
  "responses": {
    "201": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/SyncResponse"
          }
        }
      },
      "description": "Created"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a device snapshot",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETLire les modifications apportées aux instantanés de périphérique/v1/sync/devices/{snapshotId}

Page via les résumés des appareils ajoutés, mis à jour et supprimés d'un instantané. Enregistrez l'ID de l'instantané uniquement après avoir lu chaque page.

GET /v1/sync/devices/{snapshotId} ↗

mcp.cap.InventoryRead

Suivez next jusqu'à null, puis conservez cet instantané terminé comme référence suivante. Les éléments sont upsert avec un résumé ou deleted avec l'appareil null. Les instantanés appartiennent à leurs informations d'identification de création et la portée est revérifiée. 410 nécessite une nouvelle référence complète.

Paramètres

snapshotId · Chemin · requis
Identifiant de l'instantané à parcourir. Utilisez les mêmes informations d'identification et la même portée qui les ont créés.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/sync/devices/<snapshotId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Follow next until null, then retain this completed snapshot as the next baseline. Items are upsert with a summary or deleted with device null. Snapshots belong to their creating credential and scope is rechecked. 410 requires a new full baseline.",
  "operationId": "get_v1_sync_devices_snapshotId",
  "parameters": [
    {
      "description": "Identifier of the snapshot to page through. Use the same credential and scope that created it.",
      "in": "path",
      "name": "snapshotId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfSyncChange"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read device snapshot changes",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
POSTCréer un instantané de ressource/v1/sync/{resource}

Démarrez un instantané d'inventaire, de logiciel, d'alertes ou de champs personnalisés, éventuellement comparé à un instantané précédent.

POST /v1/sync/{resource} ↗

mcp.cap.InventoryRead

Schémas (OpenAPI)

resource

"inventory"
"software"
"alerts"
"custom-fields"

Paramètres

resource · Chemin · requis
Collecte de ressources vers un instantané. Utilisez un nom de ressource pris en charge à partir du contrat de point de terminaison.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "previousSnapshotId": "<UUID>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/sync/<resource>' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Start an inventory, software, alerts or custom-fields snapshot, optionally compared with a previous snapshot.",
  "operationId": "post_v1_sync_resource",
  "parameters": [
    {
      "description": "Resource collection to snapshot. Use a supported resource name from the endpoint contract.",
      "in": "path",
      "name": "resource",
      "required": true,
      "schema": {
        "enum": [
          "inventory",
          "software",
          "alerts",
          "custom-fields"
        ],
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/SyncRequest"
        }
      }
    },
    "required": true
  },
  "responses": {
    "201": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/SyncResponse"
          }
        }
      },
      "description": "Created"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a resource snapshot",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETLire les modifications de ressources/v1/sync/{resource}/{snapshotId}

Page via un instantané de ressource. Un instantané expiré nécessite une nouvelle référence complète.

GET /v1/sync/{resource}/{snapshotId} ↗

mcp.cap.InventoryRead

Schémas (OpenAPI)

resource

"inventory"
"software"
"alerts"
"custom-fields"

Paramètres

resource · Chemin · requis
Collecte de ressources vers un instantané. Utilisez un nom de ressource pris en charge à partir du contrat de point de terminaison.
snapshotId · Chemin · requis
Identifiant de l'instantané à parcourir. Utilisez les mêmes informations d'identification et la même portée qui les ont créés.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/sync/<resource>/<snapshotId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Page through a resource snapshot. An expired snapshot requires a new full baseline.",
  "operationId": "get_v1_sync_resource_snapshotId",
  "parameters": [
    {
      "description": "Resource collection to snapshot. Use a supported resource name from the endpoint contract.",
      "in": "path",
      "name": "resource",
      "required": true,
      "schema": {
        "enum": [
          "inventory",
          "software",
          "alerts",
          "custom-fields"
        ],
        "type": "string"
      }
    },
    {
      "description": "Identifier of the snapshot to page through. Use the same credential and scope that created it.",
      "in": "path",
      "name": "snapshotId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfResourceSyncChange"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read resource changes",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETRépertorier les abonnements aux webhooks/v1/webhooks

Lisez les abonnements appartenant à vos informations d'identification, sans leurs secrets de signature.

GET /v1/webhooks ↗

mcp.cap.WebhooksRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/webhooks' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read subscriptions owned by your credential, without their signing secrets.",
  "operationId": "get_v1_webhooks",
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/WebhookResponse"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List webhook subscriptions",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.WebhooksRead"
  ]
}
POSTCréer un abonnement webhook/v1/webhooks

Enregistrez une destination HTTPS pour des événements futurs. Conservez le secret de signature lorsqu'il est renvoyé une fois.

POST /v1/webhooks ↗

mcp.cap.WebhooksWrite

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "url": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/webhooks' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Register an HTTPS destination for future events. Store the signing secret when it is returned once.",
  "operationId": "post_v1_webhooks",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/WebhookRequest"
        }
      }
    },
    "required": true
  },
  "responses": {
    "201": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/NewWebhookResponse"
          }
        }
      },
      "description": "Created"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Create a webhook subscription",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.WebhooksWrite"
  ]
}
DELETESupprimer un abonnement webhook/v1/webhooks/{webhookId}

Arrêtez un abonnement et supprimez son historique de livraison.

DELETE /v1/webhooks/{webhookId} ↗

mcp.cap.WebhooksWrite

Paramètres

webhookId · Chemin · requis
Identifiant de l’abonnement webhook.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method DELETE `
  -Uri 'https://api.remotegymp.com/v1/webhooks/<webhookId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Stop a subscription and remove its delivery history.",
  "operationId": "delete_v1_webhooks_webhookId",
  "parameters": [
    {
      "description": "Identifier of the webhook subscription.",
      "in": "path",
      "name": "webhookId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "204": {
      "description": "No Content"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Delete a webhook subscription",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.WebhooksWrite"
  ]
}
GETLire les livraisons de webhooks/v1/webhooks/{webhookId}/deliveries

Inspecter les tentatives de livraison et leur statut enregistré pour un abonnement.

GET /v1/webhooks/{webhookId}/deliveries ↗

mcp.cap.WebhooksRead

Paramètres

webhookId · Chemin · requis
Identifiant de l’abonnement webhook.
pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/webhooks/<webhookId>/deliveries' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Inspect delivery attempts and their recorded status for one subscription.",
  "operationId": "get_v1_webhooks_webhookId_deliveries",
  "parameters": [
    {
      "description": "Identifier of the webhook subscription.",
      "in": "path",
      "name": "webhookId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfDeliveryResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read webhook deliveries",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.WebhooksRead"
  ]
}
POSTRéessayer une livraison de webhook/v1/webhooks/{webhookId}/deliveries/{deliveryId}/replay

Rejouer une livraison retenue avec son ID de livraison d'origine. Les destinataires doivent gérer les doublons.

POST /v1/webhooks/{webhookId}/deliveries/{deliveryId}/replay ↗

mcp.cap.WebhooksWrite

Paramètres

webhookId · Chemin · requis
Identifiant de l’abonnement webhook.
deliveryId · Chemin · requis
Identifiant d'une diffusion appartenant à cet abonnement webhook.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/webhooks/<webhookId>/deliveries/<deliveryId>/replay' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Replay a retained delivery with its original delivery ID. Receivers must handle duplicates.",
  "operationId": "post_v1_webhooks_webhookId_deliveries_deliveryId_replay",
  "parameters": [
    {
      "description": "Identifier of the webhook subscription.",
      "in": "path",
      "name": "webhookId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Identifier of a delivery belonging to this webhook subscription.",
      "in": "path",
      "name": "deliveryId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "202": {
      "description": "Accepted"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Retry a webhook delivery",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.WebhooksWrite"
  ]
}
PUTActiver le webhook/v1/webhooks/{webhookId}/enabled

Cela nécessite FullAccess et l’autorité du propriétaire actuel. Fournissez une clé d’idempotence, réutilisez la même demande after incertitude, et inspectez le reçu d’opération.

PUT /v1/webhooks/{webhookId}/enabled ↗

mcp.cap.WebhooksWrite

Paramètres

webhookId · Chemin · requis
Identifiant de l’abonnement webhook.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": false
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/webhooks/<webhookId>/enabled' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt.",
  "operationId": "put_v1_webhooks_webhookId_enabled",
  "parameters": [
    {
      "description": "Identifier of the webhook subscription.",
      "in": "path",
      "name": "webhookId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfboolean"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Set webhook enabled",
  "tags": [
    "Integrations"
  ],
  "x-required-capabilities": [
    "mcp.cap.WebhooksWrite"
  ]
}
Opérations11
POSTExécuter des commandes sur tous les appareils/v1/command-batches

Soumettez un lot de commandes pour plusieurs cibles autorisées. Inspectez sa réception pour suivre les résultats individuels.

POST /v1/command-batches ↗

mcp.cap.CommandsExecute

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "command": "<value>",
  "deviceIds": [
    "<UUID>"
  ],
  "idempotencyKey": "<value>",
  "shell": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/command-batches' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Submit a command batch for multiple authorised targets. Inspect its receipt to track individual outcomes.",
  "operationId": "post_v1_command_batches",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationCommandBatch"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Run commands across devices",
  "tags": [
    "Operations"
  ],
  "x-required-capabilities": [
    "mcp.cap.CommandsExecute"
  ]
}
GETObtenir la progression du lot de commandes/v1/command-batches/{operationId}

Lisez la progression du lot et les résultats par cible sans l'exécuter à nouveau.

GET /v1/command-batches/{operationId} ↗

mcp.cap.CommandsExecute

Paramètres

operationId · Chemin · requis
Identificateur de reçu d'opération de niveau supérieur. Interrogez ce reçu pour inspecter les progrès et le résultat.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/command-batches/<operationId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the batch's progress and per-target outcomes without running it again.",
  "operationId": "get_v1_command_batches_operationId",
  "parameters": [
    {
      "description": "Top-level operation receipt identifier. Poll this receipt to inspect progress and the result.",
      "in": "path",
      "name": "operationId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get command-batch progress",
  "tags": [
    "Operations"
  ],
  "x-required-capabilities": [
    "mcp.cap.CommandsExecute"
  ]
}
POSTAnnuler un lot de commandes/v1/command-batches/{operationId}/cancel

Demande d'annulation du lot. Le travail déjà effectué ne peut être annulé par annulation.

POST /v1/command-batches/{operationId}/cancel ↗

mcp.cap.CommandsExecute

Paramètres

operationId · Chemin · requis
Identificateur de reçu d'opération de niveau supérieur. Interrogez ce reçu pour inspecter les progrès et le résultat.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/command-batches/<operationId>/cancel' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request cancellation of the batch. Work already performed cannot be undone by cancellation.",
  "operationId": "post_v1_command_batches_operationId_cancel",
  "parameters": [
    {
      "description": "Top-level operation receipt identifier. Poll this receipt to inspect progress and the result.",
      "in": "path",
      "name": "operationId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationAutomationKey"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Cancel a command batch",
  "tags": [
    "Operations"
  ],
  "x-required-capabilities": [
    "mcp.cap.CommandsExecute"
  ]
}
POSTExécuter une action sur l'appareil/v1/devices/{deviceId}/actions

Soumettez une action typée prise en charge à un périphérique. Les capacités et autorisations de l'action sont vérifiées avant l'envoi.

POST /v1/devices/{deviceId}/actions ↗
Schémas (OpenAPI)

AutomationDeviceActionKind

0 = RefreshFacts
1 = ControlService
2 = RestartDevice
3 = WindowsDiskCleanup
4 = LinuxMaintenance
5 = WakeDevice
6 = SendUserMessage
7 = UninstallSoftware

LinuxMaintenanceAction

0 = RefreshPackageInventory
1 = InstallPackageUpdates
2 = RefreshFirmwareMetadata
3 = InstallFirmwareUpdates
4 = InstallAllUpdates

ServiceAction

0 = Start
1 = Stop
2 = Restart

SoftwareKind

0 = ClassicDesktop
1 = PackagedApp

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "action": {
    "kind": 0
  },
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/actions' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Submit a supported typed action to a device. The action's capabilities and permissions are checked before dispatch.",
  "operationId": "post_v1_devices_deviceId_actions",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationDeviceAction"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Run a device action",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": []
}
POSTExécuter une action antivirus/v1/devices/{deviceId}/antivirus/actions

Exécuter une action antivirus prise en charge et inspecter le résultat retourné.

POST /v1/devices/{deviceId}/antivirus/actions ↗

mcp.cap.DeviceMaintenance

Schémas (OpenAPI)

AntivirusAction

0 = QuickScan
1 = FullScan
2 = UpdateDefinitions

AntivirusActionProvider

0 = MicrosoftDefender
1 = BitdefenderBest

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "action": 0,
    "operationId": "<UUID>",
    "provider": 0
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/antivirus/actions' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Run a supported antivirus action and inspect the returned result.",
  "operationId": "post_v1_devices_deviceId_antivirus_actions",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfAntivirusActionRequestDto"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Run an antivirus action",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.DeviceMaintenance"
  ]
}
POSTExécuter une commande/v1/devices/{deviceId}/commands

Exécuter une commande sur un appareil autorisé. Réutilisez la clé d'idempotence lors de la vérification d'un résultat incertain.

POST /v1/devices/{deviceId}/commands ↗

mcp.cap.CommandsExecute

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "command": "<value>",
  "idempotencyKey": "<value>",
  "shell": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/commands' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Execute a command on an authorised device. Reuse the idempotency key when checking an uncertain outcome.",
  "operationId": "post_v1_devices_deviceId_commands",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationCommand"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Run a command",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.CommandsExecute"
  ]
}
POSTProgrammer l'alimentation de l'appareil/v1/devices/{deviceId}/jobs/power

Fournir l'heure locale et un fuseau horaire explicite. Les heures ambiguës ou invalides sont rejetées.

POST /v1/devices/{deviceId}/jobs/power ↗

mcp.cap.PowerControl

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "action": "<value>",
    "localTime": "<UTC date and time>",
    "timeZoneId": "<value>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/jobs/power' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Supply the local time and an explicit time zone. Ambiguous or invalid times are rejected.",
  "operationId": "post_v1_devices_deviceId_jobs_power",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationScheduledPower"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Schedule device power",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.PowerControl"
  ]
}
POSTModifier l'état d'alimentation de l'appareil/v1/devices/{deviceId}/power

Demander un redémarrage pris en charge ou une action en mode sans échec. Cela peut interrompre la personne qui utilise l'appareil.

POST /v1/devices/{deviceId}/power ↗

mcp.cap.PowerControl

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "action": "<value>",
  "idempotencyKey": "<value>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/power' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request a supported restart or Safe Mode action. This can interrupt the person using the device.",
  "operationId": "post_v1_devices_deviceId_power",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationPower"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Change device power state",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.PowerControl"
  ]
}
GETOpérations de liste/v1/operations

Recherchez les opérations conservées créées par vos informations d'identification et inspectez leur progression.

GET /v1/operations ↗

Paramètres

pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/operations' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Find retained operations created by your credential and inspect their progress.",
  "operationId": "get_v1_operations",
  "parameters": [
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfOperationSummary"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List operations",
  "tags": [
    "Operations"
  ],
  "x-required-capabilities": []
}
GETRechercher une opération par clé/v1/operations/by-key

Récupérer une opération à l'aide de sa clé d'idempotence après un délai d'attente ou une perte de réponse, au lieu de la répéter.

GET /v1/operations/by-key ↗

Paramètres

idempotencyKey · Requête · requis
Clé d'idempotence exacte utilisée pour la demande initiale. Recherche le reçu sans répéter l'action.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/operations/by-key?idempotencyKey=<idempotencyKey>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Recover an operation using its idempotency key after a timeout or lost response, instead of repeating it.",
  "operationId": "get_v1_operations_by_key",
  "parameters": [
    {
      "description": "Exact idempotency key used for the original request. Looks up the receipt without repeating the action.",
      "in": "query",
      "name": "idempotencyKey",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Find an operation by key",
  "tags": [
    "Operations"
  ],
  "x-required-capabilities": []
}
GETObtenir la progression de l'opération/v1/operations/{operationId}

Lire l'état actuel et le résultat disponible d'une opération. Un résultat inconnu n’est pas une preuve d’échec.

GET /v1/operations/{operationId} ↗

Paramètres

operationId · Chemin · requis
Identificateur de reçu d'opération de niveau supérieur. Interrogez ce reçu pour inspecter les progrès et le résultat.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/operations/<operationId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the current status and available result of one operation. An unknown outcome is not proof of failure.",
  "operationId": "get_v1_operations_operationId",
  "parameters": [
    {
      "description": "Top-level operation receipt identifier. Poll this receipt to inspect progress and the result.",
      "in": "path",
      "name": "operationId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get operation progress",
  "tags": [
    "Operations"
  ],
  "x-required-capabilities": []
}
Réseau30
GETLire la découverte du réseau d'entreprise/v1/network/companies/{companyId}

Lire les informations réseau découvertes pour une entreprise autorisée.

GET /v1/network/companies/{companyId} ↗

mcp.cap.NetworkRead

Schémas (OpenAPI)

NetworkDiscoveryAdapterKind

0 = Standard
1 = Vpn
2 = Tunnel
3 = Loopback

NetworkDiscoveryEligibilityReason

0 = Eligible
1 = ExcludedVpn
2 = ExcludedTunnel
3 = ExcludedLoopback
4 = InterfaceDown
5 = NoEligibleIpv4Address
6 = UnsupportedPrefix
7 = BeaconRestrictedByPublicProfile
8 = ProviderFailure
9 = DuplicateInterfaceIdentity
10 = ExcludedDefaultSwitch

NetworkDiscoveryArchiveReason

0 = StaleEvidence
1 = RemovedFromCache
2 = InactiveNetwork
3 = EmptyUnidentifiedNetwork
4 = SupersededNetworkIdentity
5 = ExcludedDefaultSwitch

NetworkDeviceClassificationState

0 = Unknown
1 = Pending
2 = Failed
3 = Classified
4 = Manual
5 = Unresolved

NetworkDeviceType

0 = Unknown
1 = Computer
2 = Server
3 = PhoneOrTablet
4 = RouterOrFirewall
5 = Switch
6 = WirelessAccessPoint
7 = NasOrStorage
8 = PrinterOrScanner
9 = Camera
10 = Ups
11 = MediaOrConferencing
12 = SmartDevice
13 = Desktop
14 = Laptop
15 = Phone
16 = Tablet

NetworkDiscoveryEvidence

0 = Arp
1 = ArpAndDns
2 = ActiveArp
3 = ActiveArpAndDns
4 = ManagedMembership

NetworkDiscoveryConfirmationOutcome

0 = None
1 = Reply
2 = NoReply
3 = ProbeUnavailable
4 = Error
5 = Ambiguous

NetworkDeviceNameSource

0 = None
1 = ReverseDns
2 = MulticastDns
3 = NetBios

NetworkDiscoveredDeviceState

0 = ActiveConfirmed
1 = RecentlyConfirmed
2 = CacheOnly
3 = ConfirmationNoReply
4 = CacheRemoved
5 = Stale
6 = ConflictingIdentity
7 = ProxyArpSuspected
8 = LegacyUnverified

NetworkDiscoveryMode

0 = Disabled
1 = PassiveOnly
2 = Gentle

NetworkDiscoveryScanRunKind

0 = Scheduled
1 = Manual
2 = TargetedConfirmation

NetworkMonitoringScanComponentStatus

0 = NotRequested
1 = Queued
2 = Running
3 = Completed
4 = Blocked
5 = Failed
6 = Cancelled

NetworkDiscoveryScanRunStatus

0 = Queued
1 = Assigned
2 = Running
3 = Completed
4 = CancelRequested
5 = Cancelled
6 = Failed
7 = Limited

NetworkRealmEvidence

0 = Inferred
1 = Singleton
2 = Verified
3 = RepeatedlyVerified
4 = OperatorConfirmed
5 = Stale

NetworkRealmSupersessionReason

0 = MissingGatewayMacEnriched

NetworkDiscoverySensorSelectionMode

0 = Automatic
1 = AssignedExclusive

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
includeManaged · Requête · en option
Inclut les appareils gérés dans la vue de l'entreprise réseau. La valeur par défaut est false.
includeNetworkDetails · Requête · en option
Inclut les détails du réseau dans la vue de l'entreprise. La valeur par défaut est false.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/network/companies/<companyId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read discovered network information for an authorised company.",
  "operationId": "get_v1_network_companies_companyId",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Include managed devices in the network company view. Defaults to false.",
      "in": "query",
      "name": "includeManaged",
      "schema": {
        "type": "boolean"
      }
    },
    {
      "description": "Include network details in the company view. Defaults to false.",
      "in": "query",
      "name": "includeNetworkDetails",
      "schema": {
        "type": "boolean"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/NetworkDiscoveryCompanySnapshot"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read company network discovery",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
GETLire un périphérique réseau/v1/network/companies/{companyId}/devices/{deviceId}

Inspectez un périphérique réseau découvert et ses détails enregistrés.

GET /v1/network/companies/{companyId}/devices/{deviceId} ↗

mcp.cap.NetworkRead

Schémas (OpenAPI)

NetworkDiscoveryArchiveReason

0 = StaleEvidence
1 = RemovedFromCache
2 = InactiveNetwork
3 = EmptyUnidentifiedNetwork
4 = SupersededNetworkIdentity
5 = ExcludedDefaultSwitch

NetworkDeviceClassificationState

0 = Unknown
1 = Pending
2 = Failed
3 = Classified
4 = Manual
5 = Unresolved

NetworkDeviceType

0 = Unknown
1 = Computer
2 = Server
3 = PhoneOrTablet
4 = RouterOrFirewall
5 = Switch
6 = WirelessAccessPoint
7 = NasOrStorage
8 = PrinterOrScanner
9 = Camera
10 = Ups
11 = MediaOrConferencing
12 = SmartDevice
13 = Desktop
14 = Laptop
15 = Phone
16 = Tablet

NetworkDiscoveryEvidence

0 = Arp
1 = ArpAndDns
2 = ActiveArp
3 = ActiveArpAndDns
4 = ManagedMembership

NetworkDiscoveryConfirmationOutcome

0 = None
1 = Reply
2 = NoReply
3 = ProbeUnavailable
4 = Error
5 = Ambiguous

NetworkDeviceNameSource

0 = None
1 = ReverseDns
2 = MulticastDns
3 = NetBios

NetworkDiscoveredDeviceState

0 = ActiveConfirmed
1 = RecentlyConfirmed
2 = CacheOnly
3 = ConfirmationNoReply
4 = CacheRemoved
5 = Stale
6 = ConflictingIdentity
7 = ProxyArpSuspected
8 = LegacyUnverified

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/network/companies/<companyId>/devices/<deviceId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Inspect one discovered network device and its recorded details.",
  "operationId": "get_v1_network_companies_companyId_devices_deviceId",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/DiscoveredNetworkDeviceDetail"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read a network device",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
GETLire les faits SNMP gérés/v1/network/companies/{companyId}/managed-snmp/{deviceId}

Lire les informations SNMP pour un périphérique géré.

GET /v1/network/companies/{companyId}/managed-snmp/{deviceId} ↗

mcp.cap.NetworkRead

Schémas (OpenAPI)

NetworkProbeOutcome

0 = Succeeded
1 = TimedOut
2 = AuthenticationRejected
3 = Unreachable
4 = ProtocolError
5 = Cancelled

SnmpProtocolVersion

1 = V1
2 = V2C
3 = V3

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/network/companies/<companyId>/managed-snmp/<deviceId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read SNMP information for a managed device.",
  "operationId": "get_v1_network_companies_companyId_managed_snmp_deviceId",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/SnmpDevicePortalSnapshot"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read managed SNMP facts",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
GETLecture des ports TCP gérés/v1/network/companies/{companyId}/managed-tcp/{deviceId}

Lire les informations du port TCP pour un périphérique géré.

GET /v1/network/companies/{companyId}/managed-tcp/{deviceId} ↗

mcp.cap.NetworkRead

Schémas (OpenAPI)

NetworkPortInteraction

0 = ObserveOnly
1 = Http
2 = Https
3 = Ssh
4 = Telnet

NetworkTcpPortOutcome

0 = Open
1 = Refused
2 = TimedOut
3 = Unreachable
4 = Error
5 = Cancelled

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/network/companies/<companyId>/managed-tcp/<deviceId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read TCP port information for a managed device.",
  "operationId": "get_v1_network_companies_companyId_managed_tcp_deviceId",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/NetworkTcpPortPortalItem"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read managed TCP ports",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
GETLire la carte du réseau/v1/network/companies/{companyId}/map

Lisez la carte du réseau stockée et la fraîcheur des preuves. Les liens déduits ne constituent pas une preuve de câblage physique ; aucune analyse n'est mise en file d'attente.

GET /v1/network/companies/{companyId}/map ↗

mcp.cap.NetworkRead

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/network/companies/<companyId>/map' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the stored network map and evidence freshness. Inferred links are not proof of physical cabling; no scan is queued.",
  "operationId": "get_v1_network_companies_companyId_map",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/NetworkMapSnapshot"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read the network map",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
GETLire la surveillance du réseau/v1/network/companies/{companyId}/monitoring

Inspectez la configuration et l'état de la surveillance du réseau d'une entreprise.

GET /v1/network/companies/{companyId}/monitoring ↗

mcp.cap.NetworkRead

Schémas (OpenAPI)

SnmpAuthenticationProtocol

0 = None
1 = Sha1
2 = Sha256

SnmpPrivacyProtocol

0 = None
1 = Aes128

SnmpProtocolVersion

1 = V1
2 = V2C
3 = V3

NetworkProbeOutcome

0 = Succeeded
1 = TimedOut
2 = AuthenticationRejected
3 = Unreachable
4 = ProtocolError
5 = Cancelled

NetworkPortInteraction

0 = ObserveOnly
1 = Http
2 = Https
3 = Ssh
4 = Telnet

IdracMonitoringState

0 = Disabled
1 = Unsupported
2 = RacadmNotFound
3 = Provisioning
4 = Ready
5 = CredentialsRequired
6 = CleanupPending
7 = Error
8 = CertificateRequired
9 = Partial

IloMonitoringState

0 = Disabled
1 = Unsupported
2 = HponcfgNotFound
3 = Provisioning
4 = Ready
5 = CredentialsRequired
6 = CleanupPending
7 = Error

NetworkTcpPortOutcome

0 = Open
1 = Refused
2 = TimedOut
3 = Unreachable
4 = Error
5 = Cancelled

NetworkProbeJobStatus

0 = Queued
1 = Assigned
2 = Succeeded
3 = Failed
4 = Expired

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/network/companies/<companyId>/monitoring' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Inspect a company's network monitoring configuration and state.",
  "operationId": "get_v1_network_companies_companyId_monitoring",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/NetworkMonitoringCompanySnapshot"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read network monitoring",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
GETLire les faits découverts sur le SNMP/v1/network/companies/{companyId}/snmp/{deviceId}

Lire les observations SNMP stockées pour un appareil découvert.

GET /v1/network/companies/{companyId}/snmp/{deviceId} ↗

mcp.cap.NetworkRead

Schémas (OpenAPI)

NetworkProbeOutcome

0 = Succeeded
1 = TimedOut
2 = AuthenticationRejected
3 = Unreachable
4 = ProtocolError
5 = Cancelled

SnmpProtocolVersion

1 = V1
2 = V2C
3 = V3

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/network/companies/<companyId>/snmp/<deviceId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read stored SNMP observations for a discovered device.",
  "operationId": "get_v1_network_companies_companyId_snmp_deviceId",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/SnmpDevicePortalSnapshot"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read discovered SNMP facts",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
GETLire les ports TCP découverts/v1/network/companies/{companyId}/tcp/{deviceId}

Lire les observations enregistrées du port TCP pour un périphérique découvert.

GET /v1/network/companies/{companyId}/tcp/{deviceId} ↗

mcp.cap.NetworkRead

Schémas (OpenAPI)

NetworkPortInteraction

0 = ObserveOnly
1 = Http
2 = Https
3 = Ssh
4 = Telnet

NetworkTcpPortOutcome

0 = Open
1 = Refused
2 = TimedOut
3 = Unreachable
4 = Error
5 = Cancelled

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/network/companies/<companyId>/tcp/<deviceId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read recorded TCP port observations for a discovered device.",
  "operationId": "get_v1_network_companies_companyId_tcp_deviceId",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/NetworkTcpPortPortalItem"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read discovered TCP ports",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
GETLire l'historique du trafic/v1/network/companies/{companyId}/traffic-history/{monitorId}

Lire les échantillons de trafic conservés pour un moniteur sur la plage de temps demandée.

GET /v1/network/companies/{companyId}/traffic-history/{monitorId} ↗

mcp.cap.NetworkRead

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
monitorId · Chemin · requis
Identifiant du moniteur à lire ou à filtrer.
minutes · Requête · requis
Nombre de minutes d’historique de trafic à lire.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/network/companies/<companyId>/traffic-history/<monitorId>?minutes=<minutes>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read retained traffic samples for a monitor over the requested time range.",
  "operationId": "get_v1_network_companies_companyId_traffic_history_monitorId",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Identifier of the monitor to read or filter by.",
      "in": "path",
      "name": "monitorId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Number of minutes of traffic history to read.",
      "in": "query",
      "name": "minutes",
      "required": true,
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/SnmpTrafficPoint"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read traffic history",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
GETLire les ports de trafic/v1/network/companies/{companyId}/traffic/{deviceId}

Lire les ports de surveillance du trafic réseau pour le périphérique sélectionné.

GET /v1/network/companies/{companyId}/traffic/{deviceId} ↗

mcp.cap.NetworkRead

Paramètres

companyId · Chemin · requis
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/network/companies/<companyId>/traffic/<deviceId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read network traffic monitoring ports for the selected device.",
  "operationId": "get_v1_network_companies_companyId_traffic_deviceId",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "path",
      "name": "companyId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/SnmpTrafficPortView"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read traffic ports",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
PUTDéfinir un type de périphérique réseau/v1/network/devices/type

Attribuez une classification de type de périphérique à un périphérique réseau découvert.

PUT /v1/network/devices/type ↗

mcp.cap.NetworkManage

Schémas (OpenAPI)

NetworkDeviceType

0 = Unknown
1 = Computer
2 = Server
3 = PhoneOrTablet
4 = RouterOrFirewall
5 = Switch
6 = WirelessAccessPoint
7 = NasOrStorage
8 = PrinterOrScanner
9 = Camera
10 = Ups
11 = MediaOrConferencing
12 = SmartDevice
13 = Desktop
14 = Laptop
15 = Phone
16 = Tablet

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "deviceId": "<UUID>",
    "type": 0
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/network/devices/type' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Assign a device-type classification to a discovered network device.",
  "operationId": "put_v1_network_devices_type",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationNetworkDeviceType"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Set a network device type",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkManage"
  ]
}
POSTActualiser la classification des appareils/v1/network/devices/type/refresh

Demandez une nouvelle classification de type d'appareil via le flux de travail de découverte.

POST /v1/network/devices/type/refresh ↗

mcp.cap.NetworkManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "deviceId": "<UUID>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/network/devices/type/refresh' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request a fresh device-type classification through the discovery workflow.",
  "operationId": "post_v1_network_devices_type_refresh",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationNetworkTypeRefresh"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Refresh device classification",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkManage"
  ]
}
GETService réseau Resolve/v1/network/devices/{deviceId}/services/{port}/source

Lire les preuves actuelles à portée de poids. Les preuves manquantes sont inconnues. Aucune action de point final ni charge IA n’est lancée. Retourne la AgentId sélectionnée en cours ; aucun scan ni début de session.

GET /v1/network/devices/{deviceId}/services/{port}/source ↗

mcp.cap.NetworkRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.
port · Chemin · requis
Découverte TCP port de service, 1 à 65535. Utilise des preuves de découverte vérifiées actuelles.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/network/devices/<deviceId>/services/<port>/source' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read current scoped evidence. Missing evidence is unknown. No endpoint action or AI charge is started. Returns the current selected AgentId; no scan or session starts.",
  "operationId": "get_v1_network_devices_deviceId_services_port_source",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Discovered TCP service port, 1 through 65535. Uses current verified discovery evidence.",
      "in": "path",
      "name": "port",
      "required": true,
      "schema": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationNetworkServiceSource"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Resolve network service",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkRead"
  ]
}
PUTConfigurer l'intégration iDRAC/v1/network/idrac

Enregistrez les paramètres d'intégration iDRAC autorisés pour la gestion du matériel.

PUT /v1/network/idrac ↗

mcp.cap.NetworkManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "enabled": false
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/network/idrac' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Save the permitted iDRAC integration settings for hardware management.",
  "operationId": "put_v1_network_idrac",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationNetworkToggle"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Configure iDRAC integration",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkManage"
  ]
}
PUTConfigurer l'intégration iLO/v1/network/ilo

Enregistrez les paramètres d'intégration iLO autorisés pour la gestion du matériel.

PUT /v1/network/ilo ↗

mcp.cap.NetworkManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "enabled": false
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/network/ilo' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Save the permitted iLO integration settings for hardware management.",
  "operationId": "put_v1_network_ilo",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationNetworkToggle"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Configure iLO integration",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkManage"
  ]
}
POSTChanger le mode de découverte/v1/network/mode

Définissez le mode de fonctionnement de la découverte de réseau pour une entreprise.

POST /v1/network/mode ↗

mcp.cap.NetworkManage

Schémas (OpenAPI)

NetworkDiscoveryMode

0 = Disabled
1 = PassiveOnly
2 = Gentle

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "mode": 0
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/network/mode' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Set how network discovery should operate for a company.",
  "operationId": "post_v1_network_mode",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationNetworkMode"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Change discovery mode",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkManage"
  ]
}
POSTRenommer un domaine réseau/v1/network/realms/name

Mettez à jour le nom et le paramètre de verrouillage de nom d'un domaine réseau découvert.

POST /v1/network/realms/name ↗

mcp.cap.NetworkManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "locked": false,
    "name": "<value>",
    "realmId": "<UUID>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/network/realms/name' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Update the name and name-lock setting of a discovered network realm.",
  "operationId": "post_v1_network_realms_name",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationNetworkRealmName"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Rename a network realm",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkManage"
  ]
}
POSTSuspendre un domaine réseau/v1/network/realms/suspend

Indique si un domaine réseau participe au travail de découverte.

POST /v1/network/realms/suspend ↗

mcp.cap.NetworkManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "realmId": "<UUID>",
    "suspended": false
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/network/realms/suspend' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Change whether a network realm participates in discovery work.",
  "operationId": "post_v1_network_realms_suspend",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationNetworkRealmSuspend"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Suspend a network realm",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkManage"
  ]
}
POSTDémarrer une analyse du réseau/v1/network/scans

Mettre en file d'attente une analyse réseau pour l'étendue autorisée fournie.

POST /v1/network/scans ↗

mcp.cap.NetworkScan

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "realmId": "<UUID>",
    "reason": "<value>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/network/scans' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Queue a network scan for the supplied authorised scope.",
  "operationId": "post_v1_network_scans",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationNetworkScan"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Start a network scan",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkScan"
  ]
}
POSTAnnuler une analyse réseau/v1/network/scans/cancel

Demander l'annulation du travail de découverte du réseau.

POST /v1/network/scans/cancel ↗

mcp.cap.NetworkScan

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "realmId": "<UUID>",
    "scanId": "<UUID>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/network/scans/cancel' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request cancellation of network discovery work.",
  "operationId": "post_v1_network_scans_cancel",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationNetworkScanCancel"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Cancel a network scan",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkScan"
  ]
}
POSTService réseau ouvert/v1/network/services/open

Nécessite FullAccess et l’autorité actuelle du propriétaire. Fournir une clé d’idempotencie, réutiliser la même demande after incertitude, et inspecter le reçu d’exploitation. Fournir ExpectedAgentId de resolve_network_service ; preuve modifiée ou source échouée, fermée.

POST /v1/network/services/open ↗

mcp.cap.ScreenRead + mcp.cap.ResourcesOpen + mcp.cap.NetworkRead

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "discoveredDeviceId": "<UUID>",
    "expectedAgentId": "<UUID>",
    "port": 1
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/network/services/open' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires FullAccess and current owner authority. Supply an idempotency key, reuse the identical request after uncertainty, and inspect the operation receipt. Supply ExpectedAgentId from resolve_network_service; changed evidence or source fails closed.",
  "operationId": "post_v1_network_services_open",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationNetworkService"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Open network service",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.ScreenRead",
    "mcp.cap.ResourcesOpen",
    "mcp.cap.NetworkRead"
  ]
}
PUTEnsemble de communautés SNMP/v1/network/snmp/communities

Mettez à jour la configuration de la communauté SNMP utilisée pour la découverte autorisée.

PUT /v1/network/snmp/communities ↗

mcp.cap.NetworkCredentialsManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "selections": [
      "<value>"
    ]
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/network/snmp/communities' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Update the SNMP community configuration used for authorised discovery.",
  "operationId": "put_v1_network_snmp_communities",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationSnmpCommunities"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Set SNMP communities",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkCredentialsManage"
  ]
}
PUTEnregistrer un identifiant SNMP/v1/network/snmp/credentials

Créez ou mettez à jour un identifiant SNMP pour la surveillance réseau autorisée.

PUT /v1/network/snmp/credentials ↗

mcp.cap.NetworkCredentialsManage

Schémas (OpenAPI)

SnmpAuthenticationProtocol

0 = None
1 = Sha1
2 = Sha256

SnmpPrivacyProtocol

0 = None
1 = Aes128

SnmpProtocolVersion

1 = V1
2 = V2C
3 = V3

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "credential": {
      "authenticationProtocol": 0,
      "authenticationSecret": "<authenticationSecret>",
      "community": "<value>",
      "contextName": "<value>",
      "enabled": false,
      "id": "<UUID>",
      "name": "<value>",
      "priority": 1,
      "privacyProtocol": 0,
      "privacySecret": "<privacySecret>",
      "userName": "<value>",
      "version": 1
    }
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/network/snmp/credentials' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Create or update an SNMP credential for authorised network monitoring.",
  "operationId": "put_v1_network_snmp_credentials",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationSnmpCredential"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Save an SNMP credential",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkCredentialsManage"
  ]
}
POSTSupprimer un identifiant SNMP/v1/network/snmp/credentials/delete

Supprimez un identifiant SNMP stocké de la configuration réseau.

POST /v1/network/snmp/credentials/delete ↗

mcp.cap.NetworkCredentialsManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "credentialId": "<UUID>"
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/network/snmp/credentials/delete' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Remove a stored SNMP credential from the network configuration.",
  "operationId": "post_v1_network_snmp_credentials_delete",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationSnmpCredentialDelete"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Delete an SNMP credential",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkCredentialsManage"
  ]
}
PUTEnregistrer la stratégie SNMP/v1/network/snmp/policy

Mettez à jour la stratégie de découverte et de surveillance SNMP.

PUT /v1/network/snmp/policy ↗

mcp.cap.NetworkManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "credentialCooldownHours": 1,
    "enabled": false,
    "pollIntervalMinutes": 1
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/network/snmp/policy' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Update the SNMP discovery and monitoring policy.",
  "operationId": "put_v1_network_snmp_policy",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationNetworkSnmpPolicy"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Save SNMP policy",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkManage"
  ]
}
PUTDéfinir l’état attendu du port SNMP/v1/network/snmp/ports

Mettez à jour la configuration de port attendue utilisée par la surveillance SNMP.

PUT /v1/network/snmp/ports ↗

mcp.cap.NetworkManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "deviceId": "<UUID>",
    "expectedUp": false,
    "interfaceIndex": 1,
    "managedDevice": false
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/network/snmp/ports' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Update the expected port configuration used by SNMP monitoring.",
  "operationId": "put_v1_network_snmp_ports",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationSnmpExpectedPort"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Set expected SNMP port state",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkManage"
  ]
}
POSTActualiser les données SNMP/v1/network/snmp/refresh

Demander des observations SNMP mises à jour pour la cible sélectionnée.

POST /v1/network/snmp/refresh ↗

mcp.cap.NetworkScan

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "deviceId": "<UUID>",
    "managedDevice": false
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/network/snmp/refresh' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request updated SNMP observations for the selected target.",
  "operationId": "post_v1_network_snmp_refresh",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationNetworkSnmpRefresh"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Refresh SNMP data",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkScan"
  ]
}
PUTEnregistrer la politique de l'entreprise TCP/v1/network/tcp/company-policy

Modification de la stratégie de découverte TCP pour une entreprise.

PUT /v1/network/tcp/company-policy ↗

mcp.cap.NetworkManage

Schémas (OpenAPI)

NetworkPortInteraction

0 = ObserveOnly
1 = Http
2 = Https
3 = Ssh
4 = Telnet

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "policy": {
      "allowTelnet": false,
      "enabled": false,
      "evidenceFreshnessMinutes": 1,
      "minimumRealmSpacingSeconds": 1,
      "pollIntervalMinutes": 1,
      "ports": [
        {
          "interaction": "<see schema>",
          "name": "<see schema>",
          "port": "<see schema>"
        }
      ],
      "requireSnmpSuccess": false
    }
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/network/tcp/company-policy' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Change TCP discovery policy for a company.",
  "operationId": "put_v1_network_tcp_company_policy",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationTcpPolicy"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Save company TCP policy",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkManage"
  ]
}
PUTEnregistrer la stratégie TCP de l'organisation/v1/network/tcp/organization-policy

Modifiez la stratégie de découverte TCP à l'échelle de l'organisation.

PUT /v1/network/tcp/organization-policy ↗

mcp.cap.NetworkManage

Schémas (OpenAPI)

NetworkPortInteraction

0 = ObserveOnly
1 = Http
2 = Https
3 = Ssh
4 = Telnet

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "policy": {
      "allowTelnet": false,
      "enabled": false,
      "evidenceFreshnessMinutes": 1,
      "minimumRealmSpacingSeconds": 1,
      "pollIntervalMinutes": 1,
      "ports": [
        {
          "interaction": "<see schema>",
          "name": "<see schema>",
          "port": "<see schema>"
        }
      ],
      "requireSnmpSuccess": false
    }
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/network/tcp/organization-policy' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Change the organisation-wide TCP discovery policy.",
  "operationId": "put_v1_network_tcp_organization_policy",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationTcpPolicy"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Save organisation TCP policy",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkManage"
  ]
}
PUTContrôler un port de surveillance du trafic/v1/network/traffic/ports

Nécessite un droit de surveillance existant. Les achats et modifications de renouvellement restent dans l'application.

PUT /v1/network/traffic/ports ↗

mcp.cap.NetworkManage

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "companyId": "<UUID>",
    "deviceId": "<UUID>",
    "enabled": false,
    "interfaceIndex": 1
  }
}'
Invoke-RestMethod -Method PUT `
  -Uri 'https://api.remotegymp.com/v1/network/traffic/ports' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Requires an existing monitoring entitlement. Purchases and renewal changes remain in the application.",
  "operationId": "put_v1_network_traffic_ports",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationTrafficPort"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Control a traffic monitoring port",
  "tags": [
    "Network"
  ],
  "x-required-capabilities": [
    "mcp.cap.NetworkManage"
  ]
}
Sécurité6
GETObtenir un inventaire de sécurité/v1/devices/{deviceId}/security

Lire les informations enregistrées sur l'antivirus, le pare-feu et le cryptage. Les secrets de récupération sont exclus.

GET /v1/devices/{deviceId}/security ↗

mcp.cap.SecurityRead

Schémas (OpenAPI)

AntivirusActionProvider

0 = MicrosoftDefender
1 = BitdefenderBest

AntivirusProductState

0 = Unknown
1 = On
2 = Off
3 = Snoozed
4 = Expired

AntivirusAction

0 = QuickScan
1 = FullScan
2 = UpdateDefinitions

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/security' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read recorded antivirus, firewall and encryption facts. Recovery secrets are excluded.",
  "operationId": "get_v1_devices_deviceId_security",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/SecurityFactsResponse"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get security inventory",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.SecurityRead"
  ]
}
POSTExécuter un audit de mot de passe/v1/devices/{deviceId}/security/password-audit

Demandez les vérifications de mot de passe de compte prises en charge sur un appareil autorisé.

POST /v1/devices/{deviceId}/security/password-audit ↗

mcp.cap.PasswordAudit

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "administratorsOnly": true,
  "expectedDomain": "<value>",
  "includeDisabled": false,
  "includeInactiveAccounts": false,
  "inspectOnly": false,
  "isValid": false,
  "reportLocale": "<value>",
  "reportTimeZone": "<value>",
  "scope": "Local",
  "serversOnly": false
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/security/password-audit' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request the supported account-password checks on an authorised device.",
  "operationId": "post_v1_devices_deviceId_security_password_audit",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/PasswordAuditOptions"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PasswordAuditReport"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "oneOf": [
              {
                "properties": {
                  "error": {
                    "type": "string"
                  },
                  "message": {
                    "type": "string"
                  },
                  "requestId": {
                    "type": [
                      "null",
                      "string"
                    ]
                  }
                },
                "required": [
                  "error",
                  "message"
                ],
                "type": "object"
              },
              {
                "properties": {
                  "accountsAttempted": {
                    "format": "int32",
                    "pattern": "^-?(?:0|[1-9]\\d*)$",
                    "type": [
                      "integer",
                      "string"
                    ]
                  },
                  "accountsChecked": {
                    "format": "int32",
                    "pattern": "^-?(?:0|[1-9]\\d*)$",
                    "type": [
                      "integer",
                      "string"
                    ]
                  },
                  "accountsExcluded": {
                    "format": "int32",
                    "pattern": "^-?(?:0|[1-9]\\d*)$",
                    "type": [
                      "integer",
                      "string"
                    ]
                  },
                  "accountsSelected": {
                    "format": "int32",
                    "pattern": "^-?(?:0|[1-9]\\d*)$",
                    "type": [
                      "integer",
                      "string"
                    ]
                  },
                  "checkedAtUtc": {
                    "format": "date-time",
                    "type": "string"
                  },
                  "domain": {
                    "type": "string"
                  },
                  "domainSid": {
                    "type": [
                      "null",
                      "string"
                    ]
                  },
                  "error": {
                    "type": [
                      "null",
                      "string"
                    ]
                  },
                  "findings": {
                    "items": {
                      "properties": {
                        "account": {
                          "type": "string"
                        },
                        "administrator": {
                          "type": "boolean"
                        },
                        "enabled": {
                          "type": "boolean"
                        },
                        "failureCode": {
                          "type": [
                            "null",
                            "string"
                          ]
                        },
                        "finding": {
                          "type": "string"
                        },
                        "hibpAvailable": {
                          "type": "boolean"
                        },
                        "hibpOccurrences": {
                          "format": "int64",
                          "pattern": "^-?(?:0|[1-9]\\d*)$",
                          "type": [
                            "null",
                            "integer",
                            "string"
                          ]
                        },
                        "lastLogonSource": {
                          "type": [
                            "null",
                            "string"
                          ]
                        },
                        "lastLogonUtc": {
                          "format": "date-time",
                          "type": [
                            "null",
                            "string"
                          ]
                        },
                        "lastPasswordSetUtc": {
                          "format": "date-time",
                          "type": [
                            "null",
                            "string"
                          ]
                        },
                        "password": {
                          "type": [
                            "null",
                            "string"
                          ]
                        },
                        "state": {
                          "type": "string"
                        }
                      },
                      "type": "object"
                    },
                    "type": "array"
                  },
                  "inactiveAccounts": {
                    "items": {
                      "properties": {
                        "account": {
                          "type": "string"
                        },
                        "lastLogonSource": {
                          "type": "string"
                        },
                        "lastLogonUtc": {
                          "format": "date-time",
                          "type": "string"
                        }
                      },
                      "required": [
                        "account",
                        "lastLogonUtc",
                        "lastLogonSource"
                      ],
                      "type": "object"
                    },
                    "type": "array"
                  },
                  "inactiveAccountsCutoffUtc": {
                    "format": "date-time",
                    "type": [
                      "null",
                      "string"
                    ]
                  },
                  "inactiveAccountsState": {
                    "type": [
                      "null",
                      "string"
                    ]
                  },
                  "inactiveUnknownDates": {
                    "format": "int32",
                    "pattern": "^-?(?:0|[1-9]\\d*)$",
                    "type": [
                      "integer",
                      "string"
                    ]
                  },
                  "isDomainController": {
                    "type": "boolean"
                  },
                  "isServer": {
                    "type": "boolean"
                  },
                  "machineName": {
                    "type": "string"
                  },
                  "moreAccounts": {
                    "type": "boolean"
                  },
                  "noKnownMatch": {
                    "format": "int32",
                    "pattern": "^-?(?:0|[1-9]\\d*)$",
                    "type": [
                      "integer",
                      "string"
                    ]
                  },
                  "state": {
                    "type": "string"
                  },
                  "summaryEmailSent": {
                    "type": [
                      "null",
                      "boolean"
                    ]
                  },
                  "unavailable": {
                    "format": "int32",
                    "pattern": "^-?(?:0|[1-9]\\d*)$",
                    "type": [
                      "integer",
                      "string"
                    ]
                  },
                  "workers": {
                    "format": "int32",
                    "pattern": "^-?(?:0|[1-9]\\d*)$",
                    "type": [
                      "integer",
                      "string"
                    ]
                  }
                },
                "type": "object"
              }
            ]
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "502": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PasswordAuditReport"
          }
        }
      },
      "description": "Bad Gateway"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Run a password audit",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.PasswordAudit"
  ]
}
GETRépertorier les plannings d'audit des mots de passe/v1/security/password-audit-schedules

Lisez les planifications récurrentes d’audit de mot de passe dans la portée autorisée.

GET /v1/security/password-audit-schedules ↗

mcp.cap.PasswordAudit

Paramètres

companyId · Requête · en option
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
deviceId · Requête · en option
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/security/password-audit-schedules' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read recurring password-audit schedules in your permitted scope.",
  "operationId": "get_v1_security_password_audit_schedules",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "query",
      "name": "companyId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "query",
      "name": "deviceId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/PasswordAuditScheduleView"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List password-audit schedules",
  "tags": [
    "Security"
  ],
  "x-required-capabilities": [
    "mcp.cap.PasswordAudit"
  ]
}
POSTEnregistrer un calendrier d'audit de mot de passe/v1/security/password-audit-schedules

Créez ou mettez à jour une planification récurrente d'audit de mot de passe avec ses paramètres de cible et de synchronisation.

POST /v1/security/password-audit-schedules ↗

mcp.cap.PasswordAudit

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "companyId": "<UUID>",
  "deviceId": "<UUID>",
  "everyDays": 1,
  "id": "<UUID>",
  "selection": {
    "administratorsOnly": true,
    "domainAccounts": true,
    "includeDisabled": false,
    "includeInactiveAccounts": false,
    "localAccounts": true,
    "serversOnly": false
  },
  "startAtUtc": "<UTC date and time>"
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/security/password-audit-schedules' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Create or update a recurring password-audit schedule with its target and timing settings.",
  "operationId": "post_v1_security_password_audit_schedules",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/PasswordAuditScheduleInput"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PasswordAuditScheduleView"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Save a password-audit schedule",
  "tags": [
    "Security"
  ],
  "x-required-capabilities": [
    "mcp.cap.PasswordAudit"
  ]
}
DELETESupprimer une planification d'audit de mot de passe/v1/security/password-audit-schedules/{id}

Supprimez une planification récurrente pour arrêter les futures vérifications planifiées.

DELETE /v1/security/password-audit-schedules/{id} ↗

mcp.cap.PasswordAudit

Paramètres

id · Chemin · requis
Identifiant renvoyé par la liste de ressources ou le résultat de création correspondant.
expectedRevision · Requête · requis
Révision actuelle du planning depuis la dernière lecture. Une révision obsolète empêche la suppression d’un planning modifié.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method DELETE `
  -Uri 'https://api.remotegymp.com/v1/security/password-audit-schedules/<id>?expectedRevision=<expectedRevision>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Remove a recurring schedule to stop future scheduled checks.",
  "operationId": "delete_v1_security_password_audit_schedules_id",
  "parameters": [
    {
      "description": "Identifier returned by the corresponding resource list or creation result.",
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Current schedule revision from the last read. A stale revision prevents deletion of a changed schedule.",
      "in": "query",
      "name": "expectedRevision",
      "required": true,
      "schema": {
        "format": "int64",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "204": {
      "description": "No Content"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Delete a password-audit schedule",
  "tags": [
    "Security"
  ],
  "x-required-capabilities": [
    "mcp.cap.PasswordAudit"
  ]
}
GETVérifier les cibles d'audit des mots de passe/v1/security/password-audits/targets

Inspectez l’éligibilité de la cible avant de demander un audit de mot de passe.

GET /v1/security/password-audits/targets ↗

mcp.cap.PasswordAudit

Paramètres

companyId · Requête · en option
Identifiant de l’entreprise. Un paramètre de requête restreint les résultats à cette société ; il n’étend jamais la portée des titres de compétences.
deviceId · Requête · en option
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/security/password-audits/targets' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Inspect target eligibility before requesting a password audit.",
  "operationId": "get_v1_security_password_audits_targets",
  "parameters": [
    {
      "description": "Company identifier. A query parameter narrows the results to this company; it never expands credential scope.",
      "in": "query",
      "name": "companyId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "query",
      "name": "deviceId",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/PasswordAuditTarget"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Check password-audit targets",
  "tags": [
    "Security"
  ],
  "x-required-capabilities": [
    "mcp.cap.PasswordAudit"
  ]
}
Sessions à distance13
GETListe des sessions Windows/v1/devices/{deviceId}/windows-sessions

Recherchez les sessions Windows disponibles pour sélectionner le bureau interactif.

GET /v1/devices/{deviceId}/windows-sessions ↗

mcp.cap.InventoryRead

Paramètres

deviceId · Chemin · requis
Identifiant d'appareil renvoyé par la liste d'appareils correspondante. Les agents gérés et les périphériques réseau découverts ont des identifiants différents.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/devices/<deviceId>/windows-sessions' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Find Windows sessions available for selecting the interactive desktop.",
  "operationId": "get_v1_devices_deviceId_windows_sessions",
  "parameters": [
    {
      "description": "Device identifier returned by the corresponding device list. Managed agents and discovered network devices have different identifiers.",
      "in": "path",
      "name": "deviceId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "items": {
              "$ref": "#/components/schemas/InteractiveSessionDto"
            },
            "type": "array"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List Windows sessions",
  "tags": [
    "Devices"
  ],
  "x-required-capabilities": [
    "mcp.cap.InventoryRead"
  ]
}
GETListe des sessions à distance/v1/remote-sessions

Recherchez les identifiants de session à distance conservés appartenant à vos informations d'identification.

GET /v1/remote-sessions ↗
Schémas (OpenAPI)

SessionKind

0 = Desktop
1 = Browsing
2 = Console
3 = FileBrowser
4 = Ghost
5 = RemoteResources
6 = RemoteIpScan
7 = HyperVConsole

Paramètres

pageSize · Requête · en option
Nombre maximum d'éléments demandés pour cette page. Les limites spécifiques au point de terminaison peuvent réduire la taille de la page.
after · Requête · en option
Position de continuation de la réponse précédente. Omettre pour la première page ; conservez les mêmes filtres lorsque vous continuez.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/remote-sessions' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Find retained remote-session handles owned by your credential.",
  "operationId": "get_v1_remote_sessions",
  "parameters": [
    {
      "description": "Maximum number of items requested for this page. Endpoint-specific limits may reduce the page size.",
      "in": "query",
      "name": "pageSize",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation position from the previous response. Omit for the first page; keep the same filters when continuing.",
      "in": "query",
      "name": "after",
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/PageOfRemoteHandleSummary"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List remote sessions",
  "tags": [
    "Remote sessions"
  ],
  "x-required-capabilities": []
}
POSTOuvrir une session à distance/v1/remote-sessions

Demandez une session à distance autorisée pour un appareil et recevez un handle pour un accès ultérieur.

POST /v1/remote-sessions ↗
Schémas (OpenAPI)

SessionKind

0 = Desktop
1 = Browsing
2 = Console
3 = FileBrowser
4 = Ghost
5 = RemoteResources
6 = RemoteIpScan
7 = HyperVConsole

Paramètres

Aucun paramètre de chemin, de requête ou d'en-tête.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "deviceId": "<UUID>",
    "kind": 0
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/remote-sessions' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Request an authorised remote session for a device and receive a handle for subsequent access.",
  "operationId": "post_v1_remote_sessions",
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationRemoteOpen"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Open a remote session",
  "tags": [
    "Remote sessions"
  ]
}
DELETEFermer une session à distance/v1/remote-sessions/{handleId}

Terminez le handle de session à distance sélectionné et son accès.

DELETE /v1/remote-sessions/{handleId} ↗

Paramètres

handleId · Chemin · requis
Identifiant de reçu de niveau supérieur provenant de l'ouverture de la session à distance, et non l'identifiant de session sous-jacent.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method DELETE `
  -Uri 'https://api.remotegymp.com/v1/remote-sessions/<handleId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "End the selected remote-session handle and its access.",
  "operationId": "delete_v1_remote_sessions_handleId",
  "parameters": [
    {
      "description": "Top-level receipt identifier from opening the remote session, not the underlying session identifier.",
      "in": "path",
      "name": "handleId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiRemoteClose"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Close a remote session",
  "tags": [
    "Remote sessions"
  ],
  "x-required-capabilities": []
}
GETObtenir l'état de la session à distance/v1/remote-sessions/{handleId}

Lisez l’état d’un handle de session distante avant de l’utiliser.

GET /v1/remote-sessions/{handleId} ↗
Schémas (OpenAPI)

SessionKind

0 = Desktop
1 = Browsing
2 = Console
3 = FileBrowser
4 = Ghost
5 = RemoteResources
6 = RemoteIpScan
7 = HyperVConsole

Paramètres

handleId · Chemin · requis
Identifiant de reçu de niveau supérieur provenant de l'ouverture de la session à distance, et non l'identifiant de session sous-jacent.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/remote-sessions/<handleId>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read the state of a remote-session handle before using it.",
  "operationId": "get_v1_remote_sessions_handleId",
  "parameters": [
    {
      "description": "Top-level receipt identifier from opening the remote session, not the underlying session identifier.",
      "in": "path",
      "name": "handleId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiRemoteSession"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get remote-session status",
  "tags": [
    "Remote sessions"
  ],
  "x-required-capabilities": []
}
POSTEnvoyer une action de session à distance/v1/remote-sessions/{handleId}/actions

Effectuer une action de session autorisée, telle qu'une saisie ou un travail sur un fichier, à l'aide des champs de demande spécifiques à l'action.

POST /v1/remote-sessions/{handleId}/actions ↗
Schémas (OpenAPI)

InputEventKind

0 = MouseMove
1 = MouseButton
2 = MouseWheel
3 = Key
4 = TypeText

SessionAudioAvailability

0 = Unknown
1 = Available
2 = NoPlaybackEndpoint
3 = ProbeFailed

IntegrationRemoteActionKind

0 = Input
1 = Navigate
2 = Back
3 = Forward
4 = Clipboard
5 = ConsoleInput
6 = ConsoleResize
7 = ConsoleTabOpen
8 = ConsoleTabClose
9 = ConsoleTabInput
10 = ConsoleTabResize
11 = CreateFolder
12 = DeleteEntry
13 = RenameEntry
14 = WriteFile
15 = FocusMonitor
16 = CtrlAltDel
17 = Click

Paramètres

handleId · Chemin · requis
Identifiant de reçu de niveau supérieur provenant de l'ouverture de la session à distance, et non l'identifiant de session sous-jacent.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
  'Content-Type' = 'application/json'
}
$body = '{
  "idempotencyKey": "<value>",
  "value": {
    "kind": 0
  }
}'
Invoke-RestMethod -Method POST `
  -Uri 'https://api.remotegymp.com/v1/remote-sessions/<handleId>/actions' `
  -Headers $headers `
  -Body ([System.Text.Encoding]::UTF8.GetBytes($body))
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Perform an allowed session action, such as input or file work, using the action-specific request fields.",
  "operationId": "post_v1_remote_sessions_handleId_actions",
  "parameters": [
    {
      "description": "Top-level receipt identifier from opening the remote session, not the underlying session identifier.",
      "in": "path",
      "name": "handleId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IntegrationMutationOfIntegrationRemoteAction"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/RecoveredOperation"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Send a remote-session action",
  "tags": [
    "Remote sessions"
  ]
}
GETLire le presse-papiers distant/v1/remote-sessions/{handleId}/clipboard

Lire le contenu du presse-papiers via une session avec accès au presse-papiers.

GET /v1/remote-sessions/{handleId}/clipboard ↗

mcp.cap.ClipboardRead

Paramètres

handleId · Chemin · requis
Identifiant de reçu de niveau supérieur provenant de l'ouverture de la session à distance, et non l'identifiant de session sous-jacent.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/remote-sessions/<handleId>/clipboard' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read clipboard content through a session with clipboard access.",
  "operationId": "get_v1_remote_sessions_handleId_clipboard",
  "parameters": [
    {
      "description": "Top-level receipt identifier from opening the remote session, not the underlying session identifier.",
      "in": "path",
      "name": "handleId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ClipboardResultDto"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read the remote clipboard",
  "tags": [
    "Remote sessions"
  ],
  "x-required-capabilities": [
    "mcp.cap.ClipboardRead"
  ]
}
GETObtenir les détails de connexion/v1/remote-sessions/{handleId}/connection

Lire les informations de connexion pour un handle de session à distance autorisé.

GET /v1/remote-sessions/{handleId}/connection ↗

mcp.cap.ScreenRead

Paramètres

handleId · Chemin · requis
Identifiant de reçu de niveau supérieur provenant de l'ouverture de la session à distance, et non l'identifiant de session sous-jacent.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/remote-sessions/<handleId>/connection' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read connection information for an authorised remote-session handle.",
  "operationId": "get_v1_remote_sessions_handleId_connection",
  "parameters": [
    {
      "description": "Top-level receipt identifier from opening the remote session, not the underlying session identifier.",
      "in": "path",
      "name": "handleId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/BetaConnectionControlsDto"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Get connection details",
  "tags": [
    "Remote sessions"
  ],
  "x-required-capabilities": [
    "mcp.cap.ScreenRead"
  ]
}
GETAperçu de la suppression à distance/v1/remote-sessions/{handleId}/delete-preview

Inspectez les fichiers et les dossiers qu'une suppression proposée affecterait avant de soumettre l'action de suppression.

GET /v1/remote-sessions/{handleId}/delete-preview ↗

mcp.cap.FilesRead

Schémas (OpenAPI)

FileEntryKind

0 = Drive
1 = Directory
2 = File

Paramètres

handleId · Chemin · requis
Identifiant de reçu de niveau supérieur provenant de l'ouverture de la session à distance, et non l'identifiant de session sous-jacent.
path · Requête · requis
Chemin sur le périphérique distant, dans la portée autorisée de la session de fichiers ouverte.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/remote-sessions/<handleId>/delete-preview?path=<path>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Inspect the files and folders that a proposed deletion would affect before submitting the delete action.",
  "operationId": "get_v1_remote_sessions_handleId_delete_preview",
  "parameters": [
    {
      "description": "Top-level receipt identifier from opening the remote session, not the underlying session identifier.",
      "in": "path",
      "name": "handleId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Path on the remote device, within the opened file session's permitted scope.",
      "in": "query",
      "name": "path",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationDeletePreview"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Preview remote deletion",
  "tags": [
    "Remote sessions"
  ],
  "x-required-capabilities": [
    "mcp.cap.FilesRead"
  ]
}
GETLire un fichier distant/v1/remote-sessions/{handleId}/file

Récupérez le contenu du fichier via une session d'accès au fichier autorisée.

GET /v1/remote-sessions/{handleId}/file ↗

mcp.cap.FilesRead

Paramètres

handleId · Chemin · requis
Identifiant de reçu de niveau supérieur provenant de l'ouverture de la session à distance, et non l'identifiant de session sous-jacent.
path · Requête · requis
Chemin sur le périphérique distant, dans la portée autorisée de la session de fichiers ouverte.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/remote-sessions/<handleId>/file?path=<path>' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Retrieve file content through an authorised file-access session.",
  "operationId": "get_v1_remote_sessions_handleId_file",
  "parameters": [
    {
      "description": "Top-level receipt identifier from opening the remote session, not the underlying session identifier.",
      "in": "path",
      "name": "handleId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Path on the remote device, within the opened file session's permitted scope.",
      "in": "query",
      "name": "path",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiRemoteFile"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read a remote file",
  "tags": [
    "Remote sessions"
  ],
  "x-required-capabilities": [
    "mcp.cap.FilesRead"
  ]
}
GETRépertorier un dossier distant/v1/remote-sessions/{handleId}/files

Parcourez un répertoire via une session d'accès aux fichiers autorisée.

GET /v1/remote-sessions/{handleId}/files ↗

mcp.cap.FilesRead

Schémas (OpenAPI)

FileEntryKind

0 = Drive
1 = Directory
2 = File

Paramètres

handleId · Chemin · requis
Identifiant de reçu de niveau supérieur provenant de l'ouverture de la session à distance, et non l'identifiant de session sous-jacent.
path · Requête · en option
Chemin sur le périphérique distant, dans la portée autorisée de la session de fichiers ouverte.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/remote-sessions/<handleId>/files' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Browse a directory through an authorised file-access session.",
  "operationId": "get_v1_remote_sessions_handleId_files",
  "parameters": [
    {
      "description": "Top-level receipt identifier from opening the remote session, not the underlying session identifier.",
      "in": "path",
      "name": "handleId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Path on the remote device, within the opened file session's permitted scope.",
      "in": "query",
      "name": "path",
      "schema": {
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/FileBrowserListingDto"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "List a remote folder",
  "tags": [
    "Remote sessions"
  ],
  "x-required-capabilities": [
    "mcp.cap.FilesRead"
  ]
}
GETLire un écran distant/v1/remote-sessions/{handleId}/screen

Lire les données de l'écran via une session autorisée. Celui-ci peut contenir des informations sensibles visibles sur le bureau.

GET /v1/remote-sessions/{handleId}/screen ↗

mcp.cap.ScreenRead

Paramètres

handleId · Chemin · requis
Identifiant de reçu de niveau supérieur provenant de l'ouverture de la session à distance, et non l'identifiant de session sous-jacent.
monitorId · Requête · en option
Identifiant du moniteur à lire ou à filtrer.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/remote-sessions/<handleId>/screen' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read screen data through an authorised session. This can contain sensitive information visible on the desktop.",
  "operationId": "get_v1_remote_sessions_handleId_screen",
  "parameters": [
    {
      "description": "Top-level receipt identifier from opening the remote session, not the underlying session identifier.",
      "in": "path",
      "name": "handleId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Identifier of the monitor to read or filter by.",
      "in": "query",
      "name": "monitorId",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/IntegrationScreenImage"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read a remote screen",
  "tags": [
    "Remote sessions"
  ],
  "x-required-capabilities": [
    "mcp.cap.ScreenRead"
  ]
}
GETSortie du terminal de lecture/v1/remote-sessions/{handleId}/terminal

Lire la sortie du terminal associée à la session à distance autorisée.

GET /v1/remote-sessions/{handleId}/terminal ↗

mcp.cap.TerminalRead

Paramètres

handleId · Chemin · requis
Identifiant de reçu de niveau supérieur provenant de l'ouverture de la session à distance, et non l'identifiant de session sous-jacent.
waitMilliseconds · Requête · en option
Attendez avant de lire la sortie du terminal, en millisecondes. La valeur par défaut est 200 et est limitée à 0-2000.
cursor · Requête · en option
Curseur de continuation de la lecture précédente du terminal. Omettre pour commencer à lire la sortie disponible.

Exemple de demande

C#: dotnet new console → Program.cs → dotnet run

$headers = @{
  Authorization = "Bearer $env:RG_API_TOKEN"
}
Invoke-RestMethod -Method GET `
  -Uri 'https://api.remotegymp.com/v1/remote-sessions/<handleId>/terminal' `
  -Headers $headers
Schéma de demande et de réponse (OpenAPI)
{
  "description": "Read terminal output associated with the authorised remote session.",
  "operationId": "get_v1_remote_sessions_handleId_terminal",
  "parameters": [
    {
      "description": "Top-level receipt identifier from opening the remote session, not the underlying session identifier.",
      "in": "path",
      "name": "handleId",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Wait before reading terminal output, in milliseconds. Defaults to 200 and is clamped to 0–2000.",
      "in": "query",
      "name": "waitMilliseconds",
      "schema": {
        "format": "int32",
        "type": "integer"
      }
    },
    {
      "description": "Continuation cursor from the previous terminal read. Omit to start reading available output.",
      "in": "query",
      "name": "cursor",
      "schema": {
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiRemoteTerminal"
          }
        }
      },
      "description": "OK"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Bad Request"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Forbidden"
    },
    "404": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Not Found"
    },
    "409": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Conflict"
    },
    "410": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Gone"
    },
    "413": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Payload Too Large"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Too Many Requests"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ApiError"
          }
        }
      },
      "description": "Service Unavailable"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "summary": "Read terminal output",
  "tags": [
    "Remote sessions"
  ],
  "x-required-capabilities": [
    "mcp.cap.TerminalRead"
  ]
}
Schémas (OpenAPI)
{
  "AccountAccessState": {
    "default": 0,
    "type": "integer",
    "x-enumNames": [
      "Active",
      "TemporarilyLocked",
      "Deactivated"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "AcknowledgementResponse": {
    "properties": {
      "alertId": {
        "format": "uuid",
        "type": "string"
      },
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "alertId",
      "revision"
    ],
    "type": "object"
  },
  "ActivityResponse": {
    "properties": {
      "action": {
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "occurredAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "id",
      "action",
      "occurredAtUtc"
    ],
    "type": "object"
  },
  "AiResolverChargeMode": {
    "type": "integer",
    "x-enumNames": [
      "CustomerUsage",
      "ProviderCost",
      "TrialIncluded"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "AiResolverCheckProgress": {
    "properties": {
      "category": {
        "type": "string"
      },
      "completedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "index": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "startedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "status": {
        "type": "string"
      },
      "timeoutSeconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "total": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "index",
      "total",
      "category",
      "status",
      "timeoutSeconds"
    ],
    "type": "object"
  },
  "AiResolverContextCategory": {
    "properties": {
      "includedItemCount": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "itemCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "omittedItemCount": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "state": {
        "type": "string"
      },
      "truncationReason": {
        "type": [
          "null",
          "string"
        ]
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "name",
      "updatedAtUtc",
      "state",
      "itemCount"
    ],
    "type": "object"
  },
  "AiResolverEventType": {
    "type": "integer",
    "x-enumNames": [
      "Initial",
      "FollowUp",
      "Retry"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "AiResolverRunStatus": {
    "type": "integer",
    "x-enumNames": [
      "Accepted",
      "Queued",
      "Running",
      "CollectingEvidence",
      "Synthesizing",
      "Validating",
      "Completed",
      "Failed",
      "Refused",
      "TimedOut",
      "Cancelled"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10
    ]
  },
  "AiResolverRunView": {
    "properties": {
      "acceptedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "billingStatus": {
        "type": "string"
      },
      "cachedInputTokens": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "categories": {
        "items": {
          "$ref": "#/components/schemas/AiResolverContextCategory"
        },
        "type": "array"
      },
      "chargeMode": {
        "$ref": "#/components/schemas/AiResolverChargeMode"
      },
      "checks": {
        "items": {
          "$ref": "#/components/schemas/AiResolverCheckProgress"
        },
        "type": "array"
      },
      "companyName": {
        "type": "string"
      },
      "completedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "customerChargeUsd": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceName": {
        "type": "string"
      },
      "equivalentCustomerChargeUsd": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "estimatedMaximumChargeUsd": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "eventType": {
        "$ref": "#/components/schemas/AiResolverEventType"
      },
      "failureReason": {
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "inputTokens": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "isBillable": {
        "type": "boolean"
      },
      "model": {
        "type": "string"
      },
      "outputTokens": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "parentRunId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "problemSummary": {
        "type": "string"
      },
      "problemText": {
        "type": "string"
      },
      "provider": {
        "type": "string"
      },
      "providerCostUsd": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "reasoningTokens": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "resultJson": {
        "type": [
          "null",
          "string"
        ]
      },
      "startedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "status": {
        "$ref": "#/components/schemas/AiResolverRunStatus"
      },
      "supplementalText": {
        "type": [
          "null",
          "string"
        ]
      },
      "technicianDisplayName": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "deviceId",
      "deviceName",
      "companyName",
      "technicianDisplayName",
      "problemSummary",
      "eventType",
      "parentRunId",
      "status",
      "problemText",
      "supplementalText",
      "provider",
      "model",
      "chargeMode",
      "isBillable",
      "billingStatus",
      "customerChargeUsd",
      "equivalentCustomerChargeUsd",
      "estimatedMaximumChargeUsd",
      "providerCostUsd",
      "inputTokens",
      "outputTokens",
      "cachedInputTokens",
      "reasoningTokens",
      "resultJson",
      "failureReason",
      "acceptedAtUtc",
      "startedAtUtc",
      "completedAtUtc"
    ],
    "type": "object"
  },
  "AlertResponse": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "lastObservedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "openedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "resolvedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "severity": {
        "type": "string"
      },
      "state": {
        "type": "string"
      },
      "summary": {
        "type": "string"
      },
      "title": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "deviceId",
      "title",
      "summary",
      "state",
      "severity",
      "openedAtUtc",
      "lastObservedAtUtc",
      "resolvedAtUtc",
      "revision"
    ],
    "type": "object"
  },
  "AntivirusAction": {
    "type": "integer",
    "x-enumNames": [
      "QuickScan",
      "FullScan",
      "UpdateDefinitions"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "AntivirusActionProvider": {
    "type": "integer",
    "x-enumNames": [
      "MicrosoftDefender",
      "BitdefenderBest"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "AntivirusActionRequestDto": {
    "properties": {
      "action": {
        "$ref": "#/components/schemas/AntivirusAction"
      },
      "operationId": {
        "format": "uuid",
        "type": "string"
      },
      "provider": {
        "$ref": "#/components/schemas/AntivirusActionProvider"
      }
    },
    "required": [
      "operationId",
      "provider",
      "action"
    ],
    "type": "object"
  },
  "AntivirusProductFactDto": {
    "properties": {
      "actionProvider": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AntivirusActionProvider"
          }
        ]
      },
      "definitionsUpToDate": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "definitionsUpdatedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "productVersion": {
        "type": [
          "null",
          "string"
        ]
      },
      "protectionDataVersion": {
        "type": [
          "null",
          "string"
        ]
      },
      "state": {
        "$ref": "#/components/schemas/AntivirusProductState"
      },
      "statusDetail": {
        "type": [
          "null",
          "string"
        ]
      },
      "supportedActions": {
        "items": {
          "$ref": "#/components/schemas/AntivirusAction"
        },
        "type": [
          "null",
          "array"
        ]
      }
    },
    "required": [
      "name",
      "state"
    ],
    "type": "object"
  },
  "AntivirusProductState": {
    "type": "integer",
    "x-enumNames": [
      "Unknown",
      "On",
      "Off",
      "Snoozed",
      "Expired"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "ApiAssistantPolicy": {
    "properties": {
      "enabled": {
        "type": "boolean"
      }
    },
    "required": [
      "enabled"
    ],
    "type": "object"
  },
  "ApiCommandBatchContract": {
    "properties": {
      "cancellationStopsNewWavesOnly": {
        "type": "boolean"
      },
      "defaultWaveSize": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "maximumDeadlineSeconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "maximumTargets": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "maximumWaveSize": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "receiptCancellationSupported": {
        "type": "boolean"
      },
      "targetOutputMaximumBytes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "unknownAlwaysStops": {
        "type": "boolean"
      }
    },
    "required": [
      "maximumTargets",
      "maximumWaveSize",
      "defaultWaveSize",
      "maximumDeadlineSeconds",
      "unknownAlwaysStops",
      "cancellationStopsNewWavesOnly",
      "receiptCancellationSupported",
      "targetOutputMaximumBytes"
    ],
    "type": "object"
  },
  "ApiError": {
    "properties": {
      "error": {
        "type": "string"
      },
      "message": {
        "type": "string"
      },
      "requestId": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "error",
      "message"
    ],
    "type": "object"
  },
  "ApiGroupFacts": {
    "properties": {
      "allowedValues": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "displayName": {
        "type": "string"
      },
      "operators": {
        "items": {
          "$ref": "#/components/schemas/AutomationConditionOperator"
        },
        "type": "array"
      },
      "path": {
        "type": "string"
      },
      "platforms": {
        "items": {
          "$ref": "#/components/schemas/OsKind"
        },
        "type": "array"
      },
      "semantics": {
        "type": [
          "null",
          "string"
        ]
      },
      "valueType": {
        "$ref": "#/components/schemas/AutomationFactValueType"
      }
    },
    "required": [
      "path",
      "displayName",
      "valueType",
      "operators",
      "platforms",
      "allowedValues",
      "semantics"
    ],
    "type": "object"
  },
  "ApiGroupsWorkspace": {
    "properties": {
      "companies": {
        "items": {
          "$ref": "#/components/schemas/AutomationCompanyScopeView"
        },
        "type": "array"
      },
      "companyScoped": {
        "type": "boolean"
      },
      "factDefinitions": {
        "items": {
          "$ref": "#/components/schemas/ApiGroupFacts"
        },
        "type": "array"
      },
      "groups": {
        "items": {
          "$ref": "#/components/schemas/AutomationSmartGroupListItem"
        },
        "type": "array"
      }
    },
    "required": [
      "groups",
      "companies",
      "companyScoped",
      "factDefinitions"
    ],
    "type": "object"
  },
  "ApiInstallerCapabilities": {
    "properties": {
      "supportsBootstrapFormats": {
        "type": "boolean"
      },
      "supportsLegacyWindows": {
        "type": "boolean"
      },
      "supportsLinux": {
        "type": "boolean"
      },
      "supportsMacOs": {
        "type": "boolean"
      },
      "supportsSelfHostedRelayManagement": {
        "type": "boolean"
      }
    },
    "required": [
      "supportsLinux",
      "supportsMacOs",
      "supportsLegacyWindows",
      "supportsBootstrapFormats",
      "supportsSelfHostedRelayManagement"
    ],
    "type": "object"
  },
  "ApiLiveEventLogs": {
    "properties": {
      "coverage": {
        "type": "string"
      },
      "items": {
        "items": {
          "$ref": "#/components/schemas/EventLogEntryDto"
        },
        "type": "array"
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "observedAtUtc",
      "coverage",
      "items"
    ],
    "type": "object"
  },
  "ApiMonitorItem": {
    "properties": {
      "activeVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "description": {
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "state": {
        "$ref": "#/components/schemas/AutomationMonitorLifecycleState"
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "description",
      "companyId",
      "state",
      "activeVersionId",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "ApiObservedPageOfProcessInfoDto": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/ProcessInfoDto"
        },
        "type": "array"
      },
      "nextOffset": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "snapshotStable": {
        "type": "boolean"
      }
    },
    "required": [
      "observedAtUtc",
      "items",
      "nextOffset",
      "snapshotStable"
    ],
    "type": "object"
  },
  "ApiObservedPageOfServiceInfoDto": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/ServiceInfoDto"
        },
        "type": "array"
      },
      "nextOffset": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "snapshotStable": {
        "type": "boolean"
      }
    },
    "required": [
      "observedAtUtc",
      "items",
      "nextOffset",
      "snapshotStable"
    ],
    "type": "object"
  },
  "ApiOffsetPageOfApiMonitorItem": {
    "properties": {
      "hasMore": {
        "type": "boolean"
      },
      "items": {
        "items": {
          "$ref": "#/components/schemas/ApiMonitorItem"
        },
        "type": "array"
      }
    },
    "required": [
      "items",
      "hasMore"
    ],
    "type": "object"
  },
  "ApiOffsetPageOfApiRunItem": {
    "properties": {
      "hasMore": {
        "type": "boolean"
      },
      "items": {
        "items": {
          "$ref": "#/components/schemas/ApiRunItem"
        },
        "type": "array"
      }
    },
    "required": [
      "items",
      "hasMore"
    ],
    "type": "object"
  },
  "ApiOffsetPageOfApiScriptItem": {
    "properties": {
      "hasMore": {
        "type": "boolean"
      },
      "items": {
        "items": {
          "$ref": "#/components/schemas/ApiScriptItem"
        },
        "type": "array"
      }
    },
    "required": [
      "items",
      "hasMore"
    ],
    "type": "object"
  },
  "ApiOffsetPageOfApiWorkflowItem": {
    "properties": {
      "hasMore": {
        "type": "boolean"
      },
      "items": {
        "items": {
          "$ref": "#/components/schemas/ApiWorkflowItem"
        },
        "type": "array"
      }
    },
    "required": [
      "items",
      "hasMore"
    ],
    "type": "object"
  },
  "ApiOperationCapabilities": {
    "properties": {
      "actions": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "allowedTools": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "apiOnlyFeatures": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "authenticationRequestsPerMinutePerIp": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "capabilities": {
        "type": [
          "null",
          "string"
        ]
      },
      "capabilityVersion": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "commandBatchContract": {
        "$ref": "#/components/schemas/ApiCommandBatchContract"
      },
      "maximumBatchSize": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "mcpEnabled": {
        "type": "boolean"
      },
      "operationContract": {
        "$ref": "#/components/schemas/ApiOperationContract"
      },
      "operationResultRetentionHours": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "permission": {
        "type": "string"
      },
      "preflight": {
        "$ref": "#/components/schemas/ApiPreflightContract"
      },
      "read": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "remoteLimits": {
        "$ref": "#/components/schemas/ApiRemoteLimits"
      },
      "requestsPerMinute": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "supportLimits": {
        "$ref": "#/components/schemas/ApiSupportLimits"
      },
      "unavailable": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "version": {
        "type": "string"
      }
    },
    "required": [
      "version",
      "permission",
      "capabilityVersion",
      "capabilities",
      "allowedTools",
      "mcpEnabled",
      "read",
      "actions",
      "unavailable",
      "preflight",
      "apiOnlyFeatures",
      "operationContract",
      "remoteLimits",
      "supportLimits",
      "commandBatchContract",
      "maximumBatchSize",
      "requestsPerMinute",
      "authenticationRequestsPerMinutePerIp",
      "operationResultRetentionHours"
    ],
    "type": "object"
  },
  "ApiOperationContract": {
    "properties": {
      "automaticReplayAllowed": {
        "type": "boolean"
      },
      "cancellationTools": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "completedMeans": {
        "type": "string"
      },
      "pendingStatus": {
        "type": "string"
      },
      "pollAfterMilliseconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "receiptCancellationSupported": {
        "type": "boolean"
      },
      "retryRule": {
        "type": "string"
      },
      "rollback": {
        "type": "string"
      },
      "unknownOutcomeRequiresReconciliation": {
        "type": "boolean"
      }
    },
    "required": [
      "pendingStatus",
      "pollAfterMilliseconds",
      "completedMeans",
      "unknownOutcomeRequiresReconciliation",
      "automaticReplayAllowed",
      "retryRule",
      "receiptCancellationSupported",
      "cancellationTools",
      "rollback"
    ],
    "type": "object"
  },
  "ApiPreflightContract": {
    "properties": {
      "route": {
        "type": "string"
      },
      "storedFactsOnly": {
        "type": "boolean"
      },
      "tool": {
        "type": "string"
      }
    },
    "required": [
      "route",
      "tool",
      "storedFactsOnly"
    ],
    "type": "object"
  },
  "ApiQuickSupportItem": {
    "properties": {
      "claimedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "consentGrantedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "createdAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "endpointConnected": {
        "type": "boolean"
      },
      "expiresAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "revokedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "sessionExpiresAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "createdAtUtc",
      "expiresAtUtc",
      "claimedAtUtc",
      "consentGrantedAtUtc",
      "revokedAtUtc",
      "sessionExpiresAtUtc",
      "endpointConnected"
    ],
    "type": "object"
  },
  "ApiRemoteClose": {
    "properties": {
      "cleanup": {
        "type": "string"
      },
      "closed": {
        "type": "boolean"
      }
    },
    "required": [
      "closed",
      "cleanup"
    ],
    "type": "object"
  },
  "ApiRemoteFile": {
    "properties": {
      "data": {
        "type": "string"
      },
      "encoding": {
        "type": "string"
      },
      "length": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "data",
      "length",
      "encoding"
    ],
    "type": "object"
  },
  "ApiRemoteLimits": {
    "properties": {
      "handleLifetimeMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "hyperVFreshFramesRequireUpdatedAgent": {
        "type": "boolean"
      },
      "inlineReadBytes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "inlineWriteBytes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "keepAliveSeconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "mcpPreferredQuality": {
        "type": "string"
      },
      "screenshotPixels": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "handleLifetimeMinutes",
      "keepAliveSeconds",
      "inlineReadBytes",
      "inlineWriteBytes",
      "screenshotPixels",
      "mcpPreferredQuality",
      "hyperVFreshFramesRequireUpdatedAgent"
    ],
    "type": "object"
  },
  "ApiRemoteSession": {
    "properties": {
      "expires": {
        "format": "date-time",
        "type": "string"
      },
      "handleId": {
        "format": "uuid",
        "type": "string"
      },
      "keepAliveSeconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "session": {
        "$ref": "#/components/schemas/IntegrationRemoteSession"
      },
      "viewerPath": {
        "type": "string"
      }
    },
    "required": [
      "handleId",
      "session",
      "expires",
      "viewerPath",
      "keepAliveSeconds"
    ],
    "type": "object"
  },
  "ApiRemoteTerminal": {
    "properties": {
      "recentOutput": {
        "$ref": "#/components/schemas/ConsoleOutputSnapshotDto"
      },
      "tabs": {
        "items": {
          "$ref": "#/components/schemas/ConsoleTabDto"
        },
        "type": "array"
      }
    },
    "required": [
      "tabs",
      "recentOutput"
    ],
    "type": "object"
  },
  "ApiRunItem": {
    "properties": {
      "automationId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "completedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "createdAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "state": {
        "$ref": "#/components/schemas/AutomationRunState"
      },
      "targetCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "automationId",
      "state",
      "createdAtUtc",
      "completedAtUtc",
      "targetCount"
    ],
    "type": "object"
  },
  "ApiScriptItem": {
    "properties": {
      "activeVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "description": {
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "description",
      "companyId",
      "activeVersionId",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "ApiSettingValue": {
    "properties": {
      "value": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "value"
    ],
    "type": "object"
  },
  "ApiSupportLimits": {
    "properties": {
      "clientReportPageSize": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "confirmationLifetimeMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "confirmationMaximumWaitSeconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "diagnosticReadBytes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "eventLogCoverage": {
        "type": "string"
      },
      "historyPageSize": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "patchExclusionLimit": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "quickSupportInvitationMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "resolverHistoryDays": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "resolverPageSize": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "softwareProviders": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "tagAssignmentLimit": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "tagPageSize": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "userSessionCoverage": {
        "type": "string"
      },
      "userSessionPageDevices": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "visitorPassMaximumMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "quickSupportInvitationMinutes",
      "visitorPassMaximumMinutes",
      "diagnosticReadBytes",
      "historyPageSize",
      "resolverPageSize",
      "resolverHistoryDays",
      "clientReportPageSize",
      "tagPageSize",
      "tagAssignmentLimit",
      "patchExclusionLimit",
      "eventLogCoverage",
      "userSessionCoverage",
      "userSessionPageDevices",
      "confirmationMaximumWaitSeconds",
      "confirmationLifetimeMinutes",
      "softwareProviders"
    ],
    "type": "object"
  },
  "ApiUserSessionItem": {
    "properties": {
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "lastKnownObservedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lastKnownUser": {
        "type": [
          "null",
          "string"
        ]
      },
      "lastSeenAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "sessions": {
        "items": {
          "$ref": "#/components/schemas/InteractiveSessionDto"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "state": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "state",
      "observedAtUtc",
      "lastKnownUser",
      "lastKnownObservedAtUtc"
    ],
    "type": "object"
  },
  "ApiUserSessionPage": {
    "properties": {
      "coverage": {
        "type": "string"
      },
      "enumerationComplete": {
        "type": "boolean"
      },
      "items": {
        "items": {
          "$ref": "#/components/schemas/ApiUserSessionItem"
        },
        "type": "array"
      },
      "next": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next",
      "coverage",
      "enumerationComplete"
    ],
    "type": "object"
  },
  "ApiVisitorPassPage": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/GuestPassDto"
        },
        "type": "array"
      },
      "next": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "ApiWorkflowDetail": {
    "properties": {
      "triggers": {
        "items": {
          "$ref": "#/components/schemas/ApiWorkflowTrigger"
        },
        "type": "array"
      },
      "version": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/ApiWorkflowVersion"
          }
        ]
      },
      "workflow": {
        "$ref": "#/components/schemas/ApiWorkflowIdentity"
      }
    },
    "required": [
      "workflow",
      "version",
      "triggers"
    ],
    "type": "object"
  },
  "ApiWorkflowIdentity": {
    "properties": {
      "activeVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "description": {
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "state": {
        "$ref": "#/components/schemas/AutomationState"
      }
    },
    "required": [
      "id",
      "name",
      "description",
      "companyId",
      "state",
      "activeVersionId"
    ],
    "type": "object"
  },
  "ApiWorkflowItem": {
    "properties": {
      "activeVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "description": {
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "state": {
        "$ref": "#/components/schemas/AutomationState"
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "description",
      "companyId",
      "state",
      "activeVersionId",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "ApiWorkflowTrigger": {
    "properties": {
      "configurationJson": {
        "type": "string"
      },
      "cooldownSeconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "debounceSeconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "dependencyPathsJson": {
        "type": "string"
      },
      "enabled": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "timeZoneId": {
        "type": "string"
      },
      "type": {
        "$ref": "#/components/schemas/AutomationTriggerType"
      }
    },
    "required": [
      "id",
      "type",
      "configurationJson",
      "dependencyPathsJson",
      "timeZoneId",
      "debounceSeconds",
      "cooldownSeconds",
      "enabled"
    ],
    "type": "object"
  },
  "ApiWorkflowVersion": {
    "properties": {
      "canaryPolicyJson": {
        "type": "string"
      },
      "deviceConnectivityPolicy": {
        "$ref": "#/components/schemas/AutomationDeviceConnectivityPolicy"
      },
      "executionLocation": {
        "$ref": "#/components/schemas/AutomationExecutionLocation"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "maximumOfflineLeaseMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "missedRunPolicy": {
        "$ref": "#/components/schemas/AutomationMissedRunPolicy"
      },
      "offlineDeadlineMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "offlinePolicy": {
        "$ref": "#/components/schemas/AutomationOfflinePolicy"
      },
      "overlapPolicy": {
        "$ref": "#/components/schemas/AutomationOverlapPolicy"
      },
      "preconditionJson": {
        "type": "string"
      },
      "resultReportingMode": {
        "$ref": "#/components/schemas/AutomationResultReportingMode"
      },
      "spreadWindowSeconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "targetSpecJson": {
        "type": "string"
      },
      "unknownPolicy": {
        "$ref": "#/components/schemas/AutomationUnknownPolicy"
      },
      "version": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "workflowJson": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "version",
      "targetSpecJson",
      "preconditionJson",
      "workflowJson",
      "offlinePolicy",
      "offlineDeadlineMinutes",
      "missedRunPolicy",
      "overlapPolicy",
      "unknownPolicy",
      "canaryPolicyJson",
      "executionLocation",
      "deviceConnectivityPolicy",
      "resultReportingMode",
      "maximumOfflineLeaseMinutes",
      "spreadWindowSeconds"
    ],
    "type": "object"
  },
  "AssetInventorySection": {
    "properties": {
      "data": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/JsonElement"
          }
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "factsUpdatedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "nextOffset": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "section": {
        "type": "string"
      },
      "sections": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "toolFactsUpdatedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "deviceId",
      "section",
      "factsUpdatedAtUtc",
      "toolFactsUpdatedAtUtc",
      "data",
      "nextOffset",
      "sections"
    ],
    "type": "object"
  },
  "AssetSearchResult": {
    "properties": {
      "evaluated": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "evaluatedUtc": {
        "format": "date-time",
        "type": "string"
      },
      "limited": {
        "type": "boolean"
      },
      "revision": {
        "type": "string"
      },
      "rows": {
        "items": {
          "$ref": "#/components/schemas/AssetSearchRow"
        },
        "type": "array"
      },
      "unknown": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "rows",
      "evaluated",
      "unknown",
      "limited",
      "evaluatedUtc",
      "revision"
    ],
    "type": "object"
  },
  "AssetSearchRow": {
    "properties": {
      "company": {
        "type": "string"
      },
      "device": {
        "type": "string"
      },
      "factsUpdatedUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "manufacturer": {
        "type": [
          "null",
          "string"
        ]
      },
      "matchingSoftware": {
        "type": "string"
      },
      "model": {
        "type": [
          "null",
          "string"
        ]
      },
      "os": {
        "type": "string"
      },
      "serialNumber": {
        "type": [
          "null",
          "string"
        ]
      },
      "site": {
        "type": [
          "null",
          "string"
        ]
      },
      "softwareUpdatedUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "device",
      "company",
      "site",
      "manufacturer",
      "model",
      "serialNumber",
      "os",
      "factsUpdatedUtc",
      "softwareUpdatedUtc",
      "matchingSoftware"
    ],
    "type": "object"
  },
  "AuditRowDto": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "companyName": {
        "type": "string"
      },
      "detail": {
        "type": [
          "null",
          "string"
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "deviceName": {
        "type": "string"
      },
      "duration": {
        "pattern": "^-?(\\d+\\.)?\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,7})?$",
        "type": [
          "null",
          "string"
        ]
      },
      "endReason": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/SessionEndReason"
          }
        ]
      },
      "kind": {
        "$ref": "#/components/schemas/AuditRowKind"
      },
      "originIpAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "sessionId": {
        "format": "uuid",
        "type": "string"
      },
      "sessionType": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/SessionKind"
          }
        ]
      },
      "startedAt": {
        "format": "date-time",
        "type": "string"
      },
      "technicianDisplayName": {
        "type": "string"
      }
    },
    "required": [
      "sessionId",
      "kind",
      "technicianDisplayName",
      "deviceName",
      "companyId",
      "companyName",
      "startedAt",
      "duration",
      "endReason"
    ],
    "type": "object"
  },
  "AuditRowKind": {
    "type": "integer",
    "x-enumNames": [
      "Session",
      "AgentConnected",
      "AgentDisconnected",
      "TechnicianConnected",
      "TechnicianDisconnected",
      "ResourceBrowsed",
      "DeviceWoken",
      "CommandRun",
      "ConsoleCommand",
      "FileOperation",
      "WebNavigation",
      "GuestPassGenerated",
      "GuestPassRevoked",
      "GuestPassUsed",
      "AiResolver",
      "UserLogon",
      "UserLogoff",
      "SessionLocked",
      "SessionUnlocked",
      "RdpConnected",
      "RdpDisconnected",
      "MachineShuttingDown",
      "MachinePoweredOn",
      "AgentServiceStarted",
      "AgentServiceStopped",
      "MachineSuspending",
      "MachineResumed",
      "HardwareAdded",
      "HardwareRemoved",
      "HardwareChanged",
      "SoftwareInstalled",
      "SoftwareRemoved",
      "SoftwareUpdated",
      "OperatingSystemChanged",
      "AgentUpdated",
      "PatchComplianceChanged",
      "SecurityChanged",
      "NetworkConfigurationChanged",
      "BitLockerManagement",
      "SessionLaunch",
      "DeviceTool",
      "SessionControl",
      "RemoteResource",
      "JobQueue",
      "Chat",
      "SessionAction",
      "IdracMonitoringAccount"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12,
      13,
      14,
      15,
      16,
      17,
      18,
      19,
      20,
      21,
      22,
      23,
      24,
      25,
      26,
      27,
      28,
      29,
      30,
      31,
      32,
      33,
      34,
      35,
      36,
      37,
      38,
      39,
      40,
      41,
      42,
      43,
      44,
      45,
      46
    ]
  },
  "AuditRowsPageDto": {
    "properties": {
      "nextCursor": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/HistoryPageCursor"
          }
        ]
      },
      "rows": {
        "items": {
          "$ref": "#/components/schemas/AuditRowDto"
        },
        "type": "array"
      },
      "snapshotSequence": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "totalCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "rows",
      "totalCount"
    ],
    "type": "object"
  },
  "AutomationActionDraft": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "content": {
        "type": "string"
      },
      "description": {
        "default": "",
        "type": "string"
      },
      "editedParameterSchemaJson": {
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "outputSchemaJson": {
        "type": [
          "null",
          "string"
        ]
      },
      "parameterSchemaJson": {
        "default": "{}",
        "type": "string"
      },
      "platform": {
        "$ref": "#/components/schemas/AutomationScriptPlatform"
      },
      "reviewedScriptAiVersion": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationScriptVersionInput"
          }
        ]
      },
      "successExitCodesJson": {
        "default": "[0]",
        "type": "string"
      },
      "suggestedOutcomeNotificationJson": {
        "type": [
          "null",
          "string"
        ]
      },
      "timeoutSeconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "versionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "versionId",
      "name",
      "companyId",
      "platform",
      "content",
      "timeoutSeconds"
    ],
    "type": "object"
  },
  "AutomationAlertRoutingInput": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "enabled": {
        "default": false,
        "type": "boolean"
      },
      "exceptionMonitorIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "expectedRevision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "kind": {
        "$ref": "#/components/schemas/AutomationAlertRoutingKind"
      },
      "name": {
        "type": "string"
      },
      "parentDeviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "parentFreshnessMinutes": {
        "default": 15,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "parentMonitorId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "quietEndMinute": {
        "default": 360,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "quietStartMinute": {
        "default": 1320,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "siteId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "timeZoneId": {
        "default": "Etc/UTC",
        "type": "string"
      }
    },
    "required": [
      "id",
      "expectedRevision",
      "name",
      "kind",
      "companyId"
    ],
    "type": "object"
  },
  "AutomationAlertRoutingKind": {
    "type": "integer",
    "x-enumNames": [
      "QuietHours",
      "ParentDependency"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "AutomationAssistantApplicableItem": {
    "properties": {
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "inherited": {
        "type": "boolean"
      },
      "kind": {
        "type": "string"
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "kind",
      "inherited"
    ],
    "type": "object"
  },
  "AutomationAssistantEstimate": {
    "properties": {
      "chargeMode": {
        "type": "string"
      },
      "expiresAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "maximumChargeUsd": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "maximumProviderCostUsd": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "model": {
        "type": "string"
      },
      "provider": {
        "type": "string"
      },
      "token": {
        "type": "string"
      }
    },
    "required": [
      "token",
      "maximumChargeUsd",
      "provider",
      "model",
      "chargeMode",
      "expiresAtUtc"
    ],
    "type": "object"
  },
  "AutomationAssistantExecution": {
    "properties": {
      "canRetry": {
        "type": "boolean"
      },
      "completedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "createdAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "runId": {
        "format": "uuid",
        "type": "string"
      },
      "state": {
        "type": "string"
      }
    },
    "required": [
      "runId",
      "state",
      "createdAtUtc",
      "completedAtUtc",
      "canRetry"
    ],
    "type": "object"
  },
  "AutomationAssistantHistoryItem": {
    "properties": {
      "createdAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "status": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "status",
      "createdAtUtc"
    ],
    "type": "object"
  },
  "AutomationAssistantProposal": {
    "properties": {
      "actionsJson": {
        "type": [
          "null",
          "string"
        ]
      },
      "alertRoutingJson": {
        "type": [
          "null",
          "string"
        ]
      },
      "checkIntervalMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "conditionJson": {
        "type": [
          "null",
          "string"
        ]
      },
      "explanation": {
        "type": "string"
      },
      "failureThreshold": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "kind": {
        "type": "string"
      },
      "monitorSeverity": {
        "$ref": "#/components/schemas/AutomationNotificationSeverity"
      },
      "name": {
        "type": "string"
      },
      "patchKbArticle": {
        "type": [
          "null",
          "string"
        ]
      },
      "patchPolicyJson": {
        "type": [
          "null",
          "string"
        ]
      },
      "periodDays": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "recoveryThreshold": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "reportCapabilityId": {
        "type": [
          "null",
          "string"
        ]
      },
      "softwarePreview": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationSoftwarePreview"
          }
        ]
      },
      "triggerJson": {
        "type": [
          "null",
          "string"
        ]
      },
      "windowsUpdatePolicyJson": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "kind",
      "name",
      "explanation",
      "conditionJson",
      "actionsJson",
      "triggerJson",
      "checkIntervalMinutes",
      "failureThreshold",
      "recoveryThreshold",
      "reportCapabilityId",
      "periodDays"
    ],
    "type": "object"
  },
  "AutomationAssistantRequest": {
    "properties": {
      "approvedScriptVersionIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "execute": {
        "type": "boolean"
      },
      "existingReportId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "existingReportRevision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "recipients": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "request": {
        "type": "string"
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "safety": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationRolloutSafety"
          }
        ]
      },
      "scope": {
        "$ref": "#/components/schemas/AutomationHierarchyScope"
      },
      "secureCredentials": {
        "additionalProperties": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "object"
        ]
      },
      "smartGroupIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "submissionKey": {
        "type": "string"
      },
      "timeZoneId": {
        "type": "string"
      }
    },
    "required": [
      "request",
      "scope",
      "recipients",
      "timeZoneId",
      "execute",
      "submissionKey"
    ],
    "type": "object"
  },
  "AutomationAssistantResult": {
    "properties": {
      "actionPreview": {
        "items": {
          "$ref": "#/components/schemas/AutomationSimpleActionInput"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "actualChargeUsd": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "billingStatus": {
        "type": [
          "null",
          "string"
        ]
      },
      "execution": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationAssistantExecution"
          }
        ]
      },
      "failureCode": {
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "nextOccurrences": {
        "items": {
          "format": "date-time",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "observationPreview": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/MonitorConditionPreview"
          }
        ]
      },
      "preview": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationSimpleScopePreview"
          }
        ]
      },
      "proposal": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationAssistantProposal"
          }
        ]
      },
      "providerCostUsd": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "resultId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "resultKind": {
        "type": [
          "null",
          "string"
        ]
      },
      "safety": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationRolloutSafety"
          }
        ]
      },
      "scheduleTimeZone": {
        "type": [
          "null",
          "string"
        ]
      },
      "search": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AssetSearchResult"
          }
        ]
      },
      "status": {
        "type": "string"
      },
      "targetScope": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationHierarchyScope"
          }
        ]
      }
    },
    "required": [
      "id",
      "status",
      "proposal",
      "resultId",
      "resultKind",
      "failureCode"
    ],
    "type": "object"
  },
  "AutomationAssistantSavedAction": {
    "properties": {
      "name": {
        "type": "string"
      },
      "platform": {
        "$ref": "#/components/schemas/AutomationScriptPlatform"
      },
      "scriptVersionId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "scriptVersionId",
      "name",
      "platform"
    ],
    "type": "object"
  },
  "AutomationAssistantTargetContext": {
    "properties": {
      "existing": {
        "items": {
          "$ref": "#/components/schemas/AutomationAssistantApplicableItem"
        },
        "type": "array"
      },
      "name": {
        "type": "string"
      },
      "preview": {
        "$ref": "#/components/schemas/AutomationSimpleScopePreview"
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "tags": {
        "items": {
          "$ref": "#/components/schemas/AutomationTagListItem"
        },
        "type": "array"
      }
    },
    "required": [
      "name",
      "preview",
      "restriction",
      "tags",
      "existing"
    ],
    "type": "object"
  },
  "AutomationAttemptState": {
    "type": "integer",
    "x-enumNames": [
      "Pending",
      "Dispatching",
      "Accepted",
      "Running",
      "Succeeded",
      "Failed",
      "TimedOut",
      "Cancelled",
      "Interrupted",
      "Indeterminate",
      "Rejected"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10
    ]
  },
  "AutomationAttemptView": {
    "properties": {
      "attemptNumber": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "completedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "createdAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "error": {
        "type": [
          "null",
          "string"
        ]
      },
      "errorCode": {
        "type": [
          "null",
          "string"
        ]
      },
      "exitCode": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "operationId": {
        "format": "uuid",
        "type": "string"
      },
      "state": {
        "$ref": "#/components/schemas/AutomationAttemptState"
      }
    },
    "required": [
      "operationId",
      "attemptNumber",
      "state",
      "exitCode",
      "errorCode",
      "error",
      "createdAtUtc",
      "completedAtUtc"
    ],
    "type": "object"
  },
  "AutomationBaselinePackView": {
    "properties": {
      "description": {
        "type": "string"
      },
      "installedCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "key": {
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "templateCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "templates": {
        "items": {
          "$ref": "#/components/schemas/AutomationBaselineTemplateView"
        },
        "type": "array"
      }
    },
    "required": [
      "key",
      "name",
      "description",
      "templateCount",
      "installedCount",
      "templates"
    ],
    "type": "object"
  },
  "AutomationBaselineTemplateView": {
    "properties": {
      "capabilityId": {
        "type": [
          "null",
          "string"
        ]
      },
      "checkIntervalMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "description": {
        "type": "string"
      },
      "failureThreshold": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "key": {
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "prerequisite": {
        "type": [
          "null",
          "string"
        ]
      },
      "productVersion": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "readiness": {
        "$ref": "#/components/schemas/AutomationTemplateReadiness"
      },
      "recoveryThreshold": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "severity": {
        "$ref": "#/components/schemas/AutomationNotificationSeverity"
      }
    },
    "required": [
      "key",
      "name",
      "description",
      "checkIntervalMinutes",
      "failureThreshold",
      "recoveryThreshold",
      "severity",
      "readiness",
      "prerequisite",
      "productVersion",
      "capabilityId"
    ],
    "type": "object"
  },
  "AutomationCompanyScopeView": {
    "properties": {
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "name"
    ],
    "type": "object"
  },
  "AutomationConditionKind": {
    "type": "integer",
    "x-enumNames": [
      "All",
      "Any",
      "Not",
      "Predicate"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "AutomationConditionNode": {
    "properties": {
      "children": {
        "items": {
          "$ref": "#/components/schemas/AutomationConditionNode"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "kind": {
        "$ref": "#/components/schemas/AutomationConditionKind"
      },
      "operator": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationConditionOperator"
          }
        ]
      },
      "path": {
        "type": [
          "null",
          "string"
        ]
      },
      "schemaVersion": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "value": {}
    },
    "required": [
      "kind"
    ],
    "type": "object"
  },
  "AutomationConditionOperator": {
    "type": "integer",
    "x-enumNames": [
      "Equal",
      "NotEqual",
      "GreaterThan",
      "GreaterThanOrEqual",
      "LessThan",
      "LessThanOrEqual",
      "Contains",
      "NotContains",
      "StartsWith",
      "EndsWith",
      "In",
      "NotIn",
      "Exists",
      "NotExists",
      "OlderThan",
      "NewerThan",
      "CountEqual",
      "CountGreaterThan",
      "CountLessThan",
      "Changed",
      "ChangedFrom",
      "ChangedTo",
      "ServiceMatches",
      "ServiceMissing",
      "SoftwareMatches",
      "DriveMatches"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12,
      13,
      14,
      15,
      16,
      17,
      18,
      19,
      20,
      21,
      22,
      23,
      24,
      25
    ]
  },
  "AutomationDeviceAction": {
    "properties": {
      "force": {
        "default": false,
        "type": "boolean"
      },
      "includeComponentStore": {
        "default": false,
        "type": "boolean"
      },
      "kind": {
        "$ref": "#/components/schemas/AutomationDeviceActionKind"
      },
      "linuxMaintenanceAction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/LinuxMaintenanceAction"
          }
        ]
      },
      "message": {
        "type": [
          "null",
          "string"
        ]
      },
      "schemaVersion": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "serviceAction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/ServiceAction"
          }
        ]
      },
      "serviceName": {
        "type": [
          "null",
          "string"
        ]
      },
      "software": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/SoftwareUninstallRequestDto"
          }
        ]
      },
      "softwareNameContains": {
        "type": [
          "null",
          "string"
        ]
      },
      "userName": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "kind"
    ],
    "type": "object"
  },
  "AutomationDeviceActionKind": {
    "type": "integer",
    "x-enumNames": [
      "RefreshFacts",
      "ControlService",
      "RestartDevice",
      "WindowsDiskCleanup",
      "LinuxMaintenance",
      "WakeDevice",
      "SendUserMessage",
      "UninstallSoftware"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7
    ]
  },
  "AutomationDeviceConnectivityPolicy": {
    "type": "integer",
    "x-enumNames": [
      "ConnectedOnly",
      "LeasedOffline"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "AutomationExcludedDevice": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceName": {
        "type": "string"
      },
      "reason": {
        "type": "string"
      }
    },
    "required": [
      "deviceId",
      "deviceName",
      "reason"
    ],
    "type": "object"
  },
  "AutomationExecutionLocation": {
    "type": "integer",
    "x-enumNames": [
      "RelayScheduled",
      "DeviceScheduled"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "AutomationFactValueType": {
    "type": "integer",
    "x-enumNames": [
      "String",
      "Boolean",
      "Integer",
      "Number",
      "Timestamp",
      "Duration",
      "Guid",
      "Collection",
      "Object"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8
    ]
  },
  "AutomationGroupDraft": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "condition": {
        "$ref": "#/components/schemas/AutomationConditionNode"
      },
      "conditionSummary": {
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "versionId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "companyId",
      "condition",
      "versionId",
      "conditionSummary"
    ],
    "type": "object"
  },
  "AutomationHierarchyScope": {
    "properties": {
      "id": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "kind": {
        "$ref": "#/components/schemas/AutomationScopeKind"
      }
    },
    "required": [
      "kind"
    ],
    "type": "object"
  },
  "AutomationMissedRunPolicy": {
    "type": "integer",
    "x-enumNames": [
      "Skip",
      "RunOnce",
      "RunEach"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "AutomationMonitorLifecycleState": {
    "type": "integer",
    "x-enumNames": [
      "Enabled",
      "Paused",
      "Archived"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "AutomationNotificationAction": {
    "properties": {
      "audience": {
        "$ref": "#/components/schemas/AutomationNotificationAudience"
      },
      "backupFailure": {
        "default": false,
        "type": "boolean"
      },
      "channels": {
        "$ref": "#/components/schemas/AutomationNotificationChannel"
      },
      "emailRecipients": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "message": {
        "type": "string"
      },
      "schemaVersion": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "severity": {
        "$ref": "#/components/schemas/AutomationNotificationSeverity"
      },
      "subject": {
        "type": "string"
      }
    },
    "required": [
      "subject",
      "message"
    ],
    "type": "object"
  },
  "AutomationNotificationAudience": {
    "default": 1,
    "type": "integer",
    "x-enumNames": [
      "None",
      "Owners",
      "Technicians",
      "Clients"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      4
    ]
  },
  "AutomationNotificationChannel": {
    "default": 1,
    "type": "integer",
    "x-enumNames": [
      "None",
      "InApp",
      "Email"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "AutomationNotificationSeverity": {
    "default": 1,
    "type": "integer",
    "x-enumNames": [
      "Information",
      "Warning",
      "Critical",
      "Recovery"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "AutomationOfflinePolicy": {
    "type": "integer",
    "x-enumNames": [
      "Skip",
      "WaitUntilOnline",
      "Fail"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "AutomationOutcomeMatch": {
    "type": "integer",
    "x-enumNames": [
      "Failure",
      "Success",
      "Always",
      "ResultMatches"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "AutomationOutcomeNotification": {
    "properties": {
      "expectedValue": {
        "type": [
          "null",
          "string"
        ]
      },
      "match": {
        "$ref": "#/components/schemas/AutomationOutcomeMatch"
      },
      "notification": {
        "$ref": "#/components/schemas/AutomationNotificationAction"
      },
      "resultProperty": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "match",
      "notification"
    ],
    "type": "object"
  },
  "AutomationOverlapPolicy": {
    "type": "integer",
    "x-enumNames": [
      "Skip",
      "QueueOne",
      "Allow"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "AutomationPackageEntry": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "manifest": {
        "$ref": "#/components/schemas/AutomationPackageManifest"
      },
      "name": {
        "type": "string"
      },
      "revision": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "scriptId": {
        "format": "uuid",
        "type": "string"
      },
      "versionId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "scriptId",
      "versionId",
      "companyId",
      "name",
      "revision",
      "manifest"
    ],
    "type": "object"
  },
  "AutomationPackageManifest": {
    "properties": {
      "arguments": {
        "default": "",
        "type": "string"
      },
      "downloadUrl": {
        "type": "string"
      },
      "installerKind": {
        "default": "Msi",
        "type": "string"
      },
      "licenseApproved": {
        "default": false,
        "type": "boolean"
      },
      "productName": {
        "type": "string"
      },
      "rebootSuppressionConfirmed": {
        "default": false,
        "type": "boolean"
      },
      "redirectHosts": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "releasedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "sha256": {
        "type": "string"
      },
      "signerThumbprint": {
        "type": [
          "null",
          "string"
        ]
      },
      "upgradeFromVersions": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "version": {
        "type": "string"
      }
    },
    "required": [
      "productName",
      "version",
      "downloadUrl",
      "sha256"
    ],
    "type": "object"
  },
  "AutomationPackageSave": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "expectedVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "manifest": {
        "$ref": "#/components/schemas/AutomationPackageManifest"
      },
      "name": {
        "type": "string"
      },
      "scriptId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "scriptId",
      "expectedVersionId",
      "companyId",
      "name",
      "manifest"
    ],
    "type": "object"
  },
  "AutomationPatchApprovalState": {
    "type": "integer",
    "x-enumNames": [
      "Unapproved",
      "Approved",
      "Denied"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "AutomationPayloadKind": {
    "type": "integer",
    "x-enumNames": [
      "FactContext",
      "ExecutionRequest",
      "StandardOutput",
      "StandardError",
      "StructuredOutput"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "AutomationReportScheduleInput": {
    "properties": {
      "audience": {
        "$ref": "#/components/schemas/AutomationNotificationAudience"
      },
      "capabilityId": {
        "type": "string"
      },
      "channels": {
        "$ref": "#/components/schemas/AutomationNotificationChannel"
      },
      "clearDeviceSelection": {
        "default": false,
        "type": "boolean"
      },
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "deviceIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "emailRecipients": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "enabled": {
        "type": "boolean"
      },
      "expectedRevision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "periodDays": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "schedule": {
        "$ref": "#/components/schemas/AutomationScheduleSpec"
      },
      "siteId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "capabilityId",
      "name",
      "companyId",
      "periodDays",
      "schedule",
      "audience",
      "channels",
      "enabled"
    ],
    "type": "object"
  },
  "AutomationReportScheduleView": {
    "properties": {
      "audience": {
        "$ref": "#/components/schemas/AutomationNotificationAudience"
      },
      "capabilityId": {
        "type": "string"
      },
      "channels": {
        "$ref": "#/components/schemas/AutomationNotificationChannel"
      },
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "deviceIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "emailRecipients": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "enabled": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "lastDeliveredAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "nextDueAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "periodDays": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "revision": {
        "default": 0,
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "schedule": {
        "$ref": "#/components/schemas/AutomationScheduleSpec"
      },
      "siteId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "templateName": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "capabilityId",
      "templateName",
      "name",
      "companyId",
      "periodDays",
      "schedule",
      "audience",
      "channels",
      "enabled",
      "nextDueAtUtc",
      "lastDeliveredAtUtc"
    ],
    "type": "object"
  },
  "AutomationResultReportingMode": {
    "type": "integer",
    "x-enumNames": [
      "Detailed",
      "FailuresAndRollups"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "AutomationRmmReportView": {
    "properties": {
      "acknowledgedAlertCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "antivirusDisabledCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "bitLockerDisabledCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "criticalAlertCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "deviceCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "enabledMonitorCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "failingAssignmentCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "firewallDisabledCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "generatedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "healthyAssignmentCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "missingCriticalPatchDeviceCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "onlineDeviceCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "openAlertCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "pausedMonitorCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "pendingRebootCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "staleFactDeviceCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "unknownAssignmentCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "generatedAtUtc",
      "deviceCount",
      "onlineDeviceCount",
      "enabledMonitorCount",
      "pausedMonitorCount",
      "healthyAssignmentCount",
      "failingAssignmentCount",
      "unknownAssignmentCount",
      "openAlertCount",
      "acknowledgedAlertCount",
      "criticalAlertCount",
      "antivirusDisabledCount",
      "firewallDisabledCount",
      "bitLockerDisabledCount",
      "pendingRebootCount",
      "missingCriticalPatchDeviceCount",
      "staleFactDeviceCount"
    ],
    "type": "object"
  },
  "AutomationRolloutSafety": {
    "properties": {
      "dependencyDeviceIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "dependencyHealthyCondition": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationConditionNode"
          }
        ]
      },
      "healthyCondition": {
        "$ref": "#/components/schemas/AutomationConditionNode"
      },
      "healthyForSeconds": {
        "default": 60,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "maximumEvidenceAgeSeconds": {
        "default": 300,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "minimumHealthyPeers": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "oneDeviceAtATime": {
        "type": "boolean"
      },
      "verificationTimeoutMinutes": {
        "default": 15,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "oneDeviceAtATime",
      "healthyCondition"
    ],
    "type": "object"
  },
  "AutomationRunDetail": {
    "properties": {
      "completedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "createdAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "hasMore": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "offset": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "state": {
        "$ref": "#/components/schemas/AutomationRunState"
      },
      "targetCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "targets": {
        "items": {
          "$ref": "#/components/schemas/AutomationTargetView"
        },
        "type": "array"
      },
      "terminalSummary": {
        "type": [
          "null",
          "string"
        ]
      },
      "terminalTargetCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "triggerSnapshotJson": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "state",
      "triggerSnapshotJson",
      "targetCount",
      "terminalTargetCount",
      "createdAtUtc",
      "completedAtUtc",
      "terminalSummary",
      "targets",
      "offset",
      "hasMore"
    ],
    "type": "object"
  },
  "AutomationRunPayloadView": {
    "properties": {
      "content": {
        "type": "string"
      },
      "createdAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "kind": {
        "$ref": "#/components/schemas/AutomationPayloadKind"
      }
    },
    "required": [
      "kind",
      "content",
      "createdAtUtc"
    ],
    "type": "object"
  },
  "AutomationRunState": {
    "type": "integer",
    "x-enumNames": [
      "Materializing",
      "Queued",
      "Running",
      "Succeeded",
      "PartiallySucceeded",
      "Failed",
      "Skipped",
      "Cancelled",
      "Indeterminate"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8
    ]
  },
  "AutomationScheduleKind": {
    "type": "integer",
    "x-enumNames": [
      "Once",
      "Interval",
      "Daily",
      "Weekdays",
      "Weekly",
      "Monthly",
      "Cron"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6
    ]
  },
  "AutomationScheduleSpec": {
    "properties": {
      "cron": {
        "type": [
          "null",
          "string"
        ]
      },
      "dayOfMonth": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "dayOfWeek": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/DayOfWeek"
          }
        ]
      },
      "intervalMinutes": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "kind": {
        "$ref": "#/components/schemas/AutomationScheduleKind"
      },
      "localDateTime": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "localTime": {
        "format": "time",
        "type": [
          "null",
          "string"
        ]
      },
      "schemaVersion": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "timeZoneId": {
        "type": "string"
      }
    },
    "required": [
      "kind",
      "timeZoneId"
    ],
    "type": "object"
  },
  "AutomationScopeKind": {
    "type": "integer",
    "x-enumNames": [
      "Organization",
      "Company",
      "Site",
      "Device"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "AutomationScriptPlatform": {
    "type": "integer",
    "x-enumNames": [
      "WindowsPowerShell51",
      "LinuxBash",
      "MacOsZsh",
      "WindowsCmd",
      "WindowsPowerShell7",
      "LinuxPowerShell7",
      "MacOsPowerShell7",
      "WindowsPython3",
      "LinuxPython3",
      "MacOsPython3"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9
    ]
  },
  "AutomationScriptSource": {
    "default": 0,
    "type": "integer",
    "x-enumNames": [
      "Human",
      "ScriptAi",
      "Inline",
      "RmmAssistant"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "AutomationScriptVersionInput": {
    "properties": {
      "changeReason": {
        "default": "",
        "type": "string"
      },
      "content": {
        "type": "string"
      },
      "outputSchemaJson": {
        "default": "{}",
        "type": "string"
      },
      "parameterSchemaJson": {
        "default": "{}",
        "type": "string"
      },
      "platform": {
        "$ref": "#/components/schemas/AutomationScriptPlatform"
      },
      "scriptAiRunId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "source": {
        "$ref": "#/components/schemas/AutomationScriptSource"
      },
      "successExitCodes": {
        "items": {
          "format": "int32",
          "pattern": "^-?(?:0|[1-9]\\d*)$",
          "type": [
            "integer",
            "string"
          ]
        },
        "type": [
          "null",
          "array"
        ]
      },
      "suggestedOutcomeNotificationJson": {
        "type": [
          "null",
          "string"
        ]
      },
      "timeoutSeconds": {
        "default": 600,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "platform",
      "content"
    ],
    "type": "object"
  },
  "AutomationSimpleActionInput": {
    "properties": {
      "audience": {
        "$ref": "#/components/schemas/AutomationNotificationAudience"
      },
      "backupFailure": {
        "default": false,
        "type": "boolean"
      },
      "channels": {
        "$ref": "#/components/schemas/AutomationNotificationChannel"
      },
      "checkBody": {
        "type": [
          "null",
          "string"
        ]
      },
      "content": {
        "default": "",
        "type": "string"
      },
      "emailRecipients": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "force": {
        "default": false,
        "type": "boolean"
      },
      "includeComponentStore": {
        "default": false,
        "type": "boolean"
      },
      "kind": {
        "$ref": "#/components/schemas/AutomationSimpleActionKind"
      },
      "linuxMaintenanceAction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/LinuxMaintenanceAction"
          }
        ]
      },
      "message": {
        "default": "",
        "type": "string"
      },
      "name": {
        "default": "",
        "type": "string"
      },
      "outcomeNotification": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationOutcomeNotification"
          }
        ]
      },
      "outputSchemaJson": {
        "default": "{}",
        "type": "string"
      },
      "platform": {
        "$ref": "#/components/schemas/AutomationScriptPlatform"
      },
      "recipeId": {
        "type": [
          "null",
          "string"
        ]
      },
      "recipeParameters": {
        "additionalProperties": {
          "type": "string"
        },
        "type": [
          "null",
          "object"
        ]
      },
      "resolveSoftwareAtRun": {
        "default": false,
        "type": "boolean"
      },
      "scriptVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "serviceAction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/ServiceAction"
          }
        ]
      },
      "serviceName": {
        "type": [
          "null",
          "string"
        ]
      },
      "severity": {
        "$ref": "#/components/schemas/AutomationNotificationSeverity"
      },
      "software": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/SoftwareUninstallRequestDto"
          }
        ]
      },
      "subject": {
        "default": "",
        "type": "string"
      },
      "timeoutSeconds": {
        "default": 600,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "userName": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "type": "object"
  },
  "AutomationSimpleActionKind": {
    "default": 0,
    "type": "integer",
    "x-enumNames": [
      "Script",
      "Notification",
      "RefreshFacts",
      "ControlService",
      "RestartDevice",
      "WindowsDiskCleanup",
      "LinuxMaintenance",
      "WakeDevice",
      "SendUserMessage",
      "UninstallSoftware"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9
    ]
  },
  "AutomationSimpleMonitorDraft": {
    "properties": {
      "checkIntervalMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "condition": {
        "$ref": "#/components/schemas/AutomationConditionNode"
      },
      "description": {
        "type": "string"
      },
      "failureActions": {
        "items": {
          "$ref": "#/components/schemas/AutomationSimpleActionInput"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "failureThreshold": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "recoveryActions": {
        "items": {
          "$ref": "#/components/schemas/AutomationSimpleActionInput"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "recoveryThreshold": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "scope": {
        "$ref": "#/components/schemas/AutomationHierarchyScope"
      },
      "severity": {
        "$ref": "#/components/schemas/AutomationNotificationSeverity"
      },
      "smartGroupIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "versionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "name",
      "description",
      "scope",
      "condition",
      "checkIntervalMinutes",
      "failureThreshold",
      "recoveryThreshold",
      "severity"
    ],
    "type": "object"
  },
  "AutomationSimpleMonitorInput": {
    "properties": {
      "checkIntervalMinutes": {
        "default": 5,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "condition": {
        "$ref": "#/components/schemas/AutomationConditionNode"
      },
      "description": {
        "type": "string"
      },
      "enable": {
        "default": false,
        "type": "boolean"
      },
      "expectedVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "failureActions": {
        "items": {
          "$ref": "#/components/schemas/AutomationSimpleActionInput"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "failureThreshold": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "recoveryActions": {
        "items": {
          "$ref": "#/components/schemas/AutomationSimpleActionInput"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "recoveryThreshold": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "scope": {
        "$ref": "#/components/schemas/AutomationHierarchyScope"
      },
      "severity": {
        "$ref": "#/components/schemas/AutomationNotificationSeverity"
      },
      "smartGroupIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      }
    },
    "required": [
      "name",
      "description",
      "scope",
      "condition"
    ],
    "type": "object"
  },
  "AutomationSimpleScopePreview": {
    "properties": {
      "eligibleDevices": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "eligibleSample": {
        "items": {
          "$ref": "#/components/schemas/AutomationTargetPreviewItem"
        },
        "type": "array"
      },
      "excludedDevices": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "excludedSample": {
        "items": {
          "$ref": "#/components/schemas/AutomationExcludedDevice"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "totalDevices": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "totalDevices",
      "eligibleDevices",
      "excludedDevices",
      "eligibleSample"
    ],
    "type": "object"
  },
  "AutomationSimpleTriggerInput": {
    "properties": {
      "cron": {
        "type": [
          "null",
          "string"
        ]
      },
      "dayOfMonth": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "dayOfWeek": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/DayOfWeek"
          }
        ]
      },
      "detailEquals": {
        "type": [
          "null",
          "string"
        ]
      },
      "factPath": {
        "type": [
          "null",
          "string"
        ]
      },
      "intervalMinutes": {
        "default": 60,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "kind": {
        "$ref": "#/components/schemas/AutomationSimpleTriggerKind"
      },
      "localDateTime": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "localTime": {
        "format": "time",
        "type": [
          "null",
          "string"
        ]
      },
      "timeZoneId": {
        "default": "Etc/UTC",
        "type": "string"
      }
    },
    "required": [
      "kind"
    ],
    "type": "object"
  },
  "AutomationSimpleTriggerKind": {
    "type": "integer",
    "x-enumNames": [
      "Once",
      "EveryMinutes",
      "Daily",
      "Weekdays",
      "Weekly",
      "Monthly",
      "DeviceOnline",
      "DeviceOffline",
      "DeviceBooted",
      "FactsChanged",
      "UserLogon",
      "UserLogoff",
      "SessionLocked",
      "SessionUnlocked",
      "RdpConnected",
      "RdpDisconnected",
      "MachineShuttingDown",
      "MachinePoweredOn",
      "AgentServiceStarted",
      "AgentServiceStopped",
      "MachineSuspending",
      "MachineResumed",
      "Cron"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12,
      13,
      14,
      15,
      16,
      17,
      18,
      19,
      20,
      21,
      22
    ]
  },
  "AutomationSmartGroupListItem": {
    "properties": {
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "version": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "name",
      "version",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "AutomationSoftwareMatch": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceName": {
        "type": "string"
      },
      "product": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/SoftwareUninstallRequestDto"
          }
        ]
      },
      "state": {
        "type": "string"
      }
    },
    "required": [
      "deviceId",
      "deviceName",
      "state",
      "product"
    ],
    "type": "object"
  },
  "AutomationSoftwarePreview": {
    "properties": {
      "absent": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "blocked": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "matched": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "offset": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "rows": {
        "items": {
          "$ref": "#/components/schemas/AutomationSoftwareMatch"
        },
        "type": "array"
      },
      "totalDevices": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "totalDevices",
      "matched",
      "absent",
      "blocked",
      "rows",
      "offset",
      "observedAtUtc"
    ],
    "type": "object"
  },
  "AutomationState": {
    "type": "integer",
    "x-enumNames": [
      "Draft",
      "Enabled",
      "Paused",
      "Archived"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "AutomationStepFailurePolicy": {
    "default": 0,
    "type": "integer",
    "x-enumNames": [
      "Stop",
      "Continue",
      "Retry"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "AutomationStepState": {
    "type": "integer",
    "x-enumNames": [
      "Pending",
      "Waiting",
      "Dispatching",
      "Running",
      "Succeeded",
      "Failed",
      "Skipped",
      "TimedOut",
      "CancelRequested",
      "Cancelled",
      "Indeterminate"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10
    ]
  },
  "AutomationStepView": {
    "properties": {
      "attempts": {
        "items": {
          "$ref": "#/components/schemas/AutomationAttemptView"
        },
        "type": "array"
      },
      "conditionResultJson": {
        "type": [
          "null",
          "string"
        ]
      },
      "error": {
        "type": [
          "null",
          "string"
        ]
      },
      "errorCode": {
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "nodeId": {
        "type": "string"
      },
      "nodeType": {
        "$ref": "#/components/schemas/AutomationWorkflowNodeType"
      },
      "outputs": {
        "items": {
          "$ref": "#/components/schemas/AutomationRunPayloadView"
        },
        "type": "array"
      },
      "scriptVersion": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "scriptVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "state": {
        "$ref": "#/components/schemas/AutomationStepState"
      },
      "structuredOutputJson": {
        "type": [
          "null",
          "string"
        ]
      },
      "timeoutSeconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "nodeId",
      "nodeType",
      "state",
      "errorCode",
      "error",
      "attempts",
      "outputs"
    ],
    "type": "object"
  },
  "AutomationTagListItem": {
    "properties": {
      "colour": {
        "type": [
          "null",
          "string"
        ]
      },
      "deviceCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "colour",
      "deviceCount"
    ],
    "type": "object"
  },
  "AutomationTargetPreviewItem": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "companyName": {
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceName": {
        "type": "string"
      },
      "factsUpdatedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "platform": {
        "type": "string"
      }
    },
    "required": [
      "deviceId",
      "deviceName",
      "companyId",
      "companyName",
      "platform",
      "factsUpdatedAtUtc"
    ],
    "type": "object"
  },
  "AutomationTargetRestriction": {
    "properties": {
      "deviceIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "operatingSystem": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/OsKind"
          }
        ]
      },
      "tagId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "type": "object"
  },
  "AutomationTargetSpec": {
    "properties": {
      "deviceIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "intersectSmartGroupsWithScope": {
        "default": false,
        "type": "boolean"
      },
      "operatingSystems": {
        "items": {
          "$ref": "#/components/schemas/OsKind"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "schemaVersion": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "scope": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationHierarchyScope"
          }
        ]
      },
      "smartGroupIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "tagIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      }
    },
    "type": "object"
  },
  "AutomationTargetState": {
    "type": "integer",
    "x-enumNames": [
      "Queued",
      "WaitingForDevice",
      "Running",
      "Succeeded",
      "Failed",
      "Skipped",
      "CancelRequested",
      "Cancelled",
      "Indeterminate"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8
    ]
  },
  "AutomationTargetView": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceName": {
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "state": {
        "$ref": "#/components/schemas/AutomationTargetState"
      },
      "steps": {
        "items": {
          "$ref": "#/components/schemas/AutomationStepView"
        },
        "type": "array"
      },
      "terminalSummary": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "deviceId",
      "deviceName",
      "state",
      "terminalSummary",
      "steps"
    ],
    "type": "object"
  },
  "AutomationTemplateReadiness": {
    "type": "integer",
    "x-enumNames": [
      "ReadyNow",
      "CollectorRequired",
      "IntegrationRequired",
      "Future"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "AutomationTriggerInput": {
    "properties": {
      "configurationJson": {
        "type": "string"
      },
      "cooldownSeconds": {
        "default": 300,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "debounceSeconds": {
        "default": 60,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "dependencyPathsJson": {
        "default": "[]",
        "type": "string"
      },
      "enabled": {
        "default": true,
        "type": "boolean"
      },
      "timeZoneId": {
        "default": "Etc/UTC",
        "type": "string"
      },
      "type": {
        "$ref": "#/components/schemas/AutomationTriggerType"
      }
    },
    "required": [
      "type",
      "configurationJson"
    ],
    "type": "object"
  },
  "AutomationTriggerType": {
    "type": "integer",
    "x-enumNames": [
      "Manual",
      "Once",
      "Interval",
      "Calendar",
      "Cron",
      "DeviceEvent",
      "FactEvent",
      "Api"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7
    ]
  },
  "AutomationTruthValue": {
    "type": "integer",
    "x-enumNames": [
      "False",
      "True",
      "Unknown"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "AutomationUnknownPolicy": {
    "type": "integer",
    "x-enumNames": [
      "Skip",
      "Fail"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "AutomationVersionInput": {
    "properties": {
      "canaryPolicyJson": {
        "default": "{}",
        "type": "string"
      },
      "deviceConnectivityPolicy": {
        "$ref": "#/components/schemas/AutomationDeviceConnectivityPolicy"
      },
      "executionLocation": {
        "$ref": "#/components/schemas/AutomationExecutionLocation"
      },
      "maximumOfflineLeaseMinutes": {
        "default": 60,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "missedRunPolicy": {
        "$ref": "#/components/schemas/AutomationMissedRunPolicy"
      },
      "offlineDeadlineMinutes": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "offlinePolicy": {
        "$ref": "#/components/schemas/AutomationOfflinePolicy"
      },
      "overlapPolicy": {
        "$ref": "#/components/schemas/AutomationOverlapPolicy"
      },
      "precondition": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationConditionNode"
          }
        ]
      },
      "resultReportingMode": {
        "$ref": "#/components/schemas/AutomationResultReportingMode"
      },
      "spreadWindowSeconds": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "target": {
        "$ref": "#/components/schemas/AutomationTargetSpec"
      },
      "triggers": {
        "items": {
          "$ref": "#/components/schemas/AutomationTriggerInput"
        },
        "type": "array"
      },
      "unknownPolicy": {
        "$ref": "#/components/schemas/AutomationUnknownPolicy"
      },
      "workflow": {
        "$ref": "#/components/schemas/AutomationWorkflowDefinition"
      }
    },
    "required": [
      "target",
      "precondition",
      "workflow",
      "triggers"
    ],
    "type": "object"
  },
  "AutomationWorkflowDefinition": {
    "properties": {
      "entryNodeId": {
        "type": "string"
      },
      "nodes": {
        "items": {
          "$ref": "#/components/schemas/AutomationWorkflowNode"
        },
        "type": "array"
      },
      "omitInventory": {
        "default": false,
        "type": "boolean"
      },
      "safety": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationRolloutSafety"
          }
        ]
      },
      "schemaVersion": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "entryNodeId",
      "nodes"
    ],
    "type": "object"
  },
  "AutomationWorkflowNode": {
    "properties": {
      "condition": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationConditionNode"
          }
        ]
      },
      "delaySeconds": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "deviceAction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationDeviceAction"
          }
        ]
      },
      "failurePolicy": {
        "$ref": "#/components/schemas/AutomationStepFailurePolicy"
      },
      "falseNodeId": {
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "type": "string"
      },
      "maximumAttempts": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "nextNodeId": {
        "type": [
          "null",
          "string"
        ]
      },
      "notification": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationNotificationAction"
          }
        ]
      },
      "outcomeNotification": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationOutcomeNotification"
          }
        ]
      },
      "retryDelaySeconds": {
        "default": 30,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "scriptVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "trueNodeId": {
        "type": [
          "null",
          "string"
        ]
      },
      "type": {
        "$ref": "#/components/schemas/AutomationWorkflowNodeType"
      }
    },
    "required": [
      "id",
      "type"
    ],
    "type": "object"
  },
  "AutomationWorkflowNodeType": {
    "type": "integer",
    "x-enumNames": [
      "Script",
      "Condition",
      "Delay",
      "Stop",
      "Notification",
      "DeviceAction"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5
    ]
  },
  "BaselineUsbAccess": {
    "default": 2,
    "type": "integer",
    "x-enumNames": [
      "Allow",
      "ReadOnly",
      "Block"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "BetaConnectionControlsDto": {
    "properties": {
      "agentRegion": {
        "type": [
          "null",
          "string"
        ]
      },
      "canMove": {
        "type": "boolean"
      },
      "moveToRegion": {
        "type": [
          "null",
          "string"
        ]
      },
      "unavailableReason": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "agentRegion",
      "moveToRegion",
      "canMove"
    ],
    "type": "object"
  },
  "BuiltInFieldDefinition": {
    "properties": {
      "key": {
        "type": "string"
      },
      "label": {
        "type": "string"
      },
      "scope": {
        "type": "string"
      },
      "type": {
        "type": "string"
      },
      "writable": {
        "type": "boolean"
      }
    },
    "required": [
      "scope",
      "key",
      "label",
      "writable",
      "type"
    ],
    "type": "object"
  },
  "CapabilitiesResponse": {
    "properties": {
      "apiVersion": {
        "type": "string"
      },
      "authenticationRequestsPerMinutePerIp": {
        "default": 10,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "capabilities": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "capabilityVersion": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "companyScoped": {
        "type": "boolean"
      },
      "compression": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "eventRetentionDays": {
        "default": 7,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "grants": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "maximumBatchSize": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "maximumFleetSoftwarePageSize": {
        "default": 10,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "maximumPageSize": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "maximumSyncDevices": {
        "default": 10000,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "permission": {
        "type": "string"
      },
      "requestsPerRollingMinute": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "supported": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "syncRetentionDays": {
        "default": 7,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "unsupported": {
        "items": {
          "type": "string"
        },
        "type": "array"
      }
    },
    "required": [
      "apiVersion",
      "permission",
      "maximumBatchSize",
      "maximumPageSize",
      "requestsPerRollingMinute",
      "compression",
      "companyScoped",
      "unsupported"
    ],
    "type": "object"
  },
  "ClientReportArchiveItem": {
    "properties": {
      "generatedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "month": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "month",
      "generatedAtUtc",
      "revision"
    ],
    "type": "object"
  },
  "ClientReportConfiguration": {
    "properties": {
      "alerts": {
        "default": true,
        "type": "boolean"
      },
      "assets": {
        "default": true,
        "type": "boolean"
      },
      "businessName": {
        "type": "string"
      },
      "colour": {
        "type": "string"
      },
      "contact": {
        "type": "string"
      },
      "logo": {
        "type": [
          "null",
          "string"
        ]
      },
      "passwordAudits": {
        "default": true,
        "type": "boolean"
      },
      "patches": {
        "default": true,
        "type": "boolean"
      },
      "timeZoneId": {
        "type": "string"
      },
      "warranty": {
        "default": true,
        "type": "boolean"
      }
    },
    "required": [
      "businessName",
      "contact",
      "colour",
      "timeZoneId"
    ],
    "type": "object"
  },
  "ClientReportEvidence": {
    "properties": {
      "branding": {
        "$ref": "#/components/schemas/ClientReportConfiguration"
      },
      "customer": {
        "type": "string"
      },
      "fromUtc": {
        "format": "date-time",
        "type": "string"
      },
      "generatedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "month": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "sections": {
        "items": {
          "$ref": "#/components/schemas/ClientReportSection"
        },
        "type": "array"
      },
      "toUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "customer",
      "month",
      "fromUtc",
      "toUtc",
      "generatedAtUtc",
      "branding",
      "sections"
    ],
    "type": "object"
  },
  "ClientReportMetric": {
    "properties": {
      "label": {
        "type": "string"
      },
      "value": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "label",
      "value"
    ],
    "type": "object"
  },
  "ClientReportSection": {
    "properties": {
      "evidence": {
        "type": "string"
      },
      "metrics": {
        "items": {
          "$ref": "#/components/schemas/ClientReportMetric"
        },
        "type": "array"
      },
      "title": {
        "type": "string"
      }
    },
    "required": [
      "title",
      "evidence",
      "metrics"
    ],
    "type": "object"
  },
  "ClientReportSettingsView": {
    "properties": {
      "configuration": {
        "$ref": "#/components/schemas/ClientReportConfiguration"
      },
      "enabled": {
        "type": "boolean"
      },
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "configuration",
      "enabled",
      "revision"
    ],
    "type": "object"
  },
  "ClientReportView": {
    "properties": {
      "commentary": {
        "type": "string"
      },
      "evidence": {
        "$ref": "#/components/schemas/ClientReportEvidence"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "revision",
      "evidence",
      "commentary"
    ],
    "type": "object"
  },
  "ClipboardPayloadDto": {
    "properties": {
      "compressedText": {
        "format": "byte",
        "type": [
          "null",
          "string"
        ]
      },
      "compressedTextBase64": {
        "type": [
          "null",
          "string"
        ]
      },
      "imageBase64": {
        "type": [
          "null",
          "string"
        ]
      },
      "imageMimeType": {
        "type": [
          "null",
          "string"
        ]
      },
      "imagePng": {
        "format": "byte",
        "type": [
          "null",
          "string"
        ]
      },
      "isCompressed": {
        "type": "boolean"
      },
      "pasteAfterApply": {
        "default": true,
        "type": "boolean"
      },
      "requestId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "text": {
        "type": [
          "null",
          "string"
        ]
      },
      "typeAsKeystrokes": {
        "default": false,
        "type": "boolean"
      }
    },
    "required": [
      "text",
      "compressedTextBase64",
      "isCompressed"
    ],
    "type": "object"
  },
  "ClipboardResultDto": {
    "properties": {
      "compressedText": {
        "format": "byte",
        "type": [
          "null",
          "string"
        ]
      },
      "compressedTextBase64": {
        "type": [
          "null",
          "string"
        ]
      },
      "error": {
        "type": [
          "null",
          "string"
        ]
      },
      "imageBase64": {
        "type": [
          "null",
          "string"
        ]
      },
      "imageMimeType": {
        "type": [
          "null",
          "string"
        ]
      },
      "imagePng": {
        "format": "byte",
        "type": [
          "null",
          "string"
        ]
      },
      "success": {
        "type": "boolean"
      },
      "text": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "success",
      "text"
    ],
    "type": "object"
  },
  "CompanyDto": {
    "properties": {
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "isUnassigned": {
        "default": false,
        "type": "boolean"
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "name"
    ],
    "type": "object"
  },
  "CompanyResponse": {
    "properties": {
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "name"
    ],
    "type": "object"
  },
  "ConfigurationBaselineControl": {
    "type": "integer",
    "x-enumNames": [
      "Firewall",
      "BitLocker",
      "LocalAdministrators",
      "ScreenLock",
      "UsbStorage"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "ConfigurationBaselineInput": {
    "properties": {
      "description": {
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "policy": {
        "$ref": "#/components/schemas/ConfigurationBaselineSpec"
      },
      "precondition": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationConditionNode"
          }
        ]
      },
      "replacePrecondition": {
        "default": false,
        "type": "boolean"
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "schedule": {
        "$ref": "#/components/schemas/AutomationSimpleTriggerInput"
      },
      "scope": {
        "$ref": "#/components/schemas/AutomationHierarchyScope"
      },
      "smartGroupIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "tagIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      }
    },
    "required": [
      "name",
      "description",
      "scope",
      "schedule",
      "policy"
    ],
    "type": "object"
  },
  "ConfigurationBaselineListItem": {
    "properties": {
      "description": {
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "policy": {
        "$ref": "#/components/schemas/ConfigurationBaselineSpec"
      },
      "precondition": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationConditionNode"
          }
        ]
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "schedule": {
        "$ref": "#/components/schemas/AutomationSimpleTriggerInput"
      },
      "scope": {
        "$ref": "#/components/schemas/AutomationHierarchyScope"
      },
      "smartGroupIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "state": {
        "$ref": "#/components/schemas/AutomationState"
      },
      "tagIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "description",
      "state",
      "scope",
      "schedule",
      "policy",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "ConfigurationBaselineMode": {
    "default": 0,
    "type": "integer",
    "x-enumNames": [
      "Audit",
      "Enforce"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "ConfigurationBaselineSpec": {
    "properties": {
      "acknowledgeFirewallOff": {
        "default": false,
        "type": "boolean"
      },
      "control": {
        "$ref": "#/components/schemas/ConfigurationBaselineControl"
      },
      "firewallEnabled": {
        "default": true,
        "type": "boolean"
      },
      "firewallProfile": {
        "default": "All",
        "type": "string"
      },
      "mode": {
        "$ref": "#/components/schemas/ConfigurationBaselineMode"
      },
      "recoveryAccessConfirmed": {
        "default": false,
        "type": "boolean"
      },
      "recoveryAdministratorSid": {
        "type": [
          "null",
          "string"
        ]
      },
      "removeLocalUserSid": {
        "type": [
          "null",
          "string"
        ]
      },
      "schemaVersion": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "screenLockSeconds": {
        "default": 900,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "usbAccess": {
        "$ref": "#/components/schemas/BaselineUsbAccess"
      },
      "volume": {
        "default": "C:",
        "type": "string"
      }
    },
    "required": [
      "control"
    ],
    "type": "object"
  },
  "ConsoleOutputSliceDto": {
    "properties": {
      "end": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "reset": {
        "type": "boolean"
      },
      "shell": {
        "type": [
          "null",
          "string"
        ]
      },
      "start": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "tabId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "text": {
        "type": "string"
      },
      "truncated": {
        "type": "boolean"
      }
    },
    "required": [
      "shell",
      "tabId",
      "text",
      "start",
      "end",
      "truncated",
      "reset"
    ],
    "type": "object"
  },
  "ConsoleOutputSnapshotDto": {
    "properties": {
      "nextCursor": {
        "type": "string"
      },
      "output": {
        "items": {
          "$ref": "#/components/schemas/ConsoleOutputSliceDto"
        },
        "type": "array"
      },
      "snapshot": {
        "type": "boolean"
      },
      "truncated": {
        "type": "boolean"
      }
    },
    "required": [
      "output",
      "nextCursor",
      "truncated",
      "snapshot"
    ],
    "type": "object"
  },
  "ConsoleTabDto": {
    "properties": {
      "shell": {
        "type": "string"
      },
      "tabId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "tabId",
      "shell"
    ],
    "type": "object"
  },
  "CreateMaintenanceRequest": {
    "properties": {
      "endsAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "reason": {
        "type": "string"
      },
      "scope": {
        "type": "string"
      },
      "scopeId": {
        "format": "uuid",
        "type": "string"
      },
      "startsAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "scope",
      "scopeId",
      "startsAtUtc",
      "endsAtUtc",
      "reason"
    ],
    "type": "object"
  },
  "CustomFieldBatchRequest": {
    "properties": {
      "targets": {
        "items": {
          "$ref": "#/components/schemas/CustomFieldTarget"
        },
        "type": "array"
      }
    },
    "required": [
      "targets"
    ],
    "type": "object"
  },
  "CustomFieldResponse": {
    "properties": {
      "id": {
        "type": "string"
      },
      "key": {
        "type": "string"
      },
      "label": {
        "type": "string"
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "value": {
        "type": [
          "null",
          "string"
        ]
      },
      "version": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "writable": {
        "type": "boolean"
      }
    },
    "required": [
      "id",
      "key",
      "label",
      "writable",
      "value",
      "version",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "CustomFieldTarget": {
    "properties": {
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "scope": {
        "type": "string"
      }
    },
    "required": [
      "scope",
      "id"
    ],
    "type": "object"
  },
  "DayOfWeek": {
    "type": "integer",
    "x-enumNames": [
      "Sunday",
      "Monday",
      "Tuesday",
      "Wednesday",
      "Thursday",
      "Friday",
      "Saturday"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6
    ]
  },
  "DeliveryResponse": {
    "properties": {
      "attempts": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "deliveredAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "eventId": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "nextAttemptAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "statusCode": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "eventId",
      "attempts",
      "statusCode",
      "nextAttemptAtUtc",
      "deliveredAtUtc"
    ],
    "type": "object"
  },
  "DeviceAuditRowDto": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "companyName": {
        "type": "string"
      },
      "detail": {
        "type": [
          "null",
          "string"
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceName": {
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "kind": {
        "$ref": "#/components/schemas/AuditRowKind"
      },
      "occurredAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "receivedAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "id",
      "deviceId",
      "deviceName",
      "companyId",
      "companyName",
      "kind",
      "detail",
      "occurredAtUtc",
      "receivedAtUtc"
    ],
    "type": "object"
  },
  "DeviceAuditRowsPageDto": {
    "properties": {
      "rows": {
        "items": {
          "$ref": "#/components/schemas/DeviceAuditRowDto"
        },
        "type": "array"
      },
      "totalCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "rows",
      "totalCount"
    ],
    "type": "object"
  },
  "DeviceJobStatus": {
    "type": "integer",
    "x-enumNames": [
      "Pending",
      "Running",
      "Completed",
      "Failed",
      "Cancelled"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "DevicePatchResult": {
    "properties": {
      "installed": {
        "type": "boolean"
      },
      "outcome": {
        "type": "string"
      },
      "title": {
        "type": "string"
      }
    },
    "required": [
      "title",
      "outcome",
      "installed"
    ],
    "type": "object"
  },
  "DevicePatchRun": {
    "properties": {
      "completedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "patches": {
        "items": {
          "$ref": "#/components/schemas/DevicePatchResult"
        },
        "type": "array"
      },
      "policyName": {
        "type": "string"
      },
      "source": {
        "type": "string"
      },
      "startedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "state": {
        "type": "string"
      },
      "summary": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "policyName",
      "source",
      "state",
      "startedAtUtc",
      "completedAtUtc",
      "summary",
      "patches"
    ],
    "type": "object"
  },
  "DevicePatchStatusView": {
    "properties": {
      "approvalUnavailableReason": {
        "type": [
          "null",
          "string"
        ]
      },
      "approvals": {
        "additionalProperties": {
          "$ref": "#/components/schemas/PatchPolicyDecision"
        },
        "type": [
          "null",
          "object"
        ]
      },
      "canInstall": {
        "type": "boolean"
      },
      "companyName": {
        "type": "string"
      },
      "compliance": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/PatchComplianceFactDto"
          }
        ]
      },
      "deviceName": {
        "type": "string"
      },
      "hasMore": {
        "type": "boolean"
      },
      "history": {
        "items": {
          "$ref": "#/components/schemas/DevicePatchRun"
        },
        "type": "array"
      },
      "offset": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "policyStatus": {
        "type": [
          "null",
          "string"
        ]
      },
      "restartRequired": {
        "type": "boolean"
      },
      "thirdPartyInstallHistory": {
        "items": {
          "$ref": "#/components/schemas/ThirdPartyInstallHistoryItem"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "thirdPartyPatches": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/ThirdPartyPatchDiscoverySnapshot"
          }
        ]
      }
    },
    "required": [
      "deviceName",
      "companyName",
      "compliance",
      "restartRequired",
      "canInstall",
      "history",
      "offset",
      "hasMore"
    ],
    "type": "object"
  },
  "DevicePerformanceMetricRollupDto": {
    "properties": {
      "average": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "last": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "maximum": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "minimum": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "sampleCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "sampleCount",
      "average",
      "minimum",
      "maximum",
      "last"
    ],
    "type": "object"
  },
  "DevicePerformanceRollupDto": {
    "properties": {
      "averageCpuUsagePercent": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "bucketStartUtc": {
        "format": "date-time",
        "type": "string"
      },
      "lastSampleAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "maximumCpuUsagePercent": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "metrics": {
        "additionalProperties": {
          "$ref": "#/components/schemas/DevicePerformanceMetricRollupDto"
        },
        "type": [
          "null",
          "object"
        ]
      },
      "minimumDiskFreePercent": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "sampleCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "bucketStartUtc",
      "sampleCount",
      "averageCpuUsagePercent",
      "maximumCpuUsagePercent"
    ],
    "type": "object"
  },
  "DeviceResponse": {
    "properties": {
      "agentVersion": {
        "type": [
          "null",
          "string"
        ]
      },
      "antivirusDefinitionsUpToDate": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "antivirusDefinitionsUpdatedAt": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "antivirusEnabled": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "antivirusProduct": {
        "type": [
          "null",
          "string"
        ]
      },
      "bootTimeUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceRole": {
        "type": [
          "null",
          "string"
        ]
      },
      "factsUpdatedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "friendlyName": {
        "type": [
          "null",
          "string"
        ]
      },
      "healthAlertCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "lastSeenAt": {
        "format": "date-time",
        "type": "string"
      },
      "loggedOnUser": {
        "type": [
          "null",
          "string"
        ]
      },
      "machineName": {
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "operatingSystemDetail": {
        "type": [
          "null",
          "string"
        ]
      },
      "os": {
        "type": "string"
      },
      "pendingRebootRequired": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "publicIpAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "siteId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "status": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "companyId",
      "siteId",
      "name",
      "friendlyName",
      "machineName",
      "os",
      "status",
      "lastSeenAt",
      "bootTimeUtc",
      "operatingSystemDetail",
      "agentVersion",
      "deviceRole",
      "publicIpAddress",
      "loggedOnUser",
      "antivirusProduct",
      "antivirusEnabled",
      "antivirusDefinitionsUpdatedAt",
      "antivirusDefinitionsUpToDate",
      "healthAlertCount",
      "pendingRebootRequired",
      "factsUpdatedAtUtc"
    ],
    "type": "object"
  },
  "DiscoveredNetworkDeviceDetail": {
    "properties": {
      "device": {
        "$ref": "#/components/schemas/DiscoveredNetworkDeviceListItem"
      },
      "identityCandidates": {
        "items": {
          "$ref": "#/components/schemas/DiscoveredNetworkDeviceListItem"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "isManagedSuppressed": {
        "type": "boolean"
      },
      "observerName": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "device",
      "observerName",
      "isManagedSuppressed"
    ],
    "type": "object"
  },
  "DiscoveredNetworkDeviceListItem": {
    "properties": {
      "archiveReason": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkDiscoveryArchiveReason"
          }
        ]
      },
      "archivedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "deviceType": {
        "$ref": "#/components/schemas/NetworkDeviceTypeClassification"
      },
      "deviceTypeOverride": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkDeviceType"
          }
        ]
      },
      "displayName": {
        "type": "string"
      },
      "evidence": {
        "$ref": "#/components/schemas/NetworkDiscoveryEvidence"
      },
      "firstSeenAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "freshnessStale": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "identityAssignedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "identityCandidateCount": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "identityConflict": {
        "default": false,
        "type": "boolean"
      },
      "identityRetiredAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "ipAddress": {
        "type": "string"
      },
      "lastActiveArpReplyAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lastActiveConfirmationEpochId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "lastConfirmationAttemptAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lastConfirmationOutcome": {
        "$ref": "#/components/schemas/NetworkDiscoveryConfirmationOutcome"
      },
      "lastEvidenceReportedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "lastOsReachableAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lastPassiveCacheReportedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lastPassiveChangedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lastPassiveRemovedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lastSeenAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "macAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "nameSource": {
        "$ref": "#/components/schemas/NetworkDeviceNameSource"
      },
      "realmId": {
        "format": "uuid",
        "type": "string"
      },
      "realmName": {
        "type": "string"
      },
      "state": {
        "$ref": "#/components/schemas/NetworkDiscoveredDeviceState"
      },
      "vendor": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "displayName",
      "ipAddress",
      "macAddress",
      "vendor",
      "realmId",
      "realmName",
      "evidence",
      "firstSeenAtUtc",
      "lastSeenAtUtc",
      "nameSource",
      "state",
      "lastEvidenceReportedAtUtc",
      "lastPassiveCacheReportedAtUtc",
      "lastPassiveChangedAtUtc",
      "lastPassiveRemovedAtUtc",
      "lastActiveArpReplyAtUtc",
      "lastOsReachableAtUtc",
      "lastConfirmationAttemptAtUtc",
      "lastConfirmationOutcome",
      "freshnessStale",
      "archivedAtUtc",
      "archiveReason"
    ],
    "type": "object"
  },
  "DiskUsageVolumeInfoDto": {
    "properties": {
      "driveType": {
        "type": [
          "null",
          "string"
        ]
      },
      "fileSystem": {
        "type": [
          "null",
          "string"
        ]
      },
      "freeBytes": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "id": {
        "type": "string"
      },
      "isSystem": {
        "default": false,
        "type": "boolean"
      },
      "label": {
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "rootPath": {
        "type": "string"
      },
      "totalBytes": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "name",
      "rootPath",
      "totalBytes",
      "freeBytes"
    ],
    "type": "object"
  },
  "EventLogEntryDto": {
    "properties": {
      "level": {
        "type": "string"
      },
      "message": {
        "type": "string"
      },
      "source": {
        "type": [
          "null",
          "string"
        ]
      },
      "timeCreated": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "timeCreated",
      "level",
      "source",
      "message"
    ],
    "type": "object"
  },
  "EventLogQueryDto": {
    "properties": {
      "channels": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "eventIds": {
        "items": {
          "format": "int32",
          "pattern": "^-?(?:0|[1-9]\\d*)$",
          "type": [
            "integer",
            "string"
          ]
        },
        "type": [
          "null",
          "array"
        ]
      },
      "fromUtc": {
        "format": "date-time",
        "type": "string"
      },
      "levels": {
        "items": {
          "format": "int32",
          "pattern": "^-?(?:0|[1-9]\\d*)$",
          "type": [
            "integer",
            "string"
          ]
        },
        "type": [
          "null",
          "array"
        ]
      },
      "limit": {
        "default": 100,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "provider": {
        "type": [
          "null",
          "string"
        ]
      },
      "toUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "channels",
      "fromUtc",
      "toUtc"
    ],
    "type": "object"
  },
  "EventLogQueryResultDto": {
    "properties": {
      "deniedChannels": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "items": {
        "items": {
          "$ref": "#/components/schemas/LiveEventLogEntryDto"
        },
        "type": "array"
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "scannedRecords": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "truncated": {
        "type": "boolean"
      },
      "unavailableChannels": {
        "items": {
          "type": "string"
        },
        "type": "array"
      }
    },
    "required": [
      "observedAtUtc",
      "items",
      "scannedRecords",
      "truncated",
      "deniedChannels",
      "unavailableChannels"
    ],
    "type": "object"
  },
  "EventPage": {
    "properties": {
      "hasMore": {
        "type": "boolean"
      },
      "items": {
        "items": {
          "$ref": "#/components/schemas/EventResponse"
        },
        "type": "array"
      },
      "next": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next",
      "hasMore"
    ],
    "type": "object"
  },
  "EventResponse": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "id": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "occurredAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "resourceId": {
        "format": "uuid",
        "type": "string"
      },
      "type": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "type",
      "deviceId",
      "resourceId",
      "occurredAtUtc"
    ],
    "type": "object"
  },
  "FieldBatchResponse": {
    "properties": {
      "targets": {
        "items": {
          "$ref": "#/components/schemas/FieldTargetResponse"
        },
        "type": "array"
      }
    },
    "required": [
      "targets"
    ],
    "type": "object"
  },
  "FieldDefinitionRequest": {
    "properties": {
      "key": {
        "type": "string"
      },
      "label": {
        "type": "string"
      },
      "scope": {
        "type": "string"
      },
      "type": {
        "type": "string"
      }
    },
    "required": [
      "scope",
      "key",
      "label",
      "type"
    ],
    "type": "object"
  },
  "FieldDefinitionsResponse": {
    "properties": {
      "builtIn": {
        "items": {
          "$ref": "#/components/schemas/BuiltInFieldDefinition"
        },
        "type": "array"
      },
      "integration": {
        "items": {
          "$ref": "#/components/schemas/IntegrationFieldDefinition"
        },
        "type": "array"
      }
    },
    "required": [
      "builtIn",
      "integration"
    ],
    "type": "object"
  },
  "FieldTargetResponse": {
    "properties": {
      "fields": {
        "items": {
          "$ref": "#/components/schemas/CustomFieldResponse"
        },
        "type": "array"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "scope": {
        "type": "string"
      }
    },
    "required": [
      "scope",
      "id",
      "fields"
    ],
    "type": "object"
  },
  "FieldWriteResponse": {
    "properties": {
      "id": {
        "type": "string"
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "value": {
        "type": [
          "null",
          "string"
        ]
      },
      "version": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "value",
      "version",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "FileBrowserListingDto": {
    "properties": {
      "entries": {
        "items": {
          "$ref": "#/components/schemas/FileEntryDto"
        },
        "type": "array"
      },
      "path": {
        "type": "string"
      }
    },
    "required": [
      "path",
      "entries"
    ],
    "type": "object"
  },
  "FileEntryDto": {
    "properties": {
      "kind": {
        "$ref": "#/components/schemas/FileEntryKind"
      },
      "modifiedAt": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "sizeBytes": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "name",
      "kind",
      "sizeBytes",
      "modifiedAt"
    ],
    "type": "object"
  },
  "FileEntryKind": {
    "type": "integer",
    "x-enumNames": [
      "Drive",
      "Directory",
      "File"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "FleetSoftwareItem": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "items": {
        "items": {
          "$ref": "#/components/schemas/SoftwareResponseItem"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "deviceId",
      "updatedAtUtc",
      "items"
    ],
    "type": "object"
  },
  "GroupDevicesResponse": {
    "properties": {
      "deviceIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": "array"
      },
      "maximumReturned": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "deviceIds",
      "maximumReturned",
      "next"
    ],
    "type": "object"
  },
  "GroupResponse": {
    "properties": {
      "activeVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "archived": {
        "type": "boolean"
      },
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "companyId",
      "activeVersionId",
      "archived",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "GuestPassDto": {
    "properties": {
      "createdAt": {
        "format": "date-time",
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "expiresAt": {
        "format": "date-time",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "lastUsedAt": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "revokedAt": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "deviceId",
      "expiresAt",
      "createdAt",
      "lastUsedAt",
      "revokedAt"
    ],
    "type": "object"
  },
  "HealthResponse": {
    "properties": {
      "apiVersion": {
        "type": "string"
      },
      "status": {
        "type": "string"
      }
    },
    "required": [
      "status",
      "apiVersion"
    ],
    "type": "object"
  },
  "HistoryPageCursor": {
    "properties": {
      "occurredAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "sequence": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "occurredAtUtc",
      "sequence"
    ],
    "type": "object"
  },
  "IdBatch": {
    "properties": {
      "ids": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": "array"
      }
    },
    "required": [
      "ids"
    ],
    "type": "object"
  },
  "IdracComponentDto": {
    "properties": {
      "detail": {
        "type": [
          "null",
          "string"
        ]
      },
      "health": {
        "type": [
          "null",
          "string"
        ]
      },
      "kind": {
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "predictedFailure": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "stableId": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "kind",
      "name",
      "health",
      "detail"
    ],
    "type": "object"
  },
  "IdracLogEntryDto": {
    "properties": {
      "created": {
        "type": [
          "null",
          "string"
        ]
      },
      "message": {
        "type": [
          "null",
          "string"
        ]
      },
      "repaired": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "severity": {
        "type": [
          "null",
          "string"
        ]
      },
      "source": {
        "type": "string"
      }
    },
    "required": [
      "source",
      "created",
      "severity",
      "message",
      "repaired"
    ],
    "type": "object"
  },
  "IdracMonitoringDeviceItem": {
    "properties": {
      "detail": {
        "type": [
          "null",
          "string"
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "displayName": {
        "type": "string"
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "snapshot": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IdracSnapshotDto"
          }
        ]
      },
      "state": {
        "$ref": "#/components/schemas/IdracMonitoringState"
      }
    },
    "required": [
      "deviceId",
      "displayName",
      "state",
      "snapshot",
      "detail",
      "observedAtUtc"
    ],
    "type": "object"
  },
  "IdracMonitoringState": {
    "type": "integer",
    "x-enumNames": [
      "Disabled",
      "Unsupported",
      "RacadmNotFound",
      "Provisioning",
      "Ready",
      "CredentialsRequired",
      "CleanupPending",
      "Error",
      "CertificateRequired",
      "Partial"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9
    ]
  },
  "IdracSectionDto": {
    "properties": {
      "name": {
        "type": "string"
      },
      "state": {
        "type": "string"
      }
    },
    "required": [
      "name",
      "state"
    ],
    "type": "object"
  },
  "IdracSnapshotDto": {
    "properties": {
      "components": {
        "items": {
          "$ref": "#/components/schemas/IdracComponentDto"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "degradedArrayCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "failedDiskCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "failedFanCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "failedPowerSupplyCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "firmwareVersion": {
        "type": [
          "null",
          "string"
        ]
      },
      "idracModel": {
        "type": [
          "null",
          "string"
        ]
      },
      "inventoryObservedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "isStale": {
        "type": "boolean"
      },
      "logEntries": {
        "items": {
          "$ref": "#/components/schemas/IdracLogEntryDto"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "loginNames": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "managementAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "managementHttpsPort": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "overallHealth": {
        "type": [
          "null",
          "string"
        ]
      },
      "powerState": {
        "type": [
          "null",
          "string"
        ]
      },
      "predictedFailureDiskCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "sections": {
        "items": {
          "$ref": "#/components/schemas/IdracSectionDto"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "serverName": {
        "type": [
          "null",
          "string"
        ]
      },
      "serverSerialNumber": {
        "type": [
          "null",
          "string"
        ]
      },
      "warningFanCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "idracModel",
      "firmwareVersion",
      "serverName",
      "serverSerialNumber",
      "powerState",
      "overallHealth"
    ],
    "type": "object"
  },
  "IloComponentDto": {
    "properties": {
      "detail": {
        "type": [
          "null",
          "string"
        ]
      },
      "health": {
        "type": [
          "null",
          "string"
        ]
      },
      "kind": {
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "predictedFailure": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "stableId": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "kind",
      "name",
      "health",
      "detail"
    ],
    "type": "object"
  },
  "IloLogEntryDto": {
    "properties": {
      "created": {
        "type": [
          "null",
          "string"
        ]
      },
      "message": {
        "type": [
          "null",
          "string"
        ]
      },
      "repaired": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "severity": {
        "type": [
          "null",
          "string"
        ]
      },
      "source": {
        "type": "string"
      }
    },
    "required": [
      "source",
      "created",
      "severity",
      "message",
      "repaired"
    ],
    "type": "object"
  },
  "IloMonitoringDeviceItem": {
    "properties": {
      "detail": {
        "type": [
          "null",
          "string"
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "displayName": {
        "type": "string"
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "snapshot": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IloSnapshotDto"
          }
        ]
      },
      "state": {
        "$ref": "#/components/schemas/IloMonitoringState"
      }
    },
    "required": [
      "deviceId",
      "displayName",
      "state",
      "snapshot",
      "detail",
      "observedAtUtc"
    ],
    "type": "object"
  },
  "IloMonitoringState": {
    "type": "integer",
    "x-enumNames": [
      "Disabled",
      "Unsupported",
      "HponcfgNotFound",
      "Provisioning",
      "Ready",
      "CredentialsRequired",
      "CleanupPending",
      "Error"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7
    ]
  },
  "IloSectionDto": {
    "properties": {
      "name": {
        "type": "string"
      },
      "state": {
        "type": "string"
      }
    },
    "required": [
      "name",
      "state"
    ],
    "type": "object"
  },
  "IloSnapshotDto": {
    "properties": {
      "components": {
        "items": {
          "$ref": "#/components/schemas/IloComponentDto"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "degradedArrayCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "failedDiskCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "failedFanCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "failedPowerSupplyCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "firmwareVersion": {
        "type": [
          "null",
          "string"
        ]
      },
      "iloModel": {
        "type": [
          "null",
          "string"
        ]
      },
      "inventoryObservedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "isStale": {
        "type": "boolean"
      },
      "logEntries": {
        "items": {
          "$ref": "#/components/schemas/IloLogEntryDto"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "loginNames": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "managementAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "managementHttpsPort": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "overallHealth": {
        "type": [
          "null",
          "string"
        ]
      },
      "powerState": {
        "type": [
          "null",
          "string"
        ]
      },
      "predictedFailureDiskCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "sections": {
        "items": {
          "$ref": "#/components/schemas/IloSectionDto"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "serverName": {
        "type": [
          "null",
          "string"
        ]
      },
      "serverSerialNumber": {
        "type": [
          "null",
          "string"
        ]
      },
      "warningFanCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "iloModel",
      "firmwareVersion",
      "serverName",
      "serverSerialNumber",
      "powerState",
      "overallHealth"
    ],
    "type": "object"
  },
  "InactiveAccountLogon": {
    "properties": {
      "account": {
        "type": "string"
      },
      "lastLogonSource": {
        "type": "string"
      },
      "lastLogonUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "account",
      "lastLogonUtc",
      "lastLogonSource"
    ],
    "type": "object"
  },
  "InputEventDto": {
    "properties": {
      "deliveryId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "delta": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "fractionalX": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "fractionalY": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "isDown": {
        "type": "boolean"
      },
      "kind": {
        "$ref": "#/components/schemas/InputEventKind"
      },
      "screenshotTarget": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/ScreenshotInputTarget"
          }
        ]
      },
      "text": {
        "type": [
          "null",
          "string"
        ]
      },
      "virtualKeyCode": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "kind",
      "fractionalX",
      "fractionalY",
      "delta",
      "virtualKeyCode",
      "isDown"
    ],
    "type": "object"
  },
  "InputEventKind": {
    "type": "integer",
    "x-enumNames": [
      "MouseMove",
      "MouseButton",
      "MouseWheel",
      "Key",
      "TypeText"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "InstallerBuildJobItem": {
    "properties": {
      "architecture": {
        "default": "x64",
        "type": "string"
      },
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "createdAt": {
        "format": "date-time",
        "type": "string"
      },
      "expiresAt": {
        "format": "date-time",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "lastError": {
        "type": [
          "null",
          "string"
        ]
      },
      "linkExpiresAt": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "platform": {
        "$ref": "#/components/schemas/InstallerPlatform"
      },
      "siteId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "status": {
        "$ref": "#/components/schemas/DeviceJobStatus"
      },
      "url": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "companyId",
      "siteId",
      "platform",
      "status",
      "createdAt",
      "expiresAt",
      "lastError"
    ],
    "type": "object"
  },
  "InstallerHistoryItem": {
    "properties": {
      "agentVersion": {
        "type": "string"
      },
      "architecture": {
        "default": "x64",
        "type": "string"
      },
      "artifactId": {
        "format": "uuid",
        "type": "string"
      },
      "builtAt": {
        "format": "date-time",
        "type": "string"
      },
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "companyName": {
        "type": "string"
      },
      "expiresAt": {
        "format": "date-time",
        "type": "string"
      },
      "hasBootstrapFormats": {
        "default": false,
        "type": "boolean"
      },
      "platform": {
        "$ref": "#/components/schemas/InstallerPlatform"
      },
      "siteId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "siteName": {
        "type": [
          "null",
          "string"
        ]
      },
      "url": {
        "type": "string"
      }
    },
    "required": [
      "artifactId",
      "companyId",
      "companyName",
      "siteId",
      "siteName",
      "platform",
      "agentVersion",
      "builtAt",
      "url",
      "expiresAt"
    ],
    "type": "object"
  },
  "InstallerPlatform": {
    "type": "integer",
    "x-enumNames": [
      "Windows",
      "Linux",
      "MacOs"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "IntegrationAssistantPilot": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "proposalId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "proposalId",
      "deviceId"
    ],
    "type": "object"
  },
  "IntegrationAssistantStart": {
    "properties": {
      "acceptQuotedCharge": {
        "type": "boolean"
      },
      "estimateToken": {
        "type": "string"
      },
      "request": {
        "$ref": "#/components/schemas/AutomationAssistantRequest"
      }
    },
    "required": [
      "request",
      "estimateToken",
      "acceptQuotedCharge"
    ],
    "type": "object"
  },
  "IntegrationAssistantTargets": {
    "properties": {
      "freeze": {
        "default": false,
        "type": "boolean"
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "scope": {
        "$ref": "#/components/schemas/AutomationHierarchyScope"
      }
    },
    "required": [
      "scope"
    ],
    "type": "object"
  },
  "IntegrationAutomationCreate": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "description": {
        "type": "string"
      },
      "idempotencyKey": {
        "type": "string"
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "name",
      "description",
      "companyId",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationAutomationKey": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      }
    },
    "required": [
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationAutomationSave": {
    "properties": {
      "definition": {
        "$ref": "#/components/schemas/AutomationVersionInput"
      },
      "description": {
        "type": "string"
      },
      "expectedVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "idempotencyKey": {
        "type": "string"
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "expectedVersionId",
      "name",
      "description",
      "definition",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationAutomationState": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "state": {
        "$ref": "#/components/schemas/AutomationState"
      }
    },
    "required": [
      "state",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationCommand": {
    "properties": {
      "command": {
        "type": "string"
      },
      "idempotencyKey": {
        "type": "string"
      },
      "shell": {
        "type": "string"
      },
      "timeoutSeconds": {
        "default": 20,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "shell",
      "command",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationCommandBatch": {
    "properties": {
      "batchSize": {
        "default": 5,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "command": {
        "type": "string"
      },
      "deadlineSeconds": {
        "default": 1800,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "deviceIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": "array"
      },
      "idempotencyKey": {
        "type": "string"
      },
      "shell": {
        "type": "string"
      },
      "stopOnFailure": {
        "default": true,
        "type": "boolean"
      },
      "timeoutSeconds": {
        "default": 60,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "deviceIds",
      "shell",
      "command",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationConsentRestart": {
    "properties": {
      "confirmationId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "confirmationId"
    ],
    "type": "object"
  },
  "IntegrationDeletePreview": {
    "properties": {
      "descendantCountKnown": {
        "type": "boolean"
      },
      "immediateDirectories": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "immediateFiles": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "path": {
        "type": "string"
      },
      "recursiveRequired": {
        "type": "boolean"
      },
      "target": {
        "$ref": "#/components/schemas/FileEntryDto"
      },
      "warning": {
        "type": "string"
      }
    },
    "required": [
      "path",
      "target",
      "recursiveRequired",
      "immediateFiles",
      "immediateDirectories",
      "descendantCountKnown",
      "warning"
    ],
    "type": "object"
  },
  "IntegrationDeviceAction": {
    "properties": {
      "action": {
        "$ref": "#/components/schemas/AutomationDeviceAction"
      },
      "idempotencyKey": {
        "type": "string"
      }
    },
    "required": [
      "action",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationDeviceMove": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "siteId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "deviceId",
      "companyId",
      "siteId"
    ],
    "type": "object"
  },
  "IntegrationDevicePreflightResponse": {
    "properties": {
      "advertisedCapabilities": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "guaranteesStartup": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "lastSeenAt": {
        "format": "date-time",
        "type": "string"
      },
      "notChecked": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "os": {
        "type": "string"
      },
      "sessions": {
        "items": {
          "$ref": "#/components/schemas/IntegrationSessionPreflight"
        },
        "type": "array"
      },
      "status": {
        "type": "string"
      },
      "targetedWindowsDesktop": {
        "$ref": "#/components/schemas/IntegrationWindowsTargetPreflight"
      }
    },
    "required": [
      "id",
      "os",
      "status",
      "lastSeenAt",
      "observedAtUtc",
      "advertisedCapabilities",
      "sessions",
      "targetedWindowsDesktop",
      "notChecked",
      "guaranteesStartup"
    ],
    "type": "object"
  },
  "IntegrationDiskScan": {
    "properties": {
      "operationId": {
        "format": "uuid",
        "type": "string"
      },
      "volumeIds": {
        "items": {
          "type": "string"
        },
        "type": "array"
      }
    },
    "required": [
      "operationId",
      "volumeIds"
    ],
    "type": "object"
  },
  "IntegrationEventLogResponse": {
    "properties": {
      "error": {
        "type": [
          "null",
          "string"
        ]
      },
      "eventLogQuery": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/EventLogQueryResultDto"
          }
        ]
      },
      "success": {
        "type": "boolean"
      }
    },
    "required": [
      "success",
      "error",
      "eventLogQuery"
    ],
    "type": "object"
  },
  "IntegrationFieldDefinition": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "key": {
        "type": "string"
      },
      "label": {
        "type": "string"
      },
      "scope": {
        "type": "string"
      },
      "type": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "companyId",
      "scope",
      "key",
      "label",
      "type"
    ],
    "type": "object"
  },
  "IntegrationGroupDefinition": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "condition": {
        "$ref": "#/components/schemas/AutomationConditionNode"
      },
      "expectedVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "name",
      "companyId",
      "condition"
    ],
    "type": "object"
  },
  "IntegrationHistoryQuery": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "cursor": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/HistoryPageCursor"
          }
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "from": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "kind": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AuditRowKind"
          }
        ]
      },
      "page": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "pageSize": {
        "default": 100,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "snapshotSequence": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "technicianId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "to": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "companyId"
    ],
    "type": "object"
  },
  "IntegrationInstallerBuild": {
    "properties": {
      "architecture": {
        "default": "x64",
        "type": "string"
      },
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "platform": {
        "$ref": "#/components/schemas/InstallerPlatform"
      },
      "siteId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "companyId",
      "siteId",
      "platform"
    ],
    "type": "object"
  },
  "IntegrationJobPage": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/IntegrationJobView"
        },
        "type": "array"
      },
      "missingMeans": {
        "type": "string"
      },
      "next": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next",
      "missingMeans"
    ],
    "type": "object"
  },
  "IntegrationJobView": {
    "properties": {
      "action": {
        "type": "string"
      },
      "claimedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "createdAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "expiresAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "scheduledAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "scheduledLocalTime": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "scheduledTimeZone": {
        "type": [
          "null",
          "string"
        ]
      },
      "status": {
        "$ref": "#/components/schemas/DeviceJobStatus"
      }
    },
    "required": [
      "id",
      "action",
      "status",
      "createdAtUtc",
      "expiresAtUtc",
      "scheduledAtUtc",
      "scheduledLocalTime",
      "scheduledTimeZone",
      "claimedAtUtc"
    ],
    "type": "object"
  },
  "IntegrationKillProcess": {
    "properties": {
      "expectedName": {
        "type": "string"
      },
      "processId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "processId",
      "expectedName"
    ],
    "type": "object"
  },
  "IntegrationMonitorPack": {
    "properties": {
      "key": {
        "type": "string"
      },
      "scope": {
        "$ref": "#/components/schemas/AutomationHierarchyScope"
      }
    },
    "required": [
      "key",
      "scope"
    ],
    "type": "object"
  },
  "IntegrationMonitorPreview": {
    "properties": {
      "condition": {
        "$ref": "#/components/schemas/AutomationConditionNode"
      },
      "platform": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationScriptPlatform"
          }
        ]
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "scope": {
        "$ref": "#/components/schemas/AutomationHierarchyScope"
      },
      "smartGroupIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      }
    },
    "required": [
      "scope",
      "condition"
    ],
    "type": "object"
  },
  "IntegrationMutationOfAntivirusActionRequestDto": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AntivirusActionRequestDto"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfAutomationActionDraft": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationActionDraft"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfAutomationAlertRoutingInput": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationAlertRoutingInput"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfAutomationMonitorLifecycleState": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "$ref": "#/components/schemas/AutomationMonitorLifecycleState"
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfAutomationPackageSave": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationPackageSave"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfAutomationReportScheduleInput": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationReportScheduleInput"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfAutomationSimpleMonitorInput": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationSimpleMonitorInput"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfConfigurationBaselineInput": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/ConfigurationBaselineInput"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfGuid": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfGuid[]": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationAssistantPilot": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationAssistantPilot"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationAssistantStart": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationAssistantStart"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationConsentRestart": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationConsentRestart"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationDeviceMove": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationDeviceMove"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationDiskScan": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationDiskScan"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationGroupDefinition": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationGroupDefinition"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationInstallerBuild": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationInstallerBuild"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationKillProcess": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationKillProcess"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationMonitorPack": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationMonitorPack"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationNetworkDeviceType": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationNetworkDeviceType"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationNetworkMode": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationNetworkMode"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationNetworkRealmName": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationNetworkRealmName"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationNetworkRealmSuspend": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationNetworkRealmSuspend"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationNetworkScan": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationNetworkScan"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationNetworkScanCancel": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationNetworkScanCancel"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationNetworkService": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationNetworkService"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationNetworkSnmpPolicy": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationNetworkSnmpPolicy"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationNetworkSnmpRefresh": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationNetworkSnmpRefresh"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationNetworkToggle": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationNetworkToggle"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationNetworkTypeRefresh": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationNetworkTypeRefresh"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationPatchDecision": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationPatchDecision"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationPsaConnection": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationPsaConnection"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationPsaMapping": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationPsaMapping"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationPsaPause": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationPsaPause"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationQueuedCommand": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationQueuedCommand"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationRemoteAction": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationRemoteAction"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationRemoteOpen": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationRemoteOpen"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationRole": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationRole"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationScheduledPower": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationScheduledPower"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationSetting": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationSetting"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationSiteCreate": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationSiteCreate"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationSnmpCommunities": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationSnmpCommunities"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationSnmpCredential": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationSnmpCredential"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationSnmpCredentialDelete": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationSnmpCredentialDelete"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationSnmpExpectedPort": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationSnmpExpectedPort"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationSoftwareInstall": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationSoftwareInstall"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationSpeedTestCancel": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationSpeedTestCancel"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationSpeedTestStart": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationSpeedTestStart"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationTag": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationTag"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationTcpPolicy": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationTcpPolicy"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationThirdPartyApproval": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationThirdPartyApproval"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationThumbnailPolicy": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationThumbnailPolicy"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationTrafficPort": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationTrafficPort"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationUserAccess": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationUserAccess"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationUserInvite": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationUserInvite"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationUserMessage": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationUserMessage"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationUserName": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationUserName"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationUserOwner": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationUserOwner"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationVersionIdentity": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationVersionIdentity"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfIntegrationVisitorPass": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationVisitorPass"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfPatchUpdateIdentity": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/PatchUpdateIdentity"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfSoftwareUninstallRequestDto": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/SoftwareUninstallRequestDto"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfThirdPartyPatchPolicyAssignment": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/ThirdPartyPatchPolicyAssignment"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfWindowsPatchPolicyInput": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/WindowsPatchPolicyInput"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfWindowsUpdateConfigurationInput": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/WindowsUpdateConfigurationInput"
          }
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfboolean": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "type": "boolean"
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfint": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationMutationOfstring": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      },
      "value": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "value",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationNetworkDeviceType": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "type": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkDeviceType"
          }
        ]
      }
    },
    "required": [
      "companyId",
      "deviceId",
      "type"
    ],
    "type": "object"
  },
  "IntegrationNetworkMode": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "mode": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkDiscoveryMode"
          }
        ]
      }
    },
    "required": [
      "companyId",
      "mode"
    ],
    "type": "object"
  },
  "IntegrationNetworkRealmName": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "locked": {
        "type": "boolean"
      },
      "name": {
        "type": "string"
      },
      "realmId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "companyId",
      "realmId",
      "name",
      "locked"
    ],
    "type": "object"
  },
  "IntegrationNetworkRealmSuspend": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "realmId": {
        "format": "uuid",
        "type": "string"
      },
      "suspended": {
        "type": "boolean"
      }
    },
    "required": [
      "companyId",
      "realmId",
      "suspended"
    ],
    "type": "object"
  },
  "IntegrationNetworkScan": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "realmId": {
        "format": "uuid",
        "type": "string"
      },
      "reason": {
        "type": "string"
      }
    },
    "required": [
      "companyId",
      "realmId",
      "reason"
    ],
    "type": "object"
  },
  "IntegrationNetworkScanCancel": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "realmId": {
        "format": "uuid",
        "type": "string"
      },
      "scanId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "companyId",
      "realmId",
      "scanId"
    ],
    "type": "object"
  },
  "IntegrationNetworkService": {
    "properties": {
      "discoveredDeviceId": {
        "format": "uuid",
        "type": "string"
      },
      "expectedAgentId": {
        "format": "uuid",
        "type": "string"
      },
      "port": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "discoveredDeviceId",
      "port",
      "expectedAgentId"
    ],
    "type": "object"
  },
  "IntegrationNetworkServiceSource": {
    "properties": {
      "agentId": {
        "format": "uuid",
        "type": "string"
      },
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "discoveredDeviceId": {
        "format": "uuid",
        "type": "string"
      },
      "expiresAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "interaction": {
        "type": "string"
      },
      "port": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "discoveredDeviceId",
      "port",
      "agentId",
      "companyId",
      "expiresAtUtc",
      "interaction"
    ],
    "type": "object"
  },
  "IntegrationNetworkSnmpPolicy": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "credentialCooldownHours": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "enabled": {
        "type": "boolean"
      },
      "pollIntervalMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "companyId",
      "enabled",
      "pollIntervalMinutes",
      "credentialCooldownHours"
    ],
    "type": "object"
  },
  "IntegrationNetworkSnmpRefresh": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "managedDevice": {
        "type": "boolean"
      }
    },
    "required": [
      "companyId",
      "deviceId",
      "managedDevice"
    ],
    "type": "object"
  },
  "IntegrationNetworkToggle": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "enabled": {
        "type": "boolean"
      }
    },
    "required": [
      "companyId",
      "enabled"
    ],
    "type": "object"
  },
  "IntegrationNetworkTypeRefresh": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "companyId",
      "deviceId"
    ],
    "type": "object"
  },
  "IntegrationOperationProgress": {
    "properties": {
      "automaticReplayAllowed": {
        "type": "boolean"
      },
      "completionEvidence": {
        "type": "string"
      },
      "pollAfterMilliseconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "receiptCancellationSupported": {
        "type": "boolean"
      },
      "reconciliationRequired": {
        "type": "boolean"
      },
      "retryRule": {
        "type": "string"
      },
      "status": {
        "type": "string"
      },
      "terminal": {
        "type": "boolean"
      }
    },
    "required": [
      "status",
      "terminal",
      "reconciliationRequired",
      "pollAfterMilliseconds",
      "completionEvidence",
      "retryRule",
      "automaticReplayAllowed",
      "receiptCancellationSupported"
    ],
    "type": "object"
  },
  "IntegrationPatchApprovalPage": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/PatchApprovalListItem"
        },
        "type": "array"
      },
      "nextOffset": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "nextOffset"
    ],
    "type": "object"
  },
  "IntegrationPatchDecision": {
    "properties": {
      "patches": {
        "items": {
          "$ref": "#/components/schemas/PatchApprovalIdentity"
        },
        "type": "array"
      },
      "state": {
        "$ref": "#/components/schemas/AutomationPatchApprovalState"
      }
    },
    "required": [
      "patches",
      "state"
    ],
    "type": "object"
  },
  "IntegrationPower": {
    "properties": {
      "action": {
        "type": "string"
      },
      "idempotencyKey": {
        "type": "string"
      }
    },
    "required": [
      "action",
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationPsaConnection": {
    "properties": {
      "baseUrl": {
        "type": "string"
      },
      "credentials": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationPsaSecret"
          }
        ]
      },
      "enabled": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "provider": {
        "type": "string"
      },
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "ticketUrlTemplate": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "revision",
      "provider",
      "baseUrl",
      "credentials",
      "enabled"
    ],
    "type": "object"
  },
  "IntegrationPsaConnectionView": {
    "properties": {
      "baseUrl": {
        "type": "string"
      },
      "enabled": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "provider": {
        "type": "string"
      },
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "ticketUrlTemplate": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "revision",
      "provider",
      "baseUrl",
      "enabled",
      "ticketUrlTemplate"
    ],
    "type": "object"
  },
  "IntegrationPsaCustomer": {
    "properties": {
      "id": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "name"
    ],
    "type": "object"
  },
  "IntegrationPsaDelivery": {
    "properties": {
      "alertId": {
        "format": "uuid",
        "type": "string"
      },
      "attempts": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "errorCode": {
        "type": [
          "null",
          "string"
        ]
      },
      "externalId": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "nextAttemptAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "state": {
        "type": "string"
      },
      "ticketUrl": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "companyId",
      "alertId",
      "state",
      "revision",
      "externalId",
      "ticketUrl",
      "errorCode",
      "attempts",
      "nextAttemptAtUtc"
    ],
    "type": "object"
  },
  "IntegrationPsaMapping": {
    "properties": {
      "closedStatusId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "connectionId": {
        "format": "uuid",
        "type": "string"
      },
      "customerId": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "openStatusId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "priorityId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "queueId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "ticketTypeId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "workTypeId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "connectionId",
      "companyId",
      "revision",
      "customerId",
      "openStatusId",
      "closedStatusId",
      "priorityId",
      "queueId",
      "ticketTypeId"
    ],
    "type": "object"
  },
  "IntegrationPsaPause": {
    "properties": {
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "paused": {
        "type": "boolean"
      },
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "revision",
      "paused"
    ],
    "type": "object"
  },
  "IntegrationPsaSecret": {
    "properties": {
      "clientId": {
        "type": "string"
      },
      "company": {
        "default": "",
        "type": "string"
      },
      "secret": {
        "type": "string"
      },
      "tokenUrl": {
        "default": "",
        "type": "string"
      },
      "user": {
        "default": "",
        "type": "string"
      }
    },
    "required": [
      "clientId",
      "secret"
    ],
    "type": "object"
  },
  "IntegrationPsaView": {
    "properties": {
      "connections": {
        "items": {
          "$ref": "#/components/schemas/IntegrationPsaConnectionView"
        },
        "type": "array"
      },
      "deliveries": {
        "items": {
          "$ref": "#/components/schemas/IntegrationPsaDelivery"
        },
        "type": "array"
      },
      "mappings": {
        "items": {
          "$ref": "#/components/schemas/IntegrationPsaMapping"
        },
        "type": "array"
      },
      "next": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "connections",
      "mappings",
      "deliveries",
      "next"
    ],
    "type": "object"
  },
  "IntegrationQueuedCommand": {
    "properties": {
      "command": {
        "type": "string"
      },
      "shell": {
        "type": "string"
      },
      "timeoutSeconds": {
        "default": 20,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "shell",
      "command"
    ],
    "type": "object"
  },
  "IntegrationRdpStatus": {
    "properties": {
      "error": {
        "type": [
          "null",
          "string"
        ]
      },
      "success": {
        "type": "boolean"
      },
      "windowsRdp": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/WindowsRdpStatusDto"
          }
        ]
      }
    },
    "required": [
      "success",
      "error",
      "windowsRdp"
    ],
    "type": "object"
  },
  "IntegrationRemoteAction": {
    "properties": {
      "clipboard": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/ClipboardPayloadDto"
          }
        ]
      },
      "columns": {
        "default": 120,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "contentBase64": {
        "description": "Base64-encoded complete file contents, at most 32768 decoded bytes. Empty string creates an empty file. Legacy Text accepts base64 only.",
        "type": [
          "null",
          "string"
        ]
      },
      "input": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/InputEventDto"
          }
        ]
      },
      "kind": {
        "$ref": "#/components/schemas/IntegrationRemoteActionKind"
      },
      "monitorId": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "newName": {
        "type": [
          "null",
          "string"
        ]
      },
      "observation": {
        "type": [
          "null",
          "string"
        ]
      },
      "path": {
        "type": [
          "null",
          "string"
        ]
      },
      "recursive": {
        "default": false,
        "description": "Explicitly permit recursive directory deletion. Defaults to false; preview the target first.",
        "type": "boolean"
      },
      "rows": {
        "default": 30,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "screenshotCoordinates": {
        "default": false,
        "description": "Opt in to coordinates relative to the observed screenshot (0-1). Requires screenshot-input-v1 Windows Desktop. False preserves legacy virtual-desktop coordinates.",
        "type": "boolean"
      },
      "shell": {
        "type": [
          "null",
          "string"
        ]
      },
      "tabId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "text": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "kind"
    ],
    "type": "object"
  },
  "IntegrationRemoteActionKind": {
    "type": "integer",
    "x-enumNames": [
      "Input",
      "Navigate",
      "Back",
      "Forward",
      "Clipboard",
      "ConsoleInput",
      "ConsoleResize",
      "ConsoleTabOpen",
      "ConsoleTabClose",
      "ConsoleTabInput",
      "ConsoleTabResize",
      "CreateFolder",
      "DeleteEntry",
      "RenameEntry",
      "WriteFile",
      "FocusMonitor",
      "CtrlAltDel",
      "Click"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12,
      13,
      14,
      15,
      16,
      17
    ]
  },
  "IntegrationRemoteOpen": {
    "properties": {
      "deviceId": {
        "description": "Installed-agent device ID, not a discovered network device ID.",
        "format": "uuid",
        "type": "string"
      },
      "discoveredDeviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "discoveredPort": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "existingSessionId": {
        "description": "Underlying remote session ID owned by this actor; not an integration handle or operation receipt ID.",
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "expectedSessionName": {
        "type": [
          "null",
          "string"
        ]
      },
      "expectedUserName": {
        "type": [
          "null",
          "string"
        ]
      },
      "kind": {
        "$ref": "#/components/schemas/SessionKind"
      },
      "resources": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/RemoteResourcesOptionsDto"
          }
        ]
      },
      "url": {
        "type": [
          "null",
          "string"
        ]
      },
      "vmId": {
        "description": "Hyper-V VM vmId from this host inventory, not the VM inventory row id.",
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "windowsSessionId": {
        "format": "uint32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "deviceId",
      "kind"
    ],
    "type": "object"
  },
  "IntegrationRemoteSession": {
    "properties": {
      "actorUserId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "kind": {
        "$ref": "#/components/schemas/SessionKind"
      }
    },
    "required": [
      "id",
      "deviceId",
      "companyId",
      "actorUserId",
      "kind"
    ],
    "type": "object"
  },
  "IntegrationReportHtml": {
    "properties": {
      "html": {
        "type": "string"
      }
    },
    "required": [
      "html"
    ],
    "type": "object"
  },
  "IntegrationResolverPage": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/AiResolverRunView"
        },
        "type": "array"
      },
      "next": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "IntegrationResolverQuery": {
    "properties": {
      "after": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "pageSize": {
        "default": 50,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "companyId"
    ],
    "type": "object"
  },
  "IntegrationRole": {
    "properties": {
      "description": {
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "permissions": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "roleId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "roleId",
      "name",
      "description",
      "permissions"
    ],
    "type": "object"
  },
  "IntegrationScheduledPower": {
    "properties": {
      "action": {
        "type": "string"
      },
      "localTime": {
        "format": "date-time",
        "type": "string"
      },
      "timeZoneId": {
        "type": "string"
      }
    },
    "required": [
      "action",
      "localTime",
      "timeZoneId"
    ],
    "type": "object"
  },
  "IntegrationScreenImage": {
    "properties": {
      "captureTimestampMs": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "data": {
        "type": "string"
      },
      "height": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "mimeType": {
        "type": "string"
      },
      "monitorId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "nativeHeight": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "nativeWidth": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "observation": {
        "type": "string"
      },
      "observedAt": {
        "format": "date-time",
        "type": "string"
      },
      "screenshotInputSupported": {
        "default": false,
        "type": "boolean"
      },
      "sequence": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "width": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "mimeType",
      "data",
      "width",
      "height",
      "monitorId",
      "sequence",
      "captureTimestampMs",
      "observedAt",
      "observation"
    ],
    "type": "object"
  },
  "IntegrationSessionPreflight": {
    "properties": {
      "eligibility": {
        "type": "string"
      },
      "fullAccessRequired": {
        "type": "boolean"
      },
      "kind": {
        "type": "string"
      },
      "knownBlockers": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "requiredPermission": {
        "type": "string"
      }
    },
    "required": [
      "kind",
      "requiredPermission",
      "fullAccessRequired",
      "knownBlockers",
      "eligibility"
    ],
    "type": "object"
  },
  "IntegrationSetting": {
    "properties": {
      "key": {
        "$ref": "#/components/schemas/SettingKey"
      },
      "scopeId": {
        "format": "uuid",
        "type": "string"
      },
      "scopeType": {
        "$ref": "#/components/schemas/SettingScopeType"
      },
      "value": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "scopeType",
      "scopeId",
      "key",
      "value"
    ],
    "type": "object"
  },
  "IntegrationSiteCreate": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "companyId",
      "name"
    ],
    "type": "object"
  },
  "IntegrationSnmpCommunities": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "selections": {
        "items": {
          "type": "string"
        },
        "type": "array"
      }
    },
    "required": [
      "companyId",
      "selections"
    ],
    "type": "object"
  },
  "IntegrationSnmpCredential": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "credential": {
        "$ref": "#/components/schemas/SnmpCredentialProfileInput"
      }
    },
    "required": [
      "companyId",
      "credential"
    ],
    "type": "object"
  },
  "IntegrationSnmpCredentialDelete": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "credentialId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "companyId",
      "credentialId"
    ],
    "type": "object"
  },
  "IntegrationSnmpExpectedPort": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "expectedUp": {
        "type": "boolean"
      },
      "interfaceIndex": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "managedDevice": {
        "type": "boolean"
      }
    },
    "required": [
      "companyId",
      "deviceId",
      "interfaceIndex",
      "expectedUp",
      "managedDevice"
    ],
    "type": "object"
  },
  "IntegrationSoftwareInstall": {
    "properties": {
      "packageVersionId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "packageVersionId"
    ],
    "type": "object"
  },
  "IntegrationSpeedTestCancel": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "runId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "deviceId",
      "runId"
    ],
    "type": "object"
  },
  "IntegrationSpeedTestStart": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "interfaceId": {
        "type": "string"
      }
    },
    "required": [
      "deviceId",
      "interfaceId"
    ],
    "type": "object"
  },
  "IntegrationTag": {
    "properties": {
      "colour": {
        "type": [
          "null",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "name",
      "colour",
      "companyId"
    ],
    "type": "object"
  },
  "IntegrationTagPage": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/IntegrationTagView"
        },
        "type": "array"
      },
      "next": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "IntegrationTagView": {
    "properties": {
      "colour": {
        "type": [
          "null",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "colour",
      "companyId"
    ],
    "type": "object"
  },
  "IntegrationTcpPolicy": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "policy": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkTcpMonitoringPolicyDto"
          }
        ]
      }
    },
    "required": [
      "companyId",
      "policy"
    ],
    "type": "object"
  },
  "IntegrationTemporaryAdminResponse": {
    "properties": {
      "credentials": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/IntegrationTemporaryCredentials"
          }
        ]
      },
      "credentialsRecoverable": {
        "type": "boolean"
      },
      "receipt": {}
    },
    "required": [
      "receipt",
      "credentials",
      "credentialsRecoverable"
    ],
    "type": "object"
  },
  "IntegrationTemporaryCredentials": {
    "properties": {
      "localAdminPassword": {
        "type": [
          "null",
          "string"
        ]
      },
      "localAdminUsername": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "localAdminUsername",
      "localAdminPassword"
    ],
    "type": "object"
  },
  "IntegrationThirdPartyApproval": {
    "properties": {
      "approval": {
        "$ref": "#/components/schemas/ThirdPartyPackageApproval"
      },
      "state": {
        "$ref": "#/components/schemas/AutomationPatchApprovalState"
      }
    },
    "required": [
      "approval",
      "state"
    ],
    "type": "object"
  },
  "IntegrationThumbnailImage": {
    "properties": {
      "capturedAt": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "checkOutcome": {
        "type": [
          "null",
          "string"
        ]
      },
      "checkedAt": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "data": {
        "type": [
          "null",
          "string"
        ]
      },
      "displayOff": {
        "default": false,
        "type": "boolean"
      },
      "displayOffObserved": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "enabled": {
        "type": "boolean"
      },
      "freshnessSupported": {
        "default": false,
        "type": "boolean"
      },
      "height": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "imageId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "locked": {
        "type": "boolean"
      },
      "mimeType": {
        "type": [
          "null",
          "string"
        ]
      },
      "oldPreview": {
        "default": false,
        "type": "boolean"
      },
      "pending": {
        "type": "boolean"
      },
      "screenContentFreshnessVerified": {
        "default": false,
        "type": "boolean"
      },
      "supported": {
        "type": "boolean"
      },
      "width": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "enabled",
      "supported",
      "width",
      "height",
      "capturedAt",
      "checkedAt",
      "locked",
      "pending",
      "mimeType",
      "data"
    ],
    "type": "object"
  },
  "IntegrationThumbnailPolicy": {
    "properties": {
      "enabled": {
        "type": "boolean"
      },
      "intervalSeconds": {
        "default": 180,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "enabled"
    ],
    "type": "object"
  },
  "IntegrationThumbnailPolicyView": {
    "properties": {
      "enabled": {
        "type": "boolean"
      },
      "intervalSeconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "revision": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "enabled",
      "intervalSeconds",
      "revision"
    ],
    "type": "object"
  },
  "IntegrationTrafficPort": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "enabled": {
        "type": "boolean"
      },
      "interfaceIndex": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "companyId",
      "deviceId",
      "interfaceIndex",
      "enabled"
    ],
    "type": "object"
  },
  "IntegrationUserAccess": {
    "properties": {
      "companyIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": "array"
      },
      "roleKeys": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "userId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "userId",
      "roleKeys",
      "companyIds"
    ],
    "type": "object"
  },
  "IntegrationUserInvite": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "email": {
        "type": "string"
      },
      "grantOwner": {
        "type": "boolean"
      },
      "rmmRoleKeys": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "role": {
        "type": "string"
      }
    },
    "required": [
      "email",
      "role",
      "companyId",
      "grantOwner",
      "rmmRoleKeys"
    ],
    "type": "object"
  },
  "IntegrationUserMessage": {
    "properties": {
      "expectedUserName": {
        "type": "string"
      },
      "message": {
        "type": "string"
      },
      "waitSeconds": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "windowsSessionId": {
        "format": "uint32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "windowsSessionId",
      "expectedUserName",
      "message"
    ],
    "type": "object"
  },
  "IntegrationUserName": {
    "properties": {
      "displayName": {
        "type": "string"
      },
      "userId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "userId",
      "displayName"
    ],
    "type": "object"
  },
  "IntegrationUserOwner": {
    "properties": {
      "isOwner": {
        "type": "boolean"
      },
      "userId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "userId",
      "isOwner"
    ],
    "type": "object"
  },
  "IntegrationValidation": {
    "properties": {
      "valid": {
        "type": "boolean"
      }
    },
    "required": [
      "valid"
    ],
    "type": "object"
  },
  "IntegrationVersionIdentity": {
    "properties": {
      "expectedVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "id",
      "expectedVersionId"
    ],
    "type": "object"
  },
  "IntegrationVisitorPass": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "lifetimeMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "deviceId",
      "lifetimeMinutes"
    ],
    "type": "object"
  },
  "IntegrationWarrantyRefresh": {
    "properties": {
      "idempotencyKey": {
        "type": "string"
      }
    },
    "required": [
      "idempotencyKey"
    ],
    "type": "object"
  },
  "IntegrationWindowsTargetPreflight": {
    "properties": {
      "advertised": {
        "type": "boolean"
      },
      "fullAccessRequired": {
        "type": "boolean"
      },
      "requiredInputs": {
        "items": {
          "type": "string"
        },
        "type": "array"
      }
    },
    "required": [
      "fullAccessRequired",
      "advertised",
      "requiredInputs"
    ],
    "type": "object"
  },
  "InteractiveSessionDto": {
    "properties": {
      "clientProtocolType": {
        "format": "uint16",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "displayServer": {
        "type": [
          "null",
          "string"
        ]
      },
      "isRemote": {
        "type": "boolean"
      },
      "isUnlocked": {
        "type": "boolean"
      },
      "platformSessionId": {
        "type": [
          "null",
          "string"
        ]
      },
      "sessionId": {
        "format": "uint32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "sessionName": {
        "type": "string"
      },
      "state": {
        "type": "string"
      },
      "userName": {
        "type": "string"
      }
    },
    "required": [
      "sessionId",
      "userName",
      "sessionName",
      "isRemote",
      "state",
      "isUnlocked"
    ],
    "type": "object"
  },
  "InventoryResponse": {
    "properties": {
      "antivirusDefinitionsUpToDate": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "antivirusEnabled": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "bitLockerCEnabled": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "bitLockerCollectedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "factsUpdatedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "firewallEnabled": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "logicalProcessors": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "manufacturer": {
        "type": [
          "null",
          "string"
        ]
      },
      "model": {
        "type": [
          "null",
          "string"
        ]
      },
      "osArchitecture": {
        "type": [
          "null",
          "string"
        ]
      },
      "patchComplianceState": {
        "type": [
          "null",
          "string"
        ]
      },
      "pendingRebootRequired": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "processor": {
        "type": [
          "null",
          "string"
        ]
      },
      "serialNumber": {
        "type": [
          "null",
          "string"
        ]
      },
      "totalMemoryBytes": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "manufacturer",
      "model",
      "serialNumber",
      "processor",
      "logicalProcessors",
      "totalMemoryBytes",
      "osArchitecture",
      "factsUpdatedAtUtc",
      "firewallEnabled",
      "antivirusEnabled",
      "antivirusDefinitionsUpToDate",
      "bitLockerCEnabled",
      "bitLockerCollectedAtUtc",
      "patchComplianceState",
      "pendingRebootRequired"
    ],
    "type": "object"
  },
  "ItemCollectionOfAlertResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/AlertResponse"
        },
        "type": "array"
      }
    },
    "required": [
      "items"
    ],
    "type": "object"
  },
  "ItemCollectionOfCustomFieldResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/CustomFieldResponse"
        },
        "type": "array"
      }
    },
    "required": [
      "items"
    ],
    "type": "object"
  },
  "ItemCollectionOfDeviceResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/DeviceResponse"
        },
        "type": "array"
      }
    },
    "required": [
      "items"
    ],
    "type": "object"
  },
  "ItemCollectionOfMaintenanceResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/MaintenanceResponse"
        },
        "type": "array"
      }
    },
    "required": [
      "items"
    ],
    "type": "object"
  },
  "ItemCollectionOfVirtualMachineResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/VirtualMachineResponse"
        },
        "type": "array"
      }
    },
    "required": [
      "items"
    ],
    "type": "object"
  },
  "ItemCollectionOfVolumeResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/VolumeResponse"
        },
        "type": "array"
      }
    },
    "required": [
      "items"
    ],
    "type": "object"
  },
  "JsonElement": {},
  "LinuxMaintenanceAction": {
    "type": "integer",
    "x-enumNames": [
      "RefreshPackageInventory",
      "InstallPackageUpdates",
      "RefreshFirmwareMetadata",
      "InstallFirmwareUpdates",
      "InstallAllUpdates"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "LinuxReadinessCheckDto": {
    "properties": {
      "detail": {
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "remediation": {
        "type": [
          "null",
          "string"
        ]
      },
      "state": {
        "$ref": "#/components/schemas/LinuxReadinessState"
      },
      "summary": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "state",
      "summary"
    ],
    "type": "object"
  },
  "LinuxReadinessReportDto": {
    "properties": {
      "checkedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "checks": {
        "items": {
          "$ref": "#/components/schemas/LinuxReadinessCheckDto"
        },
        "type": "array"
      },
      "desktopReady": {
        "type": "boolean"
      },
      "interactiveSessionCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "preferredCaptureBackend": {
        "type": [
          "null",
          "string"
        ]
      },
      "profile": {
        "type": "string"
      }
    },
    "required": [
      "checkedAtUtc",
      "profile",
      "interactiveSessionCount",
      "preferredCaptureBackend",
      "checks"
    ],
    "type": "object"
  },
  "LinuxReadinessState": {
    "type": "integer",
    "x-enumNames": [
      "Ready",
      "Warning",
      "Blocked",
      "NotApplicable"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "LiveEventLogEntryDto": {
    "properties": {
      "channel": {
        "type": "string"
      },
      "eventId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "level": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "message": {
        "type": "string"
      },
      "provider": {
        "type": [
          "null",
          "string"
        ]
      },
      "timeCreated": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "channel",
      "eventId",
      "timeCreated",
      "level",
      "provider",
      "message"
    ],
    "type": "object"
  },
  "MaintenanceResponse": {
    "properties": {
      "cancelledAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "createdAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "endsAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "reason": {
        "type": "string"
      },
      "siteId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "startsAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "id",
      "companyId",
      "siteId",
      "deviceId",
      "startsAtUtc",
      "endsAtUtc",
      "reason",
      "createdAtUtc",
      "cancelledAtUtc"
    ],
    "type": "object"
  },
  "ManagedNetworkDeviceListItem": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceType": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkDeviceTypeClassification"
          }
        ]
      },
      "displayName": {
        "type": "string"
      },
      "freshnessStale": {
        "type": "boolean"
      },
      "ipAddress": {
        "type": "string"
      },
      "macAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "membershipLastSeenAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "realmId": {
        "format": "uuid",
        "type": "string"
      },
      "realmName": {
        "type": "string"
      },
      "vendor": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "deviceId",
      "displayName",
      "ipAddress",
      "macAddress",
      "vendor",
      "realmId",
      "realmName",
      "membershipLastSeenAtUtc",
      "freshnessStale"
    ],
    "type": "object"
  },
  "MonitorConditionEvidence": {
    "properties": {
      "detail": {
        "type": "string"
      },
      "fact": {
        "type": "string"
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "result": {
        "$ref": "#/components/schemas/AutomationTruthValue"
      },
      "timestampLabel": {
        "default": "Collected",
        "type": "string"
      }
    },
    "required": [
      "fact",
      "result",
      "detail",
      "observedAtUtc"
    ],
    "type": "object"
  },
  "MonitorConditionPreview": {
    "properties": {
      "devices": {
        "items": {
          "$ref": "#/components/schemas/MonitorDevicePreview"
        },
        "type": "array"
      },
      "evaluatedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "scope": {
        "$ref": "#/components/schemas/AutomationSimpleScopePreview"
      },
      "truncated": {
        "type": "boolean"
      }
    },
    "required": [
      "scope",
      "devices",
      "evaluatedAtUtc",
      "truncated"
    ],
    "type": "object"
  },
  "MonitorDevicePreview": {
    "properties": {
      "device": {
        "$ref": "#/components/schemas/AutomationTargetPreviewItem"
      },
      "evidence": {
        "items": {
          "$ref": "#/components/schemas/MonitorConditionEvidence"
        },
        "type": "array"
      },
      "result": {
        "$ref": "#/components/schemas/AutomationTruthValue"
      }
    },
    "required": [
      "device",
      "result",
      "evidence"
    ],
    "type": "object"
  },
  "MonitorInfoDto": {
    "properties": {
      "height": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "isPrimary": {
        "type": "boolean"
      },
      "left": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "monitorId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "top": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "width": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "monitorId",
      "width",
      "height",
      "left",
      "top",
      "isPrimary"
    ],
    "type": "object"
  },
  "MonitorsDto": {
    "properties": {
      "audioAvailability": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/SessionAudioAvailability"
          }
        ]
      },
      "audioAvailabilityOnly": {
        "default": false,
        "type": "boolean"
      },
      "captureStartedAtMs": {
        "default": 0,
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "monitors": {
        "items": {
          "$ref": "#/components/schemas/MonitorInfoDto"
        },
        "type": "array"
      },
      "spectrumSupported": {
        "default": false,
        "type": "boolean"
      },
      "virtualDesktopHeight": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "virtualDesktopLeft": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "virtualDesktopTop": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "virtualDesktopWidth": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "monitors",
      "virtualDesktopLeft",
      "virtualDesktopTop",
      "virtualDesktopWidth",
      "virtualDesktopHeight"
    ],
    "type": "object"
  },
  "NetworkDeviceClassificationState": {
    "type": "integer",
    "x-enumNames": [
      "Unknown",
      "Pending",
      "Failed",
      "Classified",
      "Manual",
      "Unresolved"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5
    ]
  },
  "NetworkDeviceNameSource": {
    "type": "integer",
    "x-enumNames": [
      "None",
      "ReverseDns",
      "MulticastDns",
      "NetBios"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "NetworkDeviceType": {
    "type": "integer",
    "x-enumNames": [
      "Unknown",
      "Computer",
      "Server",
      "PhoneOrTablet",
      "RouterOrFirewall",
      "Switch",
      "WirelessAccessPoint",
      "NasOrStorage",
      "PrinterOrScanner",
      "Camera",
      "Ups",
      "MediaOrConferencing",
      "SmartDevice",
      "Desktop",
      "Laptop",
      "Phone",
      "Tablet"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12,
      13,
      14,
      15,
      16
    ]
  },
  "NetworkDeviceTypeClassification": {
    "properties": {
      "observedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "reason": {
        "type": "string"
      },
      "source": {
        "type": "string"
      },
      "state": {
        "$ref": "#/components/schemas/NetworkDeviceClassificationState"
      },
      "type": {
        "$ref": "#/components/schemas/NetworkDeviceType"
      }
    },
    "required": [
      "type",
      "source",
      "reason"
    ],
    "type": "object"
  },
  "NetworkDiscoveredDeviceState": {
    "type": "integer",
    "x-enumNames": [
      "ActiveConfirmed",
      "RecentlyConfirmed",
      "CacheOnly",
      "ConfirmationNoReply",
      "CacheRemoved",
      "Stale",
      "ConflictingIdentity",
      "ProxyArpSuspected",
      "LegacyUnverified"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8
    ]
  },
  "NetworkDiscoveryAdapterKind": {
    "type": "integer",
    "x-enumNames": [
      "Standard",
      "Vpn",
      "Tunnel",
      "Loopback"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "NetworkDiscoveryAdapterStatusDto": {
    "properties": {
      "address": {
        "type": [
          "null",
          "string"
        ]
      },
      "detail": {
        "type": [
          "null",
          "string"
        ]
      },
      "included": {
        "type": "boolean"
      },
      "interfaceId": {
        "type": "string"
      },
      "kind": {
        "$ref": "#/components/schemas/NetworkDiscoveryAdapterKind"
      },
      "name": {
        "type": "string"
      },
      "prefixLength": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "reason": {
        "$ref": "#/components/schemas/NetworkDiscoveryEligibilityReason"
      },
      "scanCapable": {
        "default": true,
        "type": "boolean"
      }
    },
    "required": [
      "interfaceId",
      "name",
      "kind",
      "reason",
      "included"
    ],
    "type": "object"
  },
  "NetworkDiscoveryAgentParticipationItem": {
    "properties": {
      "adapterStatuses": {
        "items": {
          "$ref": "#/components/schemas/NetworkDiscoveryAdapterStatusDto"
        },
        "type": "array"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceName": {
        "type": "string"
      },
      "eligibleInterfaceCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "reportedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "supportsCurrentProtocol": {
        "type": "boolean"
      }
    },
    "required": [
      "deviceId",
      "deviceName",
      "supportsCurrentProtocol",
      "reportedAtUtc",
      "eligibleInterfaceCount",
      "adapterStatuses"
    ],
    "type": "object"
  },
  "NetworkDiscoveryArchiveReason": {
    "type": "integer",
    "x-enumNames": [
      "StaleEvidence",
      "RemovedFromCache",
      "InactiveNetwork",
      "EmptyUnidentifiedNetwork",
      "SupersededNetworkIdentity",
      "ExcludedDefaultSwitch"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5
    ]
  },
  "NetworkDiscoveryCompanySnapshot": {
    "properties": {
      "agentParticipation": {
        "items": {
          "$ref": "#/components/schemas/NetworkDiscoveryAgentParticipationItem"
        },
        "type": "array"
      },
      "canManagePlatform": {
        "type": "boolean"
      },
      "canManagePolicy": {
        "type": "boolean"
      },
      "company": {
        "$ref": "#/components/schemas/CompanyDto"
      },
      "companyOverride": {
        "type": [
          "null",
          "string"
        ]
      },
      "companyPolicyOverride": {
        "type": [
          "null",
          "string"
        ]
      },
      "devices": {
        "items": {
          "$ref": "#/components/schemas/DiscoveredNetworkDeviceListItem"
        },
        "type": "array"
      },
      "effectiveMode": {
        "$ref": "#/components/schemas/NetworkDiscoveryMode"
      },
      "effectivePolicy": {
        "$ref": "#/components/schemas/NetworkDiscoveryPolicyDto"
      },
      "managedDevices": {
        "items": {
          "$ref": "#/components/schemas/ManagedNetworkDeviceListItem"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "platformEnabled": {
        "type": "boolean"
      },
      "realms": {
        "items": {
          "$ref": "#/components/schemas/NetworkRealmListItem"
        },
        "type": "array"
      }
    },
    "required": [
      "company",
      "platformEnabled",
      "canManagePlatform",
      "effectiveMode",
      "companyOverride",
      "devices",
      "realms",
      "canManagePolicy",
      "companyPolicyOverride",
      "effectivePolicy",
      "agentParticipation"
    ],
    "type": "object"
  },
  "NetworkDiscoveryConfirmationOutcome": {
    "type": "integer",
    "x-enumNames": [
      "None",
      "Reply",
      "NoReply",
      "ProbeUnavailable",
      "Error",
      "Ambiguous"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5
    ]
  },
  "NetworkDiscoveryEligibilityReason": {
    "type": "integer",
    "x-enumNames": [
      "Eligible",
      "ExcludedVpn",
      "ExcludedTunnel",
      "ExcludedLoopback",
      "InterfaceDown",
      "NoEligibleIpv4Address",
      "UnsupportedPrefix",
      "BeaconRestrictedByPublicProfile",
      "ProviderFailure",
      "DuplicateInterfaceIdentity",
      "ExcludedDefaultSwitch"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10
    ]
  },
  "NetworkDiscoveryEvidence": {
    "type": "integer",
    "x-enumNames": [
      "Arp",
      "ArpAndDns",
      "ActiveArp",
      "ActiveArpAndDns",
      "ManagedMembership"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "NetworkDiscoveryMode": {
    "type": "integer",
    "x-enumNames": [
      "Disabled",
      "PassiveOnly",
      "Gentle"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "NetworkDiscoveryPolicyDto": {
    "properties": {
      "enableMulticastDns": {
        "default": true,
        "type": "boolean"
      },
      "enableNetBios": {
        "default": false,
        "type": "boolean"
      },
      "enableReverseDns": {
        "default": true,
        "type": "boolean"
      },
      "includeLoopbackAdapters": {
        "default": false,
        "type": "boolean"
      },
      "includeTunnelAdapters": {
        "default": false,
        "type": "boolean"
      },
      "includeVpnAdapters": {
        "default": false,
        "type": "boolean"
      },
      "scanIntervalMinutes": {
        "default": 120,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "type": "object"
  },
  "NetworkDiscoveryScanListItem": {
    "properties": {
      "assignedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "completedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "error": {
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "kind": {
        "$ref": "#/components/schemas/NetworkDiscoveryScanRunKind"
      },
      "lastProgressAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "newDevices": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "processedTargets": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "reason": {
        "type": [
          "null",
          "string"
        ]
      },
      "requestedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "requestedByName": {
        "type": [
          "null",
          "string"
        ]
      },
      "respondedTargets": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "sensorDeviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "sensorDeviceName": {
        "type": [
          "null",
          "string"
        ]
      },
      "sensorProgressStale": {
        "default": false,
        "type": "boolean"
      },
      "snmpCredentialAttempts": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "snmpError": {
        "type": [
          "null",
          "string"
        ]
      },
      "snmpProcessedTargets": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "snmpStatus": {
        "$ref": "#/components/schemas/NetworkMonitoringScanComponentStatus"
      },
      "snmpTotalTargets": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "startedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "status": {
        "$ref": "#/components/schemas/NetworkDiscoveryScanRunStatus"
      },
      "tcpError": {
        "type": [
          "null",
          "string"
        ]
      },
      "tcpProcessedTargets": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "tcpStatus": {
        "$ref": "#/components/schemas/NetworkMonitoringScanComponentStatus"
      },
      "tcpTotalTargets": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "totalTargets": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "kind",
      "status",
      "requestedAtUtc",
      "startedAtUtc",
      "completedAtUtc",
      "totalTargets",
      "processedTargets",
      "respondedTargets",
      "newDevices",
      "requestedByName",
      "reason",
      "error"
    ],
    "type": "object"
  },
  "NetworkDiscoveryScanRunKind": {
    "type": "integer",
    "x-enumNames": [
      "Scheduled",
      "Manual",
      "TargetedConfirmation"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "NetworkDiscoveryScanRunStatus": {
    "type": "integer",
    "x-enumNames": [
      "Queued",
      "Assigned",
      "Running",
      "Completed",
      "CancelRequested",
      "Cancelled",
      "Failed",
      "Limited"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7
    ]
  },
  "NetworkDiscoverySensorSelectionMode": {
    "type": "integer",
    "x-enumNames": [
      "Automatic",
      "AssignedExclusive"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "NetworkInternetSpeedDeviceSummary": {
    "properties": {
      "activeDownloadMegabitsPerSecond": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "activeLatencyMilliseconds": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "activeRunId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "activeStatus": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkInternetSpeedRunStatus"
          }
        ]
      },
      "activeUploadMegabitsPerSecond": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "cooldownUntilUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "downloadMegabitsPerSecond": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "enabled": {
        "type": "boolean"
      },
      "interfaces": {
        "items": {
          "$ref": "#/components/schemas/NetworkInternetSpeedInterfaceOption"
        },
        "type": "array"
      },
      "latencyMilliseconds": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "measuredAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "profile": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkInternetSpeedProfile"
          }
        ]
      },
      "sourceDeviceName": {
        "type": [
          "null",
          "string"
        ]
      },
      "sourceInterfaceName": {
        "type": [
          "null",
          "string"
        ]
      },
      "sourceLinkMedium": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkLinkMedium"
          }
        ]
      },
      "sourceLinkSpeedBitsPerSecond": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "unavailableReason": {
        "type": [
          "null",
          "string"
        ]
      },
      "uploadMegabitsPerSecond": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "waitingForNetworkInformation": {
        "type": "boolean"
      }
    },
    "required": [
      "enabled",
      "unavailableReason",
      "activeStatus",
      "activeRunId",
      "activeDownloadMegabitsPerSecond",
      "activeUploadMegabitsPerSecond",
      "activeLatencyMilliseconds",
      "cooldownUntilUtc",
      "downloadMegabitsPerSecond",
      "uploadMegabitsPerSecond",
      "latencyMilliseconds",
      "measuredAtUtc",
      "sourceDeviceName",
      "sourceInterfaceName",
      "sourceLinkMedium",
      "sourceLinkSpeedBitsPerSecond",
      "profile",
      "interfaces"
    ],
    "type": "object"
  },
  "NetworkInternetSpeedHistoryItem": {
    "properties": {
      "completedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "downloadMegabitsPerSecond": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "kind": {
        "$ref": "#/components/schemas/NetworkInternetSpeedRunKind"
      },
      "latencyMilliseconds": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "linkMedium": {
        "$ref": "#/components/schemas/NetworkLinkMedium"
      },
      "networkRealmId": {
        "format": "uuid",
        "type": "string"
      },
      "outcome": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkInternetSpeedOutcome"
          }
        ]
      },
      "requestedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "runId": {
        "format": "uuid",
        "type": "string"
      },
      "sourceDeviceId": {
        "format": "uuid",
        "type": "string"
      },
      "sourceInterfaceName": {
        "type": "string"
      },
      "status": {
        "$ref": "#/components/schemas/NetworkInternetSpeedRunStatus"
      },
      "uploadMegabitsPerSecond": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      }
    },
    "required": [
      "runId",
      "sourceDeviceId",
      "networkRealmId",
      "sourceInterfaceName",
      "linkMedium",
      "kind",
      "status",
      "outcome",
      "requestedAtUtc",
      "completedAtUtc",
      "downloadMegabitsPerSecond",
      "uploadMegabitsPerSecond",
      "latencyMilliseconds"
    ],
    "type": "object"
  },
  "NetworkInternetSpeedHistoryPage": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/NetworkInternetSpeedHistoryItem"
        },
        "type": "array"
      },
      "next": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "NetworkInternetSpeedInterfaceOption": {
    "properties": {
      "interfaceId": {
        "type": "string"
      },
      "interfaceName": {
        "type": "string"
      },
      "isPreferred": {
        "type": "boolean"
      },
      "linkMedium": {
        "$ref": "#/components/schemas/NetworkLinkMedium"
      },
      "linkSpeedBitsPerSecond": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "networkName": {
        "type": "string"
      },
      "networkRealmId": {
        "format": "uuid",
        "type": "string"
      },
      "sourceAddress": {
        "type": "string"
      }
    },
    "required": [
      "networkRealmId",
      "networkName",
      "interfaceId",
      "interfaceName",
      "sourceAddress",
      "linkMedium",
      "linkSpeedBitsPerSecond",
      "isPreferred"
    ],
    "type": "object"
  },
  "NetworkInternetSpeedOutcome": {
    "type": "integer",
    "x-enumNames": [
      "Succeeded",
      "Failed",
      "Cancelled",
      "DeferredBusy",
      "ServerConstrained",
      "InterfaceUnavailable"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5
    ]
  },
  "NetworkInternetSpeedProfile": {
    "type": "integer",
    "x-enumNames": [
      "Standard",
      "LowBandwidth"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "NetworkInternetSpeedRunKind": {
    "type": "integer",
    "x-enumNames": [
      "Scheduled",
      "Manual"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "NetworkInternetSpeedRunStatus": {
    "type": "integer",
    "x-enumNames": [
      "Queued",
      "Assigned",
      "Completed",
      "CancelRequested",
      "Cancelled",
      "Failed",
      "Expired"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6
    ]
  },
  "NetworkInternetSpeedRunSummary": {
    "properties": {
      "detail": {
        "type": [
          "null",
          "string"
        ]
      },
      "downloadMegabitsPerSecond": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "latencyMilliseconds": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "outcome": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkInternetSpeedOutcome"
          }
        ]
      },
      "runId": {
        "format": "uuid",
        "type": "string"
      },
      "status": {
        "$ref": "#/components/schemas/NetworkInternetSpeedRunStatus"
      },
      "uploadMegabitsPerSecond": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      }
    },
    "required": [
      "runId",
      "status",
      "outcome",
      "downloadMegabitsPerSecond",
      "uploadMegabitsPerSecond",
      "latencyMilliseconds",
      "detail"
    ],
    "type": "object"
  },
  "NetworkLinkMedium": {
    "type": "integer",
    "x-enumNames": [
      "Unknown",
      "Ethernet",
      "WiFi",
      "Cellular",
      "OtherPhysical"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "NetworkMapAttachment": {
    "properties": {
      "confidence": {
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "displayName": {
        "type": "string"
      },
      "lastSeenAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "macAddress": {
        "type": "string"
      },
      "managedDeviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "portLabel": {
        "type": "string"
      },
      "switchDeviceId": {
        "format": "uuid",
        "type": "string"
      },
      "switchName": {
        "type": "string"
      },
      "vlanId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "deviceId",
      "managedDeviceId",
      "displayName",
      "macAddress",
      "switchDeviceId",
      "switchName",
      "portLabel",
      "vlanId",
      "confidence",
      "lastSeenAtUtc"
    ],
    "type": "object"
  },
  "NetworkMapLink": {
    "properties": {
      "confidence": {
        "type": "string"
      },
      "evidence": {
        "type": "string"
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "portKey": {
        "type": "string"
      },
      "portLabel": {
        "type": "string"
      },
      "remotePort": {
        "type": [
          "null",
          "string"
        ]
      },
      "source": {
        "type": "string"
      },
      "target": {
        "type": "string"
      },
      "vlanIds": {
        "items": {
          "format": "int32",
          "pattern": "^-?(?:0|[1-9]\\d*)$",
          "type": [
            "integer",
            "string"
          ]
        },
        "type": "array"
      }
    },
    "required": [
      "source",
      "target",
      "portKey",
      "portLabel",
      "remotePort",
      "evidence",
      "confidence",
      "vlanIds",
      "observedAtUtc"
    ],
    "type": "object"
  },
  "NetworkMapNode": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "type": "string"
      },
      "ipAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "kind": {
        "type": "string"
      },
      "lastRespondedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "macAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "managedDeviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "realmId": {
        "format": "uuid",
        "type": "string"
      },
      "realmName": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "realmId",
      "realmName",
      "name",
      "kind",
      "deviceId",
      "managedDeviceId",
      "ipAddress",
      "macAddress",
      "lastRespondedAtUtc"
    ],
    "type": "object"
  },
  "NetworkMapPort": {
    "properties": {
      "interfaceIndex": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "key": {
        "type": "string"
      },
      "label": {
        "type": "string"
      },
      "nodeId": {
        "type": "string"
      },
      "operationalStatus": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "speedBitsPerSecond": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "nodeId",
      "key",
      "label",
      "interfaceIndex",
      "operationalStatus",
      "speedBitsPerSecond"
    ],
    "type": "object"
  },
  "NetworkMapSnapshot": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "freshnessCutoffUtc": {
        "format": "date-time",
        "type": "string"
      },
      "generatedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "links": {
        "items": {
          "$ref": "#/components/schemas/NetworkMapLink"
        },
        "type": "array"
      },
      "nodes": {
        "items": {
          "$ref": "#/components/schemas/NetworkMapNode"
        },
        "type": "array"
      },
      "ports": {
        "items": {
          "$ref": "#/components/schemas/NetworkMapPort"
        },
        "type": "array"
      },
      "truncated": {
        "type": "boolean"
      },
      "unplacedDevices": {
        "items": {
          "$ref": "#/components/schemas/NetworkMapNode"
        },
        "type": [
          "null",
          "array"
        ]
      }
    },
    "required": [
      "companyId",
      "generatedAtUtc",
      "freshnessCutoffUtc",
      "truncated",
      "nodes",
      "ports",
      "links"
    ],
    "type": "object"
  },
  "NetworkMonitoringCompanySnapshot": {
    "properties": {
      "canManagePlatform": {
        "type": "boolean"
      },
      "canManagePolicy": {
        "type": "boolean"
      },
      "company": {
        "$ref": "#/components/schemas/CompanyDto"
      },
      "credentials": {
        "items": {
          "$ref": "#/components/schemas/SnmpCredentialProfileListItem"
        },
        "type": "array"
      },
      "devices": {
        "items": {
          "$ref": "#/components/schemas/SnmpMonitoredDeviceListItem"
        },
        "type": "array"
      },
      "effectiveTcpPolicy": {
        "$ref": "#/components/schemas/NetworkTcpMonitoringPolicyDto"
      },
      "enabled": {
        "type": "boolean"
      },
      "enabledCommonCommunitySelections": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "hasCompanyTcpOverride": {
        "type": "boolean"
      },
      "idracDevices": {
        "items": {
          "$ref": "#/components/schemas/IdracMonitoringDeviceItem"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "idracMonitoringEnabled": {
        "default": true,
        "type": "boolean"
      },
      "iloDevices": {
        "items": {
          "$ref": "#/components/schemas/IloMonitoringDeviceItem"
        },
        "type": "array"
      },
      "iloMonitoringEnabled": {
        "type": "boolean"
      },
      "iloPolicyManagedGlobally": {
        "type": "boolean"
      },
      "lastResponseAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "monitoredDevices": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "networkMap": {
        "items": {
          "$ref": "#/components/schemas/NetworkMapAttachment"
        },
        "type": "array"
      },
      "organizationTcpPolicy": {
        "$ref": "#/components/schemas/NetworkTcpMonitoringPolicyDto"
      },
      "platformEnabled": {
        "type": "boolean"
      },
      "respondingDevices": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "results": {
        "items": {
          "$ref": "#/components/schemas/NetworkMonitoringResultDevice"
        },
        "type": "array"
      },
      "successfulPollIntervalMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "tcpDevices": {
        "items": {
          "$ref": "#/components/schemas/NetworkTcpMonitoredDeviceListItem"
        },
        "type": "array"
      },
      "tcpPlatformEnabled": {
        "type": "boolean"
      },
      "unknownCredentialCooldownHours": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "company",
      "platformEnabled",
      "canManagePlatform",
      "canManagePolicy",
      "enabled",
      "enabledCommonCommunitySelections",
      "successfulPollIntervalMinutes",
      "unknownCredentialCooldownHours",
      "credentials",
      "monitoredDevices",
      "respondingDevices",
      "lastResponseAtUtc",
      "devices",
      "tcpPlatformEnabled",
      "organizationTcpPolicy",
      "hasCompanyTcpOverride",
      "effectiveTcpPolicy",
      "tcpDevices",
      "results",
      "networkMap",
      "iloMonitoringEnabled",
      "iloDevices",
      "iloPolicyManagedGlobally"
    ],
    "type": "object"
  },
  "NetworkMonitoringResultDevice": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "displayName": {
        "type": "string"
      },
      "ipAddress": {
        "type": "string"
      },
      "lastObservedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "managedDeviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "openPorts": {
        "items": {
          "$ref": "#/components/schemas/NetworkTcpPortPortalItem"
        },
        "type": "array"
      },
      "realmName": {
        "type": "string"
      },
      "snmp": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/SnmpMonitoredDeviceListItem"
          }
        ]
      },
      "snmpRefresh": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/SnmpDeviceRefreshPortalState"
          }
        ]
      },
      "tcpLastCheckedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "deviceId",
      "managedDeviceId",
      "displayName",
      "ipAddress",
      "realmName",
      "snmp",
      "openPorts",
      "lastObservedAtUtc",
      "tcpLastCheckedAtUtc"
    ],
    "type": "object"
  },
  "NetworkMonitoringScanComponentStatus": {
    "default": 0,
    "type": "integer",
    "x-enumNames": [
      "NotRequested",
      "Queued",
      "Running",
      "Completed",
      "Blocked",
      "Failed",
      "Cancelled"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6
    ]
  },
  "NetworkPortInteraction": {
    "type": "integer",
    "x-enumNames": [
      "ObserveOnly",
      "Http",
      "Https",
      "Ssh",
      "Telnet"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "NetworkProbeJobStatus": {
    "type": "integer",
    "x-enumNames": [
      "Queued",
      "Assigned",
      "Succeeded",
      "Failed",
      "Expired"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "NetworkProbeOutcome": {
    "type": "integer",
    "x-enumNames": [
      "Succeeded",
      "TimedOut",
      "AuthenticationRejected",
      "Unreachable",
      "ProtocolError",
      "Cancelled"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5
    ]
  },
  "NetworkRealmAddressingListItem": {
    "properties": {
      "broadcastAddress": {
        "type": "string"
      },
      "cidr": {
        "type": "string"
      },
      "current": {
        "type": "boolean"
      },
      "gatewayAddresses": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "gatewayMacAddresses": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "interfaceCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "lastSeenAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "netmask": {
        "type": "string"
      },
      "networkAddress": {
        "type": "string"
      },
      "observerCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "prefixLength": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "networkAddress",
      "prefixLength",
      "cidr",
      "netmask",
      "broadcastAddress",
      "gatewayAddresses",
      "gatewayMacAddresses",
      "observerCount",
      "interfaceCount",
      "lastSeenAtUtc",
      "current"
    ],
    "type": "object"
  },
  "NetworkRealmEvidence": {
    "type": "integer",
    "x-enumNames": [
      "Inferred",
      "Singleton",
      "Verified",
      "RepeatedlyVerified",
      "OperatorConfirmed",
      "Stale"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5
    ]
  },
  "NetworkRealmListItem": {
    "properties": {
      "activeScan": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkDiscoveryScanListItem"
          }
        ]
      },
      "activeSensorDeviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "activeSensorName": {
        "type": [
          "null",
          "string"
        ]
      },
      "addressing": {
        "items": {
          "$ref": "#/components/schemas/NetworkRealmAddressingListItem"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "archiveReason": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkDiscoveryArchiveReason"
          }
        ]
      },
      "archivedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "assignedBackupAvailable": {
        "type": "boolean"
      },
      "assignedBackupName": {
        "type": [
          "null",
          "string"
        ]
      },
      "assignedPrimaryAvailable": {
        "type": "boolean"
      },
      "assignedPrimaryName": {
        "type": [
          "null",
          "string"
        ]
      },
      "discoveredDevices": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "evidence": {
        "$ref": "#/components/schemas/NetworkRealmEvidence"
      },
      "firstSeenAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "internetSpeedEnabledOverride": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "lastScan": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkDiscoveryScanListItem"
          }
        ]
      },
      "lastScanCompletedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lastScanStatus": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkDiscoveryScanRunStatus"
          }
        ]
      },
      "lastSeenAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "managedAgents": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "nameLocked": {
        "type": "boolean"
      },
      "nextGentleScanAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "observers": {
        "items": {
          "$ref": "#/components/schemas/NetworkRealmObserverListItem"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "previousIdentities": {
        "items": {
          "$ref": "#/components/schemas/NetworkRealmPreviousIdentityListItem"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "scanSuspendedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "sensorSelectionMode": {
        "$ref": "#/components/schemas/NetworkDiscoverySensorSelectionMode"
      },
      "standbySensorDeviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "standbySensorName": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "name",
      "evidence",
      "nameLocked",
      "managedAgents",
      "discoveredDevices",
      "activeSensorName",
      "standbySensorName",
      "lastSeenAtUtc",
      "nextGentleScanAtUtc",
      "lastScanCompletedAtUtc",
      "lastScanStatus",
      "activeScan",
      "archivedAtUtc",
      "archiveReason",
      "sensorSelectionMode",
      "assignedPrimaryName",
      "assignedBackupName",
      "assignedPrimaryAvailable",
      "assignedBackupAvailable"
    ],
    "type": "object"
  },
  "NetworkRealmObserverListItem": {
    "properties": {
      "assignedSiteName": {
        "type": [
          "null",
          "string"
        ]
      },
      "current": {
        "type": "boolean"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceName": {
        "type": "string"
      },
      "evidence": {
        "$ref": "#/components/schemas/NetworkRealmEvidence"
      },
      "firstSeenAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "gatewayAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "gatewayMacAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "interfaceMacAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "interfaceName": {
        "type": "string"
      },
      "ipAddress": {
        "type": "string"
      },
      "lastBeaconSeenAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lastSeenAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "prefixLength": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "scanCapable": {
        "type": "boolean"
      }
    },
    "required": [
      "deviceId",
      "deviceName",
      "assignedSiteName",
      "interfaceName",
      "ipAddress",
      "prefixLength",
      "gatewayAddress",
      "gatewayMacAddress",
      "interfaceMacAddress",
      "scanCapable",
      "evidence",
      "firstSeenAtUtc",
      "lastSeenAtUtc",
      "lastBeaconSeenAtUtc",
      "current"
    ],
    "type": "object"
  },
  "NetworkRealmPreviousIdentityListItem": {
    "properties": {
      "firstSeenAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "lastSeenAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "reason": {
        "$ref": "#/components/schemas/NetworkRealmSupersessionReason"
      },
      "supersededAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "firstSeenAtUtc",
      "lastSeenAtUtc",
      "supersededAtUtc",
      "reason"
    ],
    "type": "object"
  },
  "NetworkRealmSupersessionReason": {
    "type": "integer",
    "x-enumNames": [
      "MissingGatewayMacEnriched"
    ],
    "x-enumValues": [
      0
    ]
  },
  "NetworkTcpMonitoredDeviceListItem": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "displayName": {
        "type": "string"
      },
      "ipAddress": {
        "type": "string"
      },
      "lastAttemptedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "lastOpenAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "managedDeviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "openPorts": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "realmName": {
        "type": "string"
      }
    },
    "required": [
      "deviceId",
      "displayName",
      "ipAddress",
      "realmName",
      "openPorts",
      "lastAttemptedAtUtc",
      "lastOpenAtUtc"
    ],
    "type": "object"
  },
  "NetworkTcpMonitoringPolicyDto": {
    "properties": {
      "allowTelnet": {
        "type": "boolean"
      },
      "enabled": {
        "type": "boolean"
      },
      "evidenceFreshnessMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "minimumRealmSpacingSeconds": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "pollIntervalMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "ports": {
        "items": {
          "$ref": "#/components/schemas/NetworkTcpPortDefinitionDto"
        },
        "type": "array"
      },
      "requireSnmpSuccess": {
        "type": "boolean"
      }
    },
    "required": [
      "enabled",
      "ports",
      "pollIntervalMinutes",
      "minimumRealmSpacingSeconds",
      "evidenceFreshnessMinutes",
      "requireSnmpSuccess",
      "allowTelnet"
    ],
    "type": "object"
  },
  "NetworkTcpPortDefinitionDto": {
    "properties": {
      "enabled": {
        "default": true,
        "type": "boolean"
      },
      "interaction": {
        "$ref": "#/components/schemas/NetworkPortInteraction"
      },
      "name": {
        "type": "string"
      },
      "port": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "port",
      "name",
      "interaction"
    ],
    "type": "object"
  },
  "NetworkTcpPortOutcome": {
    "type": "integer",
    "x-enumNames": [
      "Open",
      "Refused",
      "TimedOut",
      "Unreachable",
      "Error",
      "Cancelled"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5
    ]
  },
  "NetworkTcpPortPortalItem": {
    "properties": {
      "canLaunch": {
        "type": "boolean"
      },
      "connectMilliseconds": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "evidenceDeviceId": {
        "format": "uuid",
        "type": "string"
      },
      "identityEpochId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "interaction": {
        "$ref": "#/components/schemas/NetworkPortInteraction"
      },
      "lastAttemptedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "lastOpenAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lastOutcome": {
        "$ref": "#/components/schemas/NetworkTcpPortOutcome"
      },
      "launchUnavailableReason": {
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "observerDeviceId": {
        "format": "uuid",
        "type": "string"
      },
      "port": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "port",
      "name",
      "interaction",
      "lastOutcome",
      "lastAttemptedAtUtc",
      "lastOpenAtUtc",
      "connectMilliseconds",
      "observerDeviceId",
      "identityEpochId",
      "canLaunch",
      "launchUnavailableReason",
      "evidenceDeviceId"
    ],
    "type": "object"
  },
  "NewWebhookResponse": {
    "properties": {
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "signingSecret": {
        "type": "string"
      },
      "url": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "url",
      "signingSecret"
    ],
    "type": "object"
  },
  "OperationSummary": {
    "properties": {
      "completedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "createdAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "deadlineUtc": {
        "format": "date-time",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "kind": {
        "type": "string"
      },
      "status": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "kind",
      "createdAtUtc",
      "deadlineUtc",
      "completedAtUtc",
      "status"
    ],
    "type": "object"
  },
  "OsKind": {
    "type": "integer",
    "x-enumNames": [
      "Windows",
      "MacOs",
      "Linux",
      "Android",
      "Ios"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "OutcomeResponse": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "factsObservedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "runId": {
        "format": "uuid",
        "type": "string"
      },
      "state": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "runId",
      "deviceId",
      "state",
      "factsObservedAtUtc",
      "revision"
    ],
    "type": "object"
  },
  "PageOfActivityResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/ActivityResponse"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfAlertResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/AlertResponse"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfCompanyResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/CompanyResponse"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfDeliveryResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/DeliveryResponse"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfDeviceResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/DeviceResponse"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfFleetSoftwareItem": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/FleetSoftwareItem"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfGroupResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/GroupResponse"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfInventoryResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/InventoryResponse"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfMaintenanceResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/MaintenanceResponse"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfOperationSummary": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/OperationSummary"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfOutcomeResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/OutcomeResponse"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfRemoteHandleSummary": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/RemoteHandleSummary"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfResourceSyncChange": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/ResourceSyncChange"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfSiteResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/SiteResponse"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PageOfSyncChange": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/SyncChange"
        },
        "type": "array"
      },
      "next": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next"
    ],
    "type": "object"
  },
  "PasswordAuditFinding": {
    "properties": {
      "account": {
        "type": "string"
      },
      "administrator": {
        "type": "boolean"
      },
      "enabled": {
        "type": "boolean"
      },
      "failureCode": {
        "type": [
          "null",
          "string"
        ]
      },
      "finding": {
        "type": "string"
      },
      "hibpAvailable": {
        "type": "boolean"
      },
      "hibpOccurrences": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "lastLogonSource": {
        "type": [
          "null",
          "string"
        ]
      },
      "lastLogonUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lastPasswordSetUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "password": {
        "type": [
          "null",
          "string"
        ]
      },
      "state": {
        "type": "string"
      }
    },
    "type": "object"
  },
  "PasswordAuditOptions": {
    "properties": {
      "administratorsOnly": {
        "default": true,
        "type": "boolean"
      },
      "expectedDomain": {
        "type": [
          "null",
          "string"
        ]
      },
      "includeDisabled": {
        "default": false,
        "type": "boolean"
      },
      "includeInactiveAccounts": {
        "type": "boolean"
      },
      "inspectOnly": {
        "default": false,
        "type": "boolean"
      },
      "isValid": {
        "type": "boolean"
      },
      "reportLocale": {
        "type": [
          "null",
          "string"
        ]
      },
      "reportTimeZone": {
        "type": [
          "null",
          "string"
        ]
      },
      "scope": {
        "default": "Local",
        "type": "string"
      },
      "serversOnly": {
        "default": false,
        "type": "boolean"
      }
    },
    "type": "object"
  },
  "PasswordAuditReport": {
    "properties": {
      "accountsAttempted": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "accountsChecked": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "accountsExcluded": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "accountsSelected": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "checkedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "domain": {
        "type": "string"
      },
      "domainSid": {
        "type": [
          "null",
          "string"
        ]
      },
      "error": {
        "type": [
          "null",
          "string"
        ]
      },
      "findings": {
        "items": {
          "$ref": "#/components/schemas/PasswordAuditFinding"
        },
        "type": "array"
      },
      "inactiveAccounts": {
        "items": {
          "$ref": "#/components/schemas/InactiveAccountLogon"
        },
        "type": "array"
      },
      "inactiveAccountsCutoffUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "inactiveAccountsState": {
        "type": [
          "null",
          "string"
        ]
      },
      "inactiveUnknownDates": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "isDomainController": {
        "type": "boolean"
      },
      "isServer": {
        "type": "boolean"
      },
      "machineName": {
        "type": "string"
      },
      "moreAccounts": {
        "type": "boolean"
      },
      "noKnownMatch": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "state": {
        "type": "string"
      },
      "summaryEmailSent": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "unavailable": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "workers": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "type": "object"
  },
  "PasswordAuditScheduleInput": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "enabled": {
        "default": true,
        "type": "boolean"
      },
      "everyDays": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "expectedRevision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "reportLocale": {
        "type": [
          "null",
          "string"
        ]
      },
      "reportTimeZone": {
        "type": [
          "null",
          "string"
        ]
      },
      "requestKey": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "runOnce": {
        "default": false,
        "type": "boolean"
      },
      "selection": {
        "$ref": "#/components/schemas/PasswordAuditSelection"
      },
      "startAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "id",
      "companyId",
      "deviceId",
      "everyDays",
      "startAtUtc",
      "selection"
    ],
    "type": "object"
  },
  "PasswordAuditScheduleOutcome": {
    "properties": {
      "devices": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "emailSent": {
        "default": false,
        "type": "boolean"
      },
      "matches": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "skipped": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "startedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "state": {
        "type": "string"
      },
      "unavailable": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "startedAtUtc",
      "state"
    ],
    "type": "object"
  },
  "PasswordAuditScheduleView": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "enabled": {
        "type": "boolean"
      },
      "everyDays": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "lastRun": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/PasswordAuditScheduleOutcome"
          }
        ]
      },
      "nextDueAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "reportLocale": {
        "type": [
          "null",
          "string"
        ]
      },
      "reportTimeZone": {
        "type": [
          "null",
          "string"
        ]
      },
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "runOnce": {
        "default": false,
        "type": "boolean"
      },
      "running": {
        "type": "boolean"
      },
      "selection": {
        "$ref": "#/components/schemas/PasswordAuditSelection"
      },
      "startAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "targetName": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "companyId",
      "deviceId",
      "everyDays",
      "startAtUtc",
      "selection",
      "enabled",
      "revision",
      "nextDueAtUtc",
      "running",
      "lastRun"
    ],
    "type": "object"
  },
  "PasswordAuditSelection": {
    "properties": {
      "administratorsOnly": {
        "default": true,
        "type": "boolean"
      },
      "domainAccounts": {
        "default": true,
        "type": "boolean"
      },
      "includeDisabled": {
        "default": false,
        "type": "boolean"
      },
      "includeInactiveAccounts": {
        "default": false,
        "type": "boolean"
      },
      "localAccounts": {
        "default": true,
        "type": "boolean"
      },
      "serversOnly": {
        "default": false,
        "type": "boolean"
      }
    },
    "type": "object"
  },
  "PasswordAuditTarget": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "domain": {
        "type": "string"
      },
      "domainSid": {
        "type": [
          "null",
          "string"
        ]
      },
      "error": {
        "type": [
          "null",
          "string"
        ]
      },
      "isDomainController": {
        "type": "boolean"
      },
      "isServer": {
        "type": "boolean"
      },
      "name": {
        "type": "string"
      },
      "state": {
        "type": "string"
      }
    },
    "required": [
      "deviceId",
      "name",
      "companyId",
      "isServer",
      "isDomainController",
      "domain",
      "state"
    ],
    "type": "object"
  },
  "PatchApprovalIdentity": {
    "properties": {
      "revisionNumber": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "updateId": {
        "type": "string"
      }
    },
    "required": [
      "updateId",
      "revisionNumber"
    ],
    "type": "object"
  },
  "PatchApprovalListItem": {
    "properties": {
      "category": {
        "type": [
          "null",
          "string"
        ]
      },
      "decidedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "decidedByDisplayName": {
        "type": [
          "null",
          "string"
        ]
      },
      "decidedByUserId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "kbArticle": {
        "type": [
          "null",
          "string"
        ]
      },
      "operatingSystem": {
        "type": [
          "null",
          "string"
        ]
      },
      "patchKey": {
        "type": "string"
      },
      "releasedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "revisionNumber": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "severity": {
        "type": "string"
      },
      "state": {
        "$ref": "#/components/schemas/AutomationPatchApprovalState"
      },
      "title": {
        "type": "string"
      },
      "updateId": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "updateId",
      "revisionNumber",
      "patchKey",
      "title",
      "kbArticle",
      "severity",
      "category",
      "operatingSystem",
      "releasedAtUtc",
      "state",
      "decidedByUserId",
      "decidedByDisplayName",
      "decidedAtUtc"
    ],
    "type": "object"
  },
  "PatchBacklogItem": {
    "properties": {
      "affectedMachines": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "deniedMachines": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "kbArticle": {
        "type": [
          "null",
          "string"
        ]
      },
      "machines": {
        "items": {
          "$ref": "#/components/schemas/PatchBacklogMachine"
        },
        "type": "array"
      },
      "releasedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "revisionNumber": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "severity": {
        "type": "string"
      },
      "staleMachines": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "title": {
        "type": "string"
      },
      "unapprovedMachines": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "unknownMachines": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "updateId": {
        "type": "string"
      }
    },
    "required": [
      "updateId",
      "revisionNumber",
      "title",
      "kbArticle",
      "severity",
      "releasedAtUtc",
      "affectedMachines",
      "unapprovedMachines",
      "deniedMachines",
      "unknownMachines",
      "staleMachines",
      "machines"
    ],
    "type": "object"
  },
  "PatchBacklogMachine": {
    "properties": {
      "approval": {
        "type": "string"
      },
      "company": {
        "type": "string"
      },
      "complete": {
        "type": "boolean"
      },
      "delivery": {
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "scannedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "site": {
        "type": [
          "null",
          "string"
        ]
      },
      "stale": {
        "type": "boolean"
      }
    },
    "required": [
      "deviceId",
      "name",
      "company",
      "site",
      "approval",
      "delivery",
      "scannedAtUtc",
      "stale",
      "complete"
    ],
    "type": "object"
  },
  "PatchBacklogPage": {
    "properties": {
      "incompleteDevices": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "items": {
        "items": {
          "$ref": "#/components/schemas/PatchBacklogItem"
        },
        "type": "array"
      },
      "limit": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "offset": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "staleDevices": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "total": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "unreportedDevices": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "uploadingDevices": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "total",
      "offset",
      "limit"
    ],
    "type": "object"
  },
  "PatchBacklogRequest": {
    "properties": {
      "company": {
        "type": [
          "null",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "device": {
        "type": [
          "null",
          "string"
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "limit": {
        "default": 50,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "machineOffset": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "offset": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "onlyUnapproved": {
        "default": true,
        "type": "boolean"
      },
      "revisionNumber": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "search": {
        "type": [
          "null",
          "string"
        ]
      },
      "site": {
        "type": [
          "null",
          "string"
        ]
      },
      "siteId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "updateId": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "type": "object"
  },
  "PatchComplianceFactDto": {
    "properties": {
      "errorCode": {
        "type": [
          "null",
          "string"
        ]
      },
      "failedCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "inventoryComplete": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "isStale": {
        "default": false,
        "type": "boolean"
      },
      "lastSuccessfulScanAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "missingCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "missingCriticalCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "missingUpdates": {
        "items": {
          "$ref": "#/components/schemas/PatchFactDto"
        },
        "type": "array"
      },
      "pageCount": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "pageIndex": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "provider": {
        "type": "string"
      },
      "scanId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "scannedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "serviceId": {
        "type": [
          "null",
          "string"
        ]
      },
      "serviceSource": {
        "type": [
          "null",
          "string"
        ]
      },
      "state": {
        "$ref": "#/components/schemas/PatchComplianceState"
      }
    },
    "required": [
      "scannedAtUtc",
      "state",
      "missingCount",
      "missingCriticalCount",
      "failedCount",
      "missingUpdates",
      "provider"
    ],
    "type": "object"
  },
  "PatchComplianceState": {
    "type": "integer",
    "x-enumNames": [
      "Unknown",
      "Compliant",
      "MissingUpdates",
      "ScanFailed",
      "Unsupported"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "PatchFactDto": {
    "properties": {
      "canRequestUserInput": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "categoryNames": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "cveIds": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "description": {
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "type": "string"
      },
      "installedDotNetMajor": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "isOptional": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "kbArticleIds": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "maximumDownloadSizeBytes": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "rebootBehavior": {
        "$ref": "#/components/schemas/PatchRebootBehavior"
      },
      "rebootRequired": {
        "default": false,
        "type": "boolean"
      },
      "releasedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "revisionNumber": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "severity": {
        "$ref": "#/components/schemas/PatchSeverity"
      },
      "title": {
        "type": "string"
      },
      "updateId": {
        "type": [
          "null",
          "string"
        ]
      },
      "updateType": {
        "$ref": "#/components/schemas/PatchUpdateType"
      }
    },
    "required": [
      "id",
      "title"
    ],
    "type": "object"
  },
  "PatchFactsResponse": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "facts": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/PatchComplianceFactDto"
          }
        ]
      }
    },
    "required": [
      "deviceId",
      "facts"
    ],
    "type": "object"
  },
  "PatchFieldRequest": {
    "properties": {
      "value": {
        "type": [
          "null",
          "string"
        ]
      },
      "version": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "value",
      "version"
    ],
    "type": "object"
  },
  "PatchManagementPolicySpec": {
    "properties": {
      "approveFilters": {
        "items": {
          "$ref": "#/components/schemas/PatchPolicyFilter"
        },
        "type": "array"
      },
      "denyFilters": {
        "items": {
          "$ref": "#/components/schemas/PatchPolicyFilter"
        },
        "type": "array"
      },
      "effectivePower": {
        "$ref": "#/components/schemas/PatchPolicyPowerSpec"
      },
      "installWindowMinutes": {
        "default": 60,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "manualDecisions": {
        "items": {
          "$ref": "#/components/schemas/PatchPolicyManualDecision"
        },
        "type": "array"
      },
      "mode": {
        "$ref": "#/components/schemas/PatchPolicyMode"
      },
      "power": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/PatchPolicyPowerSpec"
          }
        ]
      },
      "requiredOnly": {
        "default": false,
        "type": "boolean"
      },
      "schemaVersion": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "siteOverrides": {
        "items": {
          "$ref": "#/components/schemas/PatchPolicySiteOverride"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "startWindowMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "windowsUpdateSettings": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/WindowsUpdateConfigurationSpec"
          }
        ]
      }
    },
    "required": [
      "mode",
      "approveFilters",
      "denyFilters",
      "manualDecisions"
    ],
    "type": "object"
  },
  "PatchPolicyCriterion": {
    "properties": {
      "field": {
        "$ref": "#/components/schemas/PatchPolicyCriterionField"
      },
      "operator": {
        "$ref": "#/components/schemas/PatchPolicyCriterionOperator"
      },
      "value": {
        "default": "",
        "type": "string"
      }
    },
    "required": [
      "field"
    ],
    "type": "object"
  },
  "PatchPolicyCriterionField": {
    "type": "integer",
    "x-enumNames": [
      "All",
      "Category",
      "Description",
      "MaximumSizeBytes",
      "KbArticle",
      "Severity",
      "RebootBehavior",
      "ReleaseAgeDays",
      "RequestsUserInput",
      "Title",
      "UpdateType",
      "Optional",
      "InstalledDotNetMajor"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12
    ]
  },
  "PatchPolicyCriterionOperator": {
    "default": 0,
    "type": "integer",
    "x-enumNames": [
      "Equals",
      "Contains",
      "LessThanOrEqual",
      "GreaterThanOrEqual",
      "NotEquals",
      "NotContains",
      "StartsWith",
      "EndsWith",
      "LessThan",
      "GreaterThan"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9
    ]
  },
  "PatchPolicyDecision": {
    "type": "integer",
    "x-enumNames": [
      "Unapproved",
      "Approved",
      "Denied"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "PatchPolicyFilter": {
    "properties": {
      "criteria": {
        "items": {
          "$ref": "#/components/schemas/PatchPolicyCriterion"
        },
        "type": "array"
      },
      "schemaVersion": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "criteria"
    ],
    "type": "object"
  },
  "PatchPolicyManualDecision": {
    "properties": {
      "decision": {
        "$ref": "#/components/schemas/PatchPolicyDecision"
      },
      "identity": {
        "$ref": "#/components/schemas/PatchUpdateIdentity"
      }
    },
    "required": [
      "identity",
      "decision"
    ],
    "type": "object"
  },
  "PatchPolicyMode": {
    "type": "integer",
    "x-enumNames": [
      "AuditOnly",
      "InstallApproved"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "PatchPolicyPowerSpec": {
    "properties": {
      "allowUserRestartDeferral": {
        "default": true,
        "type": "boolean"
      },
      "finalRestartCountdownMinutes": {
        "default": 5,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "maximumRestartDeferrals": {
        "default": 3,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "restartDeferralMinutes": {
        "default": 30,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "restartMode": {
        "$ref": "#/components/schemas/PatchRestartMode"
      },
      "restartNoticeMinutes": {
        "default": 15,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "restartOnlyWhenNoUserIsLoggedOn": {
        "default": false,
        "type": "boolean"
      },
      "restartWhenNoUserIsLoggedOn": {
        "default": true,
        "type": "boolean"
      },
      "suppressMonitoring": {
        "default": true,
        "type": "boolean"
      },
      "wakeBeforeWindow": {
        "default": false,
        "type": "boolean"
      },
      "wakeLeadMinutes": {
        "default": 15,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "type": "object"
  },
  "PatchPolicySiteOverride": {
    "properties": {
      "additionalApproveFilters": {
        "items": {
          "$ref": "#/components/schemas/PatchPolicyFilter"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "additionalDenyFilters": {
        "items": {
          "$ref": "#/components/schemas/PatchPolicyFilter"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "installWindowMinutes": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "power": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/PatchPolicyPowerSpec"
          }
        ]
      },
      "schedule": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationScheduleSpec"
          }
        ]
      },
      "siteId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "siteId"
    ],
    "type": "object"
  },
  "PatchRebootBehavior": {
    "default": 0,
    "type": "integer",
    "x-enumNames": [
      "Unknown",
      "Never",
      "Always",
      "CanRequest"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "PatchRestartMode": {
    "default": 0,
    "type": "integer",
    "x-enumNames": [
      "DoNotRestart",
      "RestartIfRequired",
      "RestartIfRequiredWithNotice",
      "ShutdownAfterPatching"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "PatchSeverity": {
    "default": 0,
    "type": "integer",
    "x-enumNames": [
      "Unknown",
      "Low",
      "Moderate",
      "Important",
      "Critical"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "PatchUpdateIdentity": {
    "properties": {
      "revisionNumber": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "updateId": {
        "type": "string"
      }
    },
    "required": [
      "updateId",
      "revisionNumber"
    ],
    "type": "object"
  },
  "PatchUpdateType": {
    "default": 0,
    "type": "integer",
    "x-enumNames": [
      "Unknown",
      "Software",
      "Driver"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "PatchVulnerabilityItem": {
    "properties": {
      "affectedDevices": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "agentReported": {
        "default": false,
        "type": "boolean"
      },
      "cve": {
        "type": "string"
      },
      "cvss": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "fixingKbs": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "incompleteDevices": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "machinePatchCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "machines": {
        "items": {
          "$ref": "#/components/schemas/VulnerabilityMachine"
        },
        "type": "array"
      },
      "retrievedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "source": {
        "type": "string"
      },
      "staleDevices": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "vector": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "cve",
      "cvss",
      "vector",
      "source",
      "retrievedAtUtc",
      "affectedDevices",
      "staleDevices",
      "incompleteDevices",
      "fixingKbs",
      "machinePatchCount",
      "machines"
    ],
    "type": "object"
  },
  "PatchVulnerabilityPage": {
    "properties": {
      "availableMonths": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "catalogueFresh": {
        "type": "boolean"
      },
      "devicesWithoutPatchRows": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "expectedMonths": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "items": {
        "items": {
          "$ref": "#/components/schemas/PatchVulnerabilityItem"
        },
        "type": "array"
      },
      "limit": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "offset": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "oldestRefreshUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "scopedDevices": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "total": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "unmappedPatches": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "total",
      "offset",
      "limit",
      "scopedDevices",
      "devicesWithoutPatchRows",
      "unmappedPatches",
      "availableMonths",
      "expectedMonths",
      "oldestRefreshUtc",
      "catalogueFresh"
    ],
    "type": "object"
  },
  "PatchVulnerabilityRequest": {
    "properties": {
      "company": {
        "type": [
          "null",
          "string"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "device": {
        "type": [
          "null",
          "string"
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "limit": {
        "default": 50,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "machineOffset": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "minimumCvss": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "offset": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "onlyUnknownCvss": {
        "default": false,
        "type": "boolean"
      },
      "search": {
        "type": [
          "null",
          "string"
        ]
      },
      "site": {
        "type": [
          "null",
          "string"
        ]
      },
      "siteId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "type": "object"
  },
  "PerformanceHistoryResponse": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "from": {
        "format": "date-time",
        "type": "string"
      },
      "items": {
        "items": {
          "$ref": "#/components/schemas/DevicePerformanceRollupDto"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "to": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "deviceId",
      "from",
      "to",
      "items"
    ],
    "type": "object"
  },
  "ProcessInfoDto": {
    "properties": {
      "cpuPercent": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "id": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "memoryBytes": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "owner": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "name",
      "cpuPercent",
      "memoryBytes"
    ],
    "type": "object"
  },
  "PublicApiTokenResponse": {
    "properties": {
      "accessToken": {
        "type": "string"
      },
      "expiresAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "expiresIn": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "tokenType": {
        "type": "string"
      }
    },
    "required": [
      "accessToken",
      "tokenType",
      "expiresIn",
      "expiresAtUtc"
    ],
    "type": "object"
  },
  "RecoveredOperation": {
    "properties": {
      "completedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "createdAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "deadlineUtc": {
        "format": "date-time",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "kind": {
        "type": "string"
      },
      "progress": {
        "$ref": "#/components/schemas/IntegrationOperationProgress"
      },
      "result": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/JsonElement"
          }
        ]
      },
      "status": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "kind",
      "status",
      "createdAtUtc",
      "deadlineUtc",
      "completedAtUtc",
      "progress",
      "result"
    ],
    "type": "object"
  },
  "RemoteHandleSummary": {
    "properties": {
      "expires": {
        "format": "date-time",
        "type": "string"
      },
      "handleId": {
        "format": "uuid",
        "type": "string"
      },
      "session": {
        "$ref": "#/components/schemas/IntegrationRemoteSession"
      }
    },
    "required": [
      "handleId",
      "session",
      "expires"
    ],
    "type": "object"
  },
  "RemoteResourcesOptionsDto": {
    "properties": {
      "enableMulticastDns": {
        "default": false,
        "type": "boolean"
      },
      "enableNetBios": {
        "default": false,
        "type": "boolean"
      },
      "interfaceId": {
        "type": [
          "null",
          "string"
        ]
      },
      "localAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "localRdpOnly": {
        "default": false,
        "type": "boolean"
      },
      "maxHosts": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "ports": {
        "items": {
          "format": "int32",
          "pattern": "^-?(?:0|[1-9]\\d*)$",
          "type": [
            "integer",
            "string"
          ]
        },
        "type": "array"
      },
      "websiteRdpCredentials": {
        "default": false,
        "type": "boolean"
      }
    },
    "required": [
      "ports",
      "maxHosts",
      "interfaceId"
    ],
    "type": "object"
  },
  "ResourceSyncChange": {
    "properties": {
      "data": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/JsonElement"
          }
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "kind": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "kind",
      "data"
    ],
    "type": "object"
  },
  "RevisionRequest": {
    "properties": {
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "revision"
    ],
    "type": "object"
  },
  "RmmRoleDto": {
    "properties": {
      "customRoleId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "description": {
        "type": "string"
      },
      "isBuiltIn": {
        "type": "boolean"
      },
      "key": {
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "permissions": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "key",
      "name",
      "description",
      "permissions",
      "isBuiltIn"
    ],
    "type": "object"
  },
  "RosterUserDto": {
    "properties": {
      "accessState": {
        "$ref": "#/components/schemas/AccountAccessState"
      },
      "assignedRmmRoleKeys": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "companyName": {
        "type": [
          "null",
          "string"
        ]
      },
      "displayName": {
        "type": "string"
      },
      "email": {
        "type": "string"
      },
      "hasMicrosoftSso": {
        "default": false,
        "type": "boolean"
      },
      "hasSessionHistory": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "isActive": {
        "type": "boolean"
      },
      "isCompanyScoped": {
        "default": false,
        "type": "boolean"
      },
      "isOrganizationOwner": {
        "type": "boolean"
      },
      "lockoutEndUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "rmmCustomRoleId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "rmmRoleKey": {
        "type": [
          "null",
          "string"
        ]
      },
      "rmmRoleName": {
        "type": [
          "null",
          "string"
        ]
      },
      "role": {
        "type": "string"
      },
      "scopedCompanyIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      }
    },
    "required": [
      "id",
      "email",
      "displayName",
      "role",
      "companyId",
      "companyName",
      "isOrganizationOwner",
      "isActive",
      "hasSessionHistory"
    ],
    "type": "object"
  },
  "ScreenshotInputTarget": {
    "properties": {
      "click": {
        "default": false,
        "type": "boolean"
      },
      "expiresAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "layout": {
        "$ref": "#/components/schemas/MonitorsDto"
      },
      "monitorId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "monitorId",
      "layout",
      "expiresAtUtc"
    ],
    "type": "object"
  },
  "SecurityFactsResponse": {
    "properties": {
      "antivirusDefinitionsUpToDate": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "antivirusDefinitionsUpdatedAt": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "antivirusEnabled": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "antivirusProduct": {
        "type": [
          "null",
          "string"
        ]
      },
      "bitLockerCEnabled": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "bitLockerCollectedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "factsUpdatedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "firewallEnabled": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "products": {
        "items": {
          "$ref": "#/components/schemas/AntivirusProductFactDto"
        },
        "type": [
          "null",
          "array"
        ]
      }
    },
    "required": [
      "id",
      "firewallEnabled",
      "antivirusProduct",
      "antivirusEnabled",
      "antivirusDefinitionsUpdatedAt",
      "antivirusDefinitionsUpToDate",
      "bitLockerCEnabled",
      "bitLockerCollectedAtUtc",
      "factsUpdatedAtUtc",
      "products"
    ],
    "type": "object"
  },
  "ServiceAction": {
    "type": "integer",
    "x-enumNames": [
      "Start",
      "Stop",
      "Restart"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "ServiceInfoDto": {
    "properties": {
      "displayName": {
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "startType": {
        "type": "string"
      },
      "status": {
        "type": "string"
      }
    },
    "required": [
      "name",
      "displayName",
      "status",
      "startType"
    ],
    "type": "object"
  },
  "SessionAudioAvailability": {
    "type": "integer",
    "x-enumNames": [
      "Unknown",
      "Available",
      "NoPlaybackEndpoint",
      "ProbeFailed"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "SessionEndReason": {
    "type": "integer",
    "x-enumNames": [
      "EndedByTechnician",
      "ClientEnded",
      "TimedOutIdle",
      "ConnectionLost",
      "TechnicianDisconnected",
      "RelayRestarted",
      "GuestPassRevoked",
      "GuestPassExpired",
      "LicenseSuspended",
      "LicenseDeleted",
      "CommerciallyRestricted",
      "ConsentDenied",
      "ConsentTimedOut",
      "EndedByEndUser"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12,
      13
    ]
  },
  "SessionKind": {
    "type": "integer",
    "x-enumNames": [
      "Desktop",
      "Browsing",
      "Console",
      "FileBrowser",
      "Ghost",
      "RemoteResources",
      "RemoteIpScan",
      "HyperVConsole"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7
    ]
  },
  "SettingKey": {
    "type": "integer",
    "x-enumNames": [
      "RequireUserConsent",
      "LockComputerOnSessionEnd",
      "OpenSessionsInNewTab",
      "WakeRelay",
      "TerminalExperience",
      "DefaultSessionColorQuality",
      "DefaultSuppressWallpaper",
      "DefaultOptimizeWindowsVisualEffects",
      "DefaultDeviceListLayout",
      "DeviceLocationReporting",
      "NetworkDiscoveryMode",
      "NetworkDiscoveryPolicy",
      "NetworkDiscoveryRetentionPolicy",
      "NetworkDiscoverySensorAssignment",
      "NetworkTcpMonitoringPolicy",
      "NetworkDiscoveryAllowWindowsPublicProfile",
      "NetworkInternetSpeedEnabled",
      "IloMonitoringEnabled",
      "IdracMonitoringEnabled"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10,
      11,
      12,
      13,
      14,
      15,
      16,
      17,
      18
    ]
  },
  "SettingScopeType": {
    "type": "integer",
    "x-enumNames": [
      "Device",
      "Site",
      "Company",
      "Organization"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3
    ]
  },
  "SiteResponse": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "companyId",
      "name"
    ],
    "type": "object"
  },
  "SnmpAuthenticationProtocol": {
    "type": "integer",
    "x-enumNames": [
      "None",
      "Sha1",
      "Sha256"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "SnmpBridgeForwardingResultDto": {
    "properties": {
      "bridgePortNumber": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "consecutiveObservations": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "firstSeenAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "forwardingDatabaseId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "interfaceIndex": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "lastSeenAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "macAddress": {
        "type": "string"
      },
      "missedObservations": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "source": {
        "default": "bridge",
        "type": "string"
      },
      "status": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "vlanId": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "macAddress",
      "bridgePortNumber",
      "interfaceIndex",
      "status"
    ],
    "type": "object"
  },
  "SnmpCredentialProfileInput": {
    "properties": {
      "authenticationProtocol": {
        "$ref": "#/components/schemas/SnmpAuthenticationProtocol"
      },
      "authenticationSecret": {
        "type": [
          "null",
          "string"
        ]
      },
      "community": {
        "type": [
          "null",
          "string"
        ]
      },
      "contextName": {
        "type": [
          "null",
          "string"
        ]
      },
      "enabled": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "priority": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "privacyProtocol": {
        "$ref": "#/components/schemas/SnmpPrivacyProtocol"
      },
      "privacySecret": {
        "type": [
          "null",
          "string"
        ]
      },
      "userName": {
        "type": [
          "null",
          "string"
        ]
      },
      "version": {
        "$ref": "#/components/schemas/SnmpProtocolVersion"
      }
    },
    "required": [
      "id",
      "name",
      "version",
      "community",
      "userName",
      "authenticationProtocol",
      "authenticationSecret",
      "privacyProtocol",
      "privacySecret",
      "contextName",
      "priority",
      "enabled"
    ],
    "type": "object"
  },
  "SnmpCredentialProfileListItem": {
    "properties": {
      "authenticationProtocol": {
        "$ref": "#/components/schemas/SnmpAuthenticationProtocol"
      },
      "enabled": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "priority": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "privacyProtocol": {
        "$ref": "#/components/schemas/SnmpPrivacyProtocol"
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "version": {
        "$ref": "#/components/schemas/SnmpProtocolVersion"
      }
    },
    "required": [
      "id",
      "name",
      "version",
      "authenticationProtocol",
      "privacyProtocol",
      "priority",
      "enabled",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "SnmpDevicePortalSnapshot": {
    "properties": {
      "bridgeForwardingEntries": {
        "items": {
          "$ref": "#/components/schemas/SnmpBridgeForwardingResultDto"
        },
        "type": "array"
      },
      "health": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/SnmpHealthPortalSummary"
          }
        ]
      },
      "interfaceCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "interfaces": {
        "items": {
          "$ref": "#/components/schemas/SnmpInterfaceResultDto"
        },
        "type": "array"
      },
      "lastAttemptedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "lastDetail": {
        "type": [
          "null",
          "string"
        ]
      },
      "lastOutcome": {
        "$ref": "#/components/schemas/NetworkProbeOutcome"
      },
      "lastRespondedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lldpNeighbors": {
        "items": {
          "$ref": "#/components/schemas/SnmpLldpNeighborResultDto"
        },
        "type": "array"
      },
      "switchPorts": {
        "items": {
          "$ref": "#/components/schemas/SnmpSwitchPortPortalItem"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "systemContact": {
        "type": [
          "null",
          "string"
        ]
      },
      "systemDescription": {
        "type": [
          "null",
          "string"
        ]
      },
      "systemLocation": {
        "type": [
          "null",
          "string"
        ]
      },
      "systemName": {
        "type": [
          "null",
          "string"
        ]
      },
      "systemObjectId": {
        "type": [
          "null",
          "string"
        ]
      },
      "ups": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/SnmpUpsResultDto"
          }
        ]
      },
      "uptimeHundredths": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "version": {
        "$ref": "#/components/schemas/SnmpProtocolVersion"
      }
    },
    "required": [
      "version",
      "systemName",
      "systemDescription",
      "systemObjectId",
      "systemContact",
      "systemLocation",
      "uptimeHundredths",
      "interfaceCount",
      "lastAttemptedAtUtc",
      "lastRespondedAtUtc",
      "lastOutcome",
      "lastDetail",
      "interfaces",
      "ups",
      "lldpNeighbors",
      "bridgeForwardingEntries"
    ],
    "type": "object"
  },
  "SnmpDeviceRefreshPortalState": {
    "properties": {
      "assignedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "completedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "outcome": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/NetworkProbeOutcome"
          }
        ]
      },
      "requestId": {
        "format": "uuid",
        "type": "string"
      },
      "requestedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "status": {
        "$ref": "#/components/schemas/NetworkProbeJobStatus"
      }
    },
    "required": [
      "requestId",
      "status",
      "outcome",
      "requestedAtUtc",
      "assignedAtUtc",
      "completedAtUtc"
    ],
    "type": "object"
  },
  "SnmpHealthPortalSummary": {
    "properties": {
      "activeConnections": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "channelUtilizationPercent": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "collectionComplete": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "counterSampleSeconds": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "cpuUsagePercent": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "diskCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "diskProblems": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "diskRiskCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "diskRoles": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "expectedInterfacesDown": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "fanHealthObserved": {
        "type": "boolean"
      },
      "fanProblems": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "interfaceErrorChanges": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "interfaceErrors": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "interfaceProblems": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "issues": {
        "items": {
          "type": "string"
        },
        "type": "array"
      },
      "load1Minute": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "memoryUsagePercent": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "model": {
        "type": [
          "null",
          "string"
        ]
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "packId": {
        "type": "string"
      },
      "packName": {
        "type": "string"
      },
      "powerSupplyHealthObserved": {
        "type": "boolean"
      },
      "powerSupplyProblems": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "printerCriticalAlerts": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "printerLowSupplies": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "raidCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "raidProblems": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "readings": {
        "items": {
          "$ref": "#/components/schemas/SnmpHealthReading"
        },
        "type": "array"
      },
      "sensorCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "softwareVersion": {
        "type": [
          "null",
          "string"
        ]
      },
      "status": {
        "type": "string"
      },
      "storageUsedPercent": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "summary": {
        "type": "string"
      },
      "swapUsagePercent": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "temperatureCelsius": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "upsActiveAlarms": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "upsLoadPercent": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "wirelessClients": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "wirelessDownVaps": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "wirelessDropChanges": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "wirelessDrops": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "wirelessErrorChanges": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "wirelessErrors": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "wirelessRetries": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "wirelessRetryChanges": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "packId",
      "packName",
      "status",
      "summary",
      "observedAtUtc",
      "model",
      "softwareVersion",
      "cpuUsagePercent",
      "load1Minute",
      "memoryUsagePercent",
      "swapUsagePercent",
      "temperatureCelsius",
      "storageUsedPercent",
      "diskCount",
      "diskProblems",
      "raidCount",
      "raidProblems",
      "wirelessClients",
      "channelUtilizationPercent",
      "wirelessDrops",
      "wirelessErrors",
      "wirelessRetries",
      "wirelessDownVaps",
      "interfaceProblems",
      "interfaceErrors",
      "sensorCount",
      "activeConnections",
      "upsLoadPercent",
      "upsActiveAlarms",
      "printerCriticalAlerts",
      "printerLowSupplies",
      "fanProblems",
      "powerSupplyProblems",
      "diskRoles",
      "issues"
    ],
    "type": "object"
  },
  "SnmpHealthReading": {
    "properties": {
      "label": {
        "type": "string"
      },
      "value": {
        "type": "string"
      }
    },
    "required": [
      "label",
      "value"
    ],
    "type": "object"
  },
  "SnmpInterfaceResultDto": {
    "properties": {
      "adminStatus": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "alias": {
        "type": [
          "null",
          "string"
        ]
      },
      "description": {
        "type": [
          "null",
          "string"
        ]
      },
      "expectedUp": {
        "default": false,
        "type": "boolean"
      },
      "inErrors": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "inOctets": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "index": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "name": {
        "type": [
          "null",
          "string"
        ]
      },
      "operationalStatus": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "outErrors": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "outOctets": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "physicalAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "speedBitsPerSecond": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "index",
      "name",
      "description",
      "alias",
      "physicalAddress",
      "speedBitsPerSecond",
      "adminStatus",
      "operationalStatus",
      "inOctets",
      "outOctets",
      "inErrors",
      "outErrors"
    ],
    "type": "object"
  },
  "SnmpLldpNeighborResultDto": {
    "properties": {
      "chassisId": {
        "type": [
          "null",
          "string"
        ]
      },
      "chassisMacAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "consecutiveObservations": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "firstSeenAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lastSeenAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "localPortNumber": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "missedObservations": {
        "default": 0,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "observationKey": {
        "type": "string"
      },
      "portDescription": {
        "type": [
          "null",
          "string"
        ]
      },
      "portId": {
        "type": [
          "null",
          "string"
        ]
      },
      "supportedCapabilities": {
        "type": [
          "null",
          "string"
        ]
      },
      "systemDescription": {
        "type": [
          "null",
          "string"
        ]
      },
      "systemName": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "observationKey",
      "localPortNumber",
      "chassisId",
      "portId",
      "portDescription",
      "systemName",
      "systemDescription",
      "supportedCapabilities"
    ],
    "type": "object"
  },
  "SnmpMonitoredDeviceListItem": {
    "properties": {
      "collectedInterfaces": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "displayName": {
        "type": "string"
      },
      "forwardingEntries": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "health": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/SnmpHealthPortalSummary"
          }
        ]
      },
      "ipAddress": {
        "type": "string"
      },
      "lastAttemptedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "lastDetail": {
        "type": [
          "null",
          "string"
        ]
      },
      "lastOutcome": {
        "$ref": "#/components/schemas/NetworkProbeOutcome"
      },
      "lastRespondedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "lldpNeighbors": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "managedDeviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "realmName": {
        "type": "string"
      },
      "reportedInterfaces": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "systemName": {
        "type": [
          "null",
          "string"
        ]
      },
      "upsChargePercent": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "deviceId",
      "displayName",
      "ipAddress",
      "realmName",
      "systemName",
      "lastOutcome",
      "lastAttemptedAtUtc",
      "lastRespondedAtUtc",
      "reportedInterfaces",
      "collectedInterfaces",
      "lldpNeighbors",
      "forwardingEntries",
      "upsChargePercent",
      "lastDetail"
    ],
    "type": "object"
  },
  "SnmpPrivacyProtocol": {
    "type": "integer",
    "x-enumNames": [
      "None",
      "Aes128"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "SnmpProtocolVersion": {
    "type": "integer",
    "x-enumNames": [
      "V1",
      "V2C",
      "V3"
    ],
    "x-enumValues": [
      1,
      2,
      3
    ]
  },
  "SnmpSwitchPortConnection": {
    "properties": {
      "confidence": {
        "type": "string"
      },
      "deviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "displayName": {
        "type": "string"
      },
      "ipAddress": {
        "type": [
          "null",
          "string"
        ]
      },
      "isDirectNeighbor": {
        "type": "boolean"
      },
      "isSwitch": {
        "type": "boolean"
      },
      "lastSeenAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "macAddress": {
        "type": "string"
      },
      "managedDeviceId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "vlanIds": {
        "items": {
          "format": "int32",
          "pattern": "^-?(?:0|[1-9]\\d*)$",
          "type": [
            "integer",
            "string"
          ]
        },
        "type": "array"
      }
    },
    "required": [
      "deviceId",
      "managedDeviceId",
      "displayName",
      "ipAddress",
      "macAddress",
      "vlanIds",
      "isDirectNeighbor",
      "isSwitch",
      "confidence",
      "lastSeenAtUtc"
    ],
    "type": "object"
  },
  "SnmpSwitchPortPortalItem": {
    "properties": {
      "bridgePortNumber": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "connections": {
        "items": {
          "$ref": "#/components/schemas/SnmpSwitchPortConnection"
        },
        "type": "array"
      },
      "directNeighborUnresolved": {
        "type": "boolean"
      },
      "interfaceIndex": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "portLabel": {
        "type": "string"
      }
    },
    "required": [
      "interfaceIndex",
      "bridgePortNumber",
      "portLabel",
      "directNeighborUnresolved",
      "connections"
    ],
    "type": "object"
  },
  "SnmpTrafficPoint": {
    "properties": {
      "atUtc": {
        "format": "date-time",
        "type": "string"
      },
      "coveredSeconds": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "inBitsPerSecond": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "inBytes": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "outBitsPerSecond": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "outBytes": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "number",
          "string"
        ]
      },
      "peakInBitsPerSecond": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "peakOutBitsPerSecond": {
        "format": "double",
        "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
        "type": [
          "null",
          "number",
          "string"
        ]
      },
      "status": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "atUtc",
      "inBitsPerSecond",
      "outBitsPerSecond",
      "peakInBitsPerSecond",
      "peakOutBitsPerSecond",
      "inBytes",
      "outBytes",
      "coveredSeconds",
      "status"
    ],
    "type": "object"
  },
  "SnmpTrafficPortView": {
    "properties": {
      "enabled": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "interfaceIndex": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "lastSampleAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": [
          "null",
          "string"
        ]
      },
      "speedBitsPerSecond": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "status": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "interfaceIndex",
      "name",
      "enabled",
      "lastSampleAtUtc",
      "status",
      "speedBitsPerSecond"
    ],
    "type": "object"
  },
  "SnmpUpsResultDto": {
    "properties": {
      "batteryStatus": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "estimatedChargeRemainingPercent": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "estimatedMinutesRemaining": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "outputSource": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "secondsOnBattery": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "secondsOnBatteryThreshold": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "batteryStatus",
      "secondsOnBattery",
      "estimatedMinutesRemaining",
      "estimatedChargeRemainingPercent",
      "outputSource",
      "secondsOnBatteryThreshold"
    ],
    "type": "object"
  },
  "SoftwareKind": {
    "type": "integer",
    "x-enumNames": [
      "ClassicDesktop",
      "PackagedApp"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "SoftwareResponse": {
    "properties": {
      "items": {
        "items": {
          "$ref": "#/components/schemas/SoftwareResponseItem"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "next": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "items",
      "next",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "SoftwareResponseItem": {
    "properties": {
      "installDate": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "publisher": {
        "type": [
          "null",
          "string"
        ]
      },
      "version": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "name",
      "version",
      "publisher",
      "installDate"
    ],
    "type": "object"
  },
  "SoftwareUninstallRequestDto": {
    "properties": {
      "identifier": {
        "type": "string"
      },
      "kind": {
        "$ref": "#/components/schemas/SoftwareKind"
      },
      "name": {
        "type": "string"
      }
    },
    "required": [
      "kind",
      "identifier",
      "name"
    ],
    "type": "object"
  },
  "SyncChange": {
    "properties": {
      "device": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/DeviceResponse"
          }
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "kind": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "kind",
      "device"
    ],
    "type": "object"
  },
  "SyncRequest": {
    "properties": {
      "previousSnapshotId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "previousSnapshotId"
    ],
    "type": "object"
  },
  "SyncResponse": {
    "properties": {
      "createdAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "deviceCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "expiresAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "id",
      "createdAtUtc",
      "expiresAtUtc",
      "deviceCount"
    ],
    "type": "object"
  },
  "ThirdPartyInstallHistoryItem": {
    "properties": {
      "completedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "error": {
        "type": [
          "null",
          "string"
        ]
      },
      "exitCode": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "nextAttemptAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "packageId": {
        "type": "string"
      },
      "publisher": {
        "type": "string"
      },
      "rebootRequired": {
        "type": "boolean"
      },
      "retryCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "startedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "state": {
        "type": "string"
      },
      "version": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "packageId",
      "publisher",
      "version",
      "state",
      "startedAtUtc",
      "completedAtUtc",
      "exitCode",
      "rebootRequired",
      "retryCount",
      "nextAttemptAtUtc",
      "error"
    ],
    "type": "object"
  },
  "ThirdPartyPackageApproval": {
    "properties": {
      "identity": {
        "$ref": "#/components/schemas/ThirdPartyPackageIdentity"
      },
      "mode": {
        "$ref": "#/components/schemas/ThirdPartyPatchApprovalMode"
      },
      "version": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "identity",
      "mode"
    ],
    "type": "object"
  },
  "ThirdPartyPackageFact": {
    "properties": {
      "availableVersion": {
        "type": [
          "null",
          "string"
        ]
      },
      "identity": {
        "$ref": "#/components/schemas/ThirdPartyPackageIdentity"
      },
      "installationScope": {
        "type": [
          "null",
          "string"
        ]
      },
      "installedVersion": {
        "type": [
          "null",
          "string"
        ]
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "rebootRequired": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "source": {
        "type": [
          "null",
          "string"
        ]
      },
      "title": {
        "type": "string"
      }
    },
    "required": [
      "identity",
      "title",
      "installedVersion",
      "availableVersion",
      "source",
      "rebootRequired",
      "observedAtUtc"
    ],
    "type": "object"
  },
  "ThirdPartyPackageIdentity": {
    "properties": {
      "packageId": {
        "type": "string"
      },
      "provider": {
        "type": "string"
      },
      "publisher": {
        "type": "string"
      }
    },
    "required": [
      "provider",
      "packageId",
      "publisher"
    ],
    "type": "object"
  },
  "ThirdPartyPatchApprovalListItem": {
    "properties": {
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "identity": {
        "$ref": "#/components/schemas/ThirdPartyPackageIdentity"
      },
      "mode": {
        "$ref": "#/components/schemas/ThirdPartyPatchApprovalMode"
      },
      "state": {
        "$ref": "#/components/schemas/ThirdPartyPatchApprovalState"
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "version": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "identity",
      "mode",
      "version",
      "state",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "ThirdPartyPatchApprovalMode": {
    "type": "integer",
    "x-enumNames": [
      "VersionOnly",
      "ProductFutureVersions"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "ThirdPartyPatchApprovalState": {
    "type": "integer",
    "x-enumNames": [
      "Unapproved",
      "Approved",
      "Denied"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "ThirdPartyPatchDiscoverySnapshot": {
    "properties": {
      "error": {
        "type": [
          "null",
          "string"
        ]
      },
      "isStale": {
        "type": "boolean"
      },
      "observedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "packages": {
        "items": {
          "$ref": "#/components/schemas/ThirdPartyPackageFact"
        },
        "type": "array"
      }
    },
    "required": [
      "packages",
      "observedAtUtc",
      "isStale"
    ],
    "type": "object"
  },
  "ThirdPartyPatchPolicyAssignment": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "enabled": {
        "default": true,
        "type": "boolean"
      },
      "name": {
        "type": "string"
      },
      "policy": {
        "$ref": "#/components/schemas/ThirdPartyPatchPolicySpec"
      },
      "rebootBehavior": {
        "$ref": "#/components/schemas/ThirdPartyPatchRebootBehavior"
      },
      "revision": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "schedule": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationScheduleSpec"
          }
        ]
      },
      "target": {
        "$ref": "#/components/schemas/AutomationTargetSpec"
      }
    },
    "required": [
      "name",
      "policy",
      "target"
    ],
    "type": "object"
  },
  "ThirdPartyPatchPolicyAssignmentListItem": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "enabled": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "nextDueAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "policy": {
        "$ref": "#/components/schemas/ThirdPartyPatchPolicySpec"
      },
      "rebootBehavior": {
        "$ref": "#/components/schemas/ThirdPartyPatchRebootBehavior"
      },
      "revision": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "schedule": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationScheduleSpec"
          }
        ]
      },
      "target": {
        "$ref": "#/components/schemas/AutomationTargetSpec"
      }
    },
    "required": [
      "id",
      "companyId",
      "name",
      "policy",
      "target",
      "schedule",
      "rebootBehavior",
      "enabled",
      "nextDueAtUtc",
      "revision"
    ],
    "type": "object"
  },
  "ThirdPartyPatchPolicySpec": {
    "properties": {
      "approvals": {
        "items": {
          "$ref": "#/components/schemas/ThirdPartyPackageApproval"
        },
        "type": "array"
      },
      "deniedPackages": {
        "items": {
          "$ref": "#/components/schemas/ThirdPartyPackageIdentity"
        },
        "type": "array"
      },
      "mode": {
        "$ref": "#/components/schemas/PatchPolicyMode"
      },
      "policyMode": {
        "$ref": "#/components/schemas/PatchPolicyMode"
      },
      "schemaVersion": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "approvals",
      "deniedPackages"
    ],
    "type": "object"
  },
  "ThirdPartyPatchRebootBehavior": {
    "type": "integer",
    "x-enumNames": [
      "Defer",
      "Allow",
      "RequireApproval"
    ],
    "x-enumValues": [
      0,
      1,
      2
    ]
  },
  "TicketRequest": {
    "properties": {
      "externalId": {
        "type": [
          "null",
          "string"
        ]
      },
      "state": {
        "type": [
          "null",
          "string"
        ]
      },
      "url": {
        "type": [
          "null",
          "string"
        ]
      },
      "version": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "externalId",
      "url",
      "state",
      "version"
    ],
    "type": "object"
  },
  "TicketResponse": {
    "properties": {
      "alertId": {
        "format": "uuid",
        "type": "string"
      },
      "externalId": {
        "type": [
          "null",
          "string"
        ]
      },
      "state": {
        "type": [
          "null",
          "string"
        ]
      },
      "url": {
        "type": [
          "null",
          "string"
        ]
      },
      "version": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "alertId",
      "externalId",
      "url",
      "state",
      "version"
    ],
    "type": "object"
  },
  "TokenRequest": {
    "properties": {
      "audience": {
        "default": "api",
        "type": "string"
      },
      "password": {
        "type": [
          "null",
          "string"
        ]
      },
      "username": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "username",
      "password"
    ],
    "type": "object"
  },
  "UserInviteDto": {
    "properties": {
      "companyId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "companyName": {
        "type": [
          "null",
          "string"
        ]
      },
      "createdAt": {
        "format": "date-time",
        "type": "string"
      },
      "createdByDisplayName": {
        "type": "string"
      },
      "email": {
        "type": "string"
      },
      "expiresAt": {
        "format": "date-time",
        "type": "string"
      },
      "grantOwner": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "rmmRoleKeys": {
        "items": {
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "role": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "email",
      "role",
      "companyId",
      "companyName",
      "grantOwner",
      "createdByDisplayName",
      "createdAt",
      "expiresAt"
    ],
    "type": "object"
  },
  "VersionConflictResponse": {
    "properties": {
      "currentVersion": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "error": {
        "type": "string"
      },
      "message": {
        "type": "string"
      }
    },
    "required": [
      "error",
      "message",
      "currentVersion"
    ],
    "type": "object"
  },
  "VirtualMachineResponse": {
    "properties": {
      "checkpointCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "diskAllocatedBytes": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "diskCapacityBytes": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "diskCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "diskType": {
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "isOnline": {
        "type": "boolean"
      },
      "name": {
        "type": "string"
      },
      "replicationMode": {
        "type": "string"
      },
      "vmId": {
        "format": "uuid",
        "type": "string"
      }
    },
    "required": [
      "id",
      "deviceId",
      "vmId",
      "name",
      "isOnline",
      "diskAllocatedBytes",
      "diskCapacityBytes",
      "diskCount",
      "checkpointCount",
      "diskType",
      "replicationMode"
    ],
    "type": "object"
  },
  "VirtualisationResponse": {
    "properties": {
      "deviceRole": {
        "type": [
          "null",
          "string"
        ]
      },
      "factsUpdatedAtUtc": {
        "format": "date-time",
        "type": [
          "null",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "os": {
        "type": "string"
      },
      "virtualMachineCount": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      }
    },
    "required": [
      "id",
      "deviceRole",
      "os",
      "virtualMachineCount",
      "factsUpdatedAtUtc"
    ],
    "type": "object"
  },
  "VolumeResponse": {
    "properties": {
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "freeBytes": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "letter": {
        "type": "string"
      },
      "totalBytes": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "id",
      "deviceId",
      "letter",
      "totalBytes",
      "freeBytes",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "VulnerabilityMachine": {
    "properties": {
      "company": {
        "type": "string"
      },
      "complete": {
        "type": "boolean"
      },
      "deviceId": {
        "format": "uuid",
        "type": "string"
      },
      "kb": {
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "patchSeverity": {
        "type": "string"
      },
      "revisionNumber": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "scannedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "site": {
        "type": [
          "null",
          "string"
        ]
      },
      "stale": {
        "type": "boolean"
      },
      "title": {
        "type": "string"
      },
      "updateId": {
        "type": "string"
      }
    },
    "required": [
      "deviceId",
      "name",
      "company",
      "site",
      "updateId",
      "revisionNumber",
      "kb",
      "title",
      "patchSeverity",
      "scannedAtUtc",
      "stale",
      "complete"
    ],
    "type": "object"
  },
  "WebhookRequest": {
    "properties": {
      "url": {
        "type": "string"
      }
    },
    "required": [
      "url"
    ],
    "type": "object"
  },
  "WebhookResponse": {
    "properties": {
      "afterEventId": {
        "format": "int64",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "enabled": {
        "type": "boolean"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "url": {
        "type": "string"
      }
    },
    "required": [
      "id",
      "url",
      "enabled",
      "afterEventId"
    ],
    "type": "object"
  },
  "WindowsAutomaticUpdateMode": {
    "default": 0,
    "type": "integer",
    "x-enumNames": [
      "NotConfigured",
      "NotifyBeforeDownload",
      "AutoDownloadNotifyInstall",
      "ScheduledInstall",
      "Disabled"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "WindowsPatchPolicyInput": {
    "properties": {
      "description": {
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "policy": {
        "$ref": "#/components/schemas/PatchManagementPolicySpec"
      },
      "precondition": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationConditionNode"
          }
        ]
      },
      "replacePrecondition": {
        "default": false,
        "type": "boolean"
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "schedule": {
        "$ref": "#/components/schemas/AutomationSimpleTriggerInput"
      },
      "scope": {
        "$ref": "#/components/schemas/AutomationHierarchyScope"
      },
      "smartGroupIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "tagIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      }
    },
    "required": [
      "name",
      "description",
      "scope",
      "schedule",
      "policy"
    ],
    "type": "object"
  },
  "WindowsPatchPolicyListItem": {
    "properties": {
      "approvalRefreshNeeded": {
        "default": false,
        "type": "boolean"
      },
      "description": {
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "policy": {
        "$ref": "#/components/schemas/PatchManagementPolicySpec"
      },
      "precondition": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationConditionNode"
          }
        ]
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "schedule": {
        "$ref": "#/components/schemas/AutomationSimpleTriggerInput"
      },
      "scope": {
        "$ref": "#/components/schemas/AutomationHierarchyScope"
      },
      "smartGroupIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "state": {
        "$ref": "#/components/schemas/AutomationState"
      },
      "tagIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "description",
      "state",
      "scope",
      "schedule",
      "policy",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "WindowsRdpState": {
    "type": "integer",
    "x-enumNames": [
      "Unknown",
      "Disabled",
      "Enabled",
      "PolicyBlocked",
      "Unsupported"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4
    ]
  },
  "WindowsRdpStatusDto": {
    "properties": {
      "checkedAtUtc": {
        "format": "date-time",
        "type": "string"
      },
      "detail": {
        "type": [
          "null",
          "string"
        ]
      },
      "listenerAvailable": {
        "type": [
          "null",
          "boolean"
        ]
      },
      "state": {
        "$ref": "#/components/schemas/WindowsRdpState"
      }
    },
    "required": [
      "state",
      "checkedAtUtc"
    ],
    "type": "object"
  },
  "WindowsUpdateConfigurationInput": {
    "properties": {
      "description": {
        "type": "string"
      },
      "expectedVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": "string"
      },
      "policy": {
        "$ref": "#/components/schemas/WindowsUpdateConfigurationSpec"
      },
      "precondition": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationConditionNode"
          }
        ]
      },
      "replacePrecondition": {
        "default": false,
        "type": "boolean"
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "schedule": {
        "$ref": "#/components/schemas/AutomationSimpleTriggerInput"
      },
      "scope": {
        "$ref": "#/components/schemas/AutomationHierarchyScope"
      },
      "smartGroupIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "tagIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      }
    },
    "required": [
      "name",
      "description",
      "scope",
      "schedule",
      "policy"
    ],
    "type": "object"
  },
  "WindowsUpdateConfigurationListItem": {
    "properties": {
      "activeVersionId": {
        "format": "uuid",
        "type": [
          "null",
          "string"
        ]
      },
      "description": {
        "type": "string"
      },
      "id": {
        "format": "uuid",
        "type": "string"
      },
      "name": {
        "type": "string"
      },
      "policy": {
        "$ref": "#/components/schemas/WindowsUpdateConfigurationSpec"
      },
      "precondition": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationConditionNode"
          }
        ]
      },
      "restriction": {
        "oneOf": [
          {
            "type": "null"
          },
          {
            "$ref": "#/components/schemas/AutomationTargetRestriction"
          }
        ]
      },
      "schedule": {
        "$ref": "#/components/schemas/AutomationSimpleTriggerInput"
      },
      "scope": {
        "$ref": "#/components/schemas/AutomationHierarchyScope"
      },
      "smartGroupIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "state": {
        "$ref": "#/components/schemas/AutomationState"
      },
      "tagIds": {
        "items": {
          "format": "uuid",
          "type": "string"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "updatedAtUtc": {
        "format": "date-time",
        "type": "string"
      }
    },
    "required": [
      "id",
      "name",
      "description",
      "state",
      "scope",
      "schedule",
      "policy",
      "updatedAtUtc"
    ],
    "type": "object"
  },
  "WindowsUpdateConfigurationMode": {
    "type": "integer",
    "x-enumNames": [
      "AuditOnly",
      "Enforce"
    ],
    "x-enumValues": [
      0,
      1
    ]
  },
  "WindowsUpdateConfigurationSpec": {
    "properties": {
      "activeHoursEnd": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "activeHoursStart": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "automaticUpdateMode": {
        "$ref": "#/components/schemas/WindowsAutomaticUpdateMode"
      },
      "deadlineGraceDays": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "disableFastStartup": {
        "default": false,
        "type": "boolean"
      },
      "disableWindowsUpdateInternetLocations": {
        "default": false,
        "type": "boolean"
      },
      "featureUpdateDeferralDays": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "holdCurrentFeatureRelease": {
        "default": false,
        "type": "boolean"
      },
      "includeDrivers": {
        "default": false,
        "type": "boolean"
      },
      "includeMicrosoftUpdate": {
        "default": true,
        "type": "boolean"
      },
      "localPeerDeliveryOptimization": {
        "default": false,
        "type": "boolean"
      },
      "managedSettings": {
        "items": {
          "$ref": "#/components/schemas/WindowsUpdateSetting"
        },
        "type": [
          "null",
          "array"
        ]
      },
      "mode": {
        "$ref": "#/components/schemas/WindowsUpdateConfigurationMode"
      },
      "noAutoRestartBeforeDeadline": {
        "default": true,
        "type": "boolean"
      },
      "qualityUpdateDeadlineDays": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "qualityUpdateDeferralDays": {
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "null",
          "integer",
          "string"
        ]
      },
      "rgManagedRestarts": {
        "default": false,
        "type": "boolean"
      },
      "schemaVersion": {
        "default": 1,
        "format": "int32",
        "pattern": "^-?(?:0|[1-9]\\d*)$",
        "type": [
          "integer",
          "string"
        ]
      },
      "takeControlOfExistingPolicy": {
        "default": false,
        "type": "boolean"
      },
      "targetFeatureRelease": {
        "type": [
          "null",
          "string"
        ]
      },
      "wsusServerUri": {
        "type": [
          "null",
          "string"
        ]
      }
    },
    "required": [
      "mode"
    ],
    "type": "object"
  },
  "WindowsUpdateSetting": {
    "type": "integer",
    "x-enumNames": [
      "AutomaticUpdates",
      "Drivers",
      "MicrosoftUpdate",
      "UpdateServer",
      "FeatureDeferral",
      "QualityDeferral",
      "ActiveHours",
      "RestartPolicy",
      "DeliveryOptimization",
      "FastStartup",
      "FeatureRelease"
    ],
    "x-enumValues": [
      0,
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8,
      9,
      10
    ]
  }
}

Révision du contenu 3f225a253 · OpenAPI SHA-256: b12c42306a89