openapi: 3.2.0 info: title: IROH Int Web service Module Instance API version: 1.0.107 license: name: All Rights Reserved url: https://www.cisco.com contact: name: Cisco Security Business Group -- Advanced Threat email: cisco-intel-api-support@cisco.com description: IROH INT API x-provenance: method: harvested authored_by: Cisco XDR harvested_by: API Evangelist harvested_on: '2026-08-19' first_party: true note: Published by Cisco. Retrieved unmodified except for this x-provenance block. provider_published: true x-evidence: - type: source url: https://visibility.amp.cisco.com/iroh/iroh-int/index.html - type: raw url: https://visibility.amp.cisco.com/iroh/iroh-int/swagger.json servers: - url: https://visibility.amp.cisco.com/ security: - iroh: [] - AuthorizationHeader: [] - oauth2: - telemetry - integration - private-intel - admin - cognitive - profile - inspect - asset - event - feedback - sse - registry - users - investigation - invite - casebook - orbital - enrich - oauth - vault - response - notification - global-intel:read - webhook - ao tags: - name: ModuleInstance description: ModuleInstance Routes paths: /iroh/iroh-int/module-instance/{id}: get: x-no-doc: false tags: - ModuleInstance responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ModuleInstanceResponse' application/x-yaml: schema: $ref: '#/components/schemas/ModuleInstanceResponse' application/edn: schema: $ref: '#/components/schemas/ModuleInstanceResponse' application/transit+json: schema: $ref: '#/components/schemas/ModuleInstanceResponse' application/transit+msgpack: schema: $ref: '#/components/schemas/ModuleInstanceResponse' description: '[required scopes](/iroh/doc/iroh-auth/#scopes): `integration/module-instance:read` ' parameters: - in: path name: id description: '' required: true schema: type: string summary: Get a `ModuleInstance` patch: x-no-doc: false tags: - ModuleInstance responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ModuleInstanceResponse' application/x-yaml: schema: $ref: '#/components/schemas/ModuleInstanceResponse' application/edn: schema: $ref: '#/components/schemas/ModuleInstanceResponse' application/transit+json: schema: $ref: '#/components/schemas/ModuleInstanceResponse' application/transit+msgpack: schema: $ref: '#/components/schemas/ModuleInstanceResponse' description: '[required scopes](/iroh/doc/iroh-auth/#scopes): `integration/module-instance:write` ' parameters: - in: path name: id description: '' required: true schema: type: string summary: Update a `ModuleInstance` requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchModuleInstanceParams' application/x-yaml: schema: $ref: '#/components/schemas/PatchModuleInstanceParams' application/edn: schema: $ref: '#/components/schemas/PatchModuleInstanceParams' application/transit+json: schema: $ref: '#/components/schemas/PatchModuleInstanceParams' application/transit+msgpack: schema: $ref: '#/components/schemas/PatchModuleInstanceParams' required: true delete: x-no-doc: false tags: - ModuleInstance description: '[required scopes](/iroh/doc/iroh-auth/#scopes): `integration/module-instance:write` ' parameters: - in: path name: id description: '' required: true schema: type: string summary: Delete a `ModuleInstance` responses: default: description: '' /iroh/iroh-int/module-instance: get: x-no-doc: false tags: - ModuleInstance responses: '200': description: '' content: application/json: schema: type: array items: $ref: '#/components/schemas/ModuleInstanceResponse' application/x-yaml: schema: type: array items: $ref: '#/components/schemas/ModuleInstanceResponse' application/edn: schema: type: array items: $ref: '#/components/schemas/ModuleInstanceResponse' application/transit+json: schema: type: array items: $ref: '#/components/schemas/ModuleInstanceResponse' application/transit+msgpack: schema: type: array items: $ref: '#/components/schemas/ModuleInstanceResponse' description: '[required scopes](/iroh/doc/iroh-auth/#scopes): `integration/module-instance:read` ' parameters: - in: query name: module_type_id description: '' required: false schema: type: string - in: query name: enabled description: '' required: false schema: type: boolean - in: query name: query description: '' required: false schema: type: string - in: query name: sort_by description: Sort results on a field required: false schema: type: string - in: query name: sort_order description: Sort direction required: false schema: type: string enum: - desc - asc - in: query name: offset description: Pagination Offset required: false schema: type: integer format: int64 - in: query name: limit description: Pagination Limit required: false schema: type: integer format: int64 summary: List `ModuleInstance`s post: x-no-doc: false tags: - ModuleInstance responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ModuleInstanceResponse' application/x-yaml: schema: $ref: '#/components/schemas/ModuleInstanceResponse' application/edn: schema: $ref: '#/components/schemas/ModuleInstanceResponse' application/transit+json: schema: $ref: '#/components/schemas/ModuleInstanceResponse' application/transit+msgpack: schema: $ref: '#/components/schemas/ModuleInstanceResponse' description: '[required scopes](/iroh/doc/iroh-auth/#scopes): `integration/module-instance:write` ' summary: Create a `ModuleInstance` requestBody: content: application/json: schema: $ref: '#/components/schemas/NewModuleInstanceParams' application/x-yaml: schema: $ref: '#/components/schemas/NewModuleInstanceParams' application/edn: schema: $ref: '#/components/schemas/NewModuleInstanceParams' application/transit+json: schema: $ref: '#/components/schemas/NewModuleInstanceParams' application/transit+msgpack: schema: $ref: '#/components/schemas/NewModuleInstanceParams' required: true components: schemas: PartialModuleInstanceSettings: type: object additionalProperties: x-oneOf: - x-oneOf: - type: string - type: boolean - type: number format: double - type: string - type: array items: x-oneOf: - type: string - type: boolean - type: number format: double - type: string - $ref: '#/components/schemas/PartialModuleInstanceSettings' ModuleInstanceExternalReference: type: object properties: label: type: string link: type: string external_id: type: string class: description: Class to distinguish external references type: string additionalProperties: false required: - label NewModuleInstanceParams: type: object properties: name: type: string module_type_id: type: string visibility: type: string enum: - global - org - user parent_id: type: string settings: $ref: '#/components/schemas/ModuleInstanceSettings' external_references: type: array items: $ref: '#/components/schemas/ModuleInstanceExternalReference' enabled: type: boolean additionalProperties: false required: - name - module_type_id - visibility PatchModuleInstanceParams: type: object properties: name: type: string module_type_id: type: string parent_id: type: - string - 'null' external_references: type: - array - 'null' items: $ref: '#/components/schemas/ModuleInstanceExternalReference' enabled: type: - boolean - 'null' settings: $ref: '#/components/schemas/PartialModuleInstanceSettings' additionalProperties: false ModuleInstanceSettings: type: object additionalProperties: x-oneOf: - x-oneOf: - type: string - type: boolean - type: number format: double - type: string - type: array items: x-oneOf: - type: string - type: boolean - type: number format: double - type: string - $ref: '#/components/schemas/ModuleInstanceSettings' ModuleInstanceResponse: type: object properties: name: type: string module_type_id: type: string org_id: type: string settings: $ref: '#/components/schemas/ModuleInstanceSettings' external_references: type: array items: $ref: '#/components/schemas/ModuleInstanceExternalReference' updated_at: type: string format: date-time parent_id: type: string id: type: string user_id: type: string client_id: type: string enabled: type: boolean visibility: type: string enum: - global - org - user created_at: type: string format: date-time additionalProperties: false required: - name - module_type_id - org_id - id - user_id - enabled - visibility - created_at securitySchemes: iroh: type: apiKey in: header name: authorization AuthorizationHeader: type: apiKey in: header name: authorization description: 'Ex: Bearer \' oauth2: type: oauth2 flows: authorizationCode: scopes: telemetry: collect application data for analytics integration: Manage your modules private-intel: Access Private Intelligence admin: Provide admin privileges cognitive: Cognitive Integration profile: Get your profile information inspect: Extract Observables and data from text asset: Access and modify your assets event: Read IROH Events feedback: Submit Customer Feedback sse: SSE Integration. Manage your Devices. registry: Manage registry entries users: Manage users of your organisation investigation: Perform threat analysis investigation invite: Invite users into your organization casebook: Access and modify your casebooks orbital: Orbital Integration. enrich: Query your configured modules for threat intelligence oauth: Manage OAuth2 Clients vault: Grants access to Module Vaults response: List and execute response actions using configured modules notification: Receive notifications from integrations global-intel:read: Access AMP Global Intelligence webhook: Manage your Webhooks ao: AO Integration. authorizationUrl: https://visibility.amp.cisco.com/iroh/oauth2/authorize tokenUrl: https://visibility.amp.cisco.com/iroh/oauth2/token