diff --git a/docs/auto-discovery/jamf-autodiscovery.mdx b/docs/auto-discovery/jamf-autodiscovery.mdx index c2329a1d..8ebd1d3a 100644 --- a/docs/auto-discovery/jamf-autodiscovery.mdx +++ b/docs/auto-discovery/jamf-autodiscovery.mdx @@ -18,6 +18,10 @@ Currently, Jamf autodiscovery retrieves data on the following: - Installed software and applications - Extension attributes (Custom Fields) +You can view the discovered mobile devices under the **Software In Use** tab on the details page of any of the discovered mobile devices. + +![Jamf mobile autodiscovery items](/assets/images/jamf-autodiscovery/jamf-mobile-discovery-sw.png) + ## Requirements for Jamf autodiscovery To run a Jamf autodiscovery job, you need to set the appropriate permissions in your Jamf account and provide your Jamf username and password when creating the job. diff --git a/docs/auto-discovery/network-auto-discovery.mdx b/docs/auto-discovery/network-auto-discovery.mdx index b4cf23c5..5bc34b35 100644 --- a/docs/auto-discovery/network-auto-discovery.mdx +++ b/docs/auto-discovery/network-auto-discovery.mdx @@ -122,6 +122,10 @@ You can enter preferred community string credentials when you create an SNMP dis Click on the **+ Add another community string** button at the bottom of the **Credentials** section. Then select the secret for the community string by clicking the **magnifying glass icon**. +:::note +For successful SNMP v3 discovery, please only use one set of SNMP v3 credentials per username. Currently, entering multiple credentials with shared passwords results in only one of the credential sets being used. +::: + ## Install the Device42 Integration App on Freshservice The installation process has three steps, which are discussed in more detail in the sections that follow. -1. In Device42, under **Tools > Cloud Services**, enable the **Cloud Connector** and set the **D42 URL for SaaS apps**. -2. In Device42, create a new integration under **Tools > External Integrations**. -3. In Freshservice, install and configure the marketplace integration app. - ### 1. Enable the Cloud Connector in Device42 Ensure that cloud services are enabled and configured: @@ -36,7 +38,13 @@ Ensure that cloud services are enabled and configured: 2. Enter your externally accessible Device42 IP address or FQDN in the **D42 URL for SaaS apps** field. If you have configured a digital certificate, you can enter the name of the device instead. 3. Select your **Cloud Connector** location or environment. It's set to **USA** by default. - ![Configure Cloud Services](/assets/images/freshservice-integration/cloud-services-settings.png) + ### 2. Create a Freshservice External Integration in Device42 @@ -48,7 +56,13 @@ Ensure that cloud services are enabled and configured: 3. Under **Type**, choose **Freshservice**. 4. You can optionally select **Enable Freshworks SSO** to activate single sign-on (SSO). We recommend using this feature for a seamless login experience when working with the integration. - ![Add external integration](/assets/images/freshservice-integration/add-external-integration.png) + To enable the SSO feature, ensure that you have an administrator in your Device42 instance with the same email address as your Freshservice agent: @@ -65,33 +79,39 @@ Ensure that cloud services are enabled and configured: 5. Click **Save** and copy the **Verification Token** from the table on the External Integrations list page. - ![External integrations list page](/assets/images/freshservice-integration/verification-token.png) + ### 3. Install the Marketplace Integration App in Freshservice Enable the Device42 integration in Freshservice using the Discovery Hub setup wizard. 1. Log in to your Freshservice agent account. -2. Click the **ellipsis menu** and select **Admin**. Use the search bar at the top of the page to search for `hub`. +2. Click the **ellipsis menu** (located at the bottom of the left panel) and select **Admin**. Use the "Search admin" search bar to search for `hub`. 3. From the Discovery Hub view, click **Steps to configure trial**. - ![Discovery Hub](/assets/images/freshservice-integration/discovery-hub-start.png) + ![Discovery Hub](/assets/images/freshservice-integration/discovery-hub-start-2.png) 4. Click **Next** three times to get to the **Install the Device42 app** section of the installation wizard. 5. **Install** the **Device42 for Freshservice** app. - ![Install the D42 for Freshservice app](/assets/images/freshservice-integration/install-d42-for-freshservice.png) + ![Install the D42 for Freshservice app](/assets/images/freshservice-integration/install-d42-for-freshservice-2.png) 6. Fill in the fields on the form. Enter your **Freshservice Domain Name**. - ![Fill in the config form](/assets/images/freshservice-integration/integration-config-form-install.png) + ![Fill in the config form](/assets/images/freshservice-integration/integration-config-form-install-2.png) - From the dropdown, choose the **Cloud Connector** region that matches the option you selected under **Cloud Services** in Device42 (see step 3 of the [Enable the Cloud Connector in Device42](#1-enable-the-cloud-connector-in-device42) section above. - Enter the **Verification Token** generated from the Device42 external integration you added. Make sure you're using the token from the External Integrations view page and **not** the token from the **+ Add External Integrations** form. 7. Open the **Freshservice Default Approver** dropdown and select your admin user from the list. If the list is populated, then the information you've entered so far should be correct. If you are unable to select a user, check the URL and Cloud Connector. - ![Set the default approver](/assets/images/freshservice-integration/default-approver.png) + ![Set the default approver](/assets/images/freshservice-integration/default-approver-2.png) 8. Click **Install** to add the app to your Freshservice instance. @@ -101,7 +121,7 @@ After installing the integration app in Freshservice, you'll be able to complete 1. Ensure that you have checked the **Enable SSO** option on the Device42 External Integration. See Step 4 of the [Create a Freshservice External Integration in Device42](#2-create-a-freshservice-external-integration-in-device42) section above. 2. From the Appliance Manager, navigate to **Global Settings > SAML/SSO Settings**. -3. Check the **Enable Freshworks SSO** checkbox. +3. Check the **Enable Freshworks SSO** checkbox and click **Submit**. ![SAML/SSO settings](/assets/images/freshservice-integration/saml-sso-settings.png) @@ -114,27 +134,33 @@ Test the SSO as follows: 1. Log in to your Freshworks instance with the same email address as your [Device42 admin user](#2-create-a-freshservice-external-integration-in-device42). 2. Log out of Device42 and refresh the page. Click on the new **Freshworks Login** button. - ![Freshworks login button](/assets/images/freshservice-integration/freshworks-login-button.png) + 3. Authorize the Freshworks SSO the first time you use it. - ![Authorize the Freshworks login](/assets/images/freshservice-integration/sso-authorization.png) + ![Authorize the Freshworks login](/assets/images/freshservice-integration/sso-authorization-2.png) Now, when you're logged out of both Device42 and Freshservice, clicking the **Freshworks Login** button in Device42 will direct you to the Freshworks sign-in page. -![Freshworks sign-in page](/assets/images/freshservice-integration/freshworks-sign-in.png) +![Freshworks sign-in page](/assets/images/freshservice-integration/freshworks-sign-in-2.png) -## Integration App Settings +## Using the Integration App -You can use the integration app's configuration page to sync data from Device42 to Freshservice, as well as to view and edit the data mapping between Device42 and Freshservice. +Configure the **Device42 for Freshservice** app to sync data from Device42 to Freshservice and view and edit the fields mapped between Device42 and Freshservice. -From Freshservice, navigate to the settings tab, located on the configuration page of the Device42 integration app: +Make your way to the settings tab, located on the configuration page of the Device42 integration app: -1. Click the **ellipsis menu** and select **Admin**. Enter `apps` in the search bar at the top of the screen to quickly bring up the **Apps** option. +1. Click the **ellipsis menu** (located at the bottom of the left panel) and select **Admin** (1). Enter `apps` in the "Search admin" search bar to quickly bring up the **Apps** option. 2. From the **Apps** page, click **Manage Apps**. -3. Under the **Installed Apps** tab, find the **Device42 for Freshservice** app and select **Settings > Edit settings**. +3. Under the **Installed Apps** tab, find the **Device42 for Freshservice** app and select **Settings > Edit settings** (2). - ![Edit settings](/assets/images/freshservice-integration/edit-settings.png) + ![Edit settings](/assets/images/freshservice-integration/edit-settings-2.png) ### Run the Data Synchronization @@ -144,14 +170,14 @@ You can schedule a daily sync and run the sync immediately. We recommend that yo [From the **Configuration** page](#configure-the-integration-in-freshservice), scroll down to the **Schedule Synchronization** section. - ![Schedule synchronization](/assets/images/freshservice-integration/schedule-sync.png) +To automatically fetch data from Device42 daily, check the **Use Schedule** checkbox and enter a **Sync Time (UTC)** at which to perform the sync. + + ![Schedule synchronization](/assets/images/freshservice-integration/schedule-sync-2.png) To run the sync immediately, click the **Manual sync** button to reveal the options: -- Select **Run Full Sync** (1) to sync all items from Device42 to Freshservice, regardless of when the items were added or updated in Device42. -- Select **Run Partial Sync** (2) to sync only the items that have been changed in Device42 (either added or updated) since the last successful sync. - -To automatically fetch data from Device42 daily, check the **Use Schedule** checkbox and enter a **Sync Time (UTC)** at which to perform the sync. +- Select **Run Full Sync** (blue button) to sync all items from Device42 to Freshservice, regardless of when the items were added or updated in Device42. +- Select **Run Partial Sync** (green button) to sync only the items that have been changed in Device42, either added or updated, since the last successful sync. ### View Sync History Logs @@ -161,13 +187,13 @@ The synchronization history is useful for debugging issues and seeing the number Select a row from the sync history table to view the logs associated with it (if there are any). The displayed text is limited to 4,000 characters. - ![](/assets/images/WEB-755_FS-view-sync-history.png) + ![View sync history](/assets/images/freshservice-integration/view-sync-history-2.png) Scroll down to view error messages and other details. To download the full logs, use the **Download Full Log** button in the lower-left corner of the text area. - ![](/assets/images/WEB-755_FS-view-sync-history-2.png) + ![View sync history](/assets/images/freshservice-integration/download-full-log-button.png) :::note A full sync will be forced during upgrades to get new data from Device42. The sync history type will listed as a full upgrade instead of an incremental one until a successful sync has been performed. @@ -175,19 +201,22 @@ A full sync will be forced during upgrades to get new data from Device42. The sy ## Data Mapping Between Device42 and Freshservice -[From the **Settings** tab of the **Configuration** page](#configure-the-integration-in-freshservice), scroll down to the **Schedule Synchronization** section and click the **Data Mapping** button to reveal the data-mapping buttons. - -![Data-mapping buttons](/assets/images/freshservice-integration/mapping.png) +[From the **Settings** tab of the **Configuration** page](#configure-the-integration-in-freshservice), scroll down to the **Schedule Synchronization** section and click the **Data Mapping** button to reveal the custom mapping buttons. -- In the **Schedule Synchronization** section, view the currently mapped fields and their data types by clicking the **Data Mapping** button to reveal the integration app's **Data Mapping Chart**. + ![Data-mapping buttons](/assets/images/freshservice-integration/data-mapping-buttons-2.png) - ![View current mapping](/assets/images/freshservice-integration/view-mappings.png) +- Click the **Download Default Mapping** button to download the `mapping.xml` file. Customize the mapping between fields in Device42 and Freshservice by downloading, editing, and [reuploading](#reupload-the-mappingxml-file) the `mapping.xml` file. +- Explore the mapped fields and their data types by selecting an asset type (for example, **Devices**) from the **Data Mapping Chart**. Scroll to the bottom of the page to view the mapping table. -- Customize the mapping between fields in Device42 and Freshservice by downloading, editing, and [reuploading](#reupload-the-mappingxml-file) the `mapping.xml` file. Click the **Download Default Mapping** button to download the `mapping.xml` file, then open the file in a text or code editor to view and edit the data mapping. + ![View current mapping](/assets/images/freshservice-integration/view-mappings-2.png) ## The `mapping.xml` File Structure -There are multiple `` elements in the `mapping.xml` file. You can customize the data mapping between Device42 and Freshservice by modifying and adding to these tasks. Refer to [The `mapping.xml` File Tasks](#the-mappingxml-file-tasks) table below for descriptions of the default mapping tasks, types, and their version requirements. +Open the `mapping.xml` file in a text or code editor to view and edit the data mapping. Version 1.0 of the file has around 6010 lines. There are tasks for syncing data, tasks for syncing the relationships between Device42 CI types (by recreating them between the corresponding Freshservice types), and two cleanup tasks for deleting any assets or asset relationships from Freshservice that do not exist in Device42. + + ![mapping.xml in VS Code](/assets/images/freshservice-integration/mapping-v1-annotated.png) + + You can customize the data mapping between Device42 and Freshservice by modifying and adding to these tasks. Refer to [The `mapping.xml` File Tasks](#the-mappingxml-file-tasks) table below for descriptions of the default mapping tasks, types, and their version requirements. For example, The following `` element copies product information from Device42 to Freshservice: @@ -212,7 +241,7 @@ For example, The following `` element copies product information from Devi ``` -There are tasks that copy data from Device42 to Freshservice, create relationships between Device42 assets, and delete assets or relationships from Freshservice if they don't exist in Device42. For example, there is a task that brings in device data, a task that brings in software data, and a task that creates the device-to-software relationship from Device42 in Freshservice. +Let's take a closer look at the attributes and elements of the `` elements so you can understand what to adapt or emulate to suit your particular case. ### The `` Element Attributes @@ -222,6 +251,8 @@ There are tasks that copy data from Device42 to Freshservice, create relationshi ``` + Note that if you turn off a task that has `asset` or `asset_relationship` as its corresponding Freshservice type (for example, devices, business apps, and resources in Device42), you'll need to find and remove its corresponding query snippet in the `Delete` cleanup tasks. For an example, see [this answer in the FAQ section](#how-do-i-disable-a-relationship-between-two-asset-types-that-exist-in-device42-from-syncing-to-freshservice). + - `name`: You can edit the task name. Task names appear in the [integration app's **Data Mapping Chart**](#data-mapping-between-device42-and-freshservice). - `type`: Holds the [Freshservice classification](https://api.freshservice.com/) of the data. The valid types are: @@ -243,7 +274,7 @@ There are tasks that copy data from Device42 to Freshservice, create relationshi ### The `` Element Elements -The `` and `` elements are nested in each task. The `` element relates to Device42 data and the `` element relates to Freshservice data. Refer to the [Freshservice API documentation](https://api.freshservice.com/) for further details. +The `` and `` elements are nested in each task. Think of the `` element as relating to Device42 data and the `` element as relating to the Freshservice fields. The `` element contains: @@ -260,13 +291,13 @@ Typically, the first `` represents the Device42 data returned from the qu - `resource`: The same as the `target` value. - `source-type`: Not functionally critical; this provides the data type displayed on the [integration app's **Data Mapping Chart**](#data-mapping-between-device42-and-freshservice). - `target`: The Device42 field to be mapped to Freshservice. The Freshservice convention is to use the display name in snake case, occasionally with the ID of the asset type as a suffix. For example, `memory_max_usage` and `memory_reservation_used`. The sync process determines the ID. Please look up which target field names to use in the [Freshservice API documentation](https://api.freshservice.com/). -- `escape`: This is used on `target="name"` fields, as some characters used in Device42 aren't supported in Freshservice and need to be substituted. When creating a new task, you can set this to `true` but disable it if mismatching issues occur. +- `escape`: This is used on field elements where `target="name"`. Some characters used in Device42 names aren't supported in Freshservice and need to be substituted. When creating a new task, you can set this to `true` but disable it if mismatching issues occur. :::tip -Use the InsightsAI chat under **Analytics > InsightsAI** to interpret DOQL query snippets quickly in the context of the Device42 data tables. +Use our InsightsAI chat under **Analytics > InsightsAI** to interpret DOQL query snippets quickly in the context of the Device42 data tables. ::: -### Additional Matching Logic for Updating Existing Items +### Additional Matching Criteria for Updating Existing Items Some `` elements in `mapping.xml` have a helper `` element for updating synched data that currently exists in Freshservice but may have slightly different name formats. For example, asset-type syncing tasks include the `` element to determine which query fields are used to match which asset attributes when trying to find a match. For example: @@ -298,9 +329,9 @@ Save the file and upload it back to Freshservice with the **Upload Custom Mappin Use this table to look up the mapping tasks in the `mapping.xml` file. -Each `` element has the following `type`, `description`, and (`d42_min_version` and `d42_max_version`) version attributes. +Each `` element has the following Freshservice `type`, `description`, and (`d42_min_version` and `d42_max_version`) version attributes. -Refer to the `type` explanation in the [The `` Element Attributes](#the-task-element-attributes) section above for a list of valid types. +For a quick look at all the valid Freshservice `types`, see the [The `` Element Attributes](#the-task-element-attributes) section above. | `description=` | `type=` | `d42_min_version=` | `d42_max_version=` | |--------------------------------------------------------------------|-----------------------|-----------------|-----------------| @@ -396,14 +427,14 @@ In the `` that corresponds with the Device42 field you want to pull from, Refer to [The `` Element Elements](#the-task-element-elements) section for a description of the `` element attributes. -### How Do I Turn Off Device-to-Device Communication in the Freshdesk Relationship Maps? +### How Do I Prevent a Relationship Between Two Device42 Asset Types From Syncing to Freshservice? You need to modify two `` elements within the `mapping.xml` file. - In your `mapping.xml` file, [find the `` element](#the-mappingxml-file-tasks) that creates the relationship between the asset types you want to disable. Set the `enable` attribute from `true` to `false` to disable the relationship. For example: ```xml - + ``` - Remove the corresponding relationship query from the last `` with the attribute ``, which is nested in the `description="D42 AWS ALB to Freshservice AWS ALB">` `` element. @@ -443,9 +474,11 @@ You need to modify two `` elements within the `mapping.xml` file. ### How Do I Troubleshoot Data Mapping and Syncing Issues? -From Freshservice, go to **Admin**, search for `apps`, and click **Manage Apps**. Find the **Device42 for Freshservice** app, open the **Settings** dropdown, and select **Edit settings**. Under the **Schedule Synchronization**, click the **Sync History** button. +From Freshservice, go to **Admin**, search for `apps`, and click **Manage Apps**. Find the **Device42 for Freshservice** app, open the **Settings** dropdown, and select **Edit settings**. Under the **Schedule Synchronization**, click the **Sync History** button and click on a row to view details of the errors. -![Data mapping and syncing error](/assets/images/freshservice-integration/sync-error-message.png) +![Data mapping and syncing error](/assets/images/freshservice-integration/sync-errors-3.png) + +To download the full logs, scroll down and click the **Download Full Log** button in the lower-left corner of the text area. ## View Mapped and Unmapped Data for Specific Assets @@ -468,6 +501,96 @@ We understand that some fields within Device42 may not easily translate to field ![](/assets/images/D42_View_Virtual_Device_1-700x254.png) +## Examples of Changing the `mapping.xml` File for Specific Use Cases + +This section provides specific examples of how to edit the `mapping.xml` file to change the data synced from Device42 to Freshservice. + +The line estimates in the examples are based on the default version 1.0 of the `mapping.xml` file and won't match your file exactly if you've customized the sync or used an updated version. + +### Example 1: How Can I Stop the Sync From Importing Contracts From Device42 to Freshservice? + +To stop importing contracts to Freshservice, set the `enable` attribute to `false` in the following `` elements: + +1. Find the task with the description `Copy contract info from Device42 to Freshservice` (around line `2372`): + + ![Line 2372](/assets/images/freshservice-integration/example-vscode-4.png) + + Change `enable="true"` to `enable="false"`: + + ```xml + + ``` + +2. Find the `Create association between asset and contract` task (around line `2413`): + + ![Line 2413](/assets/images/freshservice-integration/example-vscode-5.png) + + Change `enable="true"` to `enable="false"`: + + ```xml + + ``` + +3. If you want to disable Software Licensing from being synced, find the `Copy Software Licensing info from Device42 to Freshservice` task (around line `2437`): + + ![Line 2437](/assets/images/freshservice-integration/example-vscode-6.png) + + Change `enable="true"` to `enable="false"`: + + ```xml + + ``` + +4. Save the file and reupload it to Freshservice with the [**Upload Custom Mapping** button](#reupload-the-mappingxml-file). + +### Example 2: How Do I Prevent Software Imports From Syncing to Freshservice? + +You can stop software from syncing to Freshservice by setting the `enable` attribute to `false` to the following `` elements: + +1. Find the task with the description `Copy Softwares from Device42 to Freshservice using DOQL` (around line `2087`). + + ![Line 2087](/assets/images/freshservice-integration/example-vscode-1.png) + + Change `enable="true"` to `enable="false"`: + + ```xml + + ``` + +2. There are two `Create Software Install from Software In Use` tasks; one with a `d42_min_version` attribute and one with a `d42_max_version`. Set the `enable` attribute to `false` on both of them: + + - The first task is around line `2102`: + + ![Line 2102](/assets/images/freshservice-integration/example-vscode-2.png) + + Change `enable="true"` to `enable="false"`: + + ```xml + + ``` + + - The second task is around line `2172`: + + ![Line 2172](/assets/images/freshservice-integration/example-vscode-3.png) + + Change `enable="true"` to `enable="false"`: + + ```xml + + ``` + +3. Software Licensing from Device42 syncs to `contract` in Freshservice. Find and disable the `Copy Software Licensing info from Device42 to Freshservice` task (around line `2437`): + + ![Line 2437](/assets/images/freshservice-integration/example-vscode-6.png) + + Change `enable="true"` to `enable="false"`: + + ```xml + + ``` + +4. Save the file and reupload it to Freshservice with the [**Upload Custom Mapping** button](#reupload-the-mappingxml-file). + ## Data Types Transferred from Device42 to Freshservice | D42 Data Type | Freshservice Type (General) | Type (Specific) | diff --git a/docs/reports/device42-doql/insightsai.mdx b/docs/reports/device42-doql/insightsai.mdx index 1186262b..6ab1fd01 100644 --- a/docs/reports/device42-doql/insightsai.mdx +++ b/docs/reports/device42-doql/insightsai.mdx @@ -164,9 +164,11 @@ Delete one or more chats by selecting them and choosing a delete option from the The following notice is available when you click **About InsightsAI** below the chat bar: -InsightsAI uses publicly available Device42 field names and descriptions for training and does not expose any data residing in the internal tables or data structures that include customer-specific or proprietary data. The field names and descriptions used for training the large language model and generative AI engine are documented and can be found at https://docs.device42.com/reports/device42-doql/db-viewer-schema/. - -InsightsAI generates SQL query as a response to customer natural language inquiries. The inquiries are then uploaded to the InsightsAI cloud service, which generates the SQL response. InsightsAI utilizes OpenAI APIs as part of its generative AI process. The generated SQL is validated for accuracy and error free execution however the customer CMDB data is not exposed as part of the process. +> InsightsAI uses publicly available Device42 field names and descriptions for training and does not expose any data residing in the internal tables or data structures that include customer-specific or proprietary data. The field names and descriptions used for training the large language model and generative AI engine are documented and can be found [via the] [Database Viewer Schema](https://docs.device42.com/reports/device42-doql/db-viewer-schema/). +> +>InsightsAI generates SQL query as a response to customer natural language inquiries. The inquiries are then uploaded to the InsightsAI cloud service, which generates the SQL response. InsightsAI utilizes OpenAI APIs as part of its generative AI process. The generated SQL is validated for accuracy and error free execution however the customer CMDB data is not exposed as part of the process. +> +>InsightsAI is enabled by default and can be disabled via a toggle in the admin UI which enables and disables cloud services. By using InsightsAI you consent to the processing of your data by Open AI pursuant to the Business Terms governing Open AI’s API usage by Device42 as set forth at [Business terms](https://openai.com/policies/business-terms/) (for the purposes thereof, you are “End User” and your data is “Customer Content”). :::tip See [Device42 Object Query Language](index.md) for information on database queries. diff --git a/static/assets/images/freshservice-integration/add-external-integration-dark.png b/static/assets/images/freshservice-integration/add-external-integration-dark.png new file mode 100644 index 00000000..9dbef92d Binary files /dev/null and b/static/assets/images/freshservice-integration/add-external-integration-dark.png differ diff --git a/static/assets/images/freshservice-integration/add-external-integration-light.png b/static/assets/images/freshservice-integration/add-external-integration-light.png new file mode 100644 index 00000000..a64ac8ab Binary files /dev/null and b/static/assets/images/freshservice-integration/add-external-integration-light.png differ diff --git a/static/assets/images/freshservice-integration/add-external-integration.png b/static/assets/images/freshservice-integration/add-external-integration.png deleted file mode 100644 index 05ccb41c..00000000 Binary files a/static/assets/images/freshservice-integration/add-external-integration.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/admin-email.png b/static/assets/images/freshservice-integration/admin-email.png deleted file mode 100644 index 54eca814..00000000 Binary files a/static/assets/images/freshservice-integration/admin-email.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/cloud-services-settings-dark.png b/static/assets/images/freshservice-integration/cloud-services-settings-dark.png new file mode 100644 index 00000000..5c1f763f Binary files /dev/null and b/static/assets/images/freshservice-integration/cloud-services-settings-dark.png differ diff --git a/static/assets/images/freshservice-integration/cloud-services-settings-light.png b/static/assets/images/freshservice-integration/cloud-services-settings-light.png new file mode 100644 index 00000000..c24a4cf3 Binary files /dev/null and b/static/assets/images/freshservice-integration/cloud-services-settings-light.png differ diff --git a/static/assets/images/freshservice-integration/cloud-services-settings.png b/static/assets/images/freshservice-integration/cloud-services-settings.png deleted file mode 100644 index 8664cb4f..00000000 Binary files a/static/assets/images/freshservice-integration/cloud-services-settings.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/d42-freshworks-login.png b/static/assets/images/freshservice-integration/d42-freshworks-login.png deleted file mode 100644 index ae6a7ddd..00000000 Binary files a/static/assets/images/freshservice-integration/d42-freshworks-login.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/data-mapping-buttons-2.png b/static/assets/images/freshservice-integration/data-mapping-buttons-2.png new file mode 100644 index 00000000..f090ac69 Binary files /dev/null and b/static/assets/images/freshservice-integration/data-mapping-buttons-2.png differ diff --git a/static/assets/images/freshservice-integration/default-approver-2.png b/static/assets/images/freshservice-integration/default-approver-2.png new file mode 100644 index 00000000..b9ea95e9 Binary files /dev/null and b/static/assets/images/freshservice-integration/default-approver-2.png differ diff --git a/static/assets/images/freshservice-integration/default-approver.png b/static/assets/images/freshservice-integration/default-approver.png deleted file mode 100644 index c61b61b3..00000000 Binary files a/static/assets/images/freshservice-integration/default-approver.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/discovery-hub-start-2.png b/static/assets/images/freshservice-integration/discovery-hub-start-2.png new file mode 100644 index 00000000..868ed9c0 Binary files /dev/null and b/static/assets/images/freshservice-integration/discovery-hub-start-2.png differ diff --git a/static/assets/images/freshservice-integration/discovery-hub-start.png b/static/assets/images/freshservice-integration/discovery-hub-start.png deleted file mode 100644 index 04d17347..00000000 Binary files a/static/assets/images/freshservice-integration/discovery-hub-start.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/download-full-log-button.png b/static/assets/images/freshservice-integration/download-full-log-button.png new file mode 100644 index 00000000..3c9889c8 Binary files /dev/null and b/static/assets/images/freshservice-integration/download-full-log-button.png differ diff --git a/static/assets/images/freshservice-integration/edit-settings-2.png b/static/assets/images/freshservice-integration/edit-settings-2.png new file mode 100644 index 00000000..18c272fb Binary files /dev/null and b/static/assets/images/freshservice-integration/edit-settings-2.png differ diff --git a/static/assets/images/freshservice-integration/edit-settings.png b/static/assets/images/freshservice-integration/edit-settings.png deleted file mode 100644 index 7b4cff96..00000000 Binary files a/static/assets/images/freshservice-integration/edit-settings.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/example-vscode-1.png b/static/assets/images/freshservice-integration/example-vscode-1.png new file mode 100644 index 00000000..d440f798 Binary files /dev/null and b/static/assets/images/freshservice-integration/example-vscode-1.png differ diff --git a/static/assets/images/freshservice-integration/example-vscode-2.png b/static/assets/images/freshservice-integration/example-vscode-2.png new file mode 100644 index 00000000..551aad8e Binary files /dev/null and b/static/assets/images/freshservice-integration/example-vscode-2.png differ diff --git a/static/assets/images/freshservice-integration/example-vscode-3.png b/static/assets/images/freshservice-integration/example-vscode-3.png new file mode 100644 index 00000000..3513e802 Binary files /dev/null and b/static/assets/images/freshservice-integration/example-vscode-3.png differ diff --git a/static/assets/images/freshservice-integration/example-vscode-4.png b/static/assets/images/freshservice-integration/example-vscode-4.png new file mode 100644 index 00000000..5f57d188 Binary files /dev/null and b/static/assets/images/freshservice-integration/example-vscode-4.png differ diff --git a/static/assets/images/freshservice-integration/example-vscode-5.png b/static/assets/images/freshservice-integration/example-vscode-5.png new file mode 100644 index 00000000..305f14a3 Binary files /dev/null and b/static/assets/images/freshservice-integration/example-vscode-5.png differ diff --git a/static/assets/images/freshservice-integration/example-vscode-6.png b/static/assets/images/freshservice-integration/example-vscode-6.png new file mode 100644 index 00000000..384f4360 Binary files /dev/null and b/static/assets/images/freshservice-integration/example-vscode-6.png differ diff --git a/static/assets/images/freshservice-integration/freshworks-login-button-dark.png b/static/assets/images/freshservice-integration/freshworks-login-button-dark.png new file mode 100644 index 00000000..819ef3c7 Binary files /dev/null and b/static/assets/images/freshservice-integration/freshworks-login-button-dark.png differ diff --git a/static/assets/images/freshservice-integration/freshworks-login-button-light.png b/static/assets/images/freshservice-integration/freshworks-login-button-light.png new file mode 100644 index 00000000..9dcd06d9 Binary files /dev/null and b/static/assets/images/freshservice-integration/freshworks-login-button-light.png differ diff --git a/static/assets/images/freshservice-integration/freshworks-login-button.png b/static/assets/images/freshservice-integration/freshworks-login-button.png deleted file mode 100644 index 6a038b5b..00000000 Binary files a/static/assets/images/freshservice-integration/freshworks-login-button.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/freshworks-sign-in-2.png b/static/assets/images/freshservice-integration/freshworks-sign-in-2.png new file mode 100644 index 00000000..c3305e3e Binary files /dev/null and b/static/assets/images/freshservice-integration/freshworks-sign-in-2.png differ diff --git a/static/assets/images/freshservice-integration/freshworks-sign-in.png b/static/assets/images/freshservice-integration/freshworks-sign-in.png deleted file mode 100644 index 5e37050d..00000000 Binary files a/static/assets/images/freshservice-integration/freshworks-sign-in.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/install-d42-for-freshservice-2.png b/static/assets/images/freshservice-integration/install-d42-for-freshservice-2.png new file mode 100644 index 00000000..6eca23fe Binary files /dev/null and b/static/assets/images/freshservice-integration/install-d42-for-freshservice-2.png differ diff --git a/static/assets/images/freshservice-integration/install-d42-for-freshservice.png b/static/assets/images/freshservice-integration/install-d42-for-freshservice.png deleted file mode 100644 index be4f3388..00000000 Binary files a/static/assets/images/freshservice-integration/install-d42-for-freshservice.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/integration-config-form-install-2.png b/static/assets/images/freshservice-integration/integration-config-form-install-2.png new file mode 100644 index 00000000..30d70b99 Binary files /dev/null and b/static/assets/images/freshservice-integration/integration-config-form-install-2.png differ diff --git a/static/assets/images/freshservice-integration/integration-config-form-install.png b/static/assets/images/freshservice-integration/integration-config-form-install.png deleted file mode 100644 index 6747c8c6..00000000 Binary files a/static/assets/images/freshservice-integration/integration-config-form-install.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/mapping-v1-annotated.png b/static/assets/images/freshservice-integration/mapping-v1-annotated.png new file mode 100644 index 00000000..1b92737b Binary files /dev/null and b/static/assets/images/freshservice-integration/mapping-v1-annotated.png differ diff --git a/static/assets/images/freshservice-integration/mapping.png b/static/assets/images/freshservice-integration/mapping.png deleted file mode 100644 index 88705d4b..00000000 Binary files a/static/assets/images/freshservice-integration/mapping.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/schedule-sync-2.png b/static/assets/images/freshservice-integration/schedule-sync-2.png new file mode 100644 index 00000000..650ae841 Binary files /dev/null and b/static/assets/images/freshservice-integration/schedule-sync-2.png differ diff --git a/static/assets/images/freshservice-integration/schedule-sync.png b/static/assets/images/freshservice-integration/schedule-sync.png deleted file mode 100644 index d6678b1a..00000000 Binary files a/static/assets/images/freshservice-integration/schedule-sync.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/sso-authorization-2.png b/static/assets/images/freshservice-integration/sso-authorization-2.png new file mode 100644 index 00000000..aed51bd0 Binary files /dev/null and b/static/assets/images/freshservice-integration/sso-authorization-2.png differ diff --git a/static/assets/images/freshservice-integration/sso-authorization.png b/static/assets/images/freshservice-integration/sso-authorization.png deleted file mode 100644 index 7dce5a59..00000000 Binary files a/static/assets/images/freshservice-integration/sso-authorization.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/sync-error-message.png b/static/assets/images/freshservice-integration/sync-error-message.png deleted file mode 100644 index 26f9ca26..00000000 Binary files a/static/assets/images/freshservice-integration/sync-error-message.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/sync-errors-3.png b/static/assets/images/freshservice-integration/sync-errors-3.png new file mode 100644 index 00000000..3c54e1be Binary files /dev/null and b/static/assets/images/freshservice-integration/sync-errors-3.png differ diff --git a/static/assets/images/freshservice-integration/verification-token-dark.png b/static/assets/images/freshservice-integration/verification-token-dark.png new file mode 100644 index 00000000..9c856f1c Binary files /dev/null and b/static/assets/images/freshservice-integration/verification-token-dark.png differ diff --git a/static/assets/images/freshservice-integration/verification-token-light.png b/static/assets/images/freshservice-integration/verification-token-light.png new file mode 100644 index 00000000..8a5343d6 Binary files /dev/null and b/static/assets/images/freshservice-integration/verification-token-light.png differ diff --git a/static/assets/images/freshservice-integration/verification-token.png b/static/assets/images/freshservice-integration/verification-token.png deleted file mode 100644 index d9b5d495..00000000 Binary files a/static/assets/images/freshservice-integration/verification-token.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/view-mappings-2.png b/static/assets/images/freshservice-integration/view-mappings-2.png new file mode 100644 index 00000000..dd35fd85 Binary files /dev/null and b/static/assets/images/freshservice-integration/view-mappings-2.png differ diff --git a/static/assets/images/freshservice-integration/view-mappings.png b/static/assets/images/freshservice-integration/view-mappings.png deleted file mode 100644 index 78afb2a2..00000000 Binary files a/static/assets/images/freshservice-integration/view-mappings.png and /dev/null differ diff --git a/static/assets/images/freshservice-integration/view-sync-history-2.png b/static/assets/images/freshservice-integration/view-sync-history-2.png new file mode 100644 index 00000000..58b20535 Binary files /dev/null and b/static/assets/images/freshservice-integration/view-sync-history-2.png differ diff --git a/static/assets/images/jamf-autodiscovery/jamf-mobile-discovery-sw.png b/static/assets/images/jamf-autodiscovery/jamf-mobile-discovery-sw.png new file mode 100644 index 00000000..3bb6bf66 Binary files /dev/null and b/static/assets/images/jamf-autodiscovery/jamf-mobile-discovery-sw.png differ