Cisco XDR Reputation API
The Reputation API from Cisco XDR — 1 operation(s) for reputation.
The Reputation API from Cisco XDR — 1 operation(s) for reputation.
openapi: 3.2.0
info:
title: IROH-INT Enrich Reputation 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 Integrations: configure and query Threat Response modules'
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-enrich/index.html
- type: raw
url: https://visibility.amp.cisco.com/iroh/iroh-enrich/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: Reputation
paths:
/iroh/iroh-enrich/reputation/observable:
get:
x-no-doc: false
tags:
- Reputation
description: '[required scopes](/iroh/doc/iroh-auth/#scopes): `enrich/observables/reputation:read`
This route queries intel modules with supplied `Observable` in order to calculate its `Reputation`'
responses:
'200':
description: Reputation verdict calculated for given observable
content:
application/json:
schema:
$ref: '#/components/schemas/EnvelopedReputation'
application/x-yaml:
schema:
$ref: '#/components/schemas/EnvelopedReputation'
application/edn:
schema:
$ref: '#/components/schemas/EnvelopedReputation'
application/transit+json:
schema:
$ref: '#/components/schemas/EnvelopedReputation'
application/transit+msgpack:
schema:
$ref: '#/components/schemas/EnvelopedReputation'
'401':
description: A `NormalizedError` including a `trace_id`
content:
application/json:
schema:
$ref: '#/components/schemas/NormalizedError-401'
application/x-yaml:
schema:
$ref: '#/components/schemas/NormalizedError-401'
application/edn:
schema:
$ref: '#/components/schemas/NormalizedError-401'
application/transit+json:
schema:
$ref: '#/components/schemas/NormalizedError-401'
application/transit+msgpack:
schema:
$ref: '#/components/schemas/NormalizedError-401'
'500':
description: A `NormalizedError` including a `trace_id`
content:
application/json:
schema:
$ref: '#/components/schemas/NormalizedError-500'
application/x-yaml:
schema:
$ref: '#/components/schemas/NormalizedError-500'
application/edn:
schema:
$ref: '#/components/schemas/NormalizedError-500'
application/transit+json:
schema:
$ref: '#/components/schemas/NormalizedError-500'
application/transit+msgpack:
schema:
$ref: '#/components/schemas/NormalizedError-500'
parameters:
- in: query
name: type
description: The type of observable.
required: true
example: ip
schema:
type: string
enum:
- file_path
- mac_address
- trend_micro_id
- cybereason_id
- process_args
- s1_agent_id
- device
- hostname
- certificate_common_name
- serial_number
- meraki_network_id
- url
- jamf_management_id
- certificate_serial
- intune_id
- meraki_org_id
- cisco_cm_id
- registry_key
- process_path
- darktrace_id
- process_username
- cortex_agent_id
- orbital_node_id
- process_uid
- ngfw_name
- user
- certificate_issuer
- ipv6
- email
- cisco_uc_id
- cvm_id
- sha256
- crowdstrike_id
- google_cloud_id
- google_chromebook_id
- acudid
- sha1
- registry_name
- md5
- service_now_id
- ip
- domain
- email_subject
- imei
- ngfw_id
- amp_computer_guid
- ms_machine_id
- secure_access_id
- mutex
- processor_id
- swc_device_id
- registry_path
- odns_identity
- odns_identity_label
- cisco_mid
- process_name
- pki_serial
- meraki_node_sn
- email_messageid
- imsi
- user_agent
- process_hash
- file_name
- in: query
name: value
description: The value of the observable.
required: true
example: 1.2.3.4
schema:
type: string
- in: query
name: mids
description: Use this parameter to query only some Modules passing their Ids
required: false
example:
- a78f09b4-16fa-4617-8bbf-f6044284ec0f
- 36716d80-2bd7-47fc-a179-cde2a0a8c5fe
style: form
explode: true
schema:
type: array
items:
type: string
summary: Enrich Observable Reputation
components:
schemas:
AttackPattern:
type: object
properties:
description:
example: string
description: A description of object, which may be detailed.
type: string
abstraction_level:
example: aggregate
description: The CAPEC abstraction level for patterns describing techniques to attack a system.
type: string
enum:
- detailed
- standard
- aggregate
- meta
- category
schema_version:
example: 1.3.30
description: CTIM schema version for this entity.
type: string
revision:
example: 10
description: A monotonically increasing revision, incremented each time the object is changed.
type: integer
format: int64
type:
example: attack-pattern
type: string
enum:
- attack-pattern
created:
type: string
format: date-time
source:
example: string
description: Represents the source of the intelligence that led to the creation of the entity.
type: string
external_ids:
example:
- string
description: "It is used to store a list of external identifiers that can be linked to the incident, providing a reliable and manageable way to correlate and group related events across multiple data sources. It is especially useful in larger organizations that rely on multiple security information and event management (SIEM) systems to detect security incidents. For instance, it can be used to track events across different network sensors, intrusion detection and prevention systems (IDPS), or log management platforms. \n The field can also be used to facilitate automation and orchestration workflows, where additional information can be shared among incident management systems. It can be used to cross-reference with other external tools such as threat intelligence feeds and vulnerability scanners."
type: array
items:
type: string
modified:
type: string
format: date-time
short_description:
example: string
description: A single line, short summary of the object.
type: string
title:
example: string
description: A short title for this object, used as primary display and reference value.
type: string
external_references:
example:
- source_name: string
description: string
url: string
hashes:
- string
external_id: string
description: "Specifies a list of external references which refers to non-CTIM information.\n\nSimilar to `external_ids` field with major differences:\n\n- `external_ids` field is used to store a list of external identifiers that can be used to link entities across different data sources. These identifiers are typically standardized and well-known, such as CVE IDs, US-CERT advisories, or other industry-standard threat intelligence feeds. The `external_ids` field can be used to facilitate automation and orchestration workflows, where additional information can be shared among incident management systems. \n\n- `external_references` field, on the other hand, is used to provide a more general mechanism for linking entities to external sources of information. The `external_references` field can include references to blog posts, articles, external documents, threat intelligence reports, and other sources of information that may not have a standardized format or identifier."
type: array
items:
$ref: '#/components/schemas/ExternalReference'
source_uri:
example: string
description: URI of the source of the intelligence that led to the creation of the entity.
type: string
x_mitre_platforms:
example:
- string
description: ATT&CK Technique.Platforms.
type: array
items:
type: string
language:
example: string
description: 'The `language` field is used to specify the primary language of the affected system or the target of an attack. It can be used to provide additional context and information about the entity. The primary purpose of this field is to help analysts filter and prioritize entities based on their knowledge and expertise of different languages.
For example, if an incident involves an attack on a system in a country where a specific language is predominant, the `language` field can be used to indicate that language, which can help analysts to quickly identify and respond to incidents that may be geographically or culturally relevant. This information can be used to prioritize incidents based on their potential impact. The `language` field can also be used to help with correlation of incidents across different systems and regions, as well as to help with data analysis and reporting.'
type: string
id:
example: string
description: Globally unique URI identifying this object.
type: string
tlp:
example: green
description: 'TLP stands for [Traffic Light Protocol](https://www.us-cert.gov/tlp), which indicates precisely how a resource is intended to be shared, replicated, copied, etc.
It is used to indicate the sensitivity of the information contained within the message. This allows recipients to determine the appropriate handling and dissemination of the information based on their clearance level and need-to-know.
For example, an entity containing information about a critical vulnerability in a widely-used software might be marked as `red`, indicating that it should only be shared with a small group of highly trusted individuals who need to know in order to take appropriate action. On the other hand, a message containing more general information about security threats might be marked as `amber` or `green`, indicating that it can be shared more broadly within an organization.'
type: string
enum:
- white
- green
- red
- amber
x_mitre_data_sources:
example:
- string
description: ATT&CK Technique.Data Sources.
type: array
items:
type: string
kill_chain_phases:
example:
- kill_chain_name: string
phase_name: string
description: A kill chain is a series of steps that an attacker must go through to successfully achieve their objective. The concept was originally developed by the military, but has been adapted to the cybersecurity field to describe the steps an attacker goes through to compromise a target system and achieve their goal.
type: array
items:
$ref: '#/components/schemas/KillChainPhase'
client_id:
type: string
x_mitre_contributors:
example:
- string
description: ATT&CK Technique.Contributors.
type: array
items:
type: string
timestamp:
example: '2016-01-01T01:01:01.000Z'
description: The time this object was created at, or last modified.
type: string
format: date-time
additionalProperties: false
required:
- description
- schema_version
- type
- short_description
- title
- id
Assertion:
example:
name: cisco:ctr:ad:host_domain_name
value: string
type: object
properties:
name:
example: cisco:ctr:ad:host_domain_name
description: An open vocabulary containing well known assertion types
type: string
value:
example: string
type: string
additionalProperties: false
required:
- name
- value
LibraryLoadType:
example:
time:
start_time: '2016-01-01T01:01:01.000Z'
end_time: '2016-01-01T01:01:01.000Z'
process_id: 10
process_name: string
process_guid: 10
process_username: string
type: LibraryLoadEvent
dll_library_name: string
dll_library_path: string
type: object
properties:
time:
$ref: '#/components/schemas/ObservedTime'
process_id:
example: 10
type: integer
format: int64
process_name:
example: string
description: String with at most 1024 characters.
type: string
process_guid:
example: 10
type: integer
format: int64
process_username:
example: string
description: String with at most 1024 characters.
type: string
type:
example: LibraryLoadEvent
type: string
enum:
- LibraryLoadEvent
dll_library_name:
example: string
description: String with at most 1024 characters.
type: string
dll_library_path:
example: string
description: String with at most 2048 characters.
type: string
additionalProperties: false
required:
- time
- process_id
- process_name
- type
- dll_library_name
- dll_library_path
CompositeIndicatorExpression:
example:
operator: and
indicator_ids:
- string
type: object
properties:
operator:
example: and
type: string
enum:
- not
- or
- and
indicator_ids:
example:
- string
type: array
items:
type: string
additionalProperties: false
required:
- operator
- indicator_ids
NormalizedError-500:
example:
error: unknown server error
error_description: An unknown error has occurred during the enrichment
trace_id: 2e790e2c-e7fe-42ed-a18b-7413d9f1f4b0
type: object
properties:
error:
type: string
error_description:
type: string
error_code:
type: string
error_uri:
type: string
trace_id:
type: string
schema.core.AnythingSchema@3c6f0b88: {}
additionalProperties: {}
OperatingSystem:
example:
prevalence: Often
name: string
version: string
cpe_id: string
class: Android
type: object
properties:
prevalence:
example: Often
description: Defines the different regularities that guide the applicability of platforms.
type: string
enum:
- Undetermined
- Sometimes
- Often
- Rarely
name:
example: string
description: String with at most 1024 characters.
type: string
version:
example: string
description: String with at most 1024 characters.
type: string
cpe_id:
example: string
description: String with at most 1024 characters.
type: string
class:
example: Android
description: Class of Operating System.
type: string
additionalProperties: false
required:
- prevalence
NetflowType:
example:
parent_process_name: string
byte_count_in: 10
process_guid: 10
process_path: string
traffic:
destination_host_name: string
protocol: 10
source_ip: string
destination_subnet: string
destination_ip: string
source_subnet: string
destination_port: 10
direction: incoming
source_port: 10
flow_time: '2016-01-01T01:01:01.000Z'
time:
start_time: '2016-01-01T01:01:01.000Z'
end_time: '2016-01-01T01:01:01.000Z'
parent_process_account: string
type: NetflowEvent
process_account_type: string
parent_process_path: string
parent_process_id: 10
parent_process_args: string
process_name: string
process_account: string
parent_process_account_type: string
process_hash: string
process_id: 10
parent_process_hash: string
process_username: string
byte_count_out: 10
process_args: string
type: object
properties:
parent_process_name:
example: string
description: String with at most 1024 characters.
type: string
byte_count_in:
example: 10
type: integer
format: int64
process_guid:
example: 10
type: integer
format: int64
process_path:
example: string
description: String with at most 1024 characters.
type: string
traffic:
$ref: '#/components/schemas/Traffic'
flow_time:
example: '2016-01-01T01:01:01.000Z'
description: Schema definition for all date or timestamp values. Serialized as a string, the field should follow the rules of the [ISO8601](https://en.wikipedia.org/wiki/ISO_8601) standard.
type: string
format: date-time
time:
$ref: '#/components/schemas/ObservedTime'
parent_process_account:
example: string
description: String with at most 1024 characters.
type: string
type:
example: NetflowEvent
type: string
enum:
- NetflowEvent
process_account_type:
example: string
description: String with at most 1024 characters.
type: string
parent_process_path:
example: string
description: String with at most 1024 characters.
type: string
parent_process_id:
example: 10
type: integer
format: int64
parent_process_args:
example: string
description: String with at most 1024 characters.
type: string
process_name:
example: string
description: String with at most 1024 characters.
type: string
process_account:
example: string
description: String with at most 1024 characters.
type: string
parent_process_account_type:
example: string
description: String with at most 1024 characters.
type: string
process_hash:
example: string
description: String with at most 1024 characters.
type: string
process_id:
example: 10
type: integer
format: int64
parent_process_hash:
example: string
description: String with at most 1024 characters.
type: string
process_username:
example: string
description: String with at most 1024 characters.
type: string
byte_count_out:
example: 10
type: integer
format: int64
process_args:
example: string
description: String with at most 1024 characters.
type: string
additionalProperties: false
required:
- traffic
- time
- type
- process_name
- process_id
OpenIOCSpecification:
example:
type: OpenIOC
open_IOC: string
description: An indicator which contains an XML blob of an openIOC indicator.
type: object
properties:
type:
example: OpenIOC
type: string
enum:
- OpenIOC
open_IOC:
example: string
type: string
additionalProperties: false
required:
- type
- open_IOC
ObservedTime:
example:
start_time: '2016-01-01T01:01:01.000Z'
end_time: '2016-01-01T01:01:01.000Z'
description: Period of time when a cyber observation is valid. `start_time` must come before `end_time` (if specified).
type: object
properties:
start_time:
example: '2016-01-01T01:01:01.000Z'
description: Time of the observation. If the observation was made over a period of time, than this field indicates the start of that period.
type: string
format: date-time
end_time:
example: '2016-01-01T01:01:01.000Z'
description: If the observation was made over a period of time, than this field indicates the end of that period.
type: string
format: date-time
additionalProperties: false
required:
- start_time
ActionType:
example:
type: alert
type: object
properties:
type:
example: alert
type: string
enum:
- stop
- save
- delete
- remediate
- redirect
- alert
- query
- augment
- snapshot
- update
- allow
- scan
- investigate
- modify
- sync
- start
- pause
- deny
- substitute
- distill
- move
- restart
- other
- detonate
- response
- set
- notify
- report
- restore
- get
- throttle
- mitigate
- resume
- locate
- contain
additionalProperties: false
required:
- type
Incident:
type: object
properties:
description:
example: string
description: A description of object, which may be detailed.
type: string
assignees:
example:
- string
description: A set of owners assigned to this incident.
type: array
items:
type: string
detection_sources:
example:
- string
description: A set of sources that contributed threat detections to the incident.
type: array
items:
type: string
meta:
$ref: '#/components/schemas/MetaData'
schema_version:
example: 1.3.30
description: CTIM schema version for this entity.
type: string
revision:
example: 10
description: A monotonically increasing revision, incremented each time the object is changed.
type: integer
format: int64
type:
example: incident
type: string
enum:
- incident
created:
type: string
format: date-time
source:
example: string
description: Represents the source of the intelligence that led to the creation of the entity.
type: string
external_ids:
example:
- string
description: "It is used to store a list of external identifiers that can be linked to the incident, providing a reliable and manageable way to correlate and group related events across multiple data sources. It is especially useful in larger organizations that rely on multiple security information and event management (SIEM) systems to detect security incidents. For instance, it can be used to track events across different network sensors, intrusion detection and prevention systems (IDPS), or log management platforms. \n The field can also be used to facilitate automation and orchestration workflows, where additional information can be shared among incident management systems. It can be used to cross-reference with other external tools such as threat intelligence feeds and vulnerability scanners."
type: array
items:
type: string
modified:
type: string
format: date-time
short_description:
example: string
description: A single line, short summary of the object.
type: string
title:
example: string
description: A short title for this object, used as primary display and reference value.
type: string
incident_time:
$ref: '#/components/schemas/IncidentTime'
external_references:
example:
- source_name: string
description: string
url: string
hashes:
- string
external_id: string
description: "Specifies a list of external references which refers to non-CTIM information.\n\nSimilar to `external_ids` field with major differences:\n\n- `external_ids` field is used to store a list of external identifiers that can be used to link entities across different data sources. These identifiers are typically standardized and well-known, such as CVE IDs, US-CERT advisories, or other industry-standard threat intelligence feeds. The `external_ids` field can be used to facilitate automation and orchestration workflows, where additional information can be shared among incident management systems. \n\n- `external_references` field, on the other hand, is used to provide a more general mechanism for linking entities to external sources of information. The `external_references` field can include references to blog posts, articles, external documents, threat intelligence reports, and other sources of information that may not have a standardized format or identifier."
type: array
items:
$ref: '#/components/schemas/ExternalReference'
discovery_method:
example: Agent Disclosure
description: Identifies how the incident was discovered.
type: string
source_uri:
example: string
description: URI of the source of the intelligence that led to the creation of the entity.
type: string
intended_effect:
example: Account Takeover
description: Specifies the suspected intended effect of this incident
type: string
categories:
example:
- Attrition
description: A set of categories for this incident.
type: array
items:
type: string
status:
example: Closed
description: The `status` field represents the current state of an incident within the incident management process. Its values help in tracking and reporting the progress of the incident from its discovery to its resolution.
type: string
enum:
- New
- Closed
- 'Open: Recovered'
- 'Closed: Other'
- 'Hold: Internal'
- 'Hold: Legal'
- 'Closed: Under Review'
- Rejected
- Open
- 'Closed: Merged'
- Restoration Achieved
- Incident Reported
- 'Closed: Suspected'
- Stalled
- 'Open: Contained'
- 'Closed: Near-Miss'
- 'Hold: External'
- Containment Achieved
- 'New: Processing'
- 'Closed: Confirmed Threat'
- 'Closed: False Positive'
- 'Open: Reported'
- 'Open: Investigating'
- Hold
- 'New: Presented'
language:
example: string
description: 'The `language` field is used to specify the primary language of the affected system or the target of an attack. It can be used to provide additional context and information about the entity. The primary purpose of this field is to help analysts filter and prioritize entities based on their knowledge and expertise of different languages.
For example, if an incident involves an attack on a system in a country where a specific language is predominant, the `language` field can be used to indicate that language, which can help analysts to quickly identify and respond to incidents that may be geographically or culturally relevant. This information can be used to prioritize incidents based on their potential impact. The `language` field can also be used to help with correlation of incidents across different systems and regions, as well as to help with data analysis and reporting.'
type: string
detection_status:
example: active
description: Represents the state of an incident within the incident generation process, indicating whether the incident is actively receiving updates or is no longer being updated.
type: string
enum:
- inactive_oversized
- inactive_user_closed
- active
- inactive_merged
- inactive_expired
id:
example: string
description: Globally unique URI identifying this object.
type: string
promotion_method:
example: Automated
description: Describes method for promoting an Incident, whether manually or automatically. An Incident may be created manually by a SOAR analyst or SOC operator, or through an automated correlation or aggregation rule or engine that matches a specific set of events or alerts, and promotes them to Incident(s).
type: string
enum:
- Automated
- Manual
severity:
example: Critical
description: "Represents the potential impact of an incident on an organization's security posture and business operations. It helps organizations prioritize and allocate resources for incident response based on the severity level of the incident \nIt helps analysts and incident handlers prioritize incidents by indicating the level of risk and potential impact associated with the incident. This enables organizations to allocate resources efficiently and address the most critical incidents first.\nCan also be used to generate reports and metrics for measuring the effectiveness of the incident response process and to identify trends and patterns in the threat landscape.\nIt is important to note that the `severity` field is subjective and can be interpreted differently by different organizations or analysts. Therefore, it should be used in conjunction with other intelligence attributes, such as the `confidence` field, to provide a more comprehensive view of the incident."
type: string
enum:
- Medium
- Info
- Unknown
# --- truncated at 32 KB (311 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cisco-xdr/refs/heads/main/openapi/cisco-xdr-reputation-api-openapi.yml