RemoteGymp · API v1

API 참조

액세스 및 동작

참고 예시는 템플릿입니다. 실행하기 전에 자리 표시자를 바꾸고 엔드포인트의 매개변수, 권한 및 스키마를 확인하세요. 불확실한 쓰기의 경우 해당 엔드포인트의 복구 및 재시도 규칙을 따르세요.

전달자 토큰과 엔드포인트의 권한이 필요합니다. 액세스는 자격 증명 범위로 제한됩니다. 장치 또는 관리 작업을 사용하기 전에 기능을 확인하세요.

검색결과: 289

경고6
GET목록 알림/v1/alerts

모니터 경고를 찾아보세요. 해결되지 않은 경고는 기본적으로 반환됩니다. 해결된 기록을 포함하려면 state=all를 사용하세요.

GET /v1/alerts ↗

mcp.cap.InventoryRead

스키마(OpenAPI)

state

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

severity

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

페이지가 매겨진 유형의 모니터 경고 기록입니다. 기본값은 해결되지 않았습니다. state=all에는 해결 내역이 포함되어 있습니다. companyId 및 deviceId 필터는 자격 증명 범위 내에 유지됩니다.

매개변수

pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.
companyId · 쿼리 · 선택 사항
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
deviceId · 쿼리 · 선택 사항
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
state · 쿼리 · 선택 사항
열림 및 승인 알림 반환을 생략합니다. 특정 상태에 대해서는 Open, Acknowledged 또는 Resolved를 사용하고, 모든 상태에 대해서는 모두 사용합니다.
severity · 쿼리 · 선택 사항
알림 심각도별로 경고를 필터링합니다.
monitorId · 쿼리 · 선택 사항
읽거나 필터링할 모니터의 식별자입니다.
observedFrom · 쿼리 · 선택 사항
UTC 오프셋을 포함하여 이 타임스탬프 또는 그 이후에 마지막으로 관찰된 경고를 포함합니다.
observedTo · 쿼리 · 선택 사항
이 타임스탬프 이전에 마지막으로 관찰된 경고를 포함합니다. 시작 타임스탬프보다 이후여야 합니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST경고 확인/v1/alerts/{alertId}/acknowledge

현재 리비전을 사용하여 미해결 알림을 승인으로 표시합니다. 오래된 리비전은 거부됩니다. 업데이트된 승인을 직접 반환하며 오류를 수정하지는 않습니다.

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

mcp.cap.AlertWrite

매개변수

alertId · 경로 · 필요
경고 엔드포인트에서 반환한 경고의 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET알림 티켓 링크 받기/v1/alerts/{alertId}/ticket

경고에 첨부된 외부 티켓 참조, URL, 상태 및 버전을 읽습니다.

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

mcp.cap.InventoryRead

매개변수

alertId · 경로 · 필요
경고 엔드포인트에서 반환한 경고의 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PATCH경고 티켓 링크 업데이트/v1/alerts/{alertId}/ticket

마지막으로 읽은 버전을 사용하여 외부 티켓 참조를 저장합니다. 티켓을 종료해도 경고가 해결되지 않습니다.

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

mcp.cap.AlertWrite

매개변수

alertId · 경로 · 필요
경고 엔드포인트에서 반환한 경고의 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST여러 장치에 대한 알림 받기/v1/alerts:batch-query

한 번의 요청으로 제공된 장치 세트에 대해 기록된 경고를 읽습니다.

POST /v1/alerts:batch-query ↗

mcp.cap.InventoryRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET장치 알림 받기/v1/devices/{deviceId}/alerts

하나의 장치에 대해 기록된 경고를 읽습니다.

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
관리30
POST회사 만들기/v1/management/companies

승인된 조직 내에 회사를 추가하세요.

POST /v1/management/companies ↗

mcp.cap.CompaniesManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST회사 삭제/v1/management/companies/delete

기존 관리 보호 장치를 통해 회사 제거를 요청합니다. 대상을 주의 깊게 검토하세요.

POST /v1/management/companies/delete ↗

mcp.cap.CompaniesDelete

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST장치 삭제/v1/management/devices/delete

관리 워크플로를 통해 장치 제거를 요청합니다.

POST /v1/management/devices/delete ↗

mcp.cap.DevicesDelete

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST장치 이동/v1/management/devices/move

허용된 범위 내에서 장치의 회사 또는 사이트 할당을 변경합니다.

POST /v1/management/devices/move ↗

mcp.cap.DevicesManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST장치 액세스 취소/v1/management/devices/revoke

선택한 장치의 에이전트 액세스를 취소합니다.

POST /v1/management/devices/revoke ↗

mcp.cap.DevicesManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST복원 장치 액세스/v1/management/devices/unrevoke

승인된 관리 워크플로를 사용하여 장치의 취소된 상태를 제거합니다.

POST /v1/management/devices/unrevoke ↗

mcp.cap.DevicesManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST등록 키 순환/v1/management/enrollment/rotate

회사의 등록 자격 증명을 교체합니다. 이전 키를 사용하는 기존 등록 설치 프로그램은 등록 기능을 잃게 됩니다.

POST /v1/management/enrollment/rotate ↗

mcp.cap.EnrollmentRotate

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST설치 프로그램 요청/v1/management/installers

공인 회사 및 플랫폼을 위한 대기열 설치 프로그램 준비.

POST /v1/management/installers ↗

mcp.cap.EnrollmentManage

스키마(OpenAPI)

InstallerPlatform

0 = Windows
1 = Linux
2 = MacOs

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET설치 프로그램 기록 읽기/v1/management/installers/history

보유된 설치 프로그램 빌드 및 배포 기록을 읽습니다.

GET /v1/management/installers/history ↗

mcp.cap.EnrollmentRead

스키마(OpenAPI)

InstallerPlatform

0 = Windows
1 = Linux
2 = MacOs

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET설치 프로그램 작업 나열/v1/management/installers/jobs

대기 중인 설치 프로그램 작업 및 해당 상태를 읽습니다.

GET /v1/management/installers/jobs ↗

mcp.cap.EnrollmentRead

스키마(OpenAPI)

InstallerPlatform

0 = Windows
1 = Linux
2 = MacOs

DeviceJobStatus

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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET관리-운영 상태 가져오기/v1/management/operations/{operationId}

반복하지 않고 관리 변경의 상태와 유지된 결과를 읽습니다.

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

매개변수

operationId · 경로 · 필요
최상위 작업 영수증 식별자입니다. 이 영수증을 폴링하여 진행 상황과 결과를 검사하세요.

예제 요청

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
요청 및 응답 스키마(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": []
}
GET설정 읽기/v1/management/settings

요청된 승인 범위에서 지원되는 관리 설정을 읽습니다.

GET /v1/management/settings ↗

mcp.cap.SettingsRead

