# ServiceNow CMDB

> Configure and use the OneFuse ServiceNow CMDB module with the Python module

---

Site [llms.txt](/llms.txt)

---

To learn more about this OneFuse module, refer to [ServiceNow CMDB](/docs/onefuse/configure/modules/servicenow-cmdb/).

## Prerequisites

1. [Configure OneFuse Manager](/docs/onefuse/consume/python-module/getting-started/#configure-onefuse-manager)
1. Review an overview on [OneFuse Modules](/docs/onefuse/consume/python-module/modules/) with OneFuse Python Module

## Provision

Run Provisioning IRE Template(s) configured on the OneFuse ServiceNow CMDB Policy for a resource.

### Method

```python
#Run the following in the Python Console
#Assumes OneFuse Manager is instantiated to 'ofm' variable

ofm.provision_cmdb('<policy_name>', <template_properties>, '<tracking_id>')
```

### Parameter references

The following defines the function of each ServiceNow CMDB specific Parameters.

| Parameter Name | Required? | Notes |
| --- | --- | --- |
| `policy_name` | Required | OneFuse Module Policy Name (string). |
| `template_properties` | *Optional* | Additional properties that are referenced within the Policy. Python [dict](https://www.w3schools.com/python/python_dictionaries.asp) format. |
| `tracking_id` | *Optional* | Tracking ID (string) to link multiple OneFuse Policy Executions and resulting OneFuse Managed Objects together. If none is passed, one gets generated by OneFuse for that specific Policy Execution. See OneFuse Python Module Tracking ID Methods below. |

**OneFuse Python Module Tracking ID Methods:**

| Method Name | Notes |
| --- | --- |
| `create_tracking_id()` | Generate a unique Tracking ID to link OneFuse Policy Executions and the resulting Managed Objects together. |
| `get_tracking_id_from_mo('<Path to OneFuse Managed Object>')` | Get the Tracking ID from a OneFuse Managed Object. |
| `add_tracking_id_to_headers('<Tracking ID>')` | Add Tracking ID into request headers. When making custom requests to OneFuse instead of using OneFuse Python Module methods provided. |

Learn more about OneFuse [Tracking ID](/docs/onefuse/concepts/tracking-id/).

## Update

Run Update IRE Template(s), if configured on the OneFuse ServiceNow CMDB Policy, for a resource.

### Method

```python
#Run the following in the Python Console
#Assumes OneFuse Manager is instantiated to 'ofm' variable

ofm.update_cmdb(<template_properties>, '<cmdb_id>')
```

### Parameter references

The following defines the function of each method Parameters.

| Parameter Name | Required? | Notes |
| --- | --- | --- |
| `template_properties` | *Optional* | Additional properties that are referenced within the Policy. Python [dict](https://www.w3schools.com/python/python_dictionaries.asp) format. |
| `cmdb_id` | Required | ID of the OneFuse ServiceNow CMDB Deployment Managed Object |

## Deprovision

Run Deprovisioning IRE Template(s), if configured on the OneFuse ServiceNow CMDB Policy, for a resource.

### Method

```python
#Run the following in the Python Console
#Assumes OneFuse Manager is instantiated to 'ofm' variable

ofm.deprovision_cmdb('<cmdb_id>')
```

### Parameter references

The following defines the function of the method Parameter.

| Parameter Name | Required? | Notes |
| --- | --- | --- |
| `cmdb_id` | Required | ID of the OneFuse ServiceNow CMDB Deployment Managed Object |
