RemoteGymp · API v1

API 參考

存取與行為

參考範例是模板。在運行之前替換佔位符並檢查端點的參數、權限和架構。對於不確定的寫入,請遵循該端點的復原和重試規則。

需要不記名代幣和端點的權限。存取權限仍僅限於您的憑證範圍。在使用設備或管理操作之前檢查功能。

搜尋結果: 289

人工智慧11
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"
  ]
}
POST申請AI任務/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"
  ]
}
GET閱讀 AI 提昇行動政策/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"
  ]
}
POST估計 AI 任務/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"
  ]
}
POST運行 AI 試點/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"
  ]
}
GET閱讀人工智慧報告/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"
  ]
}
POST重試 AI 試點/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"
  ]
}
POST啟動AI任務/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"
  ]
}
POST檢查AI目標上下文/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"
  ]
}
GET列出AI任務/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"
  ]
}
GET取得AI任務/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"
  ]
}
公司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

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

GET /v1/reports/companies/{companyId}/monthly ↗

mcp.cap.ReportsRead

參數

companyId · 路徑 · 需要
公司識別碼。查詢參數將結果範圍縮小到該公司;它永遠不會擴大憑證範圍。
offset · 查詢 · 可選
要跳過的項目數,從零開始。繼續使用端點傳回的偏移量(如果可用)。

請求範例

C#: 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

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

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"
  ]
}
支持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"
  ]
}
安全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"
  ]
}
自動化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

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

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

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

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

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

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

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

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

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

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

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

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 · 查詢 · 可選
要跳過的項目數,從零開始。繼續使用端點傳回的偏移量(如果可用)。

請求範例

C#: 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

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

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 · 查詢 · 可選
要跳過的項目數,從零開始。繼續使用端點傳回的偏移量(如果可用)。
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

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

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 · 查詢 · 可選
要跳過的項目數,從零開始。繼續使用端點傳回的偏移量(如果可用)。
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

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

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 · 查詢 · 可選
要跳過的項目數,從零開始。繼續使用端點傳回的偏移量(如果可用)。
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 · 查詢 · 可選
要跳過的項目數,從零開始。繼續使用端點傳回的偏移量(如果可用)。
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 · 查詢 · 可選
要跳過的項目數,從零開始。繼續使用端點傳回的偏移量(如果可用)。
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

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

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

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

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 · 查詢 · 可選
要跳過的項目數,從零開始。繼續使用端點傳回的偏移量(如果可用)。
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"
  ]
}
組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

最後評估的活動組版本的成員資格。關注next剩餘的deviceIds;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"
  ]
}
設備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 · 查詢 · 可選
要跳過的項目數,從零開始。繼續使用端點傳回的偏移量(如果可用)。
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

儲存硬體和安全性摘要事實。空值未知;時間戳建立觀察的新鮮度。沒有恢復金鑰、秘密材料或設備控制權限。

參數

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 · 查詢 · 可選
要跳過的項目數,從零開始。繼續使用端點傳回的偏移量(如果可用)。
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"
  ]
}
GET檢查 Linux 準備狀態/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 · 查詢 · 可選
要跳過的項目數,從零開始。繼續使用端點傳回的偏移量(如果可用)。
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"
  ]
}
GET檢查 Windows 遠端桌面/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"
  ]
}
POST啟用 Windows 遠端桌面/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 · 查詢 · 可選
要跳過的項目數,從零開始。繼續使用端點傳回的偏移量(如果可用)。
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 讀取一次記錄的速度測試運行。

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

從符合條件的裝置請求新的桌面縮圖。 Dispatch 不保證新圖片。

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

閱讀目前的範圍證據。缺失的證據未知。未啟動終端行動或人工智慧指控。提供授權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

閱讀目前的範圍證據。缺失的證據未知。未啟動終端行動或人工智慧指控。提供授權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"
  ]
}
GET取得 PSA 整合功能/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"
  ]
}
PUT儲存PSA連線/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"
  ]
}
PUT設定PSA傳送暫停/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"
  ]
}
PUT儲存 PSA 映射/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"
  ]
}
GET搜尋PSA客戶/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}

閱讀目前的範圍證據。缺失的證據未知。沒有啟動終點行動或人工智慧指控。

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"
  ]
}
集成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 是用於變更的完整基準或完整快照 ID 的 null。七日後失效。限制:10000 個設備、每個憑證和組織每小時四個快照、每個組織 256 MiB 壓縮儲存。沒有軟體、警報、自訂欄位或庫存變更追蹤。

參數

無路徑、查詢或標頭參數。

請求範例

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

跟隨 next 直到 null,然後保留此已完成的快照作為下一個基準。項目是帶有摘要的 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列出 webhook 訂閱/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建立 webhook 訂閱/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刪除 webhook 訂閱/v1/webhooks/{webhookId}

停止訂閱並刪除其傳送歷史記錄。

DELETE /v1/webhooks/{webhookId} ↗

mcp.cap.WebhooksWrite

參數

webhookId · 路徑 · 需要
Webhook 訂閱的識別碼。

請求範例

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讀取 webhook 交付/v1/webhooks/{webhookId}/deliveries

檢查一項訂閱的傳送嘗試及其記錄的狀態。

GET /v1/webhooks/{webhookId}/deliveries ↗

mcp.cap.WebhooksRead

參數

webhookId · 路徑 · 需要
Webhook 訂閱的識別碼。
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重試 Webhook 傳送/v1/webhooks/{webhookId}/deliveries/{deliveryId}/replay

使用原始交付 ID 重播保留的交付。接收者必須處理重複項。

POST /v1/webhooks/{webhookId}/deliveries/{deliveryId}/replay ↗

mcp.cap.WebhooksWrite

參數

webhookId · 路徑 · 需要
Webhook 訂閱的識別碼。
deliveryId · 路徑 · 需要
屬於此 Webhook 訂閱的交付的識別碼。

請求範例

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設定 webhook 啟用/v1/webhooks/{webhookId}/enabled

需要FullAccess且擁有現有擁有者的權限。提供冪性金鑰,重複使用相同請求after不確定性,並檢查操作收據。

PUT /v1/webhooks/{webhookId}/enabled ↗

mcp.cap.WebhooksWrite

參數

webhookId · 路徑 · 需要
Webhook 訂閱的識別碼。

請求範例

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"
  ]
}
管理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 · 查詢 · 需要
設定讀取鍵。使用預期設定的枚舉值。

請求範例

C#: 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"
  ]
}
維修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"
  ]
}
網絡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"
  ]
}
PUT設定 iDRAC 集成/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"
  ]
}
PUT設定 iLO 集成/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"
  ]
}
PUT套裝 SNMP 社區/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"
  ]
}
PUT儲存 SNMP 憑證/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"
  ]
}
POST刪除 SNMP 憑證/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"
  ]
}
PUT保存 SNMP 政策/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"
  ]
}
POST刷新SNMP數據/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"
  ]
}
遠端會話13
GET列出 Windows 會話/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"
  ]
}
操作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": []
}
警報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 · 查詢 · 可選
將 state 參數保持未設定以返回開啟和已確認的警報。使用 Open、Acknowledged 或 Resolved 來指定一個狀態,或使用 "all" 來指定所有狀態。
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"
  ]
}
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": []
}
GET檢查 API 存取狀況/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