Skip to main content

BMC Helix

BMC Helix is an IT service management platform that integrates with the BMC Helix ITSM REST API to synchronize IT assets and incident management data. You can bring asset and incident data from BMC Helix into Brinqa to gain a unified view of your attack surface, thus strengthening your cybersecurity posture.

This document details the information you must provide for the connector to authenticate with BMC Helix and how to obtain that information from BMC. See create a data integration for step-by-step instructions on setting up the integration.

Required connection settings

When setting up a data integration, select BMC Helix from the Connector dropdown. If you cannot find the connector in the dropdown, make sure that you have installed it first. You must provide the following information to authenticate BMC Helix with Brinqa:

  • URL: The base URL of the BMC Helix REST API (for example, https://helix.example.com).
  • Username: The BMC Helix username used to authenticate with the API.
  • Password: The BMC Helix password associated with the username.

The connector authenticates using JWT (JSON Web Token) via a form-encoded POST request to {baseUrl}/api/jwt/login. The JWT token is cached and automatically refreshed every 15 minutes. Once authenticated, all subsequent API requests include the Authorization: AR-JWT <token> header along with the X-AR-User header set to the configured username.

Additional settings

The BMC Helix connector contains additional options for specific configuration:

  • Page size: The maximum number of records to get per API request. The default setting is 100. It is not recommended to go over 1000.
  • Parallel requests: The maximum number of parallel API requests. The default setting is the lesser of 4 or the number of available processors (max: 2× available processors).
  • Maximum retries: The maximum number of times that the integration attempts to connect to the BMC Helix API before giving up and reporting a failure. The default setting is 5. It is not recommended to go over 20.

Types of data to retrieve

The BMC Helix connector can retrieve the following types of data from the BMC Helix REST API:

info

The BMC Helix connector does not currently support operation options for the types of data it retrieves.

For detailed steps on how to view the data retrieved from BMC Helix in the Brinqa Platform, see How to view your data.

Table 1: Data retrieved from BMC Helix

Connector ObjectRequiredMaps to Data Model
Disk DeviceYesDevice
HardwareYesDevice
HostYesHost
IncidentYesIncident
Incident DefinitionYesIncident Definition
Mobile DeviceYesDevice
Network SwitchYesNot mapped
RouterYesNot mapped
StorageYesNot mapped
WorkstationYesDevice

Attribute mappings

Expand the sections below to view the mappings between the source and the Brinqa data model attributes.

Disk Device

Table 2: Disk Device attribute mappings

Source Field NameSDM Attribute
AssetResource.accountId()ACCOUNT_ID
AssetResource.accountingCode()ACCOUNTING_CODE
AssetResource.acquiredMethod()ACQUIRED_METHOD
AssetResource.adminPasswordStatus()ADMIN_PASSWORD_STATUS
AssetResource.assetClass()ASSET_CLASS
AssetResource.assetId()ASSET_ID
AssetResource.assetLifecycleStatus()LIFECYCLE_STATUS
AssetResource.assetLifecycleStatus()SOURCE_STATUS
AssetResource.assetLifecycleStatus()STATUS
AssetResource.assignedTo()ASSIGNED_TO
AssetResource.availableDate()AVAILABLE_DATE
AssetResource.bookValue()BOOK_VALUE
AssetResource.bootRomSupported()BOOT_ROM_SUPPORTED
AssetResource.budgetCode()BUDGET_CODE
AssetResource.building()BUILDING
AssetResource.capabilityList()CAPABILITY_LIST
AssetResource.catalogItemName()CATALOG_ITEM_NAME
AssetResource.catalogItemNumber()CATALOG_ITEM_NUMBER
AssetResource.category()CATEGORIES
AssetResource.chargeBackCode()CHARGE_BACK_CODE
AssetResource.chassisBootupState()CHASSIS_BOOTUP_STATE
AssetResource.classId()CLASS_ID
AssetResource.company()COMPANY
AssetResource.configuration()CONFIGURATION_FIELD
AssetResource.configurationOptions()CONFIGURATION_OPTIONS
AssetResource.configurationVersion()CONFIGURATION_VERSION
AssetResource.cost()COST
AssetResource.costCategory()COST_CATEGORY
AssetResource.costCenter()COST_CENTER
AssetResource.costType()COST_TYPE
AssetResource.createDate()SOURCE_CREATED_DATE
AssetResource.currentState()CURRENT_STATE
AssetResource.dataRate()DATA_RATE
AssetResource.dataSetId()DATA_SET_ID
AssetResource.ddCount()DD_COUNT
AssetResource.department()DEPARTMENT
AssetResource.depreciated()DEPRECIATED
AssetResource.description()DESCRIPTION
AssetResource.dhcpUse()DHCP_USE
AssetResource.disposalDate()DISPOSAL_DATE
AssetResource.dnsHostName()DNS_HOST_NAME
AssetResource.domain()DOMAIN
AssetResource.endOfExtendedSupport()END_OF_EXTENDED_SUPPORT
AssetResource.endOfLife()END_OF_LIFE
AssetResource.endOfSecuritySupport()END_OF_SECURITY_SUPPORT
AssetResource.endOfSupport()END_OF_SUPPORT
AssetResource.estimatedPrice()ESTIMATED_PRICE
AssetResource.failedAutomaticIdentification()FAILED_AUTO_ID
AssetResource.firmwareVersion()FIRMWARE_VERSION
AssetResource.fixedAsset()FIXED_ASSET
AssetResource.flashMemory()FLASH_MEMORY
AssetResource.floor()FLOOR
AssetResource.frequency()FREQUENCY
AssetResource.impact()IMPACT
AssetResource.impactComputationModel()IMPACT_COMPUTATION_MODEL
AssetResource.inputCurrent()INPUT_CURRENT
AssetResource.inputVoltage()INPUT_VOLTAGE
AssetResource.installationDate()INSTALL_DATE
AssetResource.instanceId()INSTANCE_ID
AssetResource.inventory()INVENTORY
AssetResource.inventoryName()INVENTORY_NAME
AssetResource.invoiceNumber()INVOICE_NUMBER
AssetResource.item()ASSET_TYPE
AssetResource.lastModifiedBy()LAST_MODIFIED_BY
AssetResource.lastScanDate()LAST_SCAN_DATE
AssetResource.logicalId()LOGICAL_ID
AssetResource.manufacturerName()MANUFACTURER
AssetResource.markAsDeleted()MARK_AS_DELETED
AssetResource.marketValue()MARKET_VALUE
AssetResource.maxConsumption()MAX_CONSUMPTION
AssetResource.modelNumber()MODEL
AssetResource.modifiedDate()SOURCE_LAST_MODIFIED
AssetResource.name()HOSTNAMES
AssetResource.notesLog()NOTES_LOG
AssetResource.numberOfSlots()NUMBER_OF_SLOTS
AssetResource.orderId()ORDER_ID
AssetResource.ownerContact()OWNER
AssetResource.ownerName()OWNER_NAME
AssetResource.partNumber()PART_NUMBER
AssetResource.portsPerSlot()PORTS_PER_SLOT
AssetResource.primaryCapability()PRIMARY_CAPABILITY
AssetResource.priority()PRIORITY
AssetResource.projectNumber()PROJECT_NUMBER
AssetResource.purchaseDate()PURCHASE_DATE
AssetResource.quantityInStock()QUANTITY_IN_STOCK
AssetResource.receivedDate()RECEIVED_DATE
AssetResource.reconciliationId()RECONCILIATION_ID
AssetResource.recordId()NAME
AssetResource.recordId()RECORD_ID
AssetResource.recordId()UID
AssetResource.region()REGION
AssetResource.requestId()REQUEST_ID
AssetResource.requisitionId()REQUISITION_ID
AssetResource.resetCapability()RESET_CAPABILITY
AssetResource.returnDate()RETURN_DATE
AssetResource.room()ROOM
AssetResource.salesTax()SALES_TAX
AssetResource.scheduleType()SCHEDULE_TYPE
AssetResource.serialNumber()SERIAL_NUMBER
AssetResource.shortDescription()SUMMARY
AssetResource.site()SITE
AssetResource.statusReason()STATUS_REASON
AssetResource.submitter()SUBMITTER
AssetResource.supplierName()SUPPLIER_NAME
AssetResource.supported()SUPPORTED
AssetResource.systemEnvironment()SYSTEM_ENVIRONMENT
AssetResource.systemType()SYSTEM_TYPE
AssetResource.tagNumber()TAG_NUMBER
AssetResource.taxCredit()TAX_CREDIT
AssetResource.thermalState()THERMAL_STATE
AssetResource.tokenId()TOKEN_ID
AssetResource.topic()TOPIC
AssetResource.totalPurchaseCost()TOTAL_PURCHASE_COST
AssetResource.unitPrice()UNIT_PRICE
AssetResource.urgency()URGENCY
AssetResource.usedByFullName()USED_BY_FULL_NAME
AssetResource.userDisplayObjectName()USER_DISPLAY_OBJECT_NAME
AssetResource.usersAffected()USERS_AFFECTED
AssetResource.versionNumber()VERSION_NUMBER
AssetResource.y2kCompliant()Y2K_COMPLIANT
Instant.now()LAST_CAPTURED
Hardware

Table 3: Hardware attribute mappings

Same attribute set as Disk Device — all BaseAsset attributes are mapped; see the Disk Device table above for the full list.

Host

Table 4: Host attribute mappings

All common BaseAsset attributes (see Disk Device table) plus the following Host-specific attributes:

Source Field NameSDM Attribute
AssetResource.cpuCount()CPU_COUNT
AssetResource.isVirtual()IS_VIRTUAL
AssetResource.isVirtualNew()IS_VIRTUAL_NEW
AssetResource.osCount()OS_COUNT
AssetResource.systemRole()SYSTEM_ROLE
AssetResource.totalPhysicalMemory()TOTAL_PHYSICAL_MEMORY
AssetResource.virtualSystemType()VIRTUAL_SYSTEM_TYPE
AssetResource.workgroup()WORKGROUP
Incident

Table 5: Incident attribute mappings

Source Field NameSDM Attribute
IncidentResource.assignedGroup()ASSIGNED_GROUP
IncidentResource.assignedGroupId()ASSIGNED_GROUP_ID
IncidentResource.assignedSupportCompany()ASSIGNED_SUPPORT_COMPANY
IncidentResource.assignedSupportOrganization()ASSIGNED_SUPPORT_ORGANIZATION
IncidentResource.assignee()ASSIGNEE
IncidentResource.assigneeGroups()ASSIGNEE_GROUPS
IncidentResource.assigneeLoginId()ASSIGNEE_LOGIN_ID
IncidentResource.associatedAlarm()ASSOCIATED_ALARM
IncidentResource.categorizationTier1()CATEGORIZATION_TIER_1
IncidentResource.categorizationTier2()CATEGORIZATION_TIER_2
IncidentResource.categorizationTier3()CATEGORIZATION_TIER_3
IncidentResource.city()CITY
IncidentResource.closedDate()CLOSED_DATE
IncidentResource.company()COMPANY
IncidentResource.contactClientType()CONTACT_CLIENT_TYPE
IncidentResource.contactCompany()CONTACT_COMPANY
IncidentResource.contactSensitivity()CONTACT_SENSITIVITY
IncidentResource.corporateId()CORPORATE_ID
IncidentResource.country()COUNTRY
IncidentResource.createDate()SOURCE_CREATED_DATE
IncidentResource.customerLoginId()CUSTOMER_LOGIN_ID
IncidentResource.department()DEPARTMENT
IncidentResource.description()DESCRIPTION
IncidentResource.deskLocation()DESK_LOCATION
IncidentResource.directContactAreaCode()DIRECT_CONTACT_AREA_CODE
IncidentResource.directContactCity()DIRECT_CONTACT_CITY
IncidentResource.directContactCompany()DIRECT_CONTACT_COMPANY
IncidentResource.directContactCountry()DIRECT_CONTACT_COUNTRY
IncidentResource.directContactCountryCode()DIRECT_CONTACT_COUNTRY_CODE
IncidentResource.directContactCorporateId()DIRECT_CONTACT_CORPORATE_ID
IncidentResource.directContactDepartment()DIRECT_CONTACT_DEPARTMENT
IncidentResource.directContactDeskLocation()DIRECT_CONTACT_DESK_LOCATION
IncidentResource.directContactExtension()DIRECT_CONTACT_EXTENSION
IncidentResource.directContactInternetEmail()DIRECT_CONTACT_EMAIL
IncidentResource.directContactLastName()DIRECT_CONTACT_LAST_NAME
IncidentResource.directContactLocalNumber()DIRECT_CONTACT_LOCAL_NUMBER
IncidentResource.directContactLocationDetails()DIRECT_CONTACT_LOCATION_DETAILS
IncidentResource.directContactLoginId()DIRECT_CONTACT_LOGIN_ID
IncidentResource.directContactMailStation()DIRECT_CONTACT_MAIL_STATION
IncidentResource.directContactMiddleInitial()DIRECT_CONTACT_MIDDLE_INITIAL
IncidentResource.directContactFirstName()DIRECT_CONTACT_FIRST_NAME
IncidentResource.directContactOrganization()DIRECT_CONTACT_ORGANIZATION
IncidentResource.directContactPersonId()DIRECT_CONTACT_PERSON_ID
IncidentResource.directContactPhoneNumber()DIRECT_CONTACT_PHONE
IncidentResource.directContactRegion()DIRECT_CONTACT_REGION
IncidentResource.directContactSite()DIRECT_CONTACT_SITE
IncidentResource.directContactSiteGroup()DIRECT_CONTACT_SITE_GROUP
IncidentResource.directContactSiteId()DIRECT_CONTACT_SITE_ID
IncidentResource.directContactStateProvince()DIRECT_CONTACT_STATE_PROVINCE
IncidentResource.directContactStreet()DIRECT_CONTACT_STREET
IncidentResource.directContactTimeZone()DIRECT_CONTACT_TIME_ZONE
IncidentResource.directContactZipPostalCode()DIRECT_CONTACT_ZIP_POSTAL_CODE
IncidentResource.email()EMAIL
IncidentResource.entryId()ENTRY_ID
IncidentResource.estimatedResolutionDate()ESTIMATED_RESOLUTION_DATE
IncidentResource.firstName()FIRST_NAME
IncidentResource.firstWipDate()FIRST_WIP_DATE
IncidentResource.impact()IMPACT
IncidentResource.incidentNumber()INCIDENT_NUMBER
IncidentResource.incidentNumber()NAME
IncidentResource.incidentNumber()TYPE
IncidentResource.incidentNumber()UID
IncidentResource.infrastructureEventType()INFRASTRUCTURE_EVENT_TYPE
IncidentResource.instanceId()INSTANCE_ID
IncidentResource.instanceId()TARGETS
IncidentResource.internetEmail()EMAIL
IncidentResource.lastAcknowledgedDate()LAST_ACKNOWLEDGED_DATE
IncidentResource.lastAssignedDate()LAST_ASSIGNED_DATE
IncidentResource.lastModifiedBy()LAST_MODIFIED_BY
IncidentResource.lastResolvedDate()LAST_RESOLVED_DATE
IncidentResource.lastWipDate()LAST_WIP_DATE
IncidentResource.lastName()LAST_NAME
IncidentResource.mailStation()MAIL_STATION
IncidentResource.middleInitial()MIDDLE_INITIAL
IncidentResource.modifiedDate()SOURCE_LAST_MODIFIED
IncidentResource.needsAttention()NEEDS_ATTENTION
IncidentResource.needsAttentionCcsSetting()NEEDS_ATTENTION_CCS_SETTING
IncidentResource.organization()ORGANIZATION
IncidentResource.ownerGroup()OWNER_GROUP
IncidentResource.ownerGroupId()OWNER_GROUP_ID
IncidentResource.ownerSupportCompany()OWNER_SUPPORT_COMPANY
IncidentResource.ownerSupportOrganization()OWNER_SUPPORT_ORGANIZATION
IncidentResource.personId()PERSON_ID
IncidentResource.phoneNumber()PHONE_NUMBER
IncidentResource.priority()PRIORITY
IncidentResource.priorityWeight()PRIORITY_WEIGHT
IncidentResource.productModelVersion()PRODUCT_MODEL_VERSION
IncidentResource.productName()PRODUCT_NAME
IncidentResource.recordId()RECORD_ID
IncidentResource.recordId()TARGETS
IncidentResource.reportedDate()REPORTED_DATE
IncidentResource.reportedSource()REPORTED_SOURCE
IncidentResource.requestCreatedFromDwp()REQUEST_CREATED_FROM_DWP
IncidentResource.requiredResolutionDateTime()REQUIRED_RESOLUTION_DATE_TIME
IncidentResource.respondedDate()RESPONDED_DATE
IncidentResource.siteGroup()SITE_GROUP
IncidentResource.siteId()SITE_ID
IncidentResource.site()SITE
IncidentResource.srInstanceId()SR_INSTANCE_ID
IncidentResource.srmsRegistryInstanceId()SRMS_REGISTRY_INSTANCE_ID
IncidentResource.stateProvince()STATE_PROVINCE
IncidentResource.status()PROVIDER_STATUS
IncidentResource.statusReason()STATUS_REASON
IncidentResource.street()STREET
IncidentResource.submitter()SUBMITTER
IncidentResource.totalTransfers()TOTAL_TRANSFERS
IncidentResource.urgency()URGENCY
IncidentResource.vendorGroup()VENDOR_GROUP
IncidentResource.vendorGroupId()VENDOR_GROUP_ID
IncidentResource.vendorName()VENDOR_NAME
IncidentResource.vendorOrganization()VENDOR_ORGANIZATION
IncidentResource.vendorTicketNumber()VENDOR_TICKET_NUMBER
IncidentResource.vip()VIP
IncidentResource.zipPostalCode()ZIP_POSTAL_CODE
Instant.now()LAST_CAPTURED
normalizeFindingStatus(status)SOURCE_STATUS
Incident Definition

Table 6: Incident Definition attribute mappings

Source Field NameSDM Attribute
IncidentResource.categorizationTier1()CATEGORIZATION_TIER_1
IncidentResource.categorizationTier2()CATEGORIZATION_TIER_2
IncidentResource.categorizationTier3()CATEGORIZATION_TIER_3
IncidentResource.closureManufacturer()CLOSURE_MANUFACTURER
IncidentResource.closureProductCategoryTier1()CLOSURE_PRODUCT_CATEGORY_TIER_1
IncidentResource.closureProductCategoryTier2()CLOSURE_PRODUCT_CATEGORY_TIER_2
IncidentResource.closureProductCategoryTier3()CLOSURE_PRODUCT_CATEGORY_TIER_3
IncidentResource.closureProductModelVersion()CLOSURE_PRODUCT_MODEL_VERSION
IncidentResource.closureProductName()CLOSURE_PRODUCT_NAME
IncidentResource.configurationItem()CONFIGURATION_ITEM
IncidentResource.configurationItemReconId()CONFIGURATION_ITEM_RECON_ID
IncidentResource.description()DESCRIPTION
IncidentResource.detailedDecription()DETAILED_DESCRIPTION
IncidentResource.impact()IMPACT
IncidentResource.incidentNumber()NAME
IncidentResource.incidentNumber()UID
IncidentResource.manufacturer()MANUFACTURER
IncidentResource.priority()PRIORITY
IncidentResource.priority()SOURCE_SEVERITY
IncidentResource.productCategorizationTier1()PRODUCT_CATEGORIZATION_TIER_1
IncidentResource.productCategorizationTier2()PRODUCT_CATEGORIZATION_TIER_2
IncidentResource.productCategorizationTier3()PRODUCT_CATEGORIZATION_TIER_3
IncidentResource.resolution()RESOLUTION
IncidentResource.resolutionCategory()RESOLUTION_CATEGORY
IncidentResource.resolutionCategoryTier2()RESOLUTION_CATEGORY_TIER_2
IncidentResource.resolutionCategoryTier3()RESOLUTION_CATEGORY_TIER_3
IncidentResource.resolutionMethod()RESOLUTION_METHOD
IncidentResource.serviceType()SERVICE_TYPE
IncidentResource.urgency()URGENCY
Instant.now()LAST_CAPTURED
getFindingSeverityScore(normalizedSeverity)SEVERITY_SCORE
normalizeFindingSeverity(priority)SEVERITY
Mobile Device

Table 7: Mobile Device attribute mappings

Same attribute set as Disk Device — all BaseAsset attributes are mapped; see the Disk Device table above for the full list.

Network Switch

Table 8: Network Switch attribute mappings

Same attribute set as Disk Device — all BaseAsset attributes are mapped; see the Disk Device table above for the full list.

Router

Table 9: Router attribute mappings

Same attribute set as Disk Device — all BaseAsset attributes are mapped; see the Disk Device table above for the full list.

Storage

Table 10: Storage attribute mappings

Same attribute set as Disk Device — all BaseAsset attributes are mapped; see the Disk Device table above for the full list.

Workstation

Table 11: Workstation attribute mappings

All common BaseAsset attributes (see Disk Device table) plus the following Workstation-specific attributes:

Source Field NameSDM Attribute
AssetResource.cpuCount()CPU_COUNT
AssetResource.isVirtual()IS_VIRTUAL
AssetResource.isVirtualNew()IS_VIRTUAL_NEW
AssetResource.osCount()OS_COUNT
AssetResource.systemRole()SYSTEM_ROLE
AssetResource.totalPhysicalMemory()TOTAL_PHYSICAL_MEMORY
AssetResource.virtualSystemType()VIRTUAL_SYSTEM_TYPE
AssetResource.workgroup()WORKGROUP

APIs

The BMC Helix connector uses the BMC Helix REST API. Specifically, it uses the following endpoints:

Table 12: BMC Helix API endpoints

Connector ObjectAPI Endpoint
Disk DeviceGET /api/arsys/v1/entry/AST:ComputerSystem
HardwareGET /api/arsys/v1/entry/AST:ComputerSystem
HostGET /api/arsys/v1/entry/AST:ComputerSystem
IncidentGET /api/arsys/v1/entry/HPD:IncidentInterface
Incident (create)POST /api/arsys/v1/entry/HPD:IncidentInterface_Create
Incident (update)PUT /api/arsys/v1/entry/HPD:IncidentInterface/{requestId}
Incident DefinitionGET /api/arsys/v1/entry/HPD:IncidentInterface
Mobile DeviceGET /api/arsys/v1/entry/AST:ComputerSystem
Network SwitchGET /api/arsys/v1/entry/AST:ComputerSystem
RouterGET /api/arsys/v1/entry/AST:ComputerSystem
StorageGET /api/arsys/v1/entry/AST:ComputerSystem
WorkstationGET /api/arsys/v1/entry/AST:ComputerSystem

Changelog

The BMC Helix connector has undergone the following changes:

Table 13: BMC Helix connector changelog

VersionDescriptionDate Published
3.0.0Initial Integration+ release.
Overview
The BMC Helix connector integrates with BMC Helix ITSM to synchronize IT assets, incident findings, and incident definitions, enabling unified visibility into hardware, network devices, workstations, and service desk tickets.
Category: IT Service Management
Models
- Workstation: Asset — Desktop and laptop endpoints managed in Helix CMDB
- Hardware: Asset — Physical hardware assets including servers and appliances
- DiskDevice: Asset — Storage disk devices tracked in the CMDB
- MobileDevice: Asset — Mobile devices managed in the CMDB
- NetworkSwitch: Asset — Network switch devices
- Router: Asset — Router devices
- Storage: Asset — Storage systems and arrays
- Host: Asset — Generic compute hosts from the CMDB
- Incident: Finding — ITSM incident tickets with full lifecycle tracking, including create and update support
- Incident Definition: Finding — Incident classification metadata with severity, categorization, and resolution details
No Migration
initial release.
June 15th, 2026