스키마(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

매개변수

scopeType · 쿼리 · 필요
설정 범위의 종류. 의도한 범위와 일치하는 열거형 값을 사용하세요.
scopeId · 쿼리 · 필요
scopeType에 의해 선택된 설정 범위의 식별자입니다.
key · 쿼리 · 필요
읽을 키를 설정합니다. 원하는 설정에 enum 값을 사용하세요.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUT설정 업데이트/v1/management/settings

허용된 범위 내에서 지원되는 관리 설정을 변경합니다.

PUT /v1/management/settings ↗

mcp.cap.SettingsManage

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST사이트 만들기/v1/management/sites

승인된 회사에 사이트를 추가합니다.

POST /v1/management/sites ↗

mcp.cap.CompaniesManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST사이트 삭제/v1/management/sites/delete

관리 워크플로 및 해당 범위 확인을 사용하여 사이트를 제거합니다.

POST /v1/management/sites/delete ↗

mcp.cap.CompaniesDelete

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUT팀 액세스 변경/v1/management/team/access

팀 구성원에게 허용된 범위 및 역할 할당을 업데이트합니다.

PUT /v1/management/team/access ↗

mcp.cap.TeamAccessManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET목록 팀 초대/v1/management/team/invites

팀 초대 및 현재 상태를 읽어보세요.

GET /v1/management/team/invites ↗

mcp.cap.TeamRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST팀원 초대/v1/management/team/invites

요청한 팀 액세스 권한이 포함된 초대장을 보냅니다.

POST /v1/management/team/invites ↗

mcp.cap.TeamManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST초대장 다시 보내기/v1/management/team/invites/resend

기존 팀 초대를 다시 보냅니다.

POST /v1/management/team/invites/resend ↗

mcp.cap.TeamManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST초대 취소/v1/management/team/invites/revoke

더 이상 수락하면 안 되는 팀 초대를 무효화합니다.

POST /v1/management/team/invites/revoke ↗

mcp.cap.TeamManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUT팀원 이름 변경/v1/management/team/name

선택한 사용자의 표시 이름을 업데이트합니다.

PUT /v1/management/team/name ↗

mcp.cap.TeamManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUT소유자 상태 변경/v1/management/team/owner

소유자 관리 보호 조치에 따라 팀 구성원의 소유자 상태를 업데이트합니다.

PUT /v1/management/team/owner ↗

mcp.cap.TeamOwnerManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET팀 역할 나열/v1/management/team/roles

구성된 역할 및 해당 권한을 읽습니다.

GET /v1/management/team/roles ↗

mcp.cap.TeamRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUT팀 역할 저장/v1/management/team/roles

역할의 이름과 권한을 생성하거나 업데이트합니다.

PUT /v1/management/team/roles ↗

mcp.cap.TeamAccessManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST역할 삭제/v1/management/team/roles/delete

팀 관리 점검을 통해 선택한 역할을 제거합니다.

POST /v1/management/team/roles/delete ↗

mcp.cap.TeamAccessManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET목록 팀 사용자/v1/management/team/users

관리 자격 증명에 표시되는 팀 사용자를 읽습니다.

GET /v1/management/team/users ↗

mcp.cap.TeamRead

스키마(OpenAPI)

AccountAccessState

0 = Active
1 = TemporarilyLocked
2 = Deactivated

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST팀 구성원 비활성화/v1/management/team/users/deactivate

팀 관리 작업 흐름을 통한 사용자 액세스를 비활성화합니다.

POST /v1/management/team/users/deactivate ↗

mcp.cap.TeamManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST팀원 재활성화/v1/management/team/users/reactivate

적격 비활성 사용자의 팀 액세스를 복원합니다.

POST /v1/management/team/users/reactivate ↗

mcp.cap.TeamManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST팀원 제거/v1/management/team/users/remove

기존 보호 장치를 통해 관리되는 팀에서 사용자를 제거합니다.

POST /v1/management/team/users/remove ↗

mcp.cap.TeamManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST팀원 잠금 해제/v1/management/team/users/unlock

관리 작업 흐름을 통해 적격 사용자의 계정 잠금을 해제합니다.

POST /v1/management/team/users/unlock ↗

mcp.cap.TeamManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
그룹3
GET목록 그룹/v1/groups

자격 증명에 사용할 수 있는 장치 그룹을 찾아보세요.

GET /v1/groups ↗

mcp.cap.InventoryRead

매개변수

pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET그룹 가져오기/v1/groups/{groupId}

하나의 장치 그룹에 대한 세부 정보를 읽습니다.

GET /v1/groups/{groupId} ↗

mcp.cap.InventoryRead

매개변수

groupId · 경로 · 필요
읽을 장치 그룹의 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET목록 그룹 구성원/v1/groups/{groupId}/devices

그룹의 마지막 평가된 멤버십에서 장치 ID를 읽습니다. 더 많은 회원을 보려면 next를 팔로우하세요.

GET /v1/groups/{groupId}/devices ↗

mcp.cap.InventoryRead

마지막으로 평가된 활성 그룹 버전의 구성원입니다. 나머지 deviceIds는 next를 따릅니다. maximumReturned는 선택한 페이지 크기입니다.

매개변수

groupId · 경로 · 필요
읽을 장치 그룹의 식별자입니다.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
네트워크30
GET회사 네트워크 검색 읽기/v1/network/companies/{companyId}

공인 회사에 대해 검색된 네트워크 정보를 읽습니다.

GET /v1/network/companies/{companyId} ↗

mcp.cap.NetworkRead

스키마(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

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
includeManaged · 쿼리 · 선택 사항
네트워크 회사 보기에 관리되는 장치를 포함합니다. 기본값은 false입니다.
includeNetworkDetails · 쿼리 · 선택 사항
회사 보기에 네트워크 세부정보를 포함합니다. 기본값은 false입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET네트워크 장치 읽기/v1/network/companies/{companyId}/devices/{deviceId}

발견된 네트워크 장치 하나와 기록된 세부 정보를 검사합니다.

GET /v1/network/companies/{companyId}/devices/{deviceId} ↗

mcp.cap.NetworkRead

스키마(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

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET관리형 SNMP 사실 읽기/v1/network/companies/{companyId}/managed-snmp/{deviceId}

관리 장치에 대한 SNMP 정보를 읽습니다.

GET /v1/network/companies/{companyId}/managed-snmp/{deviceId} ↗

mcp.cap.NetworkRead

스키마(OpenAPI)

NetworkProbeOutcome

0 = Succeeded
1 = TimedOut
2 = AuthenticationRejected
3 = Unreachable
4 = ProtocolError
5 = Cancelled

SnmpProtocolVersion

1 = V1
2 = V2C
3 = V3

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET관리형 TCP 포트 읽기/v1/network/companies/{companyId}/managed-tcp/{deviceId}

관리 장치에 대한 TCP 포트 정보를 읽습니다.

GET /v1/network/companies/{companyId}/managed-tcp/{deviceId} ↗

mcp.cap.NetworkRead

스키마(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

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET네트워크 맵 읽기/v1/network/companies/{companyId}/map

저장된 네트워크 맵과 증거의 신선도를 읽습니다. 추론된 링크는 물리적 케이블 연결의 증거가 아닙니다. 대기열에 있는 스캔이 없습니다.

GET /v1/network/companies/{companyId}/map ↗

mcp.cap.NetworkRead

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET읽기 네트워크 모니터링/v1/network/companies/{companyId}/monitoring

회사의 네트워크 모니터링 구성 및 상태를 검사합니다.

GET /v1/network/companies/{companyId}/monitoring ↗

mcp.cap.NetworkRead

스키마(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

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET발견된 SNMP 사실 읽기/v1/network/companies/{companyId}/snmp/{deviceId}

검색된 장치에 대해 저장된 SNMP 관찰을 읽습니다.

GET /v1/network/companies/{companyId}/snmp/{deviceId} ↗

mcp.cap.NetworkRead

스키마(OpenAPI)

NetworkProbeOutcome

0 = Succeeded
1 = TimedOut
2 = AuthenticationRejected
3 = Unreachable
4 = ProtocolError
5 = Cancelled

SnmpProtocolVersion

1 = V1
2 = V2C
3 = V3

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET검색된 TCP 포트 읽기/v1/network/companies/{companyId}/tcp/{deviceId}

검색된 장치에 대해 기록된 TCP 포트 관찰을 읽습니다.

GET /v1/network/companies/{companyId}/tcp/{deviceId} ↗

mcp.cap.NetworkRead

스키마(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

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET트래픽 기록 읽기/v1/network/companies/{companyId}/traffic-history/{monitorId}

요청된 시간 범위 동안 모니터에 대해 보관된 트래픽 샘플을 읽습니다.

GET /v1/network/companies/{companyId}/traffic-history/{monitorId} ↗

mcp.cap.NetworkRead

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
monitorId · 경로 · 필요
읽거나 필터링할 모니터의 식별자입니다.
minutes · 쿼리 · 필요
읽을 트래픽 기록의 시간(분)입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET읽기 트래픽 포트/v1/network/companies/{companyId}/traffic/{deviceId}

선택한 장치에 대한 네트워크 트래픽 모니터링 포트를 읽습니다.

GET /v1/network/companies/{companyId}/traffic/{deviceId} ↗

mcp.cap.NetworkRead

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUT네트워크 장치 유형 설정/v1/network/devices/type

검색된 네트워크 장치에 장치 유형 분류를 할당합니다.

PUT /v1/network/devices/type ↗

mcp.cap.NetworkManage

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST새로 고침 장치 분류/v1/network/devices/type/refresh

검색 워크플로를 통해 새로운 장치 유형 분류를 요청합니다.

POST /v1/network/devices/type/refresh ↗

mcp.cap.NetworkManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GETResolve 네트워크 서비스/v1/network/devices/{deviceId}/services/{port}/source

현재 범위가 설정된 증거를 읽습니다. 누락된 증거는 알려지지 않았습니다. 엔드포인트 액션이나 AI 충전이 시작되지 않습니다. 현재 선택된 AgentId을 반환합니다; 스캔이나 세션이 시작되지 않습니다.

GET /v1/network/devices/{deviceId}/services/{port}/source ↗

mcp.cap.NetworkRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
port · 경로 · 필요
서비스 포트TCP 발견됨, 1번부터 65535번까지. 현재 검증된 증거 사용.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUTiDRAC 통합 구성/v1/network/idrac

하드웨어 관리를 위해 허용된 iDRAC 통합 설정을 저장합니다.

PUT /v1/network/idrac ↗

mcp.cap.NetworkManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUTiLO 통합 구성/v1/network/ilo

하드웨어 관리를 위해 허용된 iLO 통합 설정을 저장합니다.

PUT /v1/network/ilo ↗

mcp.cap.NetworkManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST검색 모드 변경/v1/network/mode

회사의 네트워크 검색 작동 방식을 설정합니다.

POST /v1/network/mode ↗

mcp.cap.NetworkManage

스키마(OpenAPI)

NetworkDiscoveryMode

0 = Disabled
1 = PassiveOnly
2 = Gentle

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST네트워크 영역 이름 바꾸기/v1/network/realms/name

검색된 네트워크 영역의 이름 및 이름 잠금 설정을 업데이트합니다.

POST /v1/network/realms/name ↗

mcp.cap.NetworkManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST네트워크 영역 일시중단/v1/network/realms/suspend

네트워크 영역이 검색 작업에 참여하는지 여부를 변경합니다.

POST /v1/network/realms/suspend ↗

mcp.cap.NetworkManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST네트워크 스캔 시작/v1/network/scans

제공된 승인된 범위에 대한 네트워크 스캔을 대기열에 넣습니다.

POST /v1/network/scans ↗

mcp.cap.NetworkScan

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST네트워크 스캔 취소/v1/network/scans/cancel

네트워크 검색 작업 취소를 요청합니다.

POST /v1/network/scans/cancel ↗

mcp.cap.NetworkScan

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST오픈 네트워크 서비스/v1/network/services/open

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 작업 영수증을 검사합니다. resolve_network_service에서 ExpectedAgentId을 제공합니다; 변경된 증거나 출처가 닫히면 닫힙니다.

POST /v1/network/services/open ↗

mcp.cap.ScreenRead + mcp.cap.ResourcesOpen + mcp.cap.NetworkRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUTSNMP 커뮤니티 설정/v1/network/snmp/communities

승인된 검색에 사용되는 SNMP 커뮤니티 구성을 업데이트합니다.

PUT /v1/network/snmp/communities ↗

mcp.cap.NetworkCredentialsManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUTSNMP 자격 증명 저장/v1/network/snmp/credentials

승인된 네트워크 모니터링을 위해 SNMP 자격 증명을 생성하거나 업데이트합니다.

PUT /v1/network/snmp/credentials ↗

mcp.cap.NetworkCredentialsManage

스키마(OpenAPI)

SnmpAuthenticationProtocol

0 = None
1 = Sha1
2 = Sha256

SnmpPrivacyProtocol

0 = None
1 = Aes128

SnmpProtocolVersion

1 = V1
2 = V2C
3 = V3

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POSTSNMP 자격 증명 삭제/v1/network/snmp/credentials/delete

네트워크 구성에서 저장된 SNMP 자격 증명을 제거합니다.

POST /v1/network/snmp/credentials/delete ↗

mcp.cap.NetworkCredentialsManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUTSNMP 정책 저장/v1/network/snmp/policy

SNMP 검색 및 모니터링 정책을 업데이트합니다.

PUT /v1/network/snmp/policy ↗

mcp.cap.NetworkManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUT예상 SNMP 포트 상태 설정/v1/network/snmp/ports

SNMP 모니터링에 사용되는 예상 포트 구성을 업데이트합니다.

PUT /v1/network/snmp/ports ↗

mcp.cap.NetworkManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POSTSNMP 데이터 새로 고침/v1/network/snmp/refresh

선택한 대상에 대한 업데이트된 SNMP 관찰을 요청합니다.

POST /v1/network/snmp/refresh ↗

mcp.cap.NetworkScan

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUT회사 TCP 정책 저장/v1/network/tcp/company-policy

회사의 TCP 검색 정책을 변경합니다.

PUT /v1/network/tcp/company-policy ↗

mcp.cap.NetworkManage

스키마(OpenAPI)

NetworkPortInteraction

0 = ObserveOnly
1 = Http
2 = Https
3 = Ssh
4 = Telnet

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUT조직 저장 TCP 정책/v1/network/tcp/organization-policy

조직 전체의 TCP 검색 정책을 변경합니다.

PUT /v1/network/tcp/organization-policy ↗

mcp.cap.NetworkManage

스키마(OpenAPI)

NetworkPortInteraction

0 = ObserveOnly
1 = Http
2 = Https
3 = Ssh
4 = Telnet

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUT트래픽 모니터링 포트 제어/v1/network/traffic/ports

기존 모니터링 권한 필요. 구매 및 갱신 변경 사항은 애플리케이션에 남아 있습니다.

PUT /v1/network/traffic/ports ↗

mcp.cap.NetworkManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
보안6
GET보안 인벤토리 가져오기/v1/devices/{deviceId}/security

기록된 바이러스 백신, 방화벽 및 암호화 정보를 읽어보세요. 복구 비밀은 제외됩니다.

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

mcp.cap.SecurityRead

스키마(OpenAPI)

AntivirusActionProvider

0 = MicrosoftDefender
1 = BitdefenderBest

AntivirusProductState

0 = Unknown
1 = On
2 = Off
3 = Snoozed
4 = Expired

AntivirusAction

0 = QuickScan
1 = FullScan
2 = UpdateDefinitions

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST비밀번호 감사 실행/v1/devices/{deviceId}/security/password-audit

인증된 장치에서 지원되는 계정 비밀번호 확인을 요청합니다.

POST /v1/devices/{deviceId}/security/password-audit ↗

mcp.cap.PasswordAudit

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET비밀번호 감사 일정 나열/v1/security/password-audit-schedules

허용된 범위에서 반복되는 비밀번호 감사 일정을 읽으세요.

GET /v1/security/password-audit-schedules ↗

mcp.cap.PasswordAudit

매개변수

companyId · 쿼리 · 선택 사항
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
deviceId · 쿼리 · 선택 사항
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST비밀번호 감사 일정 저장/v1/security/password-audit-schedules

대상 및 타이밍 설정을 사용하여 반복되는 비밀번호 감사 일정을 생성하거나 업데이트합니다.

POST /v1/security/password-audit-schedules ↗

mcp.cap.PasswordAudit

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
DELETE비밀번호 감사 일정 삭제/v1/security/password-audit-schedules/{id}

향후 예약된 검사를 중지하려면 반복 일정을 제거하세요.

DELETE /v1/security/password-audit-schedules/{id} ↗

mcp.cap.PasswordAudit

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.
expectedRevision · 쿼리 · 필요
마지막 읽기의 현재 일정 개정입니다. 오래된 개정으로 인해 변경된 일정이 삭제되지 않습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET비밀번호 감사 대상 확인/v1/security/password-audits/targets

비밀번호 감사를 요청하기 전에 대상 자격을 검사하십시오.

GET /v1/security/password-audits/targets ↗

mcp.cap.PasswordAudit

매개변수

companyId · 쿼리 · 선택 사항
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
deviceId · 쿼리 · 선택 사항
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
사용자 정의 필드7
GET회사 사용자 정의 필드 가져오기/v1/companies/{companyId}/custom-fields

회사에 대해 저장된 추가 메타데이터 필드를 읽습니다.

GET /v1/companies/{companyId}/custom-fields ↗

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PATCH사용자 정의 필드 업데이트/v1/custom-fields/{fieldId}

마지막으로 읽은 버전을 사용하여 메타데이터 값을 변경합니다. 충돌은 업데이트하기 전에 다시 읽어야 함을 의미합니다.

PATCH /v1/custom-fields/{fieldId} ↗

mcp.cap.MetadataWrite

fieldId는 {scope}:{scopeUuid}:{key}입니다. 마지막으로 읽은 버전과 최대 4000자의 값 문자를 보냅니다. 409에는 currentVersion가 포함됩니다. ReadWrite는 메타데이터만 허용합니다. 값은 장치 작업을 실행하지 않습니다.

매개변수

fieldId · 경로 · 필요
업데이트할 사용자 정의 필드 값의 식별자입니다. 글을 쓰기 전에 현재 버전을 읽어보세요.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST여러 사용자 정의 필드 가져오기/v1/custom-fields:batch-get

제공된 여러 대상에 대한 사용자 정의 필드 값을 한 번에 읽습니다.

POST /v1/custom-fields:batch-get ↗

mcp.cap.InventoryRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET장치 사용자 정의 필드 가져오기/v1/devices/{deviceId}/custom-fields

장치에 대해 저장된 추가 메타데이터 필드를 읽습니다.

GET /v1/devices/{deviceId}/custom-fields ↗

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET목록 필드 정의/v1/field-definitions

내장 및 통합 정의 사용자 정의 필드와 해당 데이터 유형을 살펴보세요.

GET /v1/field-definitions ↗

mcp.cap.InventoryRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST필드 정의 생성/v1/field-definitions

범위, 키, 레이블 및 유형을 사용하여 통합 사용자 정의 필드를 정의합니다. 정의는 변경할 수 없습니다.

POST /v1/field-definitions ↗

mcp.cap.FieldDefinitionsWrite

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET사이트 사용자 정의 필드 가져오기/v1/sites/{siteId}/custom-fields

사이트에 대해 저장된 추가 메타데이터 필드를 읽습니다.

GET /v1/sites/{siteId}/custom-fields ↗

매개변수

siteId · 경로 · 필요
사이트 식별자입니다. 쿼리 매개변수는 자격 증명 범위 내에서 이 사이트로 결과를 좁힙니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
원격 세션13
GETWindows 세션 나열/v1/devices/{deviceId}/windows-sessions

대화형 데스크탑을 선택하는 데 사용할 수 있는 Windows 세션을 찾으십시오.

GET /v1/devices/{deviceId}/windows-sessions ↗

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET원격 세션 나열/v1/remote-sessions

자격 증명이 소유한 유지된 원격 세션 핸들을 찾으세요.

GET /v1/remote-sessions ↗
스키마(OpenAPI)

SessionKind

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

매개변수

pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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": []
}
POST원격 세션 열기/v1/remote-sessions

장치에 대해 승인된 원격 세션을 요청하고 후속 액세스에 대한 핸들을 받습니다.

POST /v1/remote-sessions ↗
스키마(OpenAPI)

SessionKind

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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
DELETE원격 세션 닫기/v1/remote-sessions/{handleId}

선택한 원격 세션 핸들 및 해당 액세스를 종료합니다.

DELETE /v1/remote-sessions/{handleId} ↗

매개변수

handleId · 경로 · 필요
기본 세션 식별자가 아닌 원격 세션 열기의 최상위 수신 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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": []
}
GET원격 세션 상태 가져오기/v1/remote-sessions/{handleId}

원격 세션 핸들을 사용하기 전에 상태를 읽으십시오.

GET /v1/remote-sessions/{handleId} ↗
스키마(OpenAPI)

SessionKind

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

매개변수

handleId · 경로 · 필요
기본 세션 식별자가 아닌 원격 세션 열기의 최상위 수신 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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": []
}
POST원격 세션 작업 보내기/v1/remote-sessions/{handleId}/actions

작업별 요청 필드를 사용하여 입력 또는 파일 작업과 같은 허용된 세션 작업을 수행합니다.

POST /v1/remote-sessions/{handleId}/actions ↗
스키마(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

매개변수

handleId · 경로 · 필요
기본 세션 식별자가 아닌 원격 세션 열기의 최상위 수신 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET원격 클립보드 읽기/v1/remote-sessions/{handleId}/clipboard

클립보드 액세스가 가능한 세션을 통해 클립보드 내용을 읽습니다.

GET /v1/remote-sessions/{handleId}/clipboard ↗

mcp.cap.ClipboardRead

매개변수

handleId · 경로 · 필요
기본 세션 식별자가 아닌 원격 세션 열기의 최상위 수신 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET연결 세부정보 가져오기/v1/remote-sessions/{handleId}/connection

인증된 원격 세션 핸들에 대한 연결 정보를 읽습니다.

GET /v1/remote-sessions/{handleId}/connection ↗

mcp.cap.ScreenRead

매개변수

handleId · 경로 · 필요
기본 세션 식별자가 아닌 원격 세션 열기의 최상위 수신 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET원격 삭제 미리보기/v1/remote-sessions/{handleId}/delete-preview

삭제 작업을 제출하기 전에 제안된 삭제가 영향을 미칠 파일과 폴더를 검사하십시오.

GET /v1/remote-sessions/{handleId}/delete-preview ↗

mcp.cap.FilesRead

스키마(OpenAPI)

FileEntryKind

0 = Drive
1 = Directory
2 = File

매개변수

handleId · 경로 · 필요
기본 세션 식별자가 아닌 원격 세션 열기의 최상위 수신 식별자입니다.
path · 쿼리 · 필요
열린 파일 세션의 허용 범위 내에서 원격 장치의 경로입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET원격 파일 읽기/v1/remote-sessions/{handleId}/file

인증된 파일 액세스 세션을 통해 파일 콘텐츠를 검색합니다.

GET /v1/remote-sessions/{handleId}/file ↗

mcp.cap.FilesRead

매개변수

handleId · 경로 · 필요
기본 세션 식별자가 아닌 원격 세션 열기의 최상위 수신 식별자입니다.
path · 쿼리 · 필요
열린 파일 세션의 허용 범위 내에서 원격 장치의 경로입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET원격 폴더 나열/v1/remote-sessions/{handleId}/files

인증된 파일 액세스 세션을 통해 디렉토리를 탐색합니다.

GET /v1/remote-sessions/{handleId}/files ↗

mcp.cap.FilesRead

스키마(OpenAPI)

FileEntryKind

0 = Drive
1 = Directory
2 = File

매개변수

handleId · 경로 · 필요
기본 세션 식별자가 아닌 원격 세션 열기의 최상위 수신 식별자입니다.
path · 쿼리 · 선택 사항
열린 파일 세션의 허용 범위 내에서 원격 장치의 경로입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET원격 화면 읽기/v1/remote-sessions/{handleId}/screen

인증된 세션을 통해 화면 데이터를 읽습니다. 여기에는 데스크탑에 표시되는 민감한 정보가 포함될 수 있습니다.

GET /v1/remote-sessions/{handleId}/screen ↗

mcp.cap.ScreenRead

매개변수

handleId · 경로 · 필요
기본 세션 식별자가 아닌 원격 세션 열기의 최상위 수신 식별자입니다.
monitorId · 쿼리 · 선택 사항
읽거나 필터링할 모니터의 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET터미널 출력 읽기/v1/remote-sessions/{handleId}/terminal

인증된 원격 세션과 관련된 터미널 출력을 읽습니다.

GET /v1/remote-sessions/{handleId}/terminal ↗

mcp.cap.TerminalRead

매개변수

handleId · 경로 · 필요
기본 세션 식별자가 아닌 원격 세션 열기의 최상위 수신 식별자입니다.
waitMilliseconds · 쿼리 · 선택 사항
터미널 출력을 읽기 전 대기 시간(밀리초)입니다. 기본값은 200이고 0~2000으로 고정됩니다.
cursor · 쿼리 · 선택 사항
이전 터미널 읽기에서 계속되는 커서입니다. 사용 가능한 출력 읽기를 시작하려면 생략하세요.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
유지 관리5
GET목록 유지 관리 기간/v1/maintenance-windows

자격 증명 범위 내에서 예약된 유지 관리 기간을 찾아보세요.

GET /v1/maintenance-windows ↗

mcp.cap.InventoryRead

스키마(OpenAPI)

state

"all"
"active"
"upcoming"
"cancelled"
"ended"

매개변수

pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.
state · 쿼리 · 선택 사항
리소스 상태를 기준으로 필터링합니다. 허용되는 상태와 기본값은 엔드포인트에 따라 다릅니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST유지 관리 기간 생성/v1/maintenance-windows

이유와 기간을 포함하여 회사, 사이트 또는 장치에 대한 유지 관리 메타데이터를 예약합니다.

POST /v1/maintenance-windows ↗

mcp.cap.MetadataWrite

범위는 회사, 사이트 또는 장치입니다. 이유는 필수이며 최대 500자입니다. 기간은 최대 31일입니다. 선택적 Idempotency-Key(1-128자)는 동일한 재생의 경우 200을 반환하고 변경된 요청의 경우 409를 반환합니다. 새로운 생성은 201을 반환합니다.

매개변수

Idempotency-Key · 헤더 · 선택 사항
불확실한 생성 결과 후에 동일한 키와 본문을 사용하십시오. 자격 증명으로 범위가 지정됩니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
DELETE유지 관리 기간 제거/v1/maintenance-windows/{windowId}

선택한 유지 관리 기간을 삭제합니다.

DELETE /v1/maintenance-windows/{windowId} ↗

mcp.cap.MetadataWrite

매개변수

windowId · 경로 · 필요
생성되거나 나열될 때 반환된 유지 관리 기간의 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET유지 관리 기간 받기/v1/maintenance-windows/{windowId}

하나의 유지 관리 기간에 대한 시기, 범위 및 세부 정보를 읽어보세요.

GET /v1/maintenance-windows/{windowId} ↗

mcp.cap.InventoryRead

매개변수

windowId · 경로 · 필요
생성되거나 나열될 때 반환된 유지 관리 기간의 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST활성 유지 관리 찾기/v1/maintenance-windows:active-query

제공된 대상에 대해 활성화된 유지 관리 기간을 확인합니다.

POST /v1/maintenance-windows:active-query ↗

mcp.cap.InventoryRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
자동화72
PUT알림 라우팅 저장/v1/automation/alert-routing

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 작업 영수증을 검사합니다.

PUT /v1/automation/alert-routing ↗

mcp.cap.AutomationManage + mcp.cap.AlertWrite

스키마(OpenAPI)

AutomationAlertRoutingKind

0 = QuietHours
1 = ParentDependency

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST경고 라우팅 검증/v1/automation/alert-routing/validate

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

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

mcp.cap.AutomationRead

스키마(OpenAPI)

AutomationAlertRoutingKind

0 = QuietHours
1 = ParentDependency

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST모니터 경고 확인/v1/automation/alerts/{id}/acknowledge

자동화 서비스를 통해 알림을 승인합니다. 요청 본문에 idempotencyKey를 전송하고 반환된 작업 영수증을 따릅니다. 오류를 수정하지는 않습니다.

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

mcp.cap.AutomationManage

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET리스트 알림 라우팅/v1/automation/companies/{companyId}/alert-routing

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

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

mcp.cap.AutomationRead

스키마(OpenAPI)

AutomationAlertRoutingKind

0 = QuietHours
1 = ParentDependency

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUT세이브 패치 제외/v1/automation/companies/{companyId}/patch-exclusions

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 작업 영수증을 검사합니다.

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

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET목록 태그/v1/automation/companies/{companyId}/tags

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

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

mcp.cap.AutomationRead

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET목록 구성 정책/v1/automation/configuration-policies

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

GET /v1/automation/configuration-policies ↗

mcp.cap.AutomationRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST구성 정책 생성/v1/automation/configuration-policies

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 작업 영수증을 검사합니다.

POST /v1/automation/configuration-policies ↗

mcp.cap.AutomationManage + mcp.cap.SettingsManage

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST미리보기 구성 정책/v1/automation/configuration-policies/preview

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

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

mcp.cap.AutomationRead + mcp.cap.SecurityRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST패치Windows 설치하세요/v1/automation/devices/{deviceId}/patch-install

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 작업 영수증을 검사합니다.

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

mcp.cap.PatchingExecute

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET장치 태그 받기/v1/automation/devices/{deviceId}/tags

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

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

mcp.cap.AutomationRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUT장치 태그 할당/v1/automation/devices/{deviceId}/tags

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 작업 영수증을 검사합니다.

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

mcp.cap.AutomationManage

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST업데이트 리셋Windows/v1/automation/devices/{deviceId}/update-reset

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 작업 영수증을 검사합니다.

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

mcp.cap.PatchingExecute

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST패치 정책 실행/v1/automation/devices/{id}/patch-runs

선택한 인증 장치에서 패치 정책 실행을 요청합니다.

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

mcp.cap.PatchingExecute

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET장치 패치 정책 상태 읽기/v1/automation/devices/{id}/patch-status

장치의 패치 정책 상태 및 보고된 패치 정보를 읽습니다.

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

mcp.cap.PatchingRead

스키마(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

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.
offset · 쿼리 · 선택 사항
건너뛸 항목 수(0부터 시작) 사용 가능한 경우 엔드포인트에서 반환된 오프셋을 계속 사용하세요.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST비상 정지 변경/v1/automation/emergency-stop

자동화 비상 정지 상태를 설정합니다. 활성 작업이 중지되었다고 가정하기 전에 결과를 검사하십시오.

POST /v1/automation/emergency-stop ↗

mcp.cap.AutomationStop

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET스마트 그룹 목록/v1/automation/groups

자동화 장치 그룹 및 해당 정의를 찾아보세요.

GET /v1/automation/groups ↗

mcp.cap.AutomationRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST스마트 그룹 생성/v1/automation/groups

제공된 선택 규칙을 사용하여 자동화 그룹을 만듭니다.

POST /v1/automation/groups ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST스마트 그룹 삭제/v1/automation/groups/delete

선택한 자동화 그룹을 제거합니다.

POST /v1/automation/groups/delete ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST미리보기 스마트 그룹 멤버십/v1/automation/groups/preview

제안된 그룹 규칙을 평가하여 저장하기 전에 어떤 허용 장치가 일치하는지 확인하세요.

POST /v1/automation/groups/preview ↗

mcp.cap.AutomationRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET스마트 그룹 받기/v1/automation/groups/{id}

하나의 자동화 그룹의 정의 및 회원 정보를 읽으십시오.

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

mcp.cap.AutomationRead

스키마(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

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUT스마트 그룹 업데이트/v1/automation/groups/{id}

기존 자동화 그룹의 정의를 변경합니다.

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

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

스키마(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

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST모니터 팩 설치/v1/automation/monitor-packs/install

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 작업 영수증을 검사합니다.

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

mcp.cap.AutomationManage

스키마(OpenAPI)

AutomationScopeKind

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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST리스트 모니터 팩/v1/automation/monitor-packs/query

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

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

mcp.cap.AutomationRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET목록 모니터/v1/automation/monitors

구성된 모니터링 정의를 찾아보세요.

GET /v1/automation/monitors ↗

mcp.cap.AutomationRead

스키마(OpenAPI)

AutomationMonitorLifecycleState

0 = Enabled
1 = Paused
2 = Archived

매개변수

offset · 쿼리 · 선택 사항
건너뛸 항목 수(0부터 시작) 사용 가능한 경우 엔드포인트에서 반환된 오프셋을 계속 사용하세요.
take · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 서버는 이 값을 끝점 제한으로 고정합니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST모니터 생성/v1/automation/monitors

제공된 검사 및 설정을 사용하여 모니터링 정의를 생성합니다.

POST /v1/automation/monitors ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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모니터 상태 미리보기/v1/automation/monitors/preview

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

POST /v1/automation/monitors/preview ↗

mcp.cap.AutomationRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET모니터 구입/v1/automation/monitors/{id}

한 모니터의 검사 및 구성을 읽습니다.

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

mcp.cap.AutomationRead

스키마(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

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUT모니터 업데이트/v1/automation/monitors/{id}

기존 모니터링 정의에 대한 변경 사항을 저장합니다.

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

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

스키마(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

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST모니터 상태 변경/v1/automation/monitors/{id}/state

선택한 모니터를 활성화 또는 비활성화합니다.

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

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

스키마(OpenAPI)

AutomationMonitorLifecycleState

0 = Enabled
1 = Paused
2 = Archived

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET자동화 작동 상태 가져오기/v1/automation/operations/{operationId}

자동화 관리 작업의 수신 및 상태를 읽습니다.

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

mcp.cap.AutomationRead

매개변수

operationId · 경로 · 필요
최상위 작업 영수증 식별자입니다. 이 영수증을 폴링하여 진행 상황과 결과를 검사하세요.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET자동화 결과 얻기/v1/automation/outcomes

기록된 장치별 자동화 결과를 읽습니다. 실행 상태만으로는 장치 상태를 증명할 수 없습니다.

GET /v1/automation/outcomes ↗

mcp.cap.AutomationRead

매개변수

companyId · 쿼리 · 선택 사항
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
deviceId · 쿼리 · 선택 사항
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET목록 소프트웨어 패키지/v1/automation/packages

자동화 워크플로에 사용할 수 있는 패키지를 찾아보세요.

GET /v1/automation/packages ↗

mcp.cap.AutomationRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUT소프트웨어 패키지 저장/v1/automation/packages

자동화 카탈로그에서 패키지 정의를 생성하거나 업데이트합니다.

PUT /v1/automation/packages ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST소프트웨어 패키지 취소/v1/automation/packages/revoke

선택한 패키지의 추가 승인된 사용을 취소합니다.

POST /v1/automation/packages/revoke ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET패치 승인 읽기/v1/automation/patch-approvals

승인 결정을 내리기 전에 패치 승인 정보를 검토하십시오.

GET /v1/automation/patch-approvals ↗

mcp.cap.PatchingRead

스키마(OpenAPI)

AutomationPatchApprovalState

0 = Unapproved
1 = Approved
2 = Denied

매개변수

offset · 쿼리 · 선택 사항
건너뛸 항목 수(0부터 시작) 사용 가능한 경우 엔드포인트에서 반환된 오프셋을 계속 사용하세요.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
state · 쿼리 · 선택 사항
리소스 상태를 기준으로 필터링합니다. 허용되는 상태와 기본값은 엔드포인트에 따라 다릅니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST패치 승인 결정/v1/automation/patch-approvals/decisions

선택한 패치에 대한 승인 결정을 기록합니다. 승인은 설치 증명이 아닙니다.

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

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

스키마(OpenAPI)

AutomationPatchApprovalState

0 = Unapproved
1 = Approved
2 = Denied

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST패치 백로그 검사/v1/automation/patch-backlog:query

요청된 범위에 대해 저장된 패치 백로그를 쿼리합니다. 업데이트는 설치되지 않습니다.

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

mcp.cap.PatchingRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET목록 패치 정책/v1/automation/patch-policies

장치 패치를 제어하는 구성된 정책을 읽습니다.

GET /v1/automation/patch-policies ↗

mcp.cap.PatchingRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST패치 정책 생성/v1/automation/patch-policies

적격 장치에 패치를 적용하는 방법을 정의하는 정책을 만듭니다.

POST /v1/automation/patch-policies ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST프리뷰 패치 정책/v1/automation/patch-policies/preview

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

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

mcp.cap.PatchingRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUT패치 정책 업데이트/v1/automation/patch-policies/{id}

기존 패치 정책의 설정을 변경합니다.

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

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

스키마(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

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET목록 보고서 일정/v1/automation/report-schedules

자동화 보고서에 대해 구성된 일정을 읽습니다.

GET /v1/automation/report-schedules ↗

mcp.cap.ReportsRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUT보고 일정 저장/v1/automation/report-schedules

자동화 보고서를 생성해야 하는 시기를 생성하거나 업데이트합니다.

PUT /v1/automation/report-schedules ↗

mcp.cap.ReportsManage

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST보고 일정 삭제/v1/automation/report-schedules/{id}/delete

선택한 보고 일정을 제거합니다.

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

mcp.cap.ReportsManage

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET자동화 보고서 읽기/v1/automation/reports

제공된 필터를 사용하여 자동화 보고 데이터를 읽습니다.

GET /v1/automation/reports ↗

mcp.cap.ReportsRead

매개변수

companyId · 쿼리 · 선택 사항
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET목록 워크플로가 실행됩니다./v1/automation/runs

기록된 워크플로 실행 및 실행 상태를 찾아보세요.

GET /v1/automation/runs ↗

mcp.cap.AutomationRead

스키마(OpenAPI)

AutomationRunState

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

매개변수

offset · 쿼리 · 선택 사항
건너뛸 항목 수(0부터 시작) 사용 가능한 경우 엔드포인트에서 반환된 오프셋을 계속 사용하세요.
take · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 서버는 이 값을 끝점 제한으로 고정합니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET워크플로 실행 가져오기/v1/automation/runs/{runId}

한 번의 실행 진행 상황과 목표 결과를 읽습니다.

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

mcp.cap.AutomationRead

스키마(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

매개변수

runId · 경로 · 필요
작업 수신 식별자가 아닌 작업 결과에서 반환된 도메인 실행 식별자입니다.
offset · 쿼리 · 선택 사항
건너뛸 항목 수(0부터 시작) 사용 가능한 경우 엔드포인트에서 반환된 오프셋을 계속 사용하세요.
take · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 서버는 이 값을 끝점 제한으로 고정합니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST워크플로 실행 취소/v1/automation/runs/{runId}/cancel

워크플로 실행 취소를 요청합니다. 완료된 작업은 취소되지 않습니다.

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

mcp.cap.AutomationStop

매개변수

runId · 경로 · 필요
작업 수신 식별자가 아닌 작업 결과에서 반환된 도메인 실행 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET목록 스크립트/v1/automation/scripts

자격 증명에 사용할 수 있는 자동화 스크립트 정의를 찾아보세요.

GET /v1/automation/scripts ↗

mcp.cap.AutomationRead

매개변수

offset · 쿼리 · 선택 사항
건너뛸 항목 수(0부터 시작) 사용 가능한 경우 엔드포인트에서 반환된 오프셋을 계속 사용하세요.
take · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 서버는 이 값을 끝점 제한으로 고정합니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST스크립트 만들기/v1/automation/scripts

자동화 라이브러리에 스크립트 정의를 추가합니다. 스크립트를 저장해도 실행되지 않습니다.

POST /v1/automation/scripts ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUT스크립트 업데이트/v1/automation/scripts

스크립트 정의에 대한 변경 사항을 저장합니다. 스크립트가 실행되지 않습니다.

PUT /v1/automation/scripts ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST스크립트 삭제/v1/automation/scripts/delete

라이브러리에서 선택한 스크립트 정의를 제거합니다.

POST /v1/automation/scripts/delete ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET스크립트 받기/v1/automation/scripts/{id}

구성된 콘텐츠를 포함하여 하나의 스크립트 정의를 읽습니다.

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

mcp.cap.AutomationRead

스키마(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

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST태그 만들기/v1/automation/tags

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 작업 영수증을 검사합니다.

POST /v1/automation/tags ↗

mcp.cap.AutomationManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET타사 패치 승인 목록/v1/automation/third-party/approvals

자격 증명 범위 내에서 현재 승인 및 정책 할당 읽기

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

mcp.cap.PatchingRead

스키마(OpenAPI)

ThirdPartyPatchApprovalMode

0 = VersionOnly
1 = ProductFutureVersions

ThirdPartyPatchApprovalState

0 = Unapproved
1 = Approved
2 = Denied

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST타사 패치 승인 설정/v1/automation/third-party/approvals

변경 승인 또는 정책 할당. 정책 활성화는 설치를 허용할 수 있습니다.

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

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

스키마(OpenAPI)

ThirdPartyPatchApprovalMode

0 = VersionOnly
1 = ProductFutureVersions

AutomationPatchApprovalState

0 = Unapproved
1 = Approved
2 = Denied

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET타사 패치 정책 목록/v1/automation/third-party/policies

자격 증명 범위 내에서 현재 승인 및 정책 할당 읽기

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

mcp.cap.PatchingRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST서드파티 패치 정책 생성/v1/automation/third-party/policies

변경 승인 또는 정책 할당. 정책 활성화는 설치를 허용할 수 있습니다.

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

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUT서드파티 패치 정책 업데이트/v1/automation/third-party/policies/{id}

변경 승인 또는 정책 할당. 정책 활성화는 설치를 허용할 수 있습니다.

PUT /v1/automation/third-party/policies/{id} ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

스키마(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

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST패치 정책 활성화 또는 비활성화/v1/automation/third-party/policies/{id}/enabled

변경 승인 또는 정책 할당. 정책 활성화는 설치를 허용할 수 있습니다.

POST /v1/automation/third-party/policies/{id}/enabled ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET목록 업데이트 구성/v1/automation/update-configurations

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

GET /v1/automation/update-configurations ↗

mcp.cap.PatchingRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST업데이트 구성 생성/v1/automation/update-configurations

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 작업 영수증을 검사합니다.

POST /v1/automation/update-configurations ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST미리보기 업데이트 구성/v1/automation/update-configurations/preview

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

POST /v1/automation/update-configurations/preview ↗

mcp.cap.PatchingRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUT저장 업데이트 구성/v1/automation/update-configurations/{id}

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 작업 영수증을 검사합니다. 현재 리스트 응답에서 ExpectedVersionId을 제공; 오래된 편집은 거부됩니다.

PUT /v1/automation/update-configurations/{id} ↗

mcp.cap.PatchingManage + mcp.cap.PatchingExecute

스키마(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

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST쿼리 패치 취약점/v1/automation/vulnerabilities:query

범위가 지정된 CVE, CVSS, 영향을 받은 장치 및 패치 수정을 읽으세요. 미확인 점수와 불완전한 커버리지를 보존하세요; 패치 연관성은 장치 악용 가능성을 증명하지 않습니다.

POST /v1/automation/vulnerabilities:query ↗

mcp.cap.PatchingRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET목록 워크플로/v1/automation/workflows

자격 증명에 사용할 수 있는 자동화 워크플로를 찾아보세요.

GET /v1/automation/workflows ↗

mcp.cap.AutomationRead

스키마(OpenAPI)

AutomationState

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

매개변수

offset · 쿼리 · 선택 사항
건너뛸 항목 수(0부터 시작) 사용 가능한 경우 엔드포인트에서 반환된 오프셋을 계속 사용하세요.
take · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 서버는 이 값을 끝점 제한으로 고정합니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST워크플로우 생성/v1/automation/workflows

제공된 정의에서 자동화 워크플로우를 생성합니다.

POST /v1/automation/workflows ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET워크플로 가져오기/v1/automation/workflows/{automationId}

자동화 워크플로 정의 및 구성을 읽어보세요.

GET /v1/automation/workflows/{automationId} ↗

mcp.cap.AutomationRead

스키마(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

매개변수

automationId · 경로 · 필요
버전이나 개별 실행이 아닌 자동화 워크플로의 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUT워크플로 업데이트/v1/automation/workflows/{automationId}

기존 자동화 작업 흐름에 대한 변경 사항을 저장합니다.

PUT /v1/automation/workflows/{automationId} ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

스키마(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

매개변수

automationId · 경로 · 필요
버전이나 개별 실행이 아닌 자동화 워크플로의 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST워크플로 실행/v1/automation/workflows/{automationId}/runs

제공된 승인된 대상에 대한 워크플로 실행을 시작합니다.

POST /v1/automation/workflows/{automationId}/runs ↗

mcp.cap.AutomationExecute

매개변수

automationId · 경로 · 필요
버전이나 개별 실행이 아닌 자동화 워크플로의 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST워크플로 상태 변경/v1/automation/workflows/{automationId}/state

제공된 상태를 사용하여 선택한 워크플로를 활성화하거나 비활성화합니다.

POST /v1/automation/workflows/{automationId}/state ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute

스키마(OpenAPI)

AutomationState

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

매개변수

automationId · 경로 · 필요
버전이나 개별 실행이 아닌 자동화 워크플로의 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
작업11
POST여러 장치에서 명령 실행/v1/command-batches

여러 승인된 대상에 대해 명령 배치를 제출합니다. 영수증을 검사하여 개별 결과를 추적하세요.

POST /v1/command-batches ↗

mcp.cap.CommandsExecute

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET명령 일괄 진행 상황 가져오기/v1/command-batches/{operationId}

배치를 다시 실행하지 않고 배치 진행 상황과 대상별 결과를 읽습니다.

GET /v1/command-batches/{operationId} ↗

mcp.cap.CommandsExecute

매개변수

operationId · 경로 · 필요
최상위 작업 영수증 식별자입니다. 이 영수증을 폴링하여 진행 상황과 결과를 검사하세요.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST명령 배치 취소/v1/command-batches/{operationId}/cancel

배치 취소를 요청합니다. 이미 수행된 작업은 취소로 취소할 수 없습니다.

POST /v1/command-batches/{operationId}/cancel ↗

mcp.cap.CommandsExecute

매개변수

operationId · 경로 · 필요
최상위 작업 영수증 식별자입니다. 이 영수증을 폴링하여 진행 상황과 결과를 검사하세요.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST장치 작업 실행/v1/devices/{deviceId}/actions

지원되는 입력 작업을 장치에 제출합니다. 작업의 기능과 권한은 발송 전에 확인됩니다.

POST /v1/devices/{deviceId}/actions ↗
스키마(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

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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": []
}
POST안티바이러스 작업 실행/v1/devices/{deviceId}/antivirus/actions

지원되는 백신 작업을 실행하고 반환된 결과를 검사합니다.

POST /v1/devices/{deviceId}/antivirus/actions ↗

mcp.cap.DeviceMaintenance

스키마(OpenAPI)

AntivirusAction

0 = QuickScan
1 = FullScan
2 = UpdateDefinitions

AntivirusActionProvider

0 = MicrosoftDefender
1 = BitdefenderBest

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST명령 실행/v1/devices/{deviceId}/commands

인증된 장치에 명령을 실행합니다. 불확실한 결과를 확인할 때 멱등성 키를 재사용하세요.

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

mcp.cap.CommandsExecute

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST장치 전원 일정 설정/v1/devices/{deviceId}/jobs/power

로컬 시간과 명시적 시간대를 제공합니다. 모호하거나 잘못된 시간은 거부됩니다.

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

mcp.cap.PowerControl

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST장치 전원 상태 변경/v1/devices/{deviceId}/power

지원되는 다시 시작 또는 안전 모드 작업을 요청합니다. 이로 인해 장치를 사용하는 사람이 방해를 받을 수 있습니다.

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

mcp.cap.PowerControl

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET목록 작업/v1/operations

자격 증명으로 생성된 보유 작업을 찾고 진행 상황을 검사합니다.

GET /v1/operations ↗

매개변수

pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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": []
}
GET키로 작업 찾기/v1/operations/by-key

시간 초과 또는 응답 손실 후 반복하는 대신 멱등성 키를 사용하여 작업을 복구합니다.

GET /v1/operations/by-key ↗

매개변수

idempotencyKey · 쿼리 · 필요
원래 요청에 사용된 정확한 멱등성 키입니다. 작업을 반복하지 않고 영수증을 조회합니다.

예제 요청

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
요청 및 응답 스키마(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": []
}
GET작업 진행 상황 가져오기/v1/operations/{operationId}

한 작업의 현재 상태와 사용 가능한 결과를 읽습니다. 알려지지 않은 결과는 실패의 증거가 아닙니다.

GET /v1/operations/{operationId} ↗

매개변수

operationId · 경로 · 필요
최상위 작업 영수증 식별자입니다. 이 영수증을 폴링하여 진행 상황과 결과를 검사하세요.

예제 요청

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
요청 및 응답 스키마(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": []
}
장치58
GET목록 장치/v1/devices

한 번에 한 페이지씩 장치 요약을 찾아보세요. 더 많은 결과를 보려면 다음 커서를 따르세요.

GET /v1/devices ↗

mcp.cap.InventoryRead

스키마(OpenAPI)

status

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

매개변수

pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.
companyId · 쿼리 · 선택 사항
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
siteId · 쿼리 · 선택 사항
사이트 식별자입니다. 쿼리 매개변수는 자격 증명 범위 내에서 이 사이트로 결과를 좁힙니다.
status · 쿼리 · 선택 사항
저장된 장치 상태를 기준으로 장치를 필터링합니다.
name · 쿼리 · 선택 사항
쿼리되는 리소스에 따라 장치 또는 소프트웨어 이름으로 필터링합니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET장치 받기/v1/devices/{deviceId}

해당 ID를 사용하여 한 장치의 요약을 읽습니다.

GET /v1/devices/{deviceId} ↗

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST에이전트 제거/v1/devices/{deviceId}/agent/uninstall

인벤토리 항목을 유지할지 선택합니다. 확인은 제거를 증명하지 않습니다.

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

mcp.cap.EnrollmentManage

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST명령 취소/v1/devices/{deviceId}/commands/{operationId}/cancel

이 자격 증명으로 소유된 원본 명령 영수증 사용. 취소는 효과를 되돌리지 않음.

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

mcp.cap.CommandsExecute

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
operationId · 경로 · 필요
최상위 작업 영수증 식별자입니다. 이 영수증을 폴링하여 진행 상황과 결과를 검사하세요.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST디스크 사용량 스캔/v1/devices/{deviceId}/disk-usage

스캔 식별자와 선택한 볼륨을 제공합니다. 스캔을 취소하려면 식별자를 재사용합니다.

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

mcp.cap.DeviceMaintenance

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST디스크 스캔 취소/v1/devices/{deviceId}/disk-usage/cancel

스캔 식별자와 선택한 볼륨을 제공합니다. 스캔을 취소하려면 식별자를 재사용합니다.

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

mcp.cap.DeviceMaintenance

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET디스크 볼륨 목록/v1/devices/{deviceId}/disk-usage/volumes

자격 증명 범위 내에서 현재 엔드포인트 진단 읽기

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET저장된 이벤트 로그 결과 읽기/v1/devices/{deviceId}/event-logs

장치에 대해 이미 수집된 이벤트 로그 결과를 읽습니다.

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
offset · 쿼리 · 선택 사항
건너뛸 항목 수(0부터 시작) 사용 가능한 경우 엔드포인트에서 반환된 오프셋을 계속 사용하세요.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET실시간 이벤트 로그 읽기/v1/devices/{deviceId}/event-logs/live

저장된 결과에만 의존하지 않고 장치에서 이벤트 로그 정보를 요청합니다.

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

mcp.cap.InventoryRead

스키마(OpenAPI)

level

"Critical"
"Error"
"Warning"

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
from · 쿼리 · 선택 사항
요청된 시간 범위의 시작 타임스탬프입니다. UTC 오프셋을 포함합니다.
to · 쿼리 · 선택 사항
요청된 시간 범위의 종료 타임스탬프입니다. UTC 오프셋을 포함하고 시작 이후 시간을 선택합니다.
level · 쿼리 · 선택 사항
요청된 이벤트 로그를 이벤트 수준별로 필터링합니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST이벤트 로그 결과 수집/v1/devices/{deviceId}/event-logs/query

장치에서 제한된 이벤트 로그 쿼리를 요청하고 나중에 읽을 수 있도록 결과를 기록합니다.

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET저장된 재고 가져오기/v1/devices/{deviceId}/inventory

수집된 하드웨어 및 보안 사실을 읽어보세요. 누락된 값을 알 수 없습니다. 이는 새로운 검색을 트리거하지 않습니다.

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

mcp.cap.InventoryRead

저장된 하드웨어 및 보안 요약 정보. Null 값은 알 수 없습니다. 타임스탬프는 관찰의 신선도를 설정합니다. 복구 키, 비밀 자료 또는 장치 제어 권한이 없습니다.

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET재고 섹션 가져오기/v1/devices/{deviceId}/inventory/{section}

장치에 저장된 자산 인벤토리의 지원되는 섹션 하나를 읽습니다.

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
section · 경로 · 필요
인벤토리 섹션을 읽어야 합니다. 지원되는 섹션을 보려면 먼저 manifest를 읽어보세요. 어레이 섹션은 nextOffset를 따르세요.
offset · 쿼리 · 선택 사항
건너뛸 항목 수(0부터 시작) 사용 가능한 경우 엔드포인트에서 반환된 오프셋을 계속 사용하세요.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET대기 중인 작업 목록/v1/devices/{deviceId}/jobs

보류 중 및 실행 중인 작업 읽기. 누락된 작업은 성공을 증명하지 않음.

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

mcp.cap.InventoryRead

스키마(OpenAPI)

DeviceJobStatus

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

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST오프라인 명령 큐에 추가/v1/devices/{deviceId}/jobs/command

재연결 작업 큐에 추가. 실행 전에 현재 자격 증명과 권한을 다시 확인합니다.

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

mcp.cap.CommandsExecute

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST에이전트 제거 작업 큐에 추가/v1/devices/{deviceId}/jobs/uninstall

재연결 작업 큐에 추가. 실행 전에 현재 자격 증명과 권한을 다시 확인합니다.

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

mcp.cap.EnrollmentManage

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET대기 중인 작업 읽기/v1/devices/{deviceId}/jobs/{jobId}

보류 중 및 실행 중인 작업 읽기. 누락된 작업은 성공을 증명하지 않음.

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

mcp.cap.InventoryRead

스키마(OpenAPI)

DeviceJobStatus

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

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
jobId · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST대기 중인 작업 취소/v1/devices/{deviceId}/jobs/{jobId}/cancel

작업이 실행을 위해 요청되기 전까지만 취소 가능

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
jobId · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GETLinux 준비 상태 확인/v1/devices/{deviceId}/linux-readiness

자격 증명 범위 내에서 현재 엔드포인트 진단 읽기

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

mcp.cap.InventoryRead

스키마(OpenAPI)

LinuxReadinessState

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

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET기록된 패치 상태 가져오기/v1/devices/{deviceId}/patches

저장된 패치 정보, 누락된 업데이트 및 오류를 읽습니다. 업데이트를 검색하거나 설치하지 않습니다.

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

mcp.cap.PatchingRead

스키마(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

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET성능 기록 가져오기/v1/devices/{deviceId}/performance

특정 시간 범위에 대해 유지된 성능 샘플을 읽습니다. 간격은 샘플이 수집되지 않았음을 의미합니다.

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
from · 쿼리 · 선택 사항
요청된 시간 범위의 시작 타임스탬프입니다. UTC 오프셋을 포함합니다.
to · 쿼리 · 선택 사항
요청된 시간 범위의 종료 타임스탬프입니다. UTC 오프셋을 포함하고 시작 이후 시간을 선택합니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET장치 전제 조건 확인/v1/devices/{deviceId}/preflight

작업을 보내지 않고 저장된 장치 기능 및 준비 상태 정보를 읽습니다.

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET실행 중인 프로세스 읽기/v1/devices/{deviceId}/processes

승인된 장치로부터 프로세스 정보를 요청합니다.

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
offset · 쿼리 · 선택 사항
건너뛸 항목 수(0부터 시작) 사용 가능한 경우 엔드포인트에서 반환된 오프셋을 계속 사용하세요.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST프로세스 종료/v1/devices/{deviceId}/processes/terminate

종료 전 프로세스 ID와 이름 확인. 이 검사는 엔드포인트에서 원자적이지 않음.

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

mcp.cap.InventoryRead + mcp.cap.CommandsExecute

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GETWindows 원격 데스크톱 확인/v1/devices/{deviceId}/rdp

자격 증명 범위 내에서 현재 엔드포인트 진단 읽기

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

mcp.cap.InventoryRead

스키마(OpenAPI)

WindowsRdpState

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

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POSTWindows 원격 데스크톱 활성화/v1/devices/{deviceId}/rdp/enable

기존 엔드포인트 보호 기능으로 원격 데스크톱 활성화

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

mcp.cap.DeviceMaintenance

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET장치 서비스 읽기/v1/devices/{deviceId}/services

승인된 장치로부터 서비스 정보를 요청합니다. 장치 가용성은 결과에 영향을 미칩니다.

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
offset · 쿼리 · 선택 사항
건너뛸 항목 수(0부터 시작) 사용 가능한 경우 엔드포인트에서 반환된 오프셋을 계속 사용하세요.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET설치된 소프트웨어 받기/v1/devices/{deviceId}/software

페이지에 저장된 소프트웨어 관찰을 읽습니다. 소프트웨어를 스캔하거나 설치하지 않습니다.

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

mcp.cap.InventoryRead

저장된 소프트웨어 관찰만, 페이지당 최대 100개입니다. items null는 저장된 스냅샷이 없음을 의미합니다. 빈 items는 관찰된 빈 목록을 의미합니다. 숫자 after는 오프셋입니다. updatedAtUtc가 변경되면 내보내기를 다시 시작하세요.

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST소프트웨어 설치/v1/devices/{deviceId}/software/install

인증된 장치에 제공된 소프트웨어의 설치를 요청하고 작동 결과를 검사하십시오.

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

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

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST소프트웨어 제거/v1/devices/{deviceId}/software/uninstall

승인된 장치에서 선택한 소프트웨어 제거를 요청합니다.

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

mcp.cap.SoftwareManage

스키마(OpenAPI)

SoftwareKind

0 = ClassicDesktop
1 = PackagedApp

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET속도 테스트 상태 가져오기/v1/devices/{deviceId}/speed-tests

장치의 속도 테스트 상태와 사용 가능한 결과를 읽어보세요.

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

mcp.cap.NetworkRead

스키마(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

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET속도 테스트 기록 읽기/v1/devices/{deviceId}/speed-tests/history

장치에 대해 보관된 속도 테스트 결과를 찾아보세요.

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

mcp.cap.NetworkRead

스키마(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

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET속도 테스트 실행/v1/devices/{deviceId}/speed-tests/{runId}

해당 ID를 사용하여 기록된 속도 테스트 실행 1개를 읽습니다.

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

mcp.cap.NetworkRead

스키마(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

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
runId · 경로 · 필요
작업 수신 식별자가 아닌 작업 결과에서 반환된 도메인 실행 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST임시 관리자 생성/v1/devices/{deviceId}/temporary-admin

한 번만 자격 증명 반환, 최대 24시간. 저장된 영수증에는 비밀번호가 포함되지 않음.

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

mcp.cap.CommandsExecute + mcp.cap.SecurityRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET장치 썸네일 읽기/v1/devices/{deviceId}/thumbnail

액세스 및 썸네일 정책에 따라 사용 가능한 데스크탑 썸네일을 읽습니다.

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

mcp.cap.ScreenRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST장치 썸네일 새로 고침/v1/devices/{deviceId}/thumbnail/refresh

적격 장치에서 새 데스크톱 썸네일을 요청합니다. 디스패치는 새로운 이미지를 보장하지 않습니다.

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

mcp.cap.ScreenRead + mcp.cap.DeviceRefresh

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET가상 머신 나열/v1/devices/{deviceId}/virtual-machines

이 장치에서 보고된 가상 머신을 읽습니다.

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET가상화 세부정보 가져오기/v1/devices/{deviceId}/virtualisation

장치에 저장된 가상화 요약을 읽습니다.

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET장치 디스크 가져오기/v1/devices/{deviceId}/volumes

디스크 용량, 사용 가능한 공간 등 저장된 볼륨 정보를 읽습니다.

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET보증 정보 읽기/v1/devices/{deviceId}/warranty

저장된 보증 조회 및 최신 정보를 읽어보세요.

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

mcp.cap.InventoryRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST보증 정보 새로 고침/v1/devices/{deviceId}/warranty/refresh

저장된 결과만 읽는 대신 업데이트된 보증 조회를 요청하십시오.

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

mcp.cap.DeviceRefresh

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST여러 장치 가져오기/v1/devices:batch-get

한 번의 요청으로 제공된 장치 ID 목록에 대한 요약을 읽습니다.

POST /v1/devices:batch-get ↗

mcp.cap.InventoryRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST조회 장치 감사/v1/history/devices/query

현재 범위 내린 증거를 읽으세요. 누락된 증거는 알려지지 않았습니다. 엔드포인트 조치나 AI 기소가 시작되지 않았습니다. 허가된 CompanyId을 제공하세요.

POST /v1/history/devices/query ↗

mcp.cap.ActivityRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST쿼리 세션 이력/v1/history/sessions/query

현재 범위 내린 증거를 읽으세요. 누락된 증거는 알려지지 않았습니다. 엔드포인트 조치나 AI 기소가 시작되지 않았습니다. 허가된 CompanyId을 제공하세요.

POST /v1/history/sessions/query ↗

mcp.cap.ActivityRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GETPSA 통합 기능/v1/integrations/psa

현재 범위가 설정된 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 조치나 AI 청구가 시작되지 않습니다. SaaS만; 조직 전체에 적용되는 범위입니다. 제공자 자격 증명은 쓰기 전용이며, 편집을 위해서는 기존 수정본이 필요합니다.

GET /v1/integrations/psa ↗

mcp.cap.SettingsRead + mcp.cap.WebhooksRead

매개변수

after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUTPSA 연결 저장/v1/integrations/psa/connections

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 운영 영수증을 검사합니다. SaaS만; 조직 전체 범위. 제공자 자격 증명은 쓰기 전용이며, 편집을 위해서는 기존 수정본이 필요합니다.

PUT /v1/integrations/psa/connections ↗

mcp.cap.SettingsManage + mcp.cap.WebhooksWrite

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUTPSA 전달 일시 중지/v1/integrations/psa/deliveries/pause

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 운영 영수증을 검사합니다. SaaS만; 조직 전체 범위. 제공자 자격 증명은 쓰기 전용이며, 편집을 위해서는 기존 수정본이 필요합니다.

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

mcp.cap.WebhooksWrite

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
PUTPSA 매핑 저장/v1/integrations/psa/mappings

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 운영 영수증을 검사합니다. SaaS만; 조직 전체 범위. 제공자 자격 증명은 쓰기 전용이며, 편집을 위해서는 기존 수정본이 필요합니다.

PUT /v1/integrations/psa/mappings ↗

mcp.cap.SettingsManage + mcp.cap.WebhooksWrite

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GETPSA 고객 검색/v1/integrations/psa/{id}/customers

현재 범위가 설정된 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 조치나 AI 청구가 시작되지 않습니다. SaaS만; 조직 전체에 적용되는 범위입니다. 제공자 자격 증명은 쓰기 전용이며, 편집을 위해서는 기존 수정본이 필요합니다.

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

mcp.cap.SettingsRead + mcp.cap.WebhooksRead

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.
search · 쿼리 · 필요
고객 검색 텍스트, 최대 200자까지.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET차량 재고 찾아보기/v1/queries/inventory

여러 장치에 걸쳐 저장된 하드웨어 및 보안 요약을 읽을 수 있으며 선택적으로 한 회사로 제한됩니다.

GET /v1/queries/inventory ↗

mcp.cap.InventoryRead

매개변수

companyId · 쿼리 · 선택 사항
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET설치된 소프트웨어 찾기/v1/queries/software

선택적 소프트웨어 이름 필터를 사용하여 여러 장치에 걸쳐 저장된 소프트웨어 인벤토리를 읽습니다. 스캔이 시작되지 않습니다.

GET /v1/queries/software ↗

mcp.cap.InventoryRead

매개변수

companyId · 쿼리 · 선택 사항
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
name · 쿼리 · 선택 사항
쿼리되는 리소스에 따라 장치 또는 소프트웨어 이름으로 필터링합니다.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET사용자 세션 찾기/v1/queries/user-sessions

허용된 장치 범위 내에서 사용자 세션 정보를 검색합니다.

GET /v1/queries/user-sessions ↗

mcp.cap.InventoryRead

매개변수

userName · 쿼리 · 필요
자격 증명 범위 내의 활성 사용자 세션에서 찾을 사용자 이름입니다.
companyId · 쿼리 · 선택 사항
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST쿼리 리졸버 역사/v1/resolver/history/query

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알려지지 않았습니다. 엔드포인트 조치나 AI 혐의는 시작되지 않았습니다. 지난 30일간의 창작자 소유 조사, 페이지당 최대 100건까지; Next 계속 진행하세요. 허가된 CompanyId을 제공하세요.

POST /v1/resolver/history/query ↗

mcp.cap.AssistantRead + mcp.cap.SecurityRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET리졸버 결과 보기/v1/resolver/runs/{id}

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

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

mcp.cap.AssistantRead + mcp.cap.SecurityRead

스키마(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

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET썸네일 정책 읽기/v1/settings/device-thumbnails

데스크탑 썸네일 수집을 제어하는 설정을 읽어보세요.

GET /v1/settings/device-thumbnails ↗

mcp.cap.SettingsRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUT업데이트 썸네일 정책/v1/settings/device-thumbnails

허용된 범위에 대한 데스크톱 썸네일 수집을 제어하는 정책을 변경합니다.

PUT /v1/settings/device-thumbnails ↗

mcp.cap.SettingsManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST시작 속도 테스트/v1/speed-tests

제공된 대상에 대한 속도 테스트를 요청합니다. 이러한 테스트는 네트워크 트래픽을 생성합니다.

POST /v1/speed-tests ↗

mcp.cap.NetworkScan

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST속도 테스트 취소/v1/speed-tests/cancel

선택한 속도 테스트 작업 취소를 요청합니다.

POST /v1/speed-tests/cancel ↗

mcp.cap.NetworkScan

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST여러 장치용 디스크 가져오기/v1/volumes:batch-query

제공된 장치 세트에 대해 저장된 볼륨 정보를 읽습니다.

POST /v1/volumes:batch-query ↗

mcp.cap.InventoryRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
지원9
POST사용자 확인 요청/v1/devices/{deviceId}/confirmations

지원되는 워크플로를 계속하기 전에 장치 사용자에게 응답을 요청하세요.

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

mcp.cap.InventoryRead + mcp.cap.DeviceMessage

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST확인 후 다시 시작/v1/devices/{deviceId}/confirmed-restart

사용자 확인 워크플로를 사용하여 다시 시작을 요청합니다. 요청 자체는 재시작이 완료되었음을 증명하지 않습니다.

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

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

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST사용자 메시지 보내기/v1/devices/{deviceId}/messages

선택한 장치를 사용하는 사람에게 메시지를 표시합니다.

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

mcp.cap.InventoryRead + mcp.cap.DeviceMessage

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET목록 방문자 패스/v1/devices/{deviceId}/visitor-passes

하나의 장치와 관련된 방문자 패스를 읽습니다.

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

mcp.cap.ScreenRead

매개변수

deviceId · 경로 · 필요
해당 장치 목록에서 반환된 장치 식별자입니다. 관리되는 에이전트와 검색된 네트워크 장치에는 서로 다른 식별자가 있습니다.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET빠른 지원 세션 목록/v1/quick-support

자격 증명에 사용할 수 있는 빠른 지원 세션을 읽어보세요.

GET /v1/quick-support ↗

mcp.cap.ScreenRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST빠른 지원 액세스 생성/v1/quick-support

제공된 액세스 설정을 사용하여 참석 지원 초대를 만듭니다.

POST /v1/quick-support ↗

mcp.cap.ScreenControl + mcp.cap.EnrollmentManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST빠른 지원 액세스 취소/v1/quick-support/{id}/revoke

선택한 빠른 지원 초대를 취소합니다.

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

mcp.cap.ScreenControl + mcp.cap.EnrollmentManage

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST방문자 출입증 생성/v1/visitor-passes

요청된 장치 및 제한 사항을 사용하여 임시 방문자 액세스를 생성합니다.

POST /v1/visitor-passes ↗

mcp.cap.ScreenControl + mcp.cap.EnrollmentManage

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POST방문자 출입증 취소/v1/visitor-passes/{id}/revoke

선택한 방문자 패스에 대한 추가 액세스 권한을 중지합니다.

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

mcp.cap.ScreenControl + mcp.cap.EnrollmentManage

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
통합12
GET자격 증명 활동 가져오기/v1/activity

이 자격 증명에 대해 보관된 API 감사 활동을 읽습니다. 이는 조직의 전체 감사 내역이 아닙니다.

GET /v1/activity ↗

mcp.cap.ActivityRead

매개변수

pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET최근 변경 사항 읽기/v1/events

추적된 장치를 읽고 재생 가능한 이벤트 피드에서 변경 사항을 경고합니다. 커서를 유지하고 정기적으로 전체 재고를 조정합니다.

GET /v1/events ↗

mcp.cap.InventoryRead

매개변수

after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST장치 스냅샷 생성/v1/sync/devices

안정적인 장치 요약 내보내기를 시작하거나 이전에 완료된 스냅샷과 비교하여 변경 사항을 찾습니다.

POST /v1/sync/devices ↗

mcp.cap.InventoryRead

안정적인 장치 요약 스냅샷을 생성합니다. previousSnapshotId는 전체 기준의 경우 null이고 변경 사항의 경우 완료된 스냅샷 ID입니다. 7일 후에 만료됩니다. 제한: 장치 10,000개, 자격 증명 및 시간당 조직당 스냅샷 4개, 조직당 압축 스토리지 256MiB. 소프트웨어, 경고, 사용자 정의 필드 또는 재고 변경 사항 추적이 없습니다.

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET장치 스냅샷 변경 사항 읽기/v1/sync/devices/{snapshotId}

스냅샷의 추가, 업데이트 및 삭제된 장치 요약을 페이지로 이동합니다. 모든 페이지를 읽은 후에만 스냅샷 ID를 저장하세요.

GET /v1/sync/devices/{snapshotId} ↗

mcp.cap.InventoryRead

null까지 next를 따른 후 이 완성된 스냅샷을 다음 기준으로 유지합니다. 항목은 요약이 포함된 upsert 또는 장치 null가 포함된 deleted입니다. 스냅샷은 생성 자격 증명에 속하며 범위가 다시 확인됩니다. 410에는 새로운 전체 기준이 필요합니다.

매개변수

snapshotId · 경로 · 필요
페이지를 통해 이동할 스냅샷의 식별자입니다. 이를 생성한 것과 동일한 자격 증명과 범위를 사용합니다.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST리소스 스냅샷 생성/v1/sync/{resource}

인벤토리, 소프트웨어, 경고 또는 사용자 정의 필드 스냅샷을 시작하고 선택적으로 이전 스냅샷과 비교합니다.

POST /v1/sync/{resource} ↗

mcp.cap.InventoryRead

스키마(OpenAPI)

resource

"inventory"
"software"
"alerts"
"custom-fields"

매개변수

resource · 경로 · 필요
스냅샷을 위한 자원 수집. 엔드포인트 계약에서 지원되는 리소스 이름을 사용하세요.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET리소스 변경 사항 읽기/v1/sync/{resource}/{snapshotId}

리소스 스냅샷을 통해 페이지를 이동합니다. 만료된 스냅샷에는 새로운 전체 기준이 필요합니다.

GET /v1/sync/{resource}/{snapshotId} ↗

mcp.cap.InventoryRead

스키마(OpenAPI)

resource

"inventory"
"software"
"alerts"
"custom-fields"

매개변수

resource · 경로 · 필요
스냅샷을 위한 자원 수집. 엔드포인트 계약에서 지원되는 리소스 이름을 사용하세요.
snapshotId · 경로 · 필요
페이지를 통해 이동할 스냅샷의 식별자입니다. 이를 생성한 것과 동일한 자격 증명과 범위를 사용합니다.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET웹훅 구독 나열/v1/webhooks

서명 비밀 없이 자격 증명이 소유한 구독을 읽습니다.

GET /v1/webhooks ↗

mcp.cap.WebhooksRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST웹훅 구독 생성/v1/webhooks

향후 이벤트를 위해 HTTPS 대상을 등록합니다. 한 번 반환되면 서명 비밀을 저장합니다.

POST /v1/webhooks ↗

mcp.cap.WebhooksWrite

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
DELETE웹훅 구독 삭제/v1/webhooks/{webhookId}

구독을 중지하고 배송 기록을 제거합니다.

DELETE /v1/webhooks/{webhookId} ↗

mcp.cap.WebhooksWrite

매개변수

webhookId · 경로 · 필요
웹훅 구독의 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET웹훅 전달 읽기/v1/webhooks/{webhookId}/deliveries

하나의 구독에 대한 배달 시도 및 기록된 상태를 검사합니다.

GET /v1/webhooks/{webhookId}/deliveries ↗

mcp.cap.WebhooksRead

매개변수

webhookId · 경로 · 필요
웹훅 구독의 식별자입니다.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POST웹훅 전달 재시도/v1/webhooks/{webhookId}/deliveries/{deliveryId}/replay

원래 배달 ID로 보관된 배달을 재생합니다. 수신자는 중복을 처리해야 합니다.

POST /v1/webhooks/{webhookId}/deliveries/{deliveryId}/replay ↗

mcp.cap.WebhooksWrite

매개변수

webhookId · 경로 · 필요
웹훅 구독의 식별자입니다.
deliveryId · 경로 · 필요
이 웹훅 구독에 속하는 배달의 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
PUT웹훅 활성화 설정/v1/webhooks/{webhookId}/enabled

FullAccess 및 현재 소유자 권한이 필요합니다. 멮등성 키를 제공하고, 동일한 요청을 불확실성 after 재사용하며, 작업 영수증을 검사합니다.

PUT /v1/webhooks/{webhookId}/enabled ↗

mcp.cap.WebhooksWrite

매개변수

webhookId · 경로 · 필요
웹훅 구독의 식별자입니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
회사11
GET목록 회사/v1/companies

액세스할 수 있는 제한된 회사 목록을 얻으세요. 더 큰 규모로 내보내려면 페이지가 매겨진 회사 쿼리를 사용하세요.

GET /v1/companies ↗

mcp.cap.InventoryRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET회사를 구하세요/v1/companies/{companyId}

회사의 ID와 이름을 조회합니다.

GET /v1/companies/{companyId} ↗

mcp.cap.InventoryRead

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET회사 사이트 목록/v1/companies/{companyId}/sites

한 회사에 속한 사이트를 찾습니다.

GET /v1/companies/{companyId}/sites ↗

mcp.cap.InventoryRead

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET조직을 확보하세요/v1/organization

자격 증명과 관련된 조직 세부 정보를 읽어보세요.

GET /v1/organization ↗

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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": []
}
GET페이지에서 회사 찾아보기/v1/queries/companies

제한된 페이지의 회사를 내보내고 더 이상 페이지가 남지 않을 때까지 다음을 따릅니다.

GET /v1/queries/companies ↗

mcp.cap.InventoryRead

매개변수

pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET페이지에서 사이트 찾아보기/v1/queries/sites

제한된 페이지로 사이트를 내보냅니다. 선택적으로 한 회사로 제한됩니다.

GET /v1/queries/sites ↗

mcp.cap.InventoryRead

매개변수

companyId · 쿼리 · 선택 사항
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
pageSize · 쿼리 · 선택 사항
이 페이지에 요청된 최대 항목 수입니다. 엔드포인트별 제한으로 인해 페이지 크기가 줄어들 수 있습니다.
after · 쿼리 · 선택 사항
이전 응답의 연속 위치입니다. 첫 번째 페이지는 생략합니다. 계속할 때 동일한 필터를 유지하십시오.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET고객 보고서 목록/v1/reports/companies/{companyId}/monthly

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

GET /v1/reports/companies/{companyId}/monthly ↗

mcp.cap.ReportsRead

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
offset · 쿼리 · 선택 사항
건너뛸 항목 수(0부터 시작) 사용 가능한 경우 엔드포인트에서 반환된 오프셋을 계속 사용하세요.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET클라이언트 보고 설정 받아보세요/v1/reports/companies/{companyId}/monthly/settings

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알 수 없습니다. 엔드포인트 액션이나 AI 기소가 시작되지 않았습니다.

GET /v1/reports/companies/{companyId}/monthly/settings ↗

mcp.cap.ReportsRead

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET고객 보고서 받기/v1/reports/companies/{companyId}/monthly/{id}

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알려지지 않았습니다. 엔드포인트 액션이나 AI 청구가 시작되지 않습니다. 비밀번호 감사 증거는 명시적인 PasswordAudit 기능이 추가로 필요합니다.

GET /v1/reports/companies/{companyId}/monthly/{id} ↗

mcp.cap.ReportsRead

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET수출 고객 보고서/v1/reports/companies/{companyId}/monthly/{id}/html

현재 범위가 정한 증거를 읽으세요. 누락된 증거는 알려지지 않았습니다. 엔드포인트 액션이나 AI 청구가 시작되지 않습니다. 비밀번호 감사 증거는 명시적인 PasswordAudit 기능이 추가로 필요합니다.

GET /v1/reports/companies/{companyId}/monthly/{id}/html ↗

mcp.cap.ReportsRead

매개변수

companyId · 경로 · 필요
회사 식별자입니다. 쿼리 매개변수는 결과를 이 회사로 좁힙니다. 자격 증명 범위를 확장하지 않습니다.
id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET사이트 받기/v1/sites/{siteId}

해당 ID를 사용하여 하나의 사이트를 조회합니다.

GET /v1/sites/{siteId} ↗

mcp.cap.InventoryRead

매개변수

siteId · 경로 · 필요
사이트 식별자입니다. 쿼리 매개변수는 자격 증명 범위 내에서 이 사이트로 결과를 좁힙니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
AI11
POST저장된 AI 작업 읽기/v1/assistant/actions

제공된 보조 범위에 대해 저장된 작업을 읽습니다.

POST /v1/assistant/actions ↗

mcp.cap.AssistantRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POSTAI 작업 적용/v1/assistant/apply

필수 승인 및 제약 조건을 사용하여 보조 작업에서 지원되는 작업을 적용합니다.

POST /v1/assistant/apply ↗

mcp.cap.AutomationManage + mcp.cap.AutomationExecute + mcp.cap.AssistantApply

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GETAI 승격 조치 정책 읽기/v1/assistant/elevated-policy

작업을 계획하기 전에 향상된 보조 작업을 관리하는 정책을 검사하십시오.

GET /v1/assistant/elevated-policy ↗

mcp.cap.AssistantRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POSTAI 작업 추정/v1/assistant/estimate

제안된 보조 작업을 시작하기 전에 예측하십시오.

POST /v1/assistant/estimate ↗

mcp.cap.AssistantRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POSTAI 파일럿 실행/v1/assistant/pilot

광범위한 출시 전에 보조 작업의 파일럿 워크플로를 실행합니다.

POST /v1/assistant/pilot ↗

mcp.cap.AutomationExecute + mcp.cap.AssistantPilot

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GETAI 보고서 읽기/v1/assistant/reports

보조 작업에서 생성된 보고서를 읽습니다.

GET /v1/assistant/reports ↗

mcp.cap.AssistantRead

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
POSTAI 파일럿 재시도/v1/assistant/retry-pilot

제공된 작업 컨텍스트를 사용하여 보조 조종사의 재시도를 요청합니다.

POST /v1/assistant/retry-pilot ↗

mcp.cap.AutomationExecute + mcp.cap.AssistantPilot

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POSTAI 작업 시작/v1/assistant/start

제공된 대상 및 지침을 사용하여 보조 작업을 시작합니다.

POST /v1/assistant/start ↗

mcp.cap.AssistantPropose

스키마(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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
POSTAI 대상 컨텍스트 검사/v1/assistant/target-context

보조 작업을 준비하는 데 사용되는 허용된 대상 컨텍스트를 읽습니다.

POST /v1/assistant/target-context ↗

mcp.cap.AssistantRead

스키마(OpenAPI)

OsKind

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

AutomationScopeKind

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

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GETAI 작업 목록/v1/assistant/tasks

자격 증명에 표시되는 AI 보조 작업을 찾아보세요.

GET /v1/assistant/tasks ↗

mcp.cap.AssistantRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GETAI 작업 가져오기/v1/assistant/tasks/{id}

하나의 보조 작업의 상태 및 세부 정보를 읽습니다.

GET /v1/assistant/tasks/{id} ↗

mcp.cap.AssistantRead

스키마(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

매개변수

id · 경로 · 필요
해당 리소스 목록 또는 생성 결과에 의해 반환되는 식별자입니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
API5
POST액세스 토큰 받기/v1/auth/token

API 자격 증명을 단기 전달자 토큰으로 교환하여 후속 요청에 사용할 수 있습니다.

POST /v1/auth/token ↗

설정 → API 액세스에서 생성된 API 자격 증명을 사용합니다. 이 교환에는 무기명 토큰이 필요하지 않습니다.

password: 이 JSON 필드에는 계정 로그인 비밀번호가 아닌 API 자격 증명 비밀번호가 포함됩니다.

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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))
요청 및 응답 스키마(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"
  ]
}
GET사용 가능한 기능 확인/v1/capabilities

통합을 사용하기 전에 자격 증명에 사용할 수 있는 기능, 권한 및 제한 사항을 확인하세요.

GET /v1/capabilities ↗

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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": []
}
GETAPI 액세스 확인/v1/health

자격 증명이 API에 도달하고 인증할 수 있는지 확인하세요.

GET /v1/health ↗

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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": []
}
GET설치 프로그램 옵션 확인/v1/management/installers/capabilities

이 호스트에서 사용할 수 있는 설치 프로그램 기능을 살펴보세요.

GET /v1/management/installers/capabilities ↗

mcp.cap.EnrollmentRead

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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"
  ]
}
GET작동 기능 확인/v1/operations/capabilities

장치 작업을 시도하기 전에 통합 작업 기능을 살펴보세요.

GET /v1/operations/capabilities ↗

매개변수

경로, 쿼리 또는 헤더 매개변수가 없습니다.

예제 요청

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
요청 및 응답 스키마(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": []
}
스키마(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
    ]
  }
}

내용 개정 3f225a253 · OpenAPI SHA-256: b12c42306a89