openapi: 3.2.0 info: license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html description: LogicMonitor is a SaaS-based performance monitoring platform that provides full visibility into complex, hybrid infrastructures, offering granular performance monitoring and actionable data and insights. title: LogicMonitor REST Remediation Sources API version: 3.0.0 servers: - url: /santaba/rest tags: - name: RemediationSources paths: /setting/remediationsources/executemanually: post: summary: Trigger a remediation module for host security: - LMv1: [] x-minimum-permissions: Host -> remediation Source: NA description: Trigger a remediation module for host. Set includeOutput=true to wait for completion and return script output. operationId: executeRemediationManually responses: '200': description: Trigger a remediation module for host content: application/json: schema: $ref: '#/components/schemas/RemediationSourceExecution' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' tags: - RemediationSources requestBody: content: application/json: schema: $ref: '#/components/schemas/RemediationSourceExecution' /setting/remediationsources: post: summary: Add remediation source security: - LMv1: [] x-minimum-permissions: Modules -> All Installed Module: Manage Modules -> Access Group: Manage description: Adds a new remediation source operationId: addRemediationSource responses: '200': description: Successfully added new remediation source content: application/json: schema: $ref: '#/components/schemas/RemediationSource' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' tags: - RemediationSources requestBody: content: application/json: schema: $ref: '#/components/schemas/RemediationSource' get: summary: Get remediation sources list security: - LMv1: [] x-minimum-permissions: Modules -> All Installed Module: View Modules -> Access Group: View description: Retrieves a list of remediation sources operationId: getRemediationSourcesList responses: '200': description: Successfully retrieved remediation sources list content: application/json: schema: $ref: '#/components/schemas/RemediationSourcePaginationResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' tags: - RemediationSources /setting/remediationsources/{id}: patch: summary: Update a remediation source security: - LMv1: [] x-minimum-permissions: Modules -> All Installed Module: Manage Modules -> Access Group: Manage description: Updates a remediation source by its ID operationId: patchRemediationSourceById responses: '200': description: Successfully updated remediation source content: application/json: schema: $ref: '#/components/schemas/RemediationSource' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' parameters: - in: path name: id required: true schema: type: integer format: int32 - in: query name: reason schema: type: string tags: - RemediationSources requestBody: content: application/json: schema: $ref: '#/components/schemas/RemediationSource' get: summary: Get remediation sources by ID security: - LMv1: [] x-minimum-permissions: Modules -> All Installed Module: View Modules -> Access Group: View description: Retrieves a remediation source by its ID operationId: getRemediationSourcesById responses: '200': description: Successfully retrieved remediation source by ID content: application/json: schema: $ref: '#/components/schemas/RemediationSource' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' parameters: - in: path name: id required: true schema: type: integer format: int32 - in: query name: format schema: type: string tags: - RemediationSources delete: summary: Delete a remediation source module security: - LMv1: [] x-minimum-permissions: Modules -> All Installed Module: Manage Modules -> Access Group: Manage description: Deletes a remediation source module by its ID operationId: deleteRemediationSourceById responses: '200': description: Successfully deleted remediation source module content: application/json: schema: type: object default: description: Error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' parameters: - in: path name: id required: true schema: type: integer format: int32 tags: - RemediationSources put: summary: Update a remediation source security: - LMv1: [] x-minimum-permissions: Modules -> All Installed Module: Manage Modules -> Access Group: Manage description: Updates a remediation source by its ID operationId: updateRemediationSourceById responses: '200': description: Successfully updated remediation source content: application/json: schema: $ref: '#/components/schemas/RemediationSource' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' parameters: - in: path name: id required: true schema: type: integer format: int32 - in: query name: reason schema: type: string tags: - RemediationSources requestBody: content: application/json: schema: $ref: '#/components/schemas/RemediationSource' components: schemas: RemediationSourcePaginationResponse: type: object properties: items: type: array items: $ref: '#/components/schemas/RemediationSource' AccessGroup: description: Module's access groups type: object required: - name properties: createdBy: description: User who created access group readOnly: true type: string name: description: The name of the access group type: string example: LinuxGroup tenantId: description: Tenancy details type: string description: description: Description about access group type: string id: format: int32 description: The id of the access group readOnly: true type: integer updatedOn: format: int64 description: Time when access group updated readOnly: true type: integer createdOn: format: int64 description: Time when access group created readOnly: true type: integer IntegrationMetadata: description: The local module's IntegrationMetadata, readable for troubleshooting purposes readOnly: true type: object properties: targetLastPublishedId: description: Specifies the target last published Id readOnly: true type: string targetLastPublishedChecksum: description: The metadata checksum for the target last published LMModule content readOnly: true type: string targetLastPublishedVersion: description: Specifies the target last published version readOnly: true type: string originChecksum: description: The metadata checksum for the LMModule content readOnly: true type: string originAuthorNamespace: description: Specifies the origin Author companies namespace readOnly: true type: string originLocator: description: Specifies the origin version locator readOnly: true type: string isChangedFromOrigin: description: Specifies if the Applies To function is changed from origin or not readOnly: true type: boolean auditedRegistryId: description: Specifies the audited registry Id readOnly: true type: string targetLineageId: description: Specifies the target lineage Id readOnly: true type: string logicModuleType: description: 'The values can be DataSources | EventSources | PropertySources | ConfigSources | LogSources | TopologySources | Jobmonitors | AppliesTo Functions | SNMP SysOID Maps The type of LogicModule' readOnly: true type: string enum: - DATASOURCE - EVENTSOURCE - CONFIGSOURCE - PROPERTYSOURCE - DIAGNOSTICSOURCE - REMEDIATIONSOURCE - TOPOLOGYSOURCE - JOBMONITOR - APPLIESTO_FUNCTION - SNMP_SYSOID_MAP - LOGSOURCE isChangedFromTargetLastPublished: description: Specifies if the Applies To function is changed from target last published or not readOnly: true type: boolean originLineageId: description: The origin lineage Id of the LMmodule readOnly: true type: string originAuthorCompanyUUID: description: Specifies the origin Author companies unique Id readOnly: true type: string localModuleId: format: int32 description: The LocalModule Id readOnly: true type: integer originRegistryId: description: The Registry ID of the Exchange Integration this module is based from readOnly: true type: string originVersion: description: Specifies the origin version readOnly: true type: string auditedVersion: description: Specifies the audited registry version readOnly: true type: string originName: description: Specifies the origin module name readOnly: true type: string ErrorResponse: type: object properties: errorMessage: description: The error message readOnly: true type: string errorCode: format: int32 description: The error code readOnly: true type: integer errorDetail: description: The error detail readOnly: true type: object RemediationSource: type: object properties: accessGroups: description: Access group Details in response type: array items: $ref: '#/components/schemas/AccessGroup' groovyScript: description: groovy script type: string dataType: format: int32 description: "The data type of remediation source, default is 0. The values can be\n\n0: remediation source\n\n1: raw ERI\n\n " readOnly: true type: integer description: description: The description for the LMModule type: string appliesTo: description: The Applies To for the LMModule type: string technology: description: The Technical Notes for the LMModule type: string source: description: The remediation source readOnly: true type: string lineageId: description: The lineageId the LMModule belongs to readOnly: true type: string tags: description: The Tags for the LMModule type: string installationMetadata: description: The local module's IntegrationMetadata, readable for troubleshooting purposes readOnly: true $ref: '#/components/schemas/IntegrationMetadata' originRegistryId: description: The Registry ID of the Exchange Integration this module is based from, including this field will set this as the module's import base and mark the ID's version as audited type: string scriptType: description: 'script type: groovy | powershell' type: string checksum: description: The metadata checksum for the LMModule content readOnly: true type: string name: description: The remediation source name type: string id: format: int32 description: The ID of the LMModule readOnly: true type: integer accessGroupIds: uniqueItems: true description: The Access Groups Id's type: array items: format: int32 description: The Access Groups Id's type: integer example: 1, 2, 3 isInUse: description: Whether the LM module is currently in use readOnly: true type: boolean installationStatuses: description: The remediation Installation status readOnly: true type: array items: description: The remediation Installation status readOnly: true type: string enum: - NEW - UPGRADED - AUDITED - OUTDATED - INSTALLED - CUSTOMIZED - CONFLICT - PARTIALLY_INSTALLED - IS_INSTALLED - IS_CUSTOMIZED - CAN_INSTALL - CAN_UPGRADE - CAN_SKIP - CAN_DOWNGRADE group: description: The group the LMModule is in type: string RemediationSourceExecution: description: Represents a remediation execution for a host in the LogicMonitor system. type: object required: - executionStatus - hostId - hostRemediationSourceId - remediationId - triggerType properties: output: description: Script output when includeOutput is true and execution has completed readOnly: true type: string executionId: description: 'execution Id ' readOnly: true type: string executionStatus: description: The remediation module id readOnly: true type: string example: '60' hostId: format: int32 description: The host id type: integer example: 12345 remediationId: format: int32 description: The remediation module id type: integer example: 12345 alertId: description: The alert id type: string example: alert12345 triggerType: description: type of trigger readOnly: true type: string example: scheduled hostRemediationSourceId: format: int64 description: The remediation module id type: integer example: 12345 includeOutput: description: When true, the API waits for execution to finish and returns script output in the response type: boolean example: false securitySchemes: LMv1: in: header name: Authorization type: apiKey externalDocs: description: LogicMonitor Support Docs url: https://www.logicmonitor.com/support/rest-api-developers-guide/