Skip to main content
Version: main

CMDB Instance API overview

The CMDB Instance API performs CRUD operations on configuration items (CIs) by CMDB class, and manages relationships between CIs.

Basic usage

Access it through the CMDB namespace:

instance := client.Now().Cmdb().Instance()

// Query CIs of a class
servers, err := instance.ByClass("cmdb_ci_linux_server").Get(context.Background(), nil)
if err != nil {
log.Fatal(err)
}

// Get / update a specific CI
ci, err := instance.ByClass("cmdb_ci_linux_server").ByID("{sysID}").Get(context.Background(), nil)
if err != nil {
log.Fatal(err)
}
updated, err := instance.ByClass("cmdb_ci_linux_server").ByID("{sysID}").Patch(context.Background(), ciBody, nil)
if err != nil {
log.Fatal(err)
}

Available operations

  • Query class instancesByClass(className).Get(ctx, config).
  • Create instanceByClass(className).Post(ctx, body, config).
  • Get instanceByClass(className).ByID(sysID).Get(ctx, config).
  • Replace / update instance...ByID(sysID).Put(ctx, body, config) and ...Patch(ctx, body, config).
  • Create relation...ByID(sysID).Relation().Post(ctx, body, config).
  • Delete relation...Relation().ByID(relSysID).Delete(ctx, config).
Was this page helpful?