This documentation supports the 9.1 to 9.1 Service Pack 3 version and its patches of BMC Atrium Core. The documentation for version 9.1.04 and its patches is available here.

To view the latest version, select the version from the Product version menu.

Types of BMC Atrium CMDB C API functions

The BMC Atrium CMDB C API functions are categorized by the type of action that they perform, as listed in the following table. To use the C API functions in your program, you must have the following BMC Atrium CMDB permissions depending on the specific function type:

  • CMDB Definitions Admin — For working with data model definitions, such as CMDBCreateClass, CMDBDeleteClass, CMDBCreateAttribute, and CMDBCreateMultipleAttributes. For more information about these functions, see the data model functions in the following table.
  • CMDB RE User — For working with the Reconciliation Engine functions, such as CMDBGetJobRun and CMDBCancelJobRun. For more information about these functions, see the Reconciliation Engine functions in the following table.
  • CMDB Data Change All — For all other functions with which you manipulate the data in BMC Atrium CMDB.


List of functions categorized by type

Function type

Function list

Bulk-entry transaction functions:
Invoke the bulk-entry API functions.

  • CMDBBeginBulkEntryTransaction
  • CMDBEndBulkEntryTransaction

Client-managed transaction functions:
Invoke the client-managed API functions. Prior to using these functions, set the maximum number of client transactions and the transaction timeout parameters in the AR System configuration file (ar.cfg or ar.conf ) Guidelines include:

  • Do not execute long running processes or APIs in the transaction.
  • Do not use the same transaction handle in multi-threaded API calls.
  • Make sure that the transaction is as small as possible to reduce the chance of deadlock.
  • When running concurrent transactions, make sure that there is no data overlap between transactions.
  • CMDBBeginClientManagedTransaction
  • CMDBEndClientManagedTransaction
  • CMDBSetClientManagedTransaction
  • CMDBRemoveClientManagedTransaction

Copy functions:
Copy the values of one C API structure to another. The copy structures return an integer value that indicate whether the copy operation was a success or a failure. A value of 1 indicates success. Each of the copy functions accepts the following parameters:

  • dst --A pointer to the destination structure to which you want to copy the values.
  • src --A pointer to the source structure from which you want to copy values.
  • CopyCMDBGraphWalkQueryStruct
  • CopyCMDBGraphWalkSelectorAndFilterList
  • CopyCMDBGraphWalkSelectorAndFilterStruct
  • CopyCMDBGraphWalkRelation
  • CopyCMDBGraphWalkRelationList
  • CopyCMDBGraphWalkResultStruct
  • CopyCMDBInstanceList
  • CopyCMDBInstanceStruct
  • CopyCMDBNestedQueryStruct
  • CopyCMDBQueryQualifierStruct
  • CopyCMDBQueryQualifierValueStruct
  • CopyCMDBQueryObject
  • CopyCMDBQueryObjectList
  • CopyCMDBQueryObjectSelectorList
  • CopyCMDBQueryStruct
  • CopyCMDBQuerySortStruct
  • CopyCMDBQuerySortList

Data model functions:
Manipulate the BMC Atrium CMDB class and attribute definitions.

  • CMDBCreateAttribute
  • CMDBCreateClass
  • CMDBCreateMultipleAttributes
  • CMDBDeleteAttribute
  • CMDBDeleteClass
  • CMDBGetAttribute
  • CMDBGetClass
  • CMDBGetListClass
  • CMDBGetMultipleAttributes
  • CMDBSetAttribute
  • CMDBSetClass
  • CMDBSetMultipleAttributes
  • CMDBSynchMetaData

Environment functions:
Initialize, set, or query information about the API environment.

  • CMDBGetServerPort
  • CMDBInitialization
  • CMDBSetServerPort
  • CMDBSystemInit
  • CMDBTermination

Export and import functions:
Export and import BMC Atrium CMDB definitions and data.

  • CMDBExportData
  • CMDBExportDef
  • CMDBImportData
  • CMDBImportDef

Federation functions:
Work with federated data for an instance.

  • CMDBActivateFederatedInContext
  • CMDBExpandParametersForCI
  • CMDBGetRelatedFederatedInContext
  • CMDBRunQualificationForCI

Free functions:
Release the memory space allocated to the specified C API structure. When you allocate memory space for parameters that various functions require, you must release the memory when it is no longer required. Each of these free functions accept two parameters:

  • value --A pointer to the structure you want to free. The function recursively frees all allocated memory within that structure. If you specify NULL for this parameter (or the structure is a list with zero items), the function performs no operations.
  • freeStruct --A Boolean value that indicates whether to free the top level structure. If you allocated memory for the top level structure, specify TRUE to free both the structure and its contents. If you used a stack variable for the top level structure, specify FALSE to free only the contents of the structure.
  • FreeCMDBAttributeGetStruct
  • FreeCMDBAttributeLimit
  • FreeCMDBAttributeLimitList
  • FreeCMDBAttributeLimitStruct
  • FreeCMDBAttributeValueList
  • FreeCMDBAttributeValueListList
  • FreeCMDBAuditInfoStruct
  • FreeCMDBAuditValueList
  • FreeCMDBAuditValueListList
  • FreeCMDBClassNameIdList
  • FreeCMDBClassTypeInfo
  • FreeCMDBExportItemList
  • FreeCMDBExportItemStruct
  • FreeCMDBFederatedActivateInfo
  • FreeCMDBGetObjectList
  • FreeCMDBGetRelationList
  • FreeCMDBGraphAdjacentList
  • FreeCMDBGraphAdjacentStruct
  • FreeCMDBGraphList
  • FreeCMDBGraphStruct
  • FreeCMDBGraphWalkObjectStruct
  • FreeCMDBGraphWalkObjectList
  • FreeCMDBGraphWalkQueryStruct
  • FreeCMDBGraphWalkRelation
  • FreeCMDBGraphWalkRelationList
  • FreeCMDBGraphWalkResultStruct
  • FreeCMDBGraphWalkSelectorAndFilterList
  • FreeCMDBGraphWalkSelectorAndFilterStruct
  • FreeCMDBGraphWalkStateStruct
  • FreeCMDBIndexList
  • FreeCMDBNestedQueryStruct
  • FreeCMDBQualifierStruct
  • FreeCMDBImportItemList
  • FreeCMDBIndexList
  • FreeCMDBInstanceList
  • FreeCMDBQueryObject
  • FreeCMDBQueryObjectList
  • FreeCMDBQueryObjectSelectorList
  • FreeCMDBQueryQualifierStruct
  • FreeCMDBQueryQualifierValueStruct
  • FreeCMDBQueryResultGraph
  • FreeCMDBQueryStruct
  • FreeCMDBQuerySortStruct
  • FreeCMDBQuerySortList

Instance functions:
Manipulate the BMC Atrium CMDB data, such as creating and deleting instances, getting and setting instances, and querying instances. When you use the bulk functions, such as CMDBCreateMultipleInstances and CMDBDeleteMultipleInstances, to manipulate one or more instances, the success of the operation depends on the complete call. For example, if an error is encountered when creating a particular instance in the bulk function, the entire operation is rolled back and none of the instances are created.

  • CMDBCreateInstance
  • CMDBCreateMultipleInstances
  • CMDBDeleteInstance
  • CMDBDeleteMultipleInstances
  • CMDBGetCopyAuditData
  • CMDBGetInstance
  • CMDBGetInstanceBLOB
  • CMDBGetListInstance
  • CMDBGetMultipleInstances
  • CMDBSetInstance
  • CMDBSetMultipleInstances

Query functions:
Find related CIs depending on the information that you need to retrieve about CI and relationship instances.

  • CMDBGraphQuery
  • CMDBGraphWalkBegin
  • CMDBGraphWalkEnd
  • CMDBGraphWalkNext
  • CMDBQueryByPath

Reconciliation Engine functions:
Manipulate Reconciliation Engine jobs.

  • CMDBCancelJobRun
  • CMDBGetJobRun
  • CMDBGetListJobRun
  • CMDBStartJobRun

User interface component functions:
Manipulate BMC Atrium CMDB components, such as tooltips, icons, and labeled strings.

  • CMDBGetCMDBUIComponents

Utility functions:
Use BMC Atrium CMDB utilities to generate globally unique identifiers (GUIDs) and get version information.

  • CMDBCreateGuid
  • CMDBGetVersions

Was this page helpful? Yes No Submitting... Thank you

Comments