open-index/open-npm huggingface dataset:
npm package: @itentialopensource/adapter-db_oracle
Description: Itential adapter to connect to oracle
Author: Itential
Latest version: 0.6.6

Oracle Adapter
===========

This adapter allows interaction with a Oracle server. For efficiency, this adapter should only be used in Itential Platform workflow calls. Calling the adapter from Applications instead of using the npm oracledb pacakges will be less efficient!

License & Maintainers
---

### Maintained by:

Itential Adapter Team (<product_team@itential.com>)

Check the [changelog](CHANGELOG.md) for the latest changes.

### License

Itential, LLC proprietary

### Resource to install Oracle Client

https://www.oracle.com/database/technologies/instant-client.html

### Troubleshoot

Error: [\"error connecting to Oracle: Error: DPI-1047: Cannot locate a 64-bit Oracle Client library: \\\"libclntsh.so: cannot open shared object file: No such file or directory\\\".

This error tells the adapter is not able to find lib directory. Verify the following steps from documentation[https://oracle.github.io/node-oracledb/INSTALL.html]:

3.2.3.4 Install the free Oracle Instant Client ‘Basic’ RPM
Download the latest version of the free Basic RPM from yum.oracle.com.

Instant Client is available for Oracle Linux 7 and Oracle Linux 8. Older Oracle Instant Clients are also available in the Oracle Linux 6, Oracle Linux 7 and Oracle Linux 8 repositories. The RPMs are also available from Oracle Technology Network.

Install Instant Client Basic with sudo or as the root user. You can install directly from yum.oracle.com, for example using:

sudo yum -y install oracle-release-el7
sudo yum-config-manager --enable ol7_oracle_instantclient
sudo yum -y install oracle-instantclient19.11-basic
Alternatively you can manually download the RPM and install from your local file system:

sudo yum install oracle-instantclient19.11-basic-19.11.0.0.0-1.x86_64.rpm
The link instantclient-basic-linuxx64.zip will download the latest version available from OTN.

If you have a ULN subscription, another alternative is to use yum to install the Basic package after enabling the ol7_x86_64_instantclient or ol6_x86_64_instantclient repository, depending on your version of Linux.

Using any of these methods will install the required libaio package, if it is not already present. When using Instant Client 19 on recent Linux versions, such as Oracle Linux 8, you may also need to manually install the libnsl package. This is not needed from Instant Client 21 onward.

For Instant Client 19 RPMs, the system library search path is automatically configured during installation. For older versions, if there is no other Oracle software on the machine that will be impacted, then permanently add Instant Client to the run-time link path. For example, with sudo or as the root user:

sudo sh -c "echo /usr/lib/oracle/18.3/client64/lib > /etc/ld.so.conf.d/oracle-instantclient.conf"
sudo ldconfig
Alternatively, for version 18 and earlier, every shell running Node.js will need to have the link path set:

export LD_LIBRARY_PATH=/usr/lib/oracle/18.3/client64/lib
npm package: @itentialopensource/adapter-utils
Description: Itential Adapter Utility Libraries
Author: Itential
Latest version: 6.1.17

Itential Adapter Utilities
===

Itential Adapter Utilities is a set of Node.js runtime libraries used by Itential Adapters.

Many of the capabilities supported in Itential Adapters are built into this library so that they can be better maintained and added to adapters.

# Usage

Include `@itentialopensource/adapter-utils` as a dependency and require it:

```
const { RequestHandler, PropertyUtility } = require('@itentialopensource/adapter-utils');
```
npm package: @itentialopensource/alkira-rest-example
Description: This Pre-Built Automation bundle contains an example use case that is applicable when the Itential Automation Platform is integrated with Alkira Cloud Network as a Service, AWS EC2, and Itential Automation Gateway (IAG) using their respective REST API. Be
Author: Itential
Latest version: 1.0.6-2023.2.1

# Alkira - REST - Example

## Overview

This Pre-Built Automation bundle contains an example use case that is applicable when the Itential Automation Platform is integrated with Alkira Cloud Network as a Service, AWS EC2, and Itential Automation Gateway (IAG) using their respective REST API. Because every environment is different, these use cases are fully functioning examples that can be easily modified to operate in your specific environment. These workflows have been written with modularity in mind to make them easy to understand and simple to modify to suit your needs.


## Example Workflows


<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Overview</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/alkira-rest-example/-/blob/release/2023.2/documentation/Provision Cloud Application.md' target='_blank'>Provision Cloud Application</a></td>
      <td>Given values provided in form input, provisions VPC and EC2 with networking in AWS, provisions and configures Palo Alto Firewall service in Alkira Cloud Network as a Service as intermediate between on prem site and cloud application, and creates AWS VPC and Internet conntectors in Alkira Cloud Network as a Service.</td>
    </tr>
  </tbody>
</table>


## External Dependencies

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>OS Version</th>
      <th>API Version</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Itential Automation Gateway (IAG)</td>
      <td>^3.227.0+2023.1.33</td>
      <td></td>
    </tr>    <tr>
      <td>Alkira</td>
      <td></td>
      <td>v1</td>
    </tr>    <tr>
      <td>AWS</td>
      <td></td>
      <td></td>
    </tr>
  </tbody>
</table>

## Adapters

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Version</th>
      <th>Configuration Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href="https://gitlab.com/itentialopensource/adapters/cloud/adapter-aws_ec2">adapter-aws_ec2</a></td>
      <td>^0.7.2</td>
      <td>In order to run the workflows in this Pre-Built Automation, the adapter property <code>xmlArrayKeys</code> must be added to the AWS EC2 adapter configuration with value as seen below:

```json
"xmlArrayKeys": [
  "item"
]
```

This will ensure all response objects will set the data type of any instance of property <code>item</code> to an array, even if a single element is assigned to the property.</td>
    </tr>    <tr>
      <td>adapter-automation_gateway</td>
      <td>4.29.0-2023.1.12.0</td>
      <td></td>
    </tr>    <tr>
      <td><a href="https://gitlab.com/itentialopensource/adapters/cloud/adapter-alkira">adapter-alkira</a></td>
      <td>^0.1.7</td>
      <td></td>
    </tr>
  </tbody>
</table>
npm package: @itentialopensource/allocate-one-number
Description: [Deprecated] A JST to allocate new number from an array and an already allocated list
Author: Itential Artifacts
Latest version: 0.0.12-2023.1.1

<!-- This is a comment in md (Markdown) format, it will not be visible to the end user -->
## _Deprecation Notice_
This Pre-Built has been deprecated as of 01-15-2024 and will be end of life on 01-15-2025. The capabilities of this Pre-Built have been replaced by the [IAP - Data Manipulation](https://gitlab.com/itentialopensource/pre-built-automations/iap-data-manipulation)

<!-- Update the below line with your artifact name -->
# Allocate One Number

<!-- Leave TOC intact unless you've added or removed headers -->
## Table of Contents

* [Overview](#overview)
* [Installation Prerequisites](#installation-prerequisites)
* [Features](#features)
* [Future Enhancements](#future-enhancements)
* [How to Install](#how-to-install)
* [How to Run](#how-to-run)

## Overview
This Pre-Built Transformation consists of a JST document that finds the first available number from an array of values (range of integers). The array is constructed by taking example values for the start and end values that span from 0 through 255, and the array is a collection of numbers that can be allocated, for example `[200,199,0,1,2,3,4,100,101,150]`. The output from this JST is an object containing the next available number in the array, e.g. `{"assigned": 5}`. In cases where there is no number available, then the output object would be `{"assigned": false}`. Another example for this can be `[149,19,0,2,3,4,100,101,150]`. The output from this JST will be `{"assigned": 1}`. Some potential use cases for this JST would be an array of port numbers, or IP addresses where only 1 quadrant (0-255) can be handled.

_Estimated Run Time_: Depends on the array size, but typically within seconds.

## Installation Prerequisites

Users must satisfy the following pre-requisites.

* Itential Automation Platform
  * `^2022.1`

## Features

The main benefits and features of the Pre-Built are outlined below.

* Finds the first available number within a range.

## Future Enhancements

The scope of any future enhancements to this Pre-Built will include:

* Increased efficiency in the algorithm by converting logic into a recursive call.

## How to Install

To install the Pre-Built:

* Verify you are running a supported version of the Itential Automation Platform (IAP) as listed above in the [Requirements](#requirements) section. 
* The Pre-Built can be installed from within **App-Admin_Essential**. Simply search for the name of your desired Pre-Built and click the install button.

## How to Run

To run this JST:

* Add the appropriate JST task to the workflow.
* Search for **allocateNew**.
* Assign values to all icoming variables: 
  - startRange: INT
  - endRange: INT
  - allocated: ARRAY of INT
npm package: @itentialopensource/apache-kafka-library
Description: The integration of Itential and the Apache Kafka solution enables teams to utilize kafka-node npm library to build automations that can include common tasks for Kafka such as producing a message. This is a library of related automations that can be used a
Author: Itential
Latest version: 1.0.4-2023.2.1

# Apache - Kafka - Library

## Overview

The integration of Itential and the Apache Kafka solution enables teams to utilize kafka-node npm library to build automations that can include common tasks for Kafka such as producing a message. This is a library of related automations that can be used as modular components in your own larger, end-to-end workflows.


## Workflows


<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Overview</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/apache-kafka-library/-/blob/release/2023.2/documentation/Produce Message - Kafka - Library.md' target='_blank'>Produce Message - Kafka - Library</a></td>
      <td>Produce messages on a Kafka topic</td>
    </tr>
  </tbody>
</table>


## External Dependencies

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>OS Version</th>
      <th>API Version</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Apache Kafka</td>
      <td></td>
      <td></td>
    </tr>
  </tbody>
</table>

## Adapters

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Version</th>
      <th>Configuration Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href="https://gitlab.com/itentialopensource/adapters/notification-messaging/adapter-kafka">adapter-kafka</a></td>
      <td>^0.5.0</td>
      <td></td>
    </tr>
  </tbody>
</table>
npm package: @itentialopensource/apache-kafkav2-library
Description: The integration of Itential and the Apache Kafka solution enables teams to utilize kafkajs npm library to build automations that can include common tasks for Kafka such as producing a message. This is a library of related automations that can be used as m
Author: Itential
Latest version: 1.0.5-2023.2.1

# Apache - Kafkav2 - Library

## Overview

The integration of Itential and the Apache Kafka solution enables teams to utilize kafkajs npm library to build automations that can include common tasks for Kafka such as producing a message. This is a library of related automations that can be used as modular components in your own larger, end-to-end workflows.


## Workflows


<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Overview</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/apache-kafkav2-library/-/blob/release/2023.2/documentation/Produce Message - Kafkav2 - Library.md' target='_blank'>Produce Message - Kafkav2 - Library</a></td>
      <td>Produce messages on a Kafka topic.</td>
    </tr>
  </tbody>
</table>


## External Dependencies

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>OS Version</th>
      <th>API Version</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Apache Kafka</td>
      <td></td>
      <td></td>
    </tr>
  </tbody>
</table>

## Adapters

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Version</th>
      <th>Configuration Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href="https://gitlab.com/itentialopensource/adapters/notification-messaging/adapter-kafkav2">adapter-kafkav2</a></td>
      <td>0.22.0</td>
      <td></td>
    </tr>
  </tbody>
</table>
npm package: @itentialopensource/arista-eos-iag
Description: This Pre-Built Automation bundle contains several example use cases that are applicable when the Itential Automation Platform is integrated with Arista EOS using the device CLI. Because every environment is different, these use cases are fully functioning
Author: Itential
Latest version: 1.0.10-2023.2.1

# Arista - EOS - IAG

## Overview

This Pre-Built Automation bundle contains several example use cases that are applicable when the Itential Automation Platform is integrated with Arista EOS using the device CLI. Because every environment is different, these use cases are fully functioning examples that can be easily modified to operate in your specific environment. These workflows have been written with modularity in mind to make them easy to understand and simple to modify to suit your needs.


## Workflows


<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Overview</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/arista-eos-iag/-/blob/release/2023.2/documentation/Software Upgrade - EOS.md' target='_blank'>Software Upgrade - EOS</a></td>
      <td>Upgrade EOS on an Arista device</td>
    </tr>    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/arista-eos-iag/-/blob/release/2023.2/documentation/Port Turn Up - EOS.md' target='_blank'>Port Turn Up - EOS</a></td>
      <td>Enable a port on an EOS device</td>
    </tr>    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/arista-eos-iag/-/blob/release/2023.2/documentation/File Transfer - EOS.md' target='_blank'>File Transfer - EOS</a></td>
      <td>Perform file transfer on an Arista EOS device</td>
    </tr>    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/arista-eos-iag/-/blob/release/2023.2/documentation/Create VLAN - EOS.md' target='_blank'>Create VLAN - EOS</a></td>
      <td>Create a new VLAN on an EOS device</td>
    </tr>
  </tbody>
</table>


## External Dependencies

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>OS Version</th>
      <th>API Version</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Itential Automation Gateway (IAG)</td>
      <td>^3.198.19+2022.1.71</td>
      <td></td>
    </tr>
  </tbody>
</table>

## Adapters

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Version</th>
      <th>Configuration Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>adapter-automation_gateway</td>
      <td>^4.29.0-2023.1.12.0</td>
      <td></td>
    </tr>
  </tbody>
</table>
npm package: @itentialopensource/atlassian-jira-rest
Description: Project for use cases around Atlassian Jira using REST protocol
Author: Itential
Latest version: 1.0.5-2023.2.1

# Atlassian - Jira - REST

## Overview

The integration of Itential and the Atlassian Jira solution enables network teams to utilize its REST API to build automations that can include common tasks for Jira issue management. This is a library of related automations that can be used as modular components in your own larger, end-to-end workflows.


## Workflows


<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Overview</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/atlassian-jira-rest/-/blob/release/2023.2/documentation/Create Issue - Jira - REST.md' target='_blank'>Create Issue - Jira - REST</a></td>
      <td>Create an issue in Jira</td>
    </tr>    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/atlassian-jira-rest/-/blob/release/2023.2/documentation/Create Project - Jira - REST.md' target='_blank'>Create Project - Jira - REST</a></td>
      <td>Create a project in Jira</td>
    </tr>    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/atlassian-jira-rest/-/blob/release/2023.2/documentation/Transition Issue - Jira - REST.md' target='_blank'>Transition Issue - Jira - REST</a></td>
      <td>Transition an issue in Jira to a different status</td>
    </tr>
  </tbody>
</table>


## External Dependencies

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>OS Version</th>
      <th>API Version</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Jira</td>
      <td></td>
      <td>v3</td>
    </tr>
  </tbody>
</table>

## Adapters

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Version</th>
      <th>Configuration Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href="https://gitlab.com/itentialopensource/adapters/itsm-testing/adapter-jira">adapter-jira</a></td>
      <td>2.3.1</td>
      <td></td>
    </tr>
  </tbody>
</table>
npm package: @itentialopensource/binding-schema
Description: A schema extension for JSON schema that builds upon hyper schema to dynamically bind data into a JSON schema document.
Author: Itential, LLC
Latest version: 1.1.7

# Binding Schema

A schema extension for JSON schema that builds upon JSON hyper-schema to dynamically bind data into a JSON schema document. This is the home for the binding schema specification and its official JavaScript library.

## Notice

This is an early version of a JSON schema extension.

## Upcoming Features of Spec:

### V1

- [ ] Support authentication via link.headerSchema
- [ ] Binding meta-schema

---

### V2

- [ ] Property dependencies for sequencing and internal/external references
- [ ] Source-to-Target data transformations
- [ ] JSON API Support?
- [ ] GraphQL Support?
- [ ] Further language support with binding schema libraries

## Upcoming Features of JavaScript library:

### V1

- [x] Support source.keyPointer as nested object
- [x] Support source.propertyPath as nested object
- [ ] Support target.propertyPath as nested object
- [ ] Support array usage within JSON pointers
- [ ] Support non-nested object bindings
- [x] Support keyless/non-array responses bindings
- [ ] Support authentication via link.headerSchema
- [ ] Binding schema validator
- [ ] Docs for how to use tool
- [ ] JSDocs in code
- [ ] Fix index.js unit tests

### V2

- [ ] Handle property dependencies
- [ ] Handle transformations
npm package: @itentialopensource/chunk-array
Description: [Deprecated] Chunk array into smaller arrays of user specified size.
Author: Itential Artifacts
Latest version: 0.0.7-2023.1.1

<!-- This is a comment in md (Markdown) format, it will not be visible to the end user -->
## _Deprecation Notice_
This Pre-Built has been deprecated as of 01-15-2024 and will be end of life on 01-15-2025. The capabilities of this Pre-Built have been replaced by the [IAP - Data Manipulation](https://gitlab.com/itentialopensource/pre-built-automations/iap-data-manipulation)

<!-- Update the below line with your Pre-Built name -->
# Chunk Array

<!-- Leave TOC intact unless you've added or removed headers -->
## Table of Contents

* [Overview](#overview)
* [Installation Prerequisites](#installation-prerequisites)
* [How to Install](#how-to-install)
* [How to Run](#how-to-run)
* [Additional Information](#additional-information)

## Overview

<!-- Write a few sentences about the Pre-Built and explain the use case(s) -->
<!-- Avoid using the word Artifact. Please use Pre-Built, Pre-Built Transformation or Pre-Built Automation -->
<!-- Ex.: The Migration Wizard enables IAP users to conveniently move their automation use cases between different IAP environments -->
<!-- (e.g. from Dev to Pre-Production or from Lab to Production). -->
This Pre-built transformation allows user to pass in an array and a desired chunk size and output an array of arrays in the size specified. This may be useful when users need a smaller sized groups of data.
<!-- Workflow(s) Image Placeholder - TO BE ADDED DIRECTLY TO GitLab -->
<!-- REPLACE COMMENT BELOW WITH IMAGE OF YOUR MAIN WORKFLOW -->

<!-- REPLACE COMMENT ABOVE WITH IMAGE OF YOUR MAIN WORKFLOW -->

<!-- ADD ESTIMATED RUN TIME HERE -->
<!-- e.g. Estimated Run Time: 34 min. -->


## Installation Prerequisites

Users must satisfy the following pre-requisites:

<!-- Include any other required apps or adapters in this list -->
<!-- Ex.: EC2 Adapter -->
* Itential Automation Platform
  * `^2023.1`


## How to Install

To install the Pre-Built:

* Verify you are running a supported version of the Itential Automation Platform (IAP) as listed above in the [Requirements](#requirements) section in order to install the Pre-Built. 
* The Pre-Built can be installed from within App-Admin_Essential. Simply search for the name of your desired Pre-Built and click the install button.

<!-- REPLACE ABOVE WITH IMAGE OF YOUR PUBLISHED PRE-BUILT -->

<!-- OPTIONAL - Explain if external components are required outside of IAP -->
<!-- Ex.: The Ansible roles required for this Pre-Built can be found in the repository located at https://gitlab.com/itentialopensource/pre-built-automations/hello-world -->

## How to Run

Use the following to run the Pre-Built:

<!-- Explain the main entrypoint(s) for this Pre-Built: Automation Catalog item, Workflow, Postman, etc. -->
1. Add a JST task in a workflow and select the chunkArray transformation
2. Input the required incoming variables, arr (array) and chunkSize (number)
3. Run the workflow


## Additional Information

Please use your Itential Customer Success account if you need support when using this Pre-Built.
npm package: @itentialopensource/cisco-asa-iag
Description: The integration of Itential and Cisco ASA enables network teams to utilize its CLI to build automations that can include common tasks for managing ACL rules and performing software upgrades. This is a library of related automations that can be used as mod
Author: Itential
Latest version: 1.0.9-2023.2.1

# Cisco - ASA - IAG

## Overview

The integration of Itential and Cisco ASA enables network teams to utilize its CLI to build automations that can include common tasks for managing ACL rules and performing software upgrades. This is a library of related automations that can be used as modular components in your own larger, end-to-end workflows.


## Workflows


<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Overview</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/cisco-asa-iag/-/blob/release/2023.2/documentation/Add ACL Rule - ASA - IAG.md' target='_blank'>Add ACL Rule - ASA - IAG</a></td>
      <td>Workflow to add a new ACL Rule to a Cisco ASA device using IAG.</td>
    </tr>    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/cisco-asa-iag/-/blob/release/2023.2/documentation/Delete ACL Rule - ASA - IAG.md' target='_blank'>Delete ACL Rule - ASA - IAG</a></td>
      <td>Workflow to delete an ACL from a Cisco ASA Device using IAG.</td>
    </tr>    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/cisco-asa-iag/-/blob/release/2023.2/documentation/Software Upgrade - ASA - IAG.md' target='_blank'>Software Upgrade - ASA - IAG</a></td>
      <td>Workflow to perform a software upgrade on a Cisco ASA device.</td>
    </tr>
  </tbody>
</table>


## External Dependencies

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>OS Version</th>
      <th>API Version</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Itential Automation Gateway (IAG)</td>
      <td>^3.227.0+2023.1.33</td>
      <td></td>
    </tr>
  </tbody>
</table>

## Adapters

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Version</th>
      <th>Configuration Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>adapter-automation_gateway</td>
      <td>4.29.0-2023.1.12.0</td>
      <td></td>
    </tr>
  </tbody>
</table>
npm package: @itentialopensource/cisco-ios-iag
Description: This Pre-Built Automation bundle contains several example use cases that are applicable when the Itential Automation Platform is integrated with Cisco IOS using the device CLI. Because every environment is different, these use cases are fully functioning 
Author: Itential
Latest version: 2.0.2

# Cisco - IOS - IAG

## Overview

This Pre-Built Automation bundle contains several example use cases that are applicable when the Itential Automation Platform is integrated with Cisco IOS using the device CLI. Because every environment is different, these use cases are fully functioning examples that can be easily modified to operate in your specific environment. These workflows have been written with modularity in mind to make them easy to understand and simple to modify to suit your needs.


## Workflows


<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Overview</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/cisco-ios-iag/-/blob/master/documentation/Software Upgrade - IOS - IAG.md' target='_blank'>Software Upgrade - IOS - IAG</a></td>
      <td>This example use case automates the procedure of upgrading the firmware (software) on a Cisco IOS network device.</td>
    </tr>    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/cisco-ios-iag/-/blob/master/documentation/Port Turn Up - IOS - IAG.md' target='_blank'>Port Turn Up - IOS - IAG</a></td>
      <td>This example use case automates the configuration changes necessary to enable and activate a port on a Cisco IOS network device.</td>
    </tr>
  </tbody>
</table>


## External Dependencies

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>OS Version</th>
      <th>API Version</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Itential Automation Gateway (IAG)</td>
      <td>^3.227.0+2023.1.33</td>
      <td></td>
    </tr>
  </tbody>
</table>

## Adapters

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Version</th>
      <th>Configuration Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>adapter-automation_gateway</td>
      <td>^4.29.0-2023.1.12.0</td>
      <td></td>
    </tr>
  </tbody>
</table>
npm package: @itentialopensource/cisco-meraki-rest
Description: This Pre-Built Automation bundle contains use cases around Cisco Meraki
Author: Itential
Latest version: 1.0.8-2023.2.1

# Cisco - Meraki - REST

## Overview

The integration of Itential and the Cisco Meraki solution enables network teams to utilize its REST API to build automations that can include common tasks for provisioning and device management. This is a library of related automations that can be used as modular components in your own larger, end-to-end workflows.


## Workflows


<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Overview</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/cisco-meraki-rest/-/blob/release/2023.2/documentation/Create Network - Meraki - REST.md' target='_blank'>Create Network - Meraki - REST</a></td>
      <td>This is a modular workflow that automates the creation of a new network.</td>
    </tr>    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/cisco-meraki-rest/-/blob/release/2023.2/documentation/Claim Network Devices - Meraki - REST.md' target='_blank'>Claim Network Devices - Meraki - REST</a></td>
      <td>This is a modular workflow that automates the process of claiming a new network device.</td>
    </tr>
  </tbody>
</table>


## External Dependencies

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>OS Version</th>
      <th>API Version</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Meraki</td>
      <td></td>
      <td>v1</td>
    </tr>
  </tbody>
</table>

## Adapters

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Version</th>
      <th>Configuration Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href="https://gitlab.com/itentialopensource/adapters/sd-wan/adapter-meraki">adapter-meraki</a></td>
      <td>^1.3.0</td>
      <td>In order to run the workflows in this Pre-Built Automation, the adapter property <code>choosepath</code> must be added to the Meraki adapter configuration with value `"v1"`.</td>
    </tr>
  </tbody>
</table>
npm package: @itentialopensource/cisco-meraki-rest-example
Description: Example project for use cases around Cisco Meraki
Author: Itential
Latest version: 1.0.10-2023.2.1

# Cisco - Meraki - REST - Example

## Overview

This Pre-Built Automation bundle contains several example use cases that are applicable when Itential Automation Platform is integrated with a Cisco Meraki controller using the REST API. Because every environment is different, these use cases are fully functioning examples that can be easily modified to operate in your specific environment. These workflows have been written with modularity in mind to make them easy to understand and simple to modify to suit your needs.


## Example Workflows


<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Overview</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/cisco-meraki-rest-example/-/blob/release/2023.2/documentation/Create Network and Claim Devices - Meraki - Example.md' target='_blank'>Create Network and Claim Devices - Meraki - Example</a></td>
      <td>This example use case automates the procedure of provisioning a new Meraki device, including creating the network and claiming the device.</td>
    </tr>    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/cisco-meraki-rest-example/-/blob/release/2023.2/documentation/Create Network and Claim Devices - Reset - Meraki - Example.md' target='_blank'>Create Network and Claim Devices - Reset - Meraki - Example</a></td>
      <td>This example use case automates the procedure of releasing a Meraki device that is currently claimed.</td>
    </tr>
  </tbody>
</table>


## External Dependencies

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>OS Version</th>
      <th>API Version</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Meraki</td>
      <td></td>
      <td>v1</td>
    </tr>
  </tbody>
</table>

## Adapters

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Version</th>
      <th>Configuration Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href="https://gitlab.com/itentialopensource/adapters/sd-wan/adapter-meraki">adapter-meraki</a></td>
      <td>^1.3.0</td>
      <td>In order to run the workflows in this Pre-Built Automation, the adapter property <code>choosepath</code> must be added to the Meraki adapter configuration with value `"v1"`.</td>
    </tr>
  </tbody>
</table>
npm package: @itentialopensource/cisco-nx-os-iag
Description: This Pre-Built Automation bundle contains several example use cases that are applicable when the Itential Automation Platform is integrated with Cisco NX-OS using the device CLI. Because every environment is different, these use cases are fully functionin
Author: Itential
Latest version: 2.0.7-2023.2.1

# Cisco - NX-OS - IAG

## Overview

This Pre-Built Automation bundle contains several example use cases that are applicable when the Itential Automation Platform is integrated with Cisco NX-OS using the device CLI. Because every environment is different, these use cases are fully functioning examples that can be easily modified to operate in your specific environment. These workflows have been written with modularity in mind to make them easy to understand and simple to modify to suit your needs.


## Workflows


<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Overview</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/cisco-nx-os-iag/-/blob/release/2023.2/documentation/Software Upgrade - NX-OS.md' target='_blank'>Software Upgrade - NX-OS</a></td>
      <td>This example use case automates the procedure of upgrading the software on a Cisco NX-OS network device.</td>
    </tr>
  </tbody>
</table>


## External Dependencies

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>OS Version</th>
      <th>API Version</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Itential Automation Gateway (IAG)</td>
      <td>^3.227.0+2023.1.33</td>
      <td></td>
    </tr>
  </tbody>
</table>

## Adapters

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Version</th>
      <th>Configuration Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>adapter-automation_gateway</td>
      <td>4.29.0-2023.1.12.0</td>
      <td></td>
    </tr>
  </tbody>
</table>
npm package: @itentialopensource/csv-to-json
Description: [Deprecated] Converts a comma separated file into a JSON file
Author: Itential Artifacts
Latest version: 0.0.9-2023.1.1

<!-- This is a comment in md (Markdown) format, it will not be visible to the end user -->
## _Deprecation Notice_
This Pre-Built has been deprecated as of 01-15-2024 and will be end of life on 01-15-2025. The capabilities of this Pre-Built have been replaced by the [IAP - Data Manipulation](https://gitlab.com/itentialopensource/pre-built-automations/iap-data-manipulation)

# CSV to JSON

## Table of Contents
* [Overview](#overview)
* [Installation Prerequisites](#installation-prerequisites)
* [How to Install](#how-to-install)
* [How to Run](#how-to-run)

## Overview
This JST allows IAP users to convert a comma separated file (.csv) into a JSON file. See [How to Run](#how-to-run) for more details.

## Installation Prerequisites
Users must satisfy the following prerequisites:
<!-- Include any other required apps or adapters in this list -->
<!-- Ex.: EC2 Adapter -->
* Itential Automation Platform
 * `^2022.1`
 
## How to Install
To install the artifact:
* Verify you are running a supported version of the Itential Automation Platform (IAP) as listed above in the [Prerequisites](#installation-prerequisites) section. 
* The artifact can be installed from within `App-Admin_Essential`. Simply search for the name of your desired artifact and click the install button.

## How to Run
Use the following to run the artifact:
1. Once the JST is installed as outlined in the [How to Install](#how-to-install) section above, navigate to the workflow where you would like to convert comma separated data into JSON data and add a `JSON Transformation` task. 
 
2. Inside the `Transformation` task, search for and select  `csvToJson` (the name of the internal JST).
 
3. The input to the JST is the comma separated string that needs to be converted. 

4. Save your input and the task is ready to run inside of IAP.

## Important Notes
- This transformation only converts comma separated data with headers. 
- It is **always** assumed that the first row of the string (anything before the first linebreak) contains the headers for the mapping. 
- The transformation does not support escaped commas within the data/header. For example: `abc,def",",efg` will be treated as `[ 'abc', 'def"', '"', 'efg' ]` rather than `[ 'abc', 'def,' , 'efg' ]`.
npm package: @itentialopensource/device-pre-post-check-execution
Description: A device pre post check execution demo for Itential Automation Platform (IAP)
Author: Itential Artifacts
Latest version: 0.4.6-2022.1.1

- [Device Pre-Post Check Execution](#device-pre-post-check-execution)
  - [Requirements](#requirements)
  - [How to install](#how-to-install)
  - [How to run](#how-to-run)
  - [Additional Information](#additional-information)

# Device Pre-Post Check Execution

The Device Pre-Post Check Execution artifact demonstrates an end-to-end usage of the MOP-app and Workflow in Itential Automation Platform (IAP).

<table><tr><td>
  <img src="./img/wf_shot.png" alt="workflow shot" width="800px">
</td></tr></table>

This artifact allows users to run the workflow `Device pre post execution workflow` in either **Simulated** or **Real-Time** mode.

For **Simulated** mode, this workflow doesn't have any prerequisites, and all responses are hard coded in the workflow.
In order to run this artifact in **real-time** mode, a Cisco-IOS device needs to be on-boarded on either Cisco-NSO or Ansible.

## Requirements

The following is required to run Artifact Wizard, and is compatible with the following versions:

- Itential Automation Platform
  - `^2022.1`

## How to install

In order to install this artifact, please use the App-Artifact (Available for Itential customers via Nexus repo)

## How to run

After installing (via App-Artifacts) click the start button on the artifact card or navigate to workflow builder and press the play button next to the MOP demo workflow.

Once started, the workflow will present the user with a question to either run in simulated or real-time mode:

<table><tr><td>
  <img src="./img/simulated-decision.png" alt="simulated question" width="600px">
</td></tr></table>

In **simulated mode**, this artifact works out of the box without any other dependencies. All device responses that are presented to the user are from a recorded session that were hard coded:

<table><tr><td>
  <img src="./img/pre-results.png" alt="Pre Checks Results" width="600px">
</td></tr></table>

<table><tr><td>
  <img src="./img/diff-results.png" alt="Diff Results" width="600px">
</td></tr></table>

In the **real-time mode**, the artifact will ask the user to pick a live device from their inventory of NSO or Ansible devices, it will then execute the commands on the selected device:

<table><tr><td>
  <img src="./img/device-picker.png" alt="Device Picker" width="600px">
</td></tr></table>

## Additional Information
Please use your Itential Customer Success account if you need support when using this artifact.
npm package: @itentialopensource/email-notification
Description: [Deprecated] Send Email Notifications
Author: Itential Automation Platform
Latest version: 0.0.19-2023.1.3

<!-- This is a comment in md (Markdown) format, it will not be visible to the end user -->
## _Deprecation Notice_

This Pre-Built Automation has been deprecated as of 02-21-2024 and will be end of life on 02-21-2025. The capabilities of this Pre-Built Automation have been replaced by the Pre-Built [Email - SMTP](https://gitlab.com/itentialopensource/pre-built-automations/email-smtp).

<!-- Update the below line with your Pre-Built name -->
# Email Notification

<!-- Leave TOC intact unless you've added or removed headers -->
## Table of Contents

- [Email Notification](#email-notification)
  - [Table of Contents](#table-of-contents)
  - [Overview](#overview)
  - [Operations Manager and JSON-Form](#operations-manager-and-json-form)
  - [Installation Prerequisites](#installation-prerequisites)
  - [Requirements](#requirements)
  - [Features](#features)
  - [How to Install](#how-to-install)
  - [How to Run](#how-to-run)
    - [Input Variables](#input-variables)
  - [Additional Information](#additional-information)


## Overview

This Pre-Built integrates with the Email Adapter to deliver email notifications to end users.  This Pre-Built simplifies the process of sending an email at any point in an automation.

## Operations Manager and JSON-Form

This Pre-Built has an Operations Manager automation `Email Notification` that calls a workflow. The automation uses a JSON-Form to specify common fields populated when an issue is created. The workflow the automation calls queries data from the formData job variable.


## Installation Prerequisites

Users must satisfy the following pre-requisites:

- Itential Automation Platform
  - `^2023.1`

## Requirements

This Pre-Built requires the following:

- The [Email Adapter](https://gitlab.com/itentialopensource/adapters/notification-messaging/adapter-email) is configured and integrated with an email server

## Features

The main benefits and features of the Pre-Built are outlined below:

* Allows a user to send a notification via email


## How to Install

To install the Pre-Built:

* Verify you are running a supported version of the Itential Automation Platform (IAP) as listed above in the Requirements section in order to install the Pre-Built. 
* The Pre-Built can be installed from within App-Admin_Essential. Simply search for the name of your desired Pre-Built and click the install button.

## How to Run

Use the following to run the Pre-Built:

* Run the Operations Manager automation `Email Notification` or run the workflow Email Notification in a childJob task.

### Input Variables
_Example_

```json
{
  "senderEmailAddress": "The email sender",
  "receiverEmailAddress": "The email receiver",
  "subject": "The email subject",
  "body": "The email body"
}
```

## Additional Information

Please use your Itential Customer Success account if you need support when using this Pre-Built.
npm package: @itentialopensource/email-smtp
Description: This Pre-Built Automation bundle contains use cases around email notification using SMTP
Author: Itential
Latest version: 1.0.5-2023.2.1

# Email - SMTP

## Overview

The integration of Itential and email enables network teams to utilize SMTP to build automations that can include common tasks for sending emails. This is a library of related automations that can be used as modular components in your own larger, end-to-end workflows.


## Workflows


<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Overview</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/email-smtp/-/blob/release/2023.2/documentation/Send Email - SMTP.md' target='_blank'>Send Email - SMTP</a></td>
      <td>Send email with options</td>
    </tr>
  </tbody>
</table>


## External Dependencies

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>OS Version</th>
      <th>API Version</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Email server, such as Microsoft Outlook</td>
      <td></td>
      <td></td>
    </tr>
  </tbody>
</table>

## Adapters

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Version</th>
      <th>Configuration Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href="https://gitlab.com/itentialopensource/adapters/notification-messaging/adapter-email">adapter-email</a></td>
      <td>4.6.0</td>
      <td></td>
    </tr>
  </tbody>
</table>
npm package: @itentialopensource/f5-big-iq-rest
Description: This contains modular workflows that operate when integrated with F5 BIG-IQ. Once installed teams will be able to quickly automate common manual tasks like software upgrade of managed BIG-IP devices, saving a significant amount of time and effort. This li
Author: Itential
Latest version: 1.0.6-2023.2.1

# F5 - BIG-IQ - REST

## Overview

This contains modular workflows that operate when integrated with F5 BIG-IQ. Once installed teams will be able to quickly automate common manual tasks like software upgrade of managed BIG-IP devices, saving a significant amount of time and effort. This library can be used as modular components with other libraries and automations to build comprehensive end-to-end orchestrated workflows with Itential's low-code platform.


## Workflows


<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Overview</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/f5-big-iq-rest/-/blob/release/2023.2/documentation/Upgrade BIG-IP Device - F5 - BIG-IQ.md' target='_blank'>Upgrade BIG-IP Device - F5 - BIG-IQ</a></td>
      <td>Upgrades BIG-IP device over F5 BIG-IQ</td>
    </tr>
  </tbody>
</table>


## External Dependencies

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>OS Version</th>
      <th>API Version</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>F5 BIG-IQ</td>
      <td>^8.3.0</td>
      <td></td>
    </tr>
  </tbody>
</table>

## Adapters

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Version</th>
      <th>Configuration Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href="https://gitlab.com/itentialopensource/adapters/controller-orchestrator/adapter-f5_bigiq">adapter-f5_bigiq</a></td>
      <td>^0.4.6</td>
      <td></td>
    </tr>
  </tbody>
</table>
npm package: @itentialopensource/f5-bigip-rest
Description: Use Cases related to F5 BIG-IP using REST API
Author: Itential
Latest version: 1.0.6

# F5 - BIG-IP - REST

## Overview

Use Cases related to F5 BIG-IP using REST API


## Workflows


<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Overview</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/f5-bigip-rest/-/blob/master/documentation/Create Pool and Members - F5 - BIG-IP - REST.md' target='_blank'>Create Pool and Members - F5 - BIG-IP - REST</a></td>
      <td>Creates Pool and Members on an F5 BIG-IP</td>
    </tr>    <tr>
      <td><a href='https://gitlab.com/itentialopensource/pre-built-automations/f5-bigip-rest/-/blob/master/documentation/Create Virtual Server - F5 - BIG-IP - REST.md' target='_blank'>Create Virtual Server - F5 - BIG-IP - REST</a></td>
      <td>Creates virtual server on F5 BIG-IP</td>
    </tr>
  </tbody>
</table>


## External Dependencies

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>OS Version</th>
      <th>API Version</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>F5 BIG-IP</td>
      <td></td>
      <td>14.1.5.2</td>
    </tr>
  </tbody>
</table>

## Adapters

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Version</th>
      <th>Configuration Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>adapter-automation_gateway</td>
      <td>2023.1.x</td>
      <td></td>
    </tr>
  </tbody>
</table>