Platform 6 (6.3.0)

Download OpenAPI specification:

Platform 6 REST API for Application Integration.

About

The Itential REST API uses OpenAPI 3.1.0 specifications and supports Basic Authentication and OAuth 2.0 to authenticate requests. This reference library documents available APIs for the Platform 6, including HTTP response codes to indicate success or failure of an API request. Platform 6 REST APIs also use standard verbs to perform CRUD operations. For product documentation, visit Itential Documentation & Guides.


Ports and Base Path

Default HTTP port is 3000. Default HTTPS port is 3443. Both IPv6 and IPv4 are supported. Default host is 127.0.0.1. The basePath is /.


Authentication

API requests without authentication will fail. Available authorizations include: BasicAuth (username/password), CookieAuth(token/cookie-based) and QueryAuth (token/query-based).


Basic Auth

This API uses Basic Authentication for securing its endpoints.

How to Use Basic Authentication

Using this authentication strategy, you need to provide your credentials in the HTTP request headers. The credentials should be sent as a base64 encoded string of username:password.

Example: Using curl for Basic Authentication

curl -u username:password -X GET "https://localhost:3443"

In this example, -u is the flag used by curl to specify the username and password. Replace username and password with your actual credentials.

HTTP Request Headers

The Basic Authentication credentials are sent in the Authorization header. Here's what it looks like:

Authorization: Basic base64(username:password)

Base64 Encoding

The username:password string needs to be base64 encoded before it is sent in the header. For example, if your username is user and your password is pass, the string to encode is user:pass. The base64 encoded result would look something like this:

Authorization: Basic dXNlcjpwYXNz

Query Token

Authentication

Using this authentication strategy, you need to authenticate and obtain a token by making a POST request to the /login endpoint. The response token will be used in the token query parameter for subsequent requests.

How to Request a Token

To obtain an authentication token, send a POST request to the /login endpoint with the following JSON payload:

{ "user": { "username": "admin", "password": "admin" } }

Example: Using curl to Request a Token

curl -X POST "https://localhost:3443/login" -H "Content-Type: application/json" -d '{"user": {"username": "admin", "password": "admin"}}'

In this example, the -d flag is used by curl to send the JSON body with the request.

Response

If the login is successful, the API will return the authentication token. The token can be used in the token query parameter for subsequent requests:

your-auth-token-here

Using the Token in Subsequent Requests

Once you have the token, include it in the query string of your requests as follows:

?token=your-auth-token-here

Client Auth

Authentication

Using this authentication strategy, you need to authenticate and obtain a Bearer token by making a POST request to the /oauth/token endpoint. The response access_token will be used as temporary credentials that the client will set in the Authorization header. Here's what it looks like:

Authorization: Basic access_token

.

How to Request a Token

To obtain an authentication token, send a POST request to the /oauth/token endpoint. You'll need to send the data as application/x-www-form-urlencoded with the following payload:

client_id=your-client-id&client_secret=your-client-secret&grant_type=client_credentials

Example: Using curl to Request a Bearer Token

curl -X POST "https://localhost:3443/oauth/token" -H "Content-Type: accept: application/json" -H "Content-Type: application/x-www-form-urlencoded" -d 'client_id=123abccc123a123a12ab1ab1&client_secret=a123a123-a1a1-1a1a-a123-123a12abc1a1&grant_type=client_credentials'

In this example, the -d flag is used by curl to send the data with the request.

Response

If the login is successful, the API will return the authentication token. The token can be used in the token query parameter for subsequent requests:

{ "access_token": "falksjflkasdjflkasdjfklajsdflj.eyJwcmluY2lwYWxJZCI6IjY2OWU1ZGNjOTE1ZDUxMWEzMmJmMGNhNCIsImV4cCI6MTcyMTY1OTQ4MDkwMiwiaWF0IjoxNzIxNjU1ODgwfQ.7jrB2mC9aqSdPdUvz7D-u9HghRFtnpFbYdaBH54kNZc","token_type": "bearer","expires_in": 3600}

Using the Bearer Token in Subsequent Requests

Once you have the Bearer token, use it as your Authorization header. Here's what it should look like:

Authorization: Bearer your-access_token-here

Example (whoami) - Basic Auth

To test the API using Basic Authentication, you can use the following curl command. Replace username and password with your actual credentials.

Note: Basic Auth is only available over SSL.

curl -u username:password -X GET "https://localhost:3443/whoami"

This command sends a GET request to the specified resource, using the provided username and password for authentication. Running the whoami operation will confirm that you can reach the IAP server's API and it will return access associated to your user.


Example (whoami) - Query Token

To test the API using the Query Token Authentication, you can use the following curl command. Replace your-auth-token-here with your actual token that you received using /login.

curl -X GET "https://localhost:3443/whoami?token=your-auth-token-here"

This command sends a GET request to the specified resource, using the Query Token authentication. Running the whoami operation will confirm that you can reach the IAP server's API and it will return access associated to your user.


Example (whoami) - Client Bearer Token

To test the API using the Client Authentication, you can use the following curl command. Replace your-access_token-here with your actual Bearer token that you received using /oauth/token.

curl -X GET "https://localhost:3443/whoami" -H "Authorization: Bearer your-access_token-here"

This command sends a GET request to the specified resource, using the Client authentication. Running the whoami operation will confirm that you can reach the IAP server's API and it will return access associated to your user.


Adapter Models

Get the list of available adapter model types.

Get the list of available adapter model types in the current IAP.

Authorizations:
None
query Parameters
contains
string
Examples: contains=profile1

contains

equals
string
Examples: equals=profile1

equals

startsWith
string
Examples: startsWith=profile

startsWith

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

Responses

Response samples

Content type
application/json
{
  • "adapterModels": [
    ],
  • "total": 1
}

Adapters

Create a new adapter.

Create a new adapter in IAP.

Authorizations:
None
Request Body schema: application/json

request body

object (properties)

Responses

Request samples

Content type
application/json
{
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Get all adapters.

Get all adapters in IAP.

Authorizations:
None
query Parameters
contains
string
Examples: contains=redis

contains

containsField
string
Examples: containsField=name

containsField

equals
string
Examples: equals=redis

equals

equalsField
string
Examples: equalsField=name

equalsField

startsWith
string
Examples: startsWith=redis

startsWith

startsWithField
string
Examples: startsWithField=name

startsWithField

skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

sort
string (iap_common-schema_sort)
Default: "name"
Value: "name"

sort

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

skipActiveSync
boolean
Default: false

skipActiveSync

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "total": 1
}

Import a new adapter.

Import a new adapter in IAP.

Authorizations:
None
Request Body schema: application/json

request body

object (properties)

Responses

Request samples

Content type
application/json
{
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Delete an adapter.

Delete an adapter from IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected adapter.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Get a single adapter.

Get a single adapter in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected adapter.

Responses

Response samples

Content type
application/json
{
  • "metadata": {
    },
  • "data": {
    }
}

Update an adapter.

Update an adapter in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name for the selected adapter.

Request Body schema: application/json

request body

object (properties)

Responses

Request samples

Content type
application/json
{
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Export a single adapter.

Export a single adapter in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected adapter.

Responses

Response samples

Content type
application/json
{
  • "type": "Application",
  • "properties": {
    },
  • "loggerProps": {
    },
  • "isEncrypted": true,
  • "profiling": true,
  • "model": "@itential/adapter-local_aaa",
  • "name": "Local AAA",
  • "virtual": true,
  • "systemProps": {
    },
  • "eventDeduplication": {
    }
}

Get the list of changelogs. Deprecated

Get the list of changelogs for a specific adapter.

Authorizations:
None
path Parameters
name
required
string (name)
Examples: WorkFlowEngine MOP

The name of the selected adapter.

query Parameters
release
string
Examples: release=0.0.1 release=0.1.0 release=1.0.0 release=1.1.1-2020.1.0

release

Responses

Response samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

Start an adapter.

Start an adapter in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected adapter.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Stop an adapter.

Stop an adapter in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected adapter.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Restart an adapter.

Restart an adapter in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected adapter.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Update the log levels.

Update the log levels for an adapter.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name for the selected adapter.

Request Body schema: application/json

request body

object (properties)

Responses

Request samples

Content type
application/json
{
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Update the properties of an adapter.

Update the properties of an adapter in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name for the selected adapter.

Request Body schema: application/json

request body

properties
any (properties)

Responses

Request samples

Content type
application/json
{
  • "properties": null
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Get a mapping between brokers and adapters.

Get a mapping between brokers and adapters.

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "aaa": [
    ]
}

Automation Gateway

Clear a stale discovery lock. This should only be used if you are certain no discovery is currently running.

Clear a stale discovery lock. This should only be used if you are certain no discovery is currently running. A stale lock may result from IAP or this app crashing while a discovery-related call was in progress.

Authorizations:
None
Request Body schema: application/json

request body

id
string (id)

Responses

Request samples

Content type
application/json
{
  • "id": "string"
}

Response samples

Content type
application/json
"string"

Merge discovered actions from all IAG adapters

Discovers all actions from inputed IAG adapters. This will restart this app and display a corresponding log message.

Authorizations:
None
Request Body schema: application/json

request body

taskContinuation
boolean (Task Continuation)
Default: true

Responses

Request samples

Content type
application/json
{
  • "taskContinuation": true
}

Response samples

Content type
application/json
{ }

Remove discovered actions from all IAG adapters

Removes all actions from all IAG adapters. This will restart this app and display a corresponding log message.

Authorizations:
None
Request Body schema: application/json

request body

taskContinuation
boolean (Task Continuation)
Default: true

Responses

Request samples

Content type
application/json
{
  • "taskContinuation": true
}

Response samples

Content type
application/json
{ }

Discover actions on one IAG adapter

Discovers all actions from a specified IAG adapter. This will restart this app and display a corresponding log message.

Authorizations:
None
path Parameters
adapterId
required
string (adapterId)

Automation Gateway adapter ID.

Responses

Response samples

Content type
application/json
{ }

Remove discovered actions from one IAG adapter

Removes all actions from a specified IAG adapter. This will restart this app and display a corresponding log message.

Authorizations:
None
path Parameters
adapterId
required
string (adapterId)

Automation Gateway adapter ID.

Responses

Response samples

Content type
application/json
{ }

Get all adapters in all clusters

Get all adapters in all clusters

Authorizations:
None

Responses

Response samples

Content type
application/json
{ }

Get the current pronghorn model stored in redis

Get the current pronghorn model stored in redis

Authorizations:
None

Responses

Response samples

Content type
application/json
{ }

Applications

Get a single application.

Get a single application in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected application.

Responses

Response samples

Content type
application/json
{
  • "metadata": {
    },
  • "data": {
    }
}

Update an application.

Update an application in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name for the selected application.

Request Body schema: application/json

request body

object (properties)

Responses

Request samples

Content type
application/json
{
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Get the list of changelogs. Deprecated

Get the list of changelogs for a specific application.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected application.

query Parameters
release
string
Examples: release=0.0.1 release=0.1.0 release=1.0.0 release=1.1.1-2020.1.0

release

Responses

Response samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

Get all applications.

Get all applications in IAP.

Authorizations:
None
query Parameters
contains
string
Examples: contains=redis

contains

containsField
string
Examples: containsField=name

containsField

equals
string
Examples: equals=redis

equals

equalsField
string
Examples: equalsField=name

equalsField

startsWith
string
Examples: startsWith=redis

startsWith

startsWithField
string
Examples: startsWithField=name

startsWithField

skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

sort
string (iap_common-schema_sort)
Default: "name"
Value: "name"

sort

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "total": 1
}

Start an application.

Start an application in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected application.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Stop an application.

Stop an application in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected application.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Restart an application.

Restart an application in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected application.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Update the log levels.

Update the log levels for an application.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name for the selected application.

Request Body schema: application/json

request body

object (properties)

Responses

Request samples

Content type
application/json
{
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Update the properties of an application.

Update the properties of an application in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name for the selected application.

Request Body schema: application/json

request body

properties
any (properties)

Responses

Request samples

Content type
application/json
{
  • "properties": null
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Authentication

Gets the authorization data for the logged in user

Gets the authorization data for the logged in user

Authorizations:
None
query Parameters
roles
string
Enum: "names" "ids"

roles

Responses

Response samples

Content type
application/json
{
  • "id": "5cb7b531d06cceb89fd21b1c",
  • "provenance": "Local AAA",
  • "username": "jane_doe",
  • "firstname": "Jane",
  • "groups": [
    ],
  • "roles": [
    ],
  • "roleNames": [
    ],
  • "routes": [
    ],
  • "methods": {
    }
}

Gets the session document for the active user

Gets the session for the active user

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "loginMethod": "Web",
  • "session_start": 0,
  • "ttl": 0,
  • "principalId": "string",
  • "requestCount": 0
}

Gets the principal document for the active user

Gets the principal for the active user

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "id": "5cb7b531d06cceb89fd21b1c",
  • "provenance": "Local AAA",
  • "username": "jane_doe",
  • "firstname": "Jane",
  • "groups": [
    ],
  • "roles": [
    ],
  • "roleNames": [
    ],
  • "allowedMethods": [
    ],
  • "allowedViews": [
    ],
  • "routes": [
    ]
}

Get the number of seconds until the logged in user's session expires.

Get the number of seconds until the user is logged out.

Authorizations:
None

Responses

Response samples

Content type
application/json
0
0

Log in and create a session in IAP using single sign on

Log into IAP using single sign on

Responses

Response samples

Content type
application/json
null

Test logging into IAP using a saved single sign on configuration

Test logging into IAP using single sign on

path Parameters
name
required
string (name)
Examples: Auth0 Okta

The name of the SSO configuration

Responses

Response samples

Content type
application/json
null

This the route used by the SAML identity provider to callback to IAP with the authentication response. This is not meant for manual use.

Callback used by the SAML identity provider

Responses

Response samples

Content type
application/json
null

Get whether or not single sign on is enabled

Get whether or not single sign on is enabled

Responses

Response samples

Content type
application/json
true

Log in an create a session in IAP

Log in to IAP

Request Body schema: application/json

credentials

object

Responses

Request samples

Content type
application/json
{
  • "user": {
    }
}

Response samples

Content type
application/json
"MTQ4ZmMzMGMxOTQ2MTg4N2ZjMDhiMTY0MzlkYTgwZmM="

Log out of IAP and delete current session

Log out of IAP

Authorizations:
None

Responses

Response samples

Content type
application/json
"You have successfully logged out."

Download a public file from IAP

Download a public file from IAP

Authorizations:
None
query Parameters
file_name
string

file_name

Responses

Response samples

Content type
application/json
"this is the contents of a file"

Get system server id.

Get system server id for the current IAP.

Responses

Response samples

Content type
application/json
"string"

Get verion.

Get release verion of current IAP.

Responses

Response samples

Content type
application/json
"string"

Get all application configs in IAP.

Get all application configs in IAP.

Authorizations:
None

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Gets the user profile for the active user Deprecated

Gets the user profile for the active user

Authorizations:
None
path Parameters
username
required
string (Username)
Examples: john_doe

The exact username for the logged in user

Responses

Response samples

Content type
application/json
{
  • "provenance": "Local AAA",
  • "username": "john_doe",
  • "firstname": "John",
  • "memberOf": [
    ],
  • "assignedRoles": [
    ],
  • "inactive": true,
  • "lastLogin": "2018-08-02T15:56:12.912Z",
  • "sso": true,
  • "nameID": "string",
  • "_meta": {
    },
  • "email": "name@email.com",
  • "isServiceAccount": true,
  • "loggedIn": true,
  • "gitTokens": {
    }
}

Updates the user profile for the active user Deprecated

Updates the user profile for the active user

Authorizations:
None
Request Body schema: application/json

userProfile

username
required
string (iap_accounts-schema_username)

Username for account

email
string (iap_accounts-schema_email)

Email for user

Responses

Request samples

Content type
application/json
{
  • "username": "john_doe",
  • "email": "name@email.com"
}

Response samples

Content type
application/json
{
  • "provenance": "Local AAA",
  • "username": "john_doe",
  • "firstname": "John",
  • "memberOf": [
    ],
  • "assignedRoles": [
    ],
  • "inactive": true,
  • "lastLogin": "2018-08-02T15:56:12.912Z",
  • "sso": true,
  • "nameID": "string",
  • "_meta": {
    },
  • "email": "name@email.com",
  • "isServiceAccount": true,
  • "loggedIn": true,
  • "gitTokens": {
    }
}

Gets the authentication metadata data for the active AAA provider.

Gets the authentication metadata data for the active AAA provider.

Responses

Response samples

Content type
application/json
{
  • "providerType": "string",
  • "metadata": { }
}

Authorization

Get all accounts.

Get all accounts

Authorizations:
None
query Parameters
object (iap_authorization-common_accounts-query)

multiContains

object (iap_authorization-common_accounts-query)

multiEquals

object (iap_authorization-common_accounts-query)

multiStartsWith

inactive
boolean (Inactive)

inactive

isServiceAccount
boolean (iap_accounts-schema_isServiceAccount)

isServiceAccount

groupId
string (iap_common-schema_objectId) ^[0-9a-f]{24}$
Examples: groupId=5cb7b531d06cceb89fd21b1c

groupId

skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

sort
string (iap_common-schema_sort)
Default: "name"
Value: "name"

sort

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

loggedIn
boolean (iap_accounts-schema_loggedIn)

loggedIn

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "total": 1
}

Get an individual account.

Get an individual account

Authorizations:
None
path Parameters
accountId
required
string (iap_common-schema_objectId) ^[0-9a-f]{24}$
Examples: 5cb7b531d06cceb89fd21b1c

The id for the requested account.

Responses

Response samples

Content type
application/json
{
  • "provenance": "Local AAA",
  • "username": "john_doe",
  • "firstname": "John",
  • "memberOf": [
    ],
  • "assignedRoles": [
    ],
  • "inactive": true,
  • "lastLogin": "2018-08-02T15:56:12.912Z",
  • "sso": true,
  • "nameID": "string",
  • "_meta": {
    },
  • "email": "name@email.com",
  • "isServiceAccount": true,
  • "loggedIn": true,
  • "gitTokens": {
    }
}

Update an account.

Update an account

Authorizations:
None
path Parameters
accountId
required
string (iap_common-schema_objectId) ^[0-9a-f]{24}$
Examples: 5cb7b531d06cceb89fd21b1c

The individual account to update.

Request Body schema: application/json

request body

object (updates)

Responses

Request samples

Content type
application/json
{
  • "updates": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Force a user to logout and remove their session.

Force a user to logout

Authorizations:
None
path Parameters
accountId
required
string (iap_common-schema_objectId) ^[0-9a-f]{24}$
Examples: 5cb7b531d06cceb89fd21b1c

The individual account to logout.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Get a list of groups.

Get a list of groups

Authorizations:
None
query Parameters
object (iap_authorization-common_groups-query)

multiContains

object (iap_authorization-common_groups-query)

multiEquals

object (iap_authorization-common_groups-query)

multiStartsWith

inactive
boolean (Inactive)

inactive

skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

sort
string (iap_common-schema_sort)
Default: "name"
Value: "name"

sort

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

refresh
boolean (refresh)
Default: false

whether to refresh groups from AAA

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "total": 1
}

Create a group.

Create a group

Authorizations:
None
Request Body schema: application/json

request body

object (iap_groups-schema)

This is the schema for an IAP group stored in Mongo

Responses

Request samples

Content type
application/json
{
  • "group": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Get a simplified list of groups.

Get a simplified list of groups

query Parameters
object (iap_authorization-common_groups-query)

multiContains

object (iap_authorization-common_groups-query)

multiEquals

object (iap_authorization-common_groups-query)

multiStartsWith

inactive
boolean (Inactive)

inactive

skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

sort
string (iap_common-schema_sort)
Default: "name"
Value: "name"

sort

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

refresh
boolean (refresh)
Default: false

whether to refresh groups from AAA

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "total": 1
}

Get an individual group.

Get an individual group

Authorizations:
None
path Parameters
groupId
required
string (iap_common-schema_objectId) ^[0-9a-f]{24}$
Examples: 5cb7b531d06cceb89fd21b1c

The id for the requested group.

Responses

Response samples

Content type
application/json
{
  • "provenance": "Local AAA",
  • "name": "group_1",
  • "description": "description of group_1",
  • "memberOf": [
    ],
  • "assignedRoles": [
    ],
  • "inactive": true,
  • "_meta": {
    }
}

Update a group.

Update a group

Authorizations:
None
path Parameters
groupId
required
string (iap_common-schema_objectId) ^[0-9a-f]{24}$
Examples: 5cb7b531d06cceb89fd21b1c

The individual group to update.

Request Body schema: application/json

request body

object (updates)

Responses

Request samples

Content type
application/json
{
  • "updates": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Delete a group.

Delete a group

Authorizations:
None
path Parameters
groupId
required
string (iap_common-schema_objectId) ^[0-9a-f]{24}$
Examples: 5cb7b531d06cceb89fd21b1c

The individual group to delete.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Get a list of roles.

Get a list of roles

Authorizations:
None
query Parameters
object (iap_authorization-common_roles-query)

multiContains

object (iap_authorization-common_roles-query)

multiEquals

object (iap_authorization-common_roles-query)

multiStartsWith

inactive
boolean

inactive

skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

sort
string (iap_common-schema_sort)
Default: "name"
Value: "name"

sort

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "total": 1
}

Create a role.

Create a role

Authorizations:
None
Request Body schema: application/json

request body

object (iap_roles-schema)

This is the schema for an IAP role stored in Mongo

Responses

Request samples

Content type
application/json
{
  • "role": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Get an individual role.

Get an individual role

Authorizations:
None
path Parameters
roleId
required
string (roleId)
Examples: Authorization.admin

The id for the requested role.

Responses

Response samples

Content type
application/json
{
  • "provenance": "Custom",
  • "name": "role_1",
  • "description": "description of role_1",
  • "allowedMethods": [
    ],
  • "allowedViews": [
    ],
  • "_meta": {
    }
}

Update a role.

Update a role

Authorizations:
None
path Parameters
roleId
required
string (roleId)
Examples: Authorization.admin

The individual role to update.

Request Body schema: application/json

request body

object (updates)

Responses

Request samples

Content type
application/json
{
  • "updates": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Delete a role.

Delete a role

Authorizations:
None
path Parameters
roleId
required
string (roleId)
Examples: Authorization.admin

The individual role to delete.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Get a list of methods.

Get a list of methods in IAP.

Authorizations:
None
query Parameters
object (iap_system-common_methods-query)

multiContains

object (iap_system-common_methods-query)

multiEquals

object (iap_system-common_methods-query)

multiStartsWith

skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

sort
string (iap_common-schema_sort)
Default: "name"
Value: "name"

sort

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "total": 1
}

Get a list of views.

Get a list of views in IAP.

Authorizations:
None
query Parameters
object (iap_system-common_views-query)

multiContains

object (iap_system-common_views-query)

multiEquals

object (iap_system-common_views-query)

multiStartsWith

skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

sort
string (iap_common-schema_sort)
Default: "name"
Value: "name"

sort

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "total": 1
}

Extract CSV data of accounts, groups, and roles

Retrieve CSV data of accounts, groups, and roles information

Authorizations:
None

Responses

Response samples

Content type
application/json
"string"

Automation Studio

A suite of tools for designing workflows, templates, and forms.

Gets a page of template documents.

Gets a page of template documents.

Authorizations:
None
query Parameters
limit
integer >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

Number of results to return. Used for pagination.

skip
integer >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

Number of results to skip. Used for pagination.

order
integer
Default: 1
Enum: -1 1

Sort direction, 1 for ascending and -1 for descending.

sort
string
Default: "name"
Value: "name"

Field to sort by

exclude-project-members
boolean

Flag which removes workflows from the results which are members of a project

include
string
Examples: include=name include=description include=name,description

Inclusive projection operator formatted as a comma-delineated list. '_id' will be included implicitly unless excluded with 'exclude=_id'. May only be used in conjunction with 'exclude' when 'exclude=_id'.

exclude
string
Examples: exclude=_id exclude=description exclude=_id,description

Exclusive projection operator formatted as a comma-delineated list. May only be used in conjunction with 'include' when 'exclude=_id'.

in
string

Search for fields exactly matching one of the given list options

not-in
string

Search for fields not exactly matching one of the given list options

equals
string

Returns results where the specified fields exactly match the given match string(s).

contains
string

Returns results where the specified fields contain the given match string(s).

starts-with
string

Returns results where the specified fields start with the given match string(s).

ends-with
string

Returns results where the specified fields end in the given match string(s).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "total": 0,
  • "start": 0,
  • "end": 0,
  • "count": 0,
  • "next": "string",
  • "previous": "string"
}

Creates a new template document.

Creates a new template document.

Authorizations:
None
Request Body schema: application/json

request body

object (automation-studio_template)

An entity representing a data template.

Responses

Request samples

Content type
application/json
{
  • "template": {
    }
}

Response samples

Content type
application/json
{
  • "created": {
    },
  • "edit": "string"
}

Gets a single template document.

Gets a single template document.

Authorizations:
None
path Parameters
id
required
string (id)

ObjectId specifying a template entity.

query Parameters
include
string
Examples: include=name include=description include=name,description

Inclusive projection operator formatted as a comma-delineated list. '_id' will be included implicitly unless excluded with 'exclude=_id'. May only be used in conjunction with 'exclude' when 'exclude=_id'.

exclude
string
Examples: exclude=_id exclude=description exclude=_id,description

Exclusive projection operator formatted as a comma-delineated list. May only be used in conjunction with 'include' when 'exclude=_id'.

Responses

Response samples

Content type
application/json
{ }

Deletes a template document.

Deletes a template document.

Authorizations:
None
path Parameters
id
required
string (id)

Template id.

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Replaces a template document.

Replaces a template document.

Authorizations:
None
path Parameters
id
required
string (id)

Template id.

Request Body schema: application/json

request body

object (automation-studio_templateUpdate)

An entity representing an update to an existing template document.

Responses

Request samples

Content type
application/json
{
  • "update": {
    }
}

Response samples

Content type
application/json
{
  • "updated": {
    },
  • "edit": "string"
}

Imports a new template document.

Imports a new template document.

Authorizations:
None
Request Body schema: application/json

request body

Array of Template Import Data (object) or Template Import Data (object) (templates)

Array of template documents to import. If '_id' is provided, it will be replaced with an autogenerated '_id'. If a template's name is already used in the templates collection, it will be renamed with a numeric suffix.

Responses

Request samples

Content type
application/json
{
  • "templates": [
    ]
}

Response samples

Content type
application/json
{
  • "imported": [
    ]
}

Exports a template document.

Exports a template document.

Authorizations:
None
path Parameters
id
required
string (id)

Template id.

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "name": "arista_eos_show_clock",
  • "projectId": { },
  • "group": "Arista",
  • "device": "Arista EOS",
  • "command": "show clock",
  • "description": "Arista Show Clock Info",
  • "template": "Value TIME (d+:d+:d+)\nValue TIMEZONE (S+)\nValue DAYWEEK (w+)\nValue MONTH (w+)\nValue DAY (d+)\nValue YEAR (d+)\n\nStart\n ^${DAYWEEK}s+${MONTH}s+${DAY}s+${TIME}s+${YEAR}\n ^[t|T]imezone(:|sis)s+${TIMEZONE} -> Record\n",
  • "data": "Mon Jan 14 18:42:49 2013\ntimezone is US/Central",
  • "text": "Mon Jan 14 18:42:49 2013\ntimezone is US/Central",
  • "type": "textfsm",
  • "createdBy": "string",
  • "created": "2019-11-25T22:51:39.201Z",
  • "lastModifiedBy": "string",
  • "lastUpdated": "2019-11-25T22:51:39.201Z",
  • "version": 1,
  • "tags": [
    ]
}

Get all available rest calls in IAP.

Get all available rest calls in IAP.

Authorizations:
None

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get a list of all the apps and adapters

Get all apps and adapters.

Authorizations:
None

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Gets a page of workflow documents.

Gets a page of workflow documents.

Authorizations:
None
query Parameters
limit
integer >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

Number of results to return. Used for pagination.

skip
integer >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

Number of results to skip. Used for pagination.

order
integer
Default: 1
Enum: -1 1

Sort direction, 1 for ascending and -1 for descending.

sort
string
Default: "name"
Value: "name"

Field to sort by

exclude-project-members
boolean

Flag which removes workflows from the results which are members of a project

include
string
Examples: include=name include=description include=name,description

Inclusive projection operator formatted as a comma-delineated list. '_id' will be included implicitly unless excluded with 'exclude=_id'. May only be used in conjunction with 'exclude' when 'exclude=_id'.

exclude
string
Examples: exclude=_id exclude=description exclude=_id,description

Exclusive projection operator formatted as a comma-delineated list. May only be used in conjunction with 'include' when 'exclude=_id'.

expand
string (List of fields to get expanded data)
Examples: expand=created_by,user,owner

Sets the fields to expand. Generally, these are fields like "metrics.user", "metrics.owner", "created_by", etc

in
string
Examples: in=in[name]=my-workflow,or-this-workflow&in[type]=automation

Search for fields exactly matching one of the given list options

not-in
string
Examples: not-in=not-in[name]=my-workflow,not-this-workflow

Search for fields not exactly matching one of the given list options

equals
string
Examples: equals=equals[name]=my-workflow

Returns results where the specified fields exactly match the given match string(s).

contains
string
Examples: contains=contains[name]=workflow

Returns results where the specified fields contain the given match string(s).

starts-with
string
Examples: starts-with=starts-with[name]=my-

Returns results where the specified fields start with the given match string(s).

ends-with
string
Examples: ends-with=ends-with[name]=-workflow

Returns results where the specified fields end in the given match string(s).

task-equals
string
Examples: task-equals=task-equals[app]=WorkFlowEngine

Returns results where one or more tasks have fields that exactly match the given match string(s).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "total": 0,
  • "start": 0,
  • "end": 0,
  • "count": 0,
  • "limit": 0,
  • "next": "string",
  • "previous": "string"
}

Get Details of a Workflow

Get the details of a Workflow by Workflow name.

Authorizations:
None
path Parameters
name
required
string (name)

Name of Workflow to get Workflow details.

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "uuid": "string",
  • "namespace": {
    },
  • "name": "Port Turn Up IOS",
  • "type": "automation",
  • "description": "Port Turn Up IOS",
  • "preAutomationTime": 5000,
  • "sla": 0,
  • "tasks": {
    },
  • "transitions": {
    },
  • "errorHandler": { },
  • "font_size": 12,
  • "groups": [
    ],
  • "created": "2024-03-13T18:21:15.352Z",
  • "created_by": {
    },
  • "createdVersion": "5.40.5-2021.1.72.0",
  • "last_updated": "2024-03-13T18:21:15.352Z",
  • "last_updated_by": {
    },
  • "lastUpdatedVersion": "4.69.69",
  • "tags": [
    ],
  • "canvasVersion": 3,
  • "encodingVersion": 1,
  • "inputSchema": { },
  • "outputSchema": { },
  • "outputData": {
    },
  • "decorators": [
    ],
  • "migrationVersion": 0,
  • "scenarios": [
    ]
}

Creates a new workflow document.

Creates a new workflow document.

Authorizations:
None
Request Body schema: application/json

request body

object (automation-studio_workflowDocument)

Third generation workflow document as it exists in the database

Responses

Request samples

Content type
application/json
{
  • "automation": {
    }
}

Response samples

Content type
application/json
{
  • "created": {
    },
  • "edit": "string"
}

Replaces a workflow document.

Replaces a workflow document.

Authorizations:
None
path Parameters
id
required
string (id)

Workflow id.

Request Body schema: application/json

request body

object (automation-studio_workflowDocument)

Third generation workflow document as it exists in the database

Responses

Request samples

Content type
application/json
{
  • "update": {
    }
}

Response samples

Content type
application/json
{
  • "updated": {
    },
  • "edit": "string"
}

Imports a new workflow document.

Imports a new workflow document.

Authorizations:
None
Request Body schema: application/json

request body

Array of objects (automations)

Array of workflow documents to import. If '_id' is provided, it will be replaced with an autogenerated '_id'.

Responses

Request samples

Content type
application/json
{
  • "automations": [
    ]
}

Response samples

Content type
application/json
{
  • "imported": [
    ]
}

Gets a page of component group documents.

Gets a page of component group documents.

Authorizations:
None
query Parameters
limit
integer >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

Number of results to return. Used for pagination.

skip
integer >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

Number of results to skip. Used for pagination.

order
integer
Default: 1
Enum: -1 1

Sort direction, 1 for ascending and -1 for descending.

sort
string
Default: "name"
Value: "name"

Field to sort by

include
string
Examples: include=name include=description include=name,description

Inclusive projection operator formatted as a comma-delineated list. '_id' will be included implicitly unless excluded with 'exclude=_id'. May only be used in conjunction with 'exclude' when 'exclude=_id'.

exclude
string
Examples: exclude=_id exclude=description exclude=_id,description

Exclusive projection operator formatted as a comma-delineated list. May only be used in conjunction with 'include' when 'exclude=_id'.

in
string

Search for fields exactly matching one of the given list options

not-in
string

Search for fields not exactly matching one of the given list options

equals
string

Returns results where the specified fields exactly match the given match string(s).

contains
string

Returns results where the specified fields contain the given match string(s).

starts-with
string

Returns results where the specified fields start with the given match string(s).

ends-with
string

Returns results where the specified fields end in the given match string(s).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "total": 100,
  • "start": 0,
  • "end": 100,
  • "count": 100,
  • "next": "string",
  • "previous": "string"
}

Creates a new component group document.

Creates a new component group document.

Authorizations:
None
Request Body schema: application/json

request body

object (automation-studio_componentGroup)

An entity representing a component group.

Responses

Request samples

Content type
application/json
{
  • "componentGroup": {
    }
}

Response samples

Content type
application/json
{
  • "created": {
    },
  • "edit": "string"
}

Gets a single component group document.

Gets a single component group document.

Authorizations:
None
path Parameters
id
required
string (id)

ObjectId specifying a component group entity.

query Parameters
include
string
Examples: include=name include=description include=name,description

Inclusive projection operator formatted as a comma-delineated list. '_id' will be included implicitly unless excluded with 'exclude=_id'. May only be used in conjunction with 'exclude' when 'exclude=_id'.

exclude
string
Examples: exclude=_id exclude=description exclude=_id,description

Exclusive projection operator formatted as a comma-delineated list. May only be used in conjunction with 'include' when 'exclude=_id'.

Responses

Response samples

Content type
application/json
{
  • "_id": "67d863a07620432ed58f7964",
  • "name": "Automation Studio",
  • "description": "",
  • "gbacRead": [ ],
  • "gbacWrite": [ ],
  • "members": [
    ]
}

Deletes a component group document.

Deletes a component group document.

Authorizations:
None
path Parameters
id
required
string (id)

Component group id.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted componentGroup 67d32e60a402649caa29a006"
}

Replaces a component group document.

Replaces a component group document.

Authorizations:
None
path Parameters
id
required
string (id)

Component group id.

Request Body schema: application/json

request body

object (automation-studio_componentGroupUpdate)

An entity representing an update to an existing template document.

Responses

Request samples

Content type
application/json
{
  • "update": {
    }
}

Response samples

Content type
application/json
{
  • "updated": {
    },
  • "edit": "string"
}

Imports a new component group document.

Imports a new component group document.

Authorizations:
None
Request Body schema: application/json

request body

Array of objects (componentGroups)

Array of component group documents to import. If '_id' is provided, it will be replaced with an autogenerated '_id'. If a component group's name is already used in the component groups collection, it will be renamed with a numeric suffix.

Responses

Request samples

Content type
application/json
{
  • "componentGroups": [
    ]
}

Response samples

Content type
application/json
{
  • "imported": [
    ]
}

Validate a workflow

Validate a workflow, and return the resulting errors and warnings arrays.

Authorizations:
None
Request Body schema: application/json

request body

object (automation-studio_workflowDocumentAll)

Accepts all generation workflow documents

Responses

Request samples

Content type
application/json
{
  • "workflow": {
    }
}

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "warnings": [
    ]
}

Gets references to a particular document. Deprecated

Gets references to a particular document.

Authorizations:
None
query Parameters
target-type
string

Type of document to search for references to.

target-identifiers
string

IDs of the components to search for references to.

referrer-type
string

Type of documents to search for references in.

Responses

Response samples

Content type
application/json
{
  • "referencesByTarget": [
    ]
}

Get Task Details

Get the detailed information model for a task

Authorizations:
None
path Parameters
location
required
string (location)

Location: Application, Broker, Adapter

pckg
required
string (pckg)
Examples: WorkFlowEngine

Package name

method
required
string (method)
Examples: query merge

Method name

query Parameters
dereferenceSchemas
boolean
Default: false

When true, dereferences all $ref in task variable schemas

Responses

Response samples

Content type
application/json
{
  • "location": "Application",
  • "name": "query",
  • "app": "WorkFlowEngine",
  • "variables": {
    }
}

Get Task Details

Get the detailed information model for a task

Authorizations:
None
Request Body schema: application/json

request body

Array of objects (inputsArray)

Responses

Request samples

Content type
application/json
{
  • "inputsArray": [
    ]
}

Response samples

Content type
application/json
[
  • {
    }
]

Search projects

Search projects

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "message": "Successfully retrieved projects",
  • "data": [
    ],
  • "metadata": {
    }
}

Creates a new project

Creates a new project

Authorizations:
None
Request Body schema: application/json

createData

name
required
string

Project name

description
string (Project description)

A free-form block of text for describing project intent and function

Array of objects (Project components)

A list of member components in the project

property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "name": "Firewall Service Provisioning",
  • "description": "This project is used at Acme Corp as the foundation of some major parts of our business process.",
  • "components": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "Successfully created project",
  • "data": { },
  • "metadata": { }
}

Gets a single Project

Gets a single Project

Authorizations:
None
path Parameters
projectId
required
string (projectId)

Project identifier

Responses

Response samples

Content type
application/json
{
  • "message": "Successfully retrieved project",
  • "data": { },
  • "metadata": { }
}

Updates an existing project

Updates an existing project

Authorizations:
None
path Parameters
required
MongoDB ObjectId (string) or IID (integer) (Projects HTTP ID)

Project identifier, either an ObjectId or an IID

Request Body schema: application/json

updateData

name
string

Project name

description
string (Project description)

A free-form block of text for describing project intent and function

thumbnailBackgroundColor
string
Default: "#FFFFFF"

Thumbnail background color

Array of objects
object
object
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "name": "Firewall Service Provisioning",
  • "description": "This project is used at Acme Corp as the foundation of some major parts of our business process.",
  • "thumbnailBackgroundColor": "#FFFFFF",
  • "members": [
    ],
  • "version": {
    },
  • "gitConfiguration": {
    }
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "data": { },
  • "metadata": { }
}

Exports a project document as a JSON document, inlining all related documents into its components array

Exports a project document as a JSON document, inlining all related documents into its components array

Authorizations:
None
path Parameters
id
required
string (id)

id

Responses

Response samples

Content type
application/json
{
  • "message": "Successfully exported project",
  • "data": { },
  • "metadata": { }
}

Imports a project document from a JSON document

Imports a project document from a JSON document

Authorizations:
None
Request Body schema: application/json

options

object (automation-studio_projects-export-v1)

An exported project document

conflictMode
string
Enum: "overwrite" "insert-new"
skipReferenceValidation
boolean
Default: false

If true, validations will not be run against references.

assignNewReferences
boolean
Default: false

This being true would indicate that the imported project is part of a clone action.

Responses

Request samples

Content type
application/json
{
  • "project": {
    },
  • "conflictMode": "overwrite",
  • "skipReferenceValidation": false,
  • "assignNewReferences": false
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "data": { },
  • "metadata": { }
}

Discover referenced resources

Finds all resource references from a set of specified resource identifiers

Authorizations:
None
Request Body schema: application/json

options

Array of objects

Array of resource identifiers to find references for.

recursive
boolean
Default: false

If true, recursively looks up resources on all referenced resources.

includeResources
boolean
Default: false

If true, include the full resource document in each resource reference object.

object

An object of resource types to directions that will not be included in discovery. Cannot be used with include.

object

An object of resource types and directions to be included in discovery. Cannot be used with ignore.

removeCycles
boolean
Default: false

If true, removes all cyclic relationships from the list of resource references.

Responses

Request samples

Content type
application/json
{
  • "resourceIdentifiers": [
    ],
  • "recursive": false,
  • "includeResources": false,
  • "ignore": {
    },
  • "include": {
    },
  • "removeCycles": false
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "data": { },
  • "metadata": { }
}

Delete a project and any components it contains

Delete a project and any components it contains

Authorizations:
None
path Parameters
id
required
string (id)

Project ID

Responses

Response samples

Content type
application/json
{
  • "message": "string"
}

Remove a component from a project

Remove a component from a project

Authorizations:
None
path Parameters
projectId
required
string (projectId)

Project identifier

required
componentId (number) or componentId (string) (componentId)

Component identifier

Request Body schema: application/json

request body

object (options)

Options designating removal mode

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "data": {
    },
  • "metadata": { }
}

Add one or more components to Project

Add one or more components to Project

Authorizations:
None
path Parameters
projectId
required
string (projectId)

Project identifier

Request Body schema: application/json

options

required
Array of objects (automation-studio_projects-common_components)

A list of member components in the project

mode
string
Enum: "move" "copy"

Responses

Request samples

Content type
application/json
{
  • "components": [
    ],
  • "mode": "move"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "data": [
    ],
  • "metadata": {
    }
}

Set a project's thumbnail image

Set a project's thumbnail image

Authorizations:
None
path Parameters
projectId
required
string (projectId)

Project identifier

Request Body schema: application/json

options

imageData
required
string

Binary image data encoded as a base64 string

backgroundColor
string
Default: "#FFFFFF"

Thumbnail background color

Responses

Request samples

Content type
application/json
{
  • "imageData": "string",
  • "backgroundColor": "#FFFFFF"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "data": [
    ],
  • "metadata": { }
}

Gets a Project's thumbnail

Gets a Project's thumbnail. Returns data as a base64 encoded string of binary data.

Authorizations:
None
path Parameters
projectId
required
string (projectId)

Project identifier

Responses

Response samples

Content type
application/json
{
  • "message": "Successfully retrieved project thumbnail",
  • "data": {
    }
}

Configuration Manager

Find Devices

Gets a specific subset of devices for based on given options

Authorizations:
None
Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "entity": "device",
  • "total": 0,
  • "unique_device_count": 0,
  • "return_count": 0,
  • "start_index": 0,
  • "list": [
    ]
}

Fetches OS Types to store into the cache.

Gathers all the device OS Types in the current evnironment and stores them in the cache.

Authorizations:
None
Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "_id": "67e1a6e387c22cbcbe27efc6",
  • "name": "Device OS Types",
  • "osTypes": [
    ],
  • "updated": "2025-03-24T18:39:31.264Z"
}

Fetches the OSTypes stored in the cache.

Gathers all the device OS Types in the current cache.

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "_id": "67e1a6e387c22cbcbe27efc6",
  • "name": "Device OS Types",
  • "osTypes": [
    ],
  • "updated": "2025-03-24T18:39:31.264Z"
}

Deletes the cache for os types.

Removes the cache in the database for os type values.

Authorizations:
None
Request Body schema: application/json

request body

options
object (options)

Responses

Request samples

Content type
application/json
{
  • "options": { }
}

Response samples

Content type
application/json
"Successfully deleted the cache for device os types."

Deletes pinned items.

Deletes the pinned items permanently from the database.

Authorizations:
None
Request Body schema: application/json

request body

pinTargets
Array of any (pinTargets)
sourceItem
string (sourceItem)

Responses

Request samples

Content type
application/json
{
  • "pinTargets": [
    ],
  • "sourceItem": "cm_device_groups"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "res": {
    }
}

Add an item to pins or remove from if it already exists

Add an item to pins or remove from if it already exists

Authorizations:
None
Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
{ }

Get a list of pinned items.

Fetches a list of pinned items based on the input parameters. The list of pinned items are specific to the current user or actor. This api supports pagination.

Authorizations:
None
Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "pins": [
    ],
  • "count": "10"
}

Checks if the current version of CM is maintenance or not.

Returns a boolean reflecting whether the current Configuration Manager bundle is a maintenance bundle.

Authorizations:
None

Responses

Response samples

Content type
application/json
true

Renders a jinja2 template.

Takes a jinja2 template a renders output text.

Authorizations:
None
Request Body schema: application/json

request body

template
string (template)
variables
object (variables)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "template": "domain name-server {{ ipAddress }}",
  • "variables": {
    },
  • "options": { }
}

Response samples

Content type
application/json
"domain name-server 10.1.0.12"

Get data for all adapters with tasks.

Fetch method/task metadata for all adapters that have it.

Authorizations:
None
Request Body schema: application/json

request body

options
object (options)

Responses

Request samples

Content type
application/json
{
  • "options": { }
}

Response samples

Content type
application/json
{
  • "adapterTasks": {
    }
}

Get data for a specific adapter task.

Fetch method/task metadata for an adapter task.

Authorizations:
None
Request Body schema: application/json

request body

taskName
string (taskName)
origin
string (origin)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "taskName": "createApp",
  • "origin": "IAG",
  • "options": { }
}

Response samples

Content type
application/json
{
  • "adapterTasks": {
    }
}

Create a task instance.

Create an instance of a task and save it to the database.

Authorizations:
None
Request Body schema: application/json

request body

instanceName
string (instanceName)
origin
string (origin)
taskName
string (taskName)
treeId
string (treeId)
taskParams
object (taskParams)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "instanceName": "getDevicesInfomation",
  • "origin": "nso52",
  • "taskName": "getConfig",
  • "treeId": "5f21c92ba6abf82bf5041783",
  • "taskParams": { },
  • "options": { }
}

Response samples

Content type
application/json
{
  • "instanceName": "get devices instance",
  • "origin": "IAG",
  • "taskName": "getDevices",
  • "treeId": "67e306250e358ba47dcf79c6",
  • "taskParams": { }
}

Update a task instance.

Update an instance of a task and save it to the database.

Authorizations:
None
Request Body schema: application/json

request body

taskId
string (taskId)
treeId
string (treeId)
taskParams
object (taskParams)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "taskId": "67e30d9f0e358ba47dcf79ca",
  • "treeId": "67e306250e358ba47dcf79c6",
  • "taskParams": { },
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "result": "success",
  • "data": {
    }
}

Delete task instance(s).

Delete task instance(s) from the database.

Authorizations:
None
Request Body schema: application/json

request body

taskIds
Array of any (taskIds)
treeId
string (treeId)

Responses

Request samples

Content type
application/json
{
  • "taskIds": [
    ],
  • "treeId": "67e306250e358ba47dcf79c6"
}

Response samples

Content type
application/json
{
  • "result": "success",
  • "data": "Deleted 1 task instances."
}

Get task instance(s).

Get instance(s) of a task.

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (treeId)
object (options)

Responses

Request samples

Content type
application/json
{
  • "treeId": "5f21c92ba6abf82bf5041783",
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Search for task instance(s).

Search for task instance(s) using varies options parameters.

Authorizations:
None
Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "totalCount": 1,
  • "tasks": [
    ]
}

Run a task instance.

Run an instance of a task and save it to the database.

Authorizations:
None
Request Body schema: application/json

request body

taskId
string (taskId)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "taskId": "67e312ae0e358ba47dcf79cc",
  • "options": { }
}

Response samples

Content type
application/json
{ }

Run an adapter task.

Run an adapter task.

Authorizations:
None
Request Body schema: application/json

request body

origin
string (origin)
taskName
string (taskName)
args
object (args)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "origin": "Automation Gateway",
  • "taskName": "getDevices",
  • "args": { },
  • "options": { }
}

Response samples

Content type
application/json
{
  • "total": 1,
  • "list": [
    ]
}

Get Device Details

Get detailed information for a specific device, based on its device name

Authorizations:
None
path Parameters
name
required
string (name)
Examples: xr9kv-atl

Device name

Responses

Response samples

Content type
application/json
{
  • "name": "xr9kv01-aws",
  • "authgroup": "xr9kv-aws",
  • "ipaddress": "10.1.6.100",
  • "address": "10.1.6.100",
  • "port": "22",
  • "device-type": "cli",
  • "ostype": "cisco-ios-xr",
  • "ned": "cisco-ios-xr",
  • "admin": true,
  • "host": "nso46",
  • "actions": [
    ],
  • "origins": [
    ]
}

Get Device Configuration

Get configuration for a specific device

Authorizations:
None
path Parameters
name
required
string (name)
Examples: xr9kv-atl

Device name

Responses

Response samples

Content type
application/json
{
  • "device": "xr9kv-atl",
  • "config": "hostname ios0\nno service password-encryption\n..."
}

Get formatted device config Deprecated

Get device configuration in a given format.

Authorizations:
None
path Parameters
name
required
string (name)
Examples: xr9kv-atl

Device name

format
required
string (format)
Enum: "native" "xml" "json"
Examples: native

Supported formats by NSO (xml, native, json) & Automation Gateway (native).

Responses

Response samples

Content type
application/json
{
  • "device": "xr9kv-atl",
  • "config": "hostname ios0\nno service password-encryption\n..."
}

Backup device configuration

Backup device configuration in mongo

Authorizations:
None
Request Body schema: application/json

request body

name
string (configuration_manager_deviceData_deviceName)
object (options)

Responses

Request samples

Content type
application/json
{
  • "name": "xr9kv-atl",
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Device {deviceName} backed up successfully"
}

Import backup documents

Insert backup documents into the ucm_configs collection

Authorizations:
None
Request Body schema: application/json

request body

Array of objects (backups)

Responses

Request samples

Content type
application/json
{
  • "backups": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "2 device backups imported successfully"
}

Import device group documents

Insert device group documents into the device_groups collection

Authorizations:
None
Request Body schema: application/json

request body

Array of objects (groups)

Responses

Request samples

Content type
application/json
{
  • "groups": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "2 device groups imported successfully"
}

Get Device Backup List

Fetches backups, requires an options payload. An empty option payload will return the first 25 documents

Authorizations:
None
Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "total": 0,
  • "list": [
    ]
}

Delete one or more device backups by Id

This API call will delete device backups based on given Ids

Authorizations:
None
Request Body schema: application/json

request body

backupIds
Array of strings (backupIds) [ items^[0-9a-f]{24}$ ]

Responses

Request samples

Content type
application/json
{
  • "backupIds": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "deleted": 0
}

Gets a list of all backed up devices

Returns a list of devices that have one or more backups

Authorizations:
None

Responses

Response samples

Content type
application/json
[
  • "xr9kv-atl"
]

Get Device Backup

Retrieves single backup document by id

Authorizations:
None
path Parameters
id
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

Backup's id

Responses

Response samples

Content type
application/json
{
  • "id": "5c35355dbebaa82eaf8113f0",
  • "name": "xr9kv-atl",
  • "provider": "IAG",
  • "type": "native",
  • "date": "2019-04-12T14:42:47.958Z",
  • "rawConfig": "hostname ios0\nno service password-encryption\n...",
  • "description": "Daily backup",
  • "notes": "Backup of device",
  • "gbac": {
    }
}

Update a device backup by Id

This API call will update the metadata of a device backup by ID

Authorizations:
None
path Parameters
id
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

Backup Id

Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "updated": 0
}

Get Device Group by Name

Retrieves a single group document by name

Authorizations:
None
Request Body schema: application/json

request body

groupName
string (configuration_manager_common_standardName) non-empty

Responses

Request samples

Content type
application/json
{
  • "groupName": "Cisco Devices"
}

Response samples

Content type
application/json
{
  • "_id": "5c35355dbebaa82eaf8113f0",
  • "name": "Cisco Devices",
  • "description": "Common device group",
  • "devices": [
    ]
}

Gets device groups for a device

Finds all the device groups that contain the specified device

Authorizations:
None
path Parameters
deviceName
required
string (name)
Examples: xr9kv-atl

Device name

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Check if device is connected

Get connection status of device

Authorizations:
None
path Parameters
name
required
string (name)
Examples: xr9kv-atl

Device name

Responses

Response samples

Content type
application/json
true

Creates a device group

Creates a new device group in pronghorn

Authorizations:
None
Request Body schema: application/json

request body

groupName
string (configuration_manager_common_standardName) non-empty
groupDescription
string (configuration_manager_common_standardDescription) non-empty
deviceNames
string (configuration_manager_common_multiElementString) non-empty

Responses

Request samples

Content type
application/json
{
  • "groupName": "Cisco Devices",
  • "groupDescription": "Common device group",
  • "deviceNames": "Cisco-IOS-XR-LAB-1, Cisco-IOS-XE-LAB-2"
}

Response samples

Content type
application/json
{
  • "id": "5c35355dbebaa82eaf8113f0",
  • "name": "Cisco Devices",
  • "message": "Device Group created successfully",
  • "status": "success"
}

Get all Device Groups

Gets a list of all known device groups

Authorizations:
None

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete device groups

Delete specified device groups

Authorizations:
None
Request Body schema: application/json

request body

groupIds
Array of strings (groupIds) [ items^[0-9a-f]{24}$ ]

Responses

Request samples

Content type
application/json
{
  • "groupIds": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "deleted": 1
}

Search all Device Groups

Gets a list of all device groups that match the search criteria

Authorizations:
None
Request Body schema: application/json

request body

s
string (s)
start
number (start)
limit
number (limit)

Responses

Request samples

Content type
application/json
{
  • "s": "Cisco",
  • "start": 0,
  • "limit": 10
}

Response samples

Content type
application/json
{
  • "totalCount": 10,
  • "groups": [
    ]
}

Search device groups

Returns device groups that match the specified input

Authorizations:
None
Request Body schema: application/json

request body

name
string (name)
start
number (start)
limit
number (limit)
object (options)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "start": 0,
  • "limit": 10,
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "totalCount": 10,
  • "groups": [
    ]
}

Get Device Group by ID

Get Device Group by ID

Authorizations:
None
path Parameters
id
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

Group Id or Group Name

Responses

Response samples

Content type
application/json
{
  • "_id": "5c35355dbebaa82eaf8113f0",
  • "name": "Cisco Devices",
  • "description": "Common device group",
  • "devices": [
    ]
}

Update device groups

Updates the device group's details and devices.

Authorizations:
None
path Parameters
id
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

Group Id

Request Body schema: application/json

request body

object (configuration_manager_deviceGroupDocument_updateGroupDetails)

Responses

Request samples

Content type
application/json
{
  • "details": {
    }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "modified": 1
}

Removes devices from a group

Removes devices from a device group

Authorizations:
None
path Parameters
id
required
string (id)

id

Request Body schema: application/json

request body

devices
Array of any (devices)

Responses

Request samples

Content type
application/json
{
  • "devices": "xr9kv01-aws"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "1 document(s) updated"
}

Adds new devices to the group

Adds devices to a group

Authorizations:
None
path Parameters
id
required
string (id)

id

Request Body schema: application/json

request body

devices
Array of any (devices)

Responses

Request samples

Content type
application/json
{
  • "devices": "xr9kv01-aws"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "1 document(s) updated"
}

Delete device groups

Delete specified device groups

Authorizations:
None
Request Body schema: application/json

request body

groupNames
Array of strings (groupNames) [ items non-empty ]

Responses

Request samples

Content type
application/json
{
  • "groupNames": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "deleted": 1
}

Add device(s) to a group Deprecated

This API call will add device(s) to a device group

Authorizations:
None
Request Body schema: application/json

request body

groupName
string (configuration_manager_common_standardName) non-empty
deviceNames
string (configuration_manager_common_multiElementString) non-empty

Responses

Request samples

Content type
application/json
{
  • "groupName": "Cisco Devices",
  • "deviceNames": "Cisco-IOS-XR-LAB-1, Cisco-IOS-XE-LAB-2"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "modified": 1
}

Delete device(s) from a group Deprecated

This API call will delete device(s) from a device group

Authorizations:
None
Request Body schema: application/json

request body

groupName
string (configuration_manager_common_standardName) non-empty
deviceNames
string (configuration_manager_common_multiElementString) non-empty

Responses

Request samples

Content type
application/json
{
  • "groupName": "Cisco Devices",
  • "deviceNames": "Cisco-IOS-XR-LAB-1, Cisco-IOS-XE-LAB-2"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "modified": 1
}

Diff two strings from a lookup.

Lookup two strings and return a diff.

Authorizations:
None
Request Body schema: application/json

request body

id
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
nextId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
collection
string (collection) non-empty
nextCollection
string (nextCollection) non-empty
object (options)

Responses

Request samples

Content type
application/json
{
  • "id": "5c35355dbebaa82eaf8113f0",
  • "nextId": "5c35355dbebaa82eaf8113f0",
  • "collection": "backups",
  • "nextCollection": "devices",
  • "options": {
    }
}

Response samples

Content type
application/json
[
  • [
    ],
  • [
    ],
  • [
    ],
  • [
    ],
  • [
    ]
]

Create a config parser.

Create rules for a parser for breaking down configs in GC.

Authorizations:
None
Request Body schema: application/json

request body

name
string (name) non-empty
lexRules
Array of strings (lexRules) [ items ]
template
string (template)
Enum: "cisco-ios" "f5-bigip"

Responses

Request samples

Content type
application/json
{
  • "name": "Cisco IOS",
  • "lexRules": [
    ],
  • "template": "cisco-ios"
}

Response samples

Content type
application/json
{
  • "parser": {
    }
}

Update a config parser.

Update rules for a parser for breaking down configs in GC.

Authorizations:
None
Request Body schema: application/json

request body

name
string (name) non-empty
object (options)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "updated": 1
}

Delete a config parser.

Permanently delete a configuration parser.

Authorizations:
None
Request Body schema: application/json

request body

name
string (name) non-empty
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "name": "a10-acos",
  • "options": { }
}

Response samples

Content type
application/json
{
  • "status": "Success",
  • "message": "Successfully deleted Config Parser."
}

Get all config parsers.

Gets a list of all known config parsers.

Authorizations:
None
query Parameters
start
integer >= 0
Examples: start=0

start

limit
integer >= 1
Examples: limit=20

limit

regex
boolean

regex

object

filter

object

sort

Responses

Response samples

Content type
application/json
{
  • "total": 2,
  • "list": [
    ]
}

Get a config parser.

Get a defined Config Parser from the database.

Authorizations:
None
Request Body schema: application/json

request body

object (filter)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "filter": {
    },
  • "options": { }
}

Response samples

Content type
application/json
{
  • "parser": {
    }
}

Delete one or more config parsers by Id

This API call will delete config parsers based on given Ids

Authorizations:
None
Request Body schema: application/json

request body

parserIds
Array of strings (parserIds) [ items^[0-9a-f]{24}$ ]

Responses

Request samples

Content type
application/json
{
  • "parserIds": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "deleted": 1
}

Import parser documents

Insert parser documents into the ucm_configs collection

Authorizations:
None
Request Body schema: application/json

request body

parsers
Array of any (parsers)

Responses

Request samples

Content type
application/json
{
  • "parsers": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "2 device parsers imported successfully"
}

Get a list of all Golden Config trees.

Get a list of all Golden Config trees.

Authorizations:
None

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Adds a new Golden Config tree

Adds a new Golden Config tree

Authorizations:
None
Request Body schema: application/json

request body

name
string (name)
deviceType
string (deviceType)

Responses

Request samples

Content type
application/json
{
  • "name": "Cisco Edge - Day 0",
  • "deviceType": "cisco-ios"
}

Response samples

Content type
application/json
{
  • "id": "5c35355dbebaa82eaf8113f0",
  • "name": "Cisco Edge - Day 0",
  • "deviceType": "cisco-ios",
  • "version": "initial",
  • "root": {
    },
  • "variables": [
    ],
  • "created": "2019-04-12T14:42:47.958Z",
  • "createdBy": "5c35355dbebaa82eaf8113f0",
  • "lastUpdated": "2019-04-12T14:42:47.958Z",
  • "lastUpdatedBy": "5c35355dbebaa82eaf8113f0"
}

Delete one or more golden configuration trees by tree id

This API call will delete golden configuration trees based on given tree ids

Authorizations:
None
Request Body schema: application/json

request body

treeIds
Array of strings (treeIds) [ items^[0-9a-f]{24}$ ]

Responses

Request samples

Content type
application/json
{
  • "treeIds": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "deleted": 1
}

Get summary of a Golden Config tree.

Get summary of the specified Golden Config tree.

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Adds a new Golden Config tree

Adds a new Golden Config tree

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

ID of the new Golden Config tree

Request Body schema: application/json

request body

version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
base
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)

Responses

Request samples

Content type
application/json
{
  • "version": "initial",
  • "base": "initial"
}

Response samples

Content type
application/json
{
  • "id": "5c35355dbebaa82eaf8113f0",
  • "name": "Cisco Edge - Day 0",
  • "deviceType": "cisco-ios",
  • "version": "initial",
  • "root": {
    },
  • "variables": [
    ],
  • "created": "2019-04-12T14:42:47.958Z",
  • "createdBy": "5c35355dbebaa82eaf8113f0",
  • "lastUpdated": "2019-04-12T14:42:47.958Z",
  • "lastUpdatedBy": "5c35355dbebaa82eaf8113f0"
}

Updates properties of a Golden Config tree

Updates properties of the specified Golden Config tree

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Golden Config tree updated"
}

Delete a Golden Config tree.

Deletes the specified Golden Config tree.

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Golden Config tree deleted"
}

Get details of a Golden Config tree version.

Get a detailed view of the specified Golden Config tree version.

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

version
required
string (goldenConfigTreeVersionName)
Examples: initial v2 v3 draft-v4

version

Responses

Response samples

Content type
application/json
{
  • "id": "5c35355dbebaa82eaf8113f0",
  • "name": "Cisco Edge - Day 0",
  • "deviceType": "cisco-ios",
  • "version": "initial",
  • "root": {
    },
  • "variables": [
    ],
  • "created": "2019-04-12T14:42:47.958Z",
  • "createdBy": "5c35355dbebaa82eaf8113f0",
  • "lastUpdated": "2019-04-12T14:42:47.958Z",
  • "lastUpdatedBy": "5c35355dbebaa82eaf8113f0"
}

Updates properties of a Golden Config tree version

Updates properties of the specified Golden Config tree version

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

version
required
string (goldenConfigTreeVersionName)
Examples: initial v2 v3 draft-v4

version

Request Body schema: application/json

request body

name
string (name)
variables
object (variables)

Responses

Request samples

Content type
application/json
{
  • "name": "AWS Security Group V2",
  • "variables": { }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Configuration tree version updated"
}

Delete a Golden Config tree.

Deletes the specified Golden Config tree.

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

version
required
string (goldenConfigTreeVersionName)
Examples: initial v2 v3 draft-v4

version

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Configuration tree version deleted"
}

Get summary of a Golden Config tree.

Get summary of the specified Golden Config tree.

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
object (options)

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "options": {
    }
}

Response samples

Content type
application/json
[
  • {
    }
]

Find trees which contain the specified device.

Search through all GC Trees to find all locations where a device exists.

Authorizations:
None
Request Body schema: application/json

request body

deviceName
string (configuration_manager_deviceData_deviceName)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "deviceName": "xr9kv-atl",
  • "options": { }
}

Response samples

Content type
application/json
[
  • {
    }
]

Fetches all the devices that exist on a tree.

Search through a GC Tree to find all the devices that exist on it.

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
object (options)

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "devices": [
    ]
}

Deletes one or more variables Deprecated

Verifies and deletes the requested deletion variables

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

version
required
string (goldenConfigTreeVersionName)
Examples: initial v2 v3 draft-v4

version

Request Body schema: application/json

request body

Array of objects or object (configuration_manager_goldenConfigData_goldenConfigVariables)

Responses

Request samples

Content type
application/json
{
  • "variables": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Deletion successful."
}

Updates the config rule set of a JSON Golden Config tree version

Updates the config rule set of a JSON Golden Config tree version

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
nodePath
string (configuration_manager_goldenConfigData_goldenConfigNodePath)
ruleSet
object (ruleSet)

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "ruleSet": { }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Rule Set successfully updated."
}

Remove Device Groups from Node

Remove device groups from a node in a Golden Config tree

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
nodePath
string (configuration_manager_goldenConfigData_goldenConfigNodePath)
deviceGroups
Array of strings (deviceGroups) [ items^[0-9a-f]{24}$ ]

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "deviceGroups": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Golden Config node updated"
}

Add Device Groups to Node

Add device groups to a node in a Golden Config tree

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
nodePath
string (configuration_manager_goldenConfigData_goldenConfigNodePath)
deviceGroups
Array of strings (deviceGroups) [ items^[0-9a-f]{24}$ ]

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "deviceGroups": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Golden Config node updated"
}

Export a Golden Config tree.

Exports the specified Golden Config tree.

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0"
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": [
    ]
}

Import golden config tree documents

Insert golden config documents into the golden config collection

Authorizations:
None
Request Body schema: application/json

request body

Array of objects (trees)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "trees": [
    ],
  • "options": { }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "2 golden config trees imported successfully"
}

Remove Tasks from Node

Remove Tasks from a node in a Golden Config tree

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
nodePath
string (configuration_manager_goldenConfigData_goldenConfigNodePath)
tasks
Array of strings (tasks)

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "tasks": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Golden Config node updated"
}

Add Tasks to Node

Add Tasks to a node in a Golden Config tree

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
nodePath
string (configuration_manager_goldenConfigData_goldenConfigNodePath)
tasks
Array of strings (tasks)

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "tasks": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Golden Config node updated"
}

Add Devices to Node

Add devices to a node in a Golden Config tree

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

version
required
string (goldenConfigTreeVersionName)
Examples: initial v2 v3 draft-v4

version

nodePath
required
string (goldenConfigNodePath)
Examples: base base/US East base/US East/Atlanta

nodePath

Request Body schema: application/json

request body

devices
Array of strings (devices)

Responses

Request samples

Content type
application/json
{
  • "devices": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Golden Config node updated"
}

Remove Devices from Node

Remove devices from a node in a Golden Config tree

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

version
required
string (goldenConfigTreeVersionName)
Examples: initial v2 v3 draft-v4

version

nodePath
required
string (goldenConfigNodePath)
Examples: base base/US East base/US East/Atlanta

nodePath

Request Body schema: application/json

request body

devices
Array of strings (devices)

Responses

Request samples

Content type
application/json
{
  • "devices": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Golden Config node updated"
}

Create a new node in a Golden Config tree.

Create a new node in the specified Golden Config tree.

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

version
required
string (goldenConfigTreeVersionName)
Examples: initial v2 v3 draft-v4

version

parentNodePath
required
string (parentNodePath)
Examples: base/US East

parentNodePath

Request Body schema: application/json

request body

name
string (name)

Responses

Request samples

Content type
application/json
{
  • "name": "DC"
}

Response samples

Content type
application/json
{
  • "name": "base",
  • "attributes": {
    },
  • "children": [
    ]
}

Update properties of a node in a Golden Config tree.

Update properties of the specified Golden Config node.

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

version
required
string (goldenConfigTreeVersionName)
Examples: initial v2 v3 draft-v4

version

nodePath
required
string (goldenConfigNodePath)
Examples: base base/US East base/US East/Atlanta

nodePath

Request Body schema: application/json

request body

name
string (name)
object (attributes)

Responses

Request samples

Content type
application/json
{
  • "name": "Southeast",
  • "attributes": {
    }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Golden Config node updated"
}

Delete a node in a Golden Config tree.

Permanently delete the specified node in the Golden Config tree. Not reversible.

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

version
required
string (goldenConfigTreeVersionName)
Examples: initial v2 v3 draft-v4

version

nodePath
required
string (goldenConfigNodePath)
Examples: base base/US East base/US East/Atlanta

nodePath

Responses

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Configuration node deleted"
}

Get a Config Spec document.

Get the details of the specified Config Spec.

Authorizations:
None
path Parameters
id
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

id

Responses

Response samples

Content type
application/json
{
  • "id": "5c35355dbebaa82eaf8113f0",
  • "deviceType": "cisco-ios",
  • "lines": [
    ],
  • "created": "2019-04-12T14:42:47.958Z",
  • "createdBy": "5c35355dbebaa82eaf8113f0",
  • "lastUpdated": "2019-04-12T14:42:47.958Z",
  • "lastUpdatedBy": "5c35355dbebaa82eaf8113f0"
}

Update a Config Spec.

Update content of the Config Spec.

Authorizations:
None
path Parameters
id
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

id

Request Body schema: application/json

request body

object (data)

Responses

Request samples

Content type
application/json
{
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Config Spec updated"
}

Get a Config Spec template.

Get the template of the specified Config Spec

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
nodePath
string (configuration_manager_goldenConfigData_goldenConfigNodePath)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "options": { }
}

Response samples

Content type
application/json
{
  • "currentTemplate": "ntp server {{ ipAddress }}",
  • "inheritedTemplate": "ntp server {{ ipAddress }}"
}

Create a new Config Spec.

Create a new Config Spec.

Authorizations:
None
Request Body schema: application/json

request body

deviceType
string (deviceType)
object (data)

Responses

Request samples

Content type
application/json
{
  • "deviceType": "cisco-ios",
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "id": "5c35355dbebaa82eaf8113f0",
  • "deviceType": "cisco-ios",
  • "lines": [
    ],
  • "created": "2019-04-12T14:42:47.958Z",
  • "createdBy": "5c35355dbebaa82eaf8113f0",
  • "lastUpdated": "2019-04-12T14:42:47.958Z",
  • "lastUpdatedBy": "5c35355dbebaa82eaf8113f0"
}

Update node configuration.

Updates the configuration for a specified node.

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
treeVersion
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
nodePath
string (configuration_manager_goldenConfigData_goldenConfigNodePath)
object (data)
updateVariables
boolean (updateVariables)

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "treeVersion": "initial",
  • "nodePath": "base",
  • "data": {
    },
  • "updateVariables": true
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Node Config updated"
}

Convert a config spec into a readable string.

Converts a object like config into a human-readable config string.

Authorizations:
None
Request Body schema: application/json

request body

treeID
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
nodePath
string (configuration_manager_goldenConfigData_goldenConfigNodePath)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "treeID": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "options": { }
}

Response samples

Content type
application/json
{
  • "config": "interface Loopback01\n description loopback01"
}

Builds a config spec from raw config.

Takes raw native config and builds a configuration spec.

Authorizations:
None
Request Body schema: application/json

request body

nativeConfig
string (configuration_manager_deviceData_deviceConfigurationString)
deviceType
string (deviceType)
Enum: "cisco-ios" "cisco-asa" "cisco-ios-xr" "cisco-nx" "cisco-staros" "alu-sr" "a10-acos" "juniper-junos" "f5-bigip" "arista-eos"
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "nativeConfig": "hostname ios0\nno service password-encryption\n...",
  • "deviceType": "cisco-ios",
  • "options": { }
}

Response samples

Content type
application/json
[
  • {
    }
]

Get a JSON Spec document.

Get the details of the specified JSON Spec.

Authorizations:
None
path Parameters
id
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

id

Responses

Response samples

Content type
application/json
{ }

Update a JSON Spec

Update content of the JSON Spec.

Authorizations:
None
path Parameters
id
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

id

Request Body schema: application/json

request body

data
object (data)

Responses

Request samples

Content type
application/json
{
  • "data": { }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "JSON Spec updated"
}

Get a JSON Spec document with inheritance.

Get the details of the specified JSON Spec with inheritance.

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
nodePath
string (configuration_manager_goldenConfigData_goldenConfigNodePath)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "options": { }
}

Response samples

Content type
application/json
{ }

Create a new JSON Spec.

Create a new JSON Spec.

Authorizations:
None
Request Body schema: application/json

request body

data
object (data)

Responses

Request samples

Content type
application/json
{
  • "data": { }
}

Response samples

Content type
application/json
{
  • "id": "5c35355dbebaa82eaf8113f0",
  • "deviceType": "json",
  • "data": { },
  • "created": "2019-04-12T14:42:47.958Z",
  • "createdBy": "5c35355dbebaa82eaf8113f0",
  • "lastUpdated": "2019-04-12T14:42:47.958Z",
  • "lastUpdatedBy": "5c35355dbebaa82eaf8113f0"
}

Run Compliance Reports.

Kick off one or more compliance checks for devices in a specified Golden Config tree.

Authorizations:
None
Request Body schema: application/json

request body

deviceName
string (deviceName)
configuration
string (configuration)

Responses

Request samples

Content type
application/json
{
  • "deviceName": "Cisco-Device.1",
  • "configuration": "interface Loopback1\n ip address 10.0.0.1\nntp server 105.62.30.158"
}

Response samples

Content type
application/json
{
  • "status": 202,
  • "message": "compliance batch ${batchId} started",
  • "batchId": "5c35355dbebaa82eaf8113f0"
}

Run Compliance Reports.

Kick off one or more compliance checks for devices in a specified Golden Config tree.

Authorizations:
None
Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "status": 202,
  • "message": "compliance batch ${batchId} started",
  • "batchId": "5c35355dbebaa82eaf8113f0"
}

Run Compliance Reports on Backups.

Kick off one or more compliance checks for backups in a specified Golden Config tree.

Authorizations:
None
Request Body schema: application/json

request body

object (treeInfo)
backupIds
Array of strings (backupIds)
object (options)

Responses

Request samples

Content type
application/json
{
  • "treeInfo": {
    },
  • "backupIds": [
    ],
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "status": 202,
  • "message": "compliance batch ${batchId} started",
  • "batchId": "5c35355dbebaa82eaf8113f0"
}

Summarize Compliance Reports for a Tree.

Summarize Compliance Reports for a Tree.

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

Responses

Response samples

Content type
application/json
{
  • "errors": 0,
  • "warnings": 0,
  • "passes": 0,
  • "infos": 0,
  • "deviceWithErrors": 0,
  • "deviceWithWarnings": 0,
  • "deviceWithInfos": 0,
  • "fullyCompliantDevices": 0,
  • "numDevices": 0
}

Summarize Compliance Reports for a Node.

Summarize Compliance Reports for a Node.

Authorizations:
None
path Parameters
treeId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

treeId

nodePath
required
string (goldenConfigNodePath)
Examples: base base/US East base/US East/Atlanta

nodePath

Responses

Response samples

Content type
application/json
{
  • "errors": 0,
  • "warnings": 0,
  • "passes": 0,
  • "infos": 0,
  • "deviceWithErrors": 0,
  • "deviceWithWarnings": 0,
  • "deviceWithInfos": 0,
  • "fullyCompliantDevices": 0,
  • "numDevices": 0
}

Get graded compliance reports for a node.

Get a set of graded and scored compliance reports for a node.

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
object (options)

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "options": {
    }
}

Response samples

Content type
application/json
[
  • {
    }
]

Grade Report

Get graded compliance report

Authorizations:
None
Request Body schema: application/json

request body

reportId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
object (configuration_manager_goldenConfigData_reportGradingOptions)

Responses

Request samples

Content type
application/json
{
  • "reportId": "5c35355dbebaa82eaf8113f0",
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "id": "5c35355dbebaa82eaf8113f0",
  • "batchId": "5c35355dbebaa82eaf8113f0",
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "deviceType": "cisco-ios",
  • "specId": "5c35355dbebaa82eaf8113f0",
  • "inheritedSpecIds": [
    ],
  • "deviceName": "xr9kv-atl",
  • "variables": [
    ],
  • "timestamp": "2019-04-12T14:42:47.958Z",
  • "totals": {
    },
  • "issues": [
    ],
  • "score": 0,
  • "grade": "pass"
}

Get historical graded compliance reports.

Get historical graded compliance reports for a device on a node.

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
nodePath
string (configuration_manager_goldenConfigData_goldenConfigNodePath)
deviceName
string (configuration_manager_deviceData_deviceName)
object (configuration_manager_goldenConfigData_gradeDeviceComplianceHistoryOptions)

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "deviceName": "xr9kv-atl",
  • "options": {
    }
}

Response samples

Content type
application/json
[
  • {
    }
]

Get historical graded compliance reports.

Get historical graded compliance reports for a task instance on a node.

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
nodePath
string (configuration_manager_goldenConfigData_goldenConfigNodePath)
taskId
string (taskId)
object (configuration_manager_goldenConfigData_gradeDeviceComplianceHistoryOptions)

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "taskId": "5f80bd24f8479975bb46054d",
  • "options": {
    }
}

Response samples

Content type
application/json
[
  • {
    }
]

Get historical graded compliance reports with pagination support.

Get historical graded compliance reports for a device on a node with pagination support.

Authorizations:
None
Request Body schema: application/json

request body

treeId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
version
string (configuration_manager_goldenConfigData_goldenConfigTreeVersionName)
nodePath
string (configuration_manager_goldenConfigData_goldenConfigNodePath)
object (filter)
object (configuration_manager_goldenConfigData_gradeDeviceComplianceHistoryOptions)

Responses

Request samples

Content type
application/json
{
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "filter": {
    },
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "total": 0,
  • "history": [
    ]
}

Get compliance report metadata for a batch.

Get compliance report metadata by batch ID.

Authorizations:
None
path Parameters
batchId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

batchId

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get compliance report metadata for a batch.

Get compliance report metadata by batch ID.

Authorizations:
None
path Parameters
batchId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

batchId

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Compliance Reports totals for a Device.

Compliance Reports totals for a Device.

Authorizations:
None
Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
[
  • {
    }
]

Compliance Reports totals for a Backup.

Compliance Reports totals for a Backup.

Authorizations:
None
Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
[
  • {
    }
]

Compliance Reports totals for a Task Instance.

Compliance Reports totals for a Task Instance.

Authorizations:
None
Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
[
  • {
    }
]

Get Compliance Report

Get the details of a particular compliance report

Authorizations:
None
path Parameters
reportId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

reportId

Responses

Response samples

Content type
application/json
{
  • "id": "5c35355dbebaa82eaf8113f0",
  • "batchId": "5c35355dbebaa82eaf8113f0",
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "deviceType": "cisco-ios",
  • "specId": "5c35355dbebaa82eaf8113f0",
  • "inheritedSpecIds": [
    ],
  • "deviceName": "xr9kv-atl",
  • "variables": [
    ],
  • "timestamp": "2019-04-12T14:42:47.958Z",
  • "totals": {
    },
  • "issues": [
    ],
  • "score": 0
}

Get JSON Compliance Report

Get the details of a particular JSON compliance report

Authorizations:
None
path Parameters
reportId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

reportId

Responses

Response samples

Content type
application/json
{
  • "id": "5c35355dbebaa82eaf8113f0",
  • "batchId": "5c35355dbebaa82eaf8113f0",
  • "treeId": "5c35355dbebaa82eaf8113f0",
  • "version": "initial",
  • "nodePath": "base",
  • "deviceType": "cisco-ios",
  • "specId": "5c35355dbebaa82eaf8113f0",
  • "inheritedSpecIds": [
    ],
  • "deviceName": "xr9kv-atl",
  • "variables": [
    ],
  • "timestamp": "2019-04-12T14:42:47.958Z",
  • "totals": {
    },
  • "issues": [
    ],
  • "score": 0
}

Get details of a particular set of compliance checks.

Get details of a particular set of compliance checks.

Authorizations:
None
Request Body schema: application/json

request body

reportIds
Array of strings (reportIds) [ items^[0-9a-f]{24}$ ]

Responses

Request samples

Content type
application/json
{
  • "reportIds": [
    ]
}

Response samples

Content type
application/json
[
  • {
    }
]

Get the top issues from compliance reports

Get the top most offending issues from all latest compliance reports

Authorizations:
None
Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
[
  • {
    }
]

Get the top issues from JSON compliance reports

Get the top most offending issues from all latest JSON compliance reports

Authorizations:
None
Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
[
  • { }
]

Alters a device configuration

Apply specified changes to a device configuration

Authorizations:
None
path Parameters
deviceName
required
string (name)
Examples: xr9kv-atl

deviceName

Request Body schema: application/json

request body

Array of objects (changes)

Responses

Request samples

Content type
application/json
{
  • "changes": [
    ]
}

Response samples

Content type
application/json
{
  • "response": [
    ]
}

Alters a device configuration

Apply specified changes to a device configuration with additional options

Authorizations:
None
path Parameters
deviceName
required
string (name)
Examples: xr9kv-atl

deviceName

Request Body schema: application/json

request body

Array of objects (changes)
object (options)

Responses

Request samples

Content type
application/json
{
  • "changes": [
    ],
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "response": [
    ]
}

Converts patch data to native config.

Converts the config patch data into a readable native config.

Authorizations:
None
Request Body schema: application/json

request body

deviceType
string (deviceType)
Array of objects (changes)

Responses

Request samples

Content type
application/json
{
  • "deviceType": "cisco-ios",
  • "changes": [
    ]
}

Response samples

Content type
application/json
{
  • "config": "interface Loopback01\n description loopback01",
  • "changes": [
    ]
}

Call Adapter Method

Perform south bound specific logic via direct adapter call(s)

Authorizations:
None
path Parameters
device
required
string (name)
Examples: xr9kv-atl

device name

origin
required
string (origin)
Examples: nso46 ansible-us

origin name

action
required
string (action)
Examples: checkSync

adapter action/function to be called

Responses

Response samples

Content type
application/json
{ }

Creates a device template

Creates a new device template in pronghorn

Authorizations:
None
Request Body schema: application/json

request body

name
string (name)
template
string (template)
variables
object (variables)
object (options)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "template": "interface Loopback1\n description {{ description }}",
  • "variables": { },
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "result": "success",
  • "data": {
    }
}

Updates a device template

Updates a new device template in pronghorn

Authorizations:
None
Request Body schema: application/json

request body

id
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
object (data)
object (options)

Responses

Request samples

Content type
application/json
{
  • "id": "5c35355dbebaa82eaf8113f0",
  • "data": {
    },
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "updated": 2
}

Delete one or more device template(s) by Id

This API call will delete device templates based on given Ids

Authorizations:
None
Request Body schema: application/json

request body

templateIds
Array of strings (templateIds) [ items^[0-9a-f]{24}$ ]

Responses

Request samples

Content type
application/json
{
  • "templateIds": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "deleted": 0
}

Gets a device template

Gets a new device template in pronghorn

Authorizations:
None
Request Body schema: application/json

request body

name
string (name)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "options": { }
}

Response samples

Content type
application/json
{
  • "total": 1,
  • "list": [
    ]
}

Import device config template documents

Insert device config template documents into the device_templates collection

Authorizations:
None
Request Body schema: application/json

request body

templates
Array of any (templates)

Responses

Request samples

Content type
application/json
{
  • "templates": {
    }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "2 device template imported successfully"
}

Apply a device config

This API call will apply a configuration to a specified device

Authorizations:
None
path Parameters
deviceName
required
string (name)
Examples: xr9kv-atl

Device name

Request Body schema: application/json

request body

object (configuration_manager_deviceData_deviceConfiguration)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "config": {
    },
  • "options": { }
}

Response samples

Content type
application/json
{ }

Apply a device config template

This API call will apply a configuration template to a specified device

Authorizations:
None
Request Body schema: application/json

request body

deviceName
string (configuration_manager_deviceData_deviceName)
templateId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "deviceName": "xr9kv-atl",
  • "templateId": "5c35355dbebaa82eaf8113f0",
  • "options": { }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "result": [
    ],
  • "chosenAdapter": "IAG"
}

Get operational data for a device Deprecated

Gets all the operational data for the specified device

Authorizations:
None
path Parameters
deviceName
required
string (name)
Examples: xr9kv-atl

Device name

Request Body schema: application/json

request body

object (options)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
{ }

Import compliance plan documents

Insert compliance plan documents into the ucm_compliance_plans collection

Authorizations:
None
Request Body schema: application/json

request body

Array of objects (plans)

Responses

Request samples

Content type
application/json
{
  • "plans": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "2 compliance plan(s) imported successfully."
}

Creates a compliance plan

Creates a compliance plan which can be used to execute compliance reports

Authorizations:
None
Request Body schema: application/json

request body

name
string (name)
object (options)

Responses

Request samples

Content type
application/json
{
  • "name": "Firewall Policies",
  • "options": {
    }
}

Response samples

Content type
application/json
{ }

Updates a compliance plan

Updates a compliance plan that already exists

Authorizations:
None
Request Body schema: application/json

request body

planId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
object (options)

Responses

Request samples

Content type
application/json
{
  • "planId": "5c35355dbebaa82eaf8113f0",
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Compliance Plan updated"
}

Delete compliance plans

Delete the specified compliance plans

Authorizations:
None
Request Body schema: application/json

request body

planIds
Array of strings (planIds) [ items^[0-9a-f]{24}$ ]

Responses

Request samples

Content type
application/json
{
  • "planIds": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "deleted": 1
}

Fetches a compliance plan

Fetches a compliance plan with the provided ID

Authorizations:
None
path Parameters
planId
required
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Examples: 5c35355dbebaa82eaf8113f0

planId

Responses

Response samples

Content type
application/json
{
  • "_id": "67ead2e85f12757d048a48dd",
  • "name": "Cisco IOS",
  • "description": "",
  • "throttle": 5,
  • "nodes": [
    ],
  • "gbac": {
    },
  • "created": "2025-03-31T17:37:44.892Z",
  • "createdBy": "67d3108eddcf3e66cc0efbac",
  • "updated": "2025-03-31T18:58:10.764Z",
  • "updatedBy": "67d3108eddcf3e66cc0efbac"
}

Search all Compliance Plans

Gets a list of all Compliance Plans that match the search criteria

Authorizations:
None
Request Body schema: application/json

request body

name
string (name)
object (options)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "totalCount": 10,
  • "groups": [
    ]
}

Search all Compliance Plan instances

Gets a list of all Compliance Plan Instances that match the search criteria

Authorizations:
None
Request Body schema: application/json

request body

searchParams (object) or searchParams (object) or searchParams (object) (searchParams)

Responses

Request samples

Content type
application/json
{
  • "searchParams": {
    }
}

Response samples

Content type
application/json
{
  • "totalCount": 10,
  • "groups": {
    }
}

Adds node(s) to a compliance plan

Adds new node(s) to an already existing compliance plan

Authorizations:
None
Request Body schema: application/json

request body

planId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
Array of objects (nodes)
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "planId": "5c35355dbebaa82eaf8113f0",
  • "nodes": [
    ],
  • "options": { }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Successfully added node(s) to compliance plan"
}

Removes node(s) from a compliance plan

Removes new node(s) from an already existing compliance plan

Authorizations:
None
Request Body schema: application/json

request body

planId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
nodeIds
Array of strings (nodeIds) [ items^[0-9a-f]{24}$ ]
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "planId": "5c35355dbebaa82eaf8113f0",
  • "nodeIds": [
    ],
  • "options": { }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Successfully removed node(s) to compliance plan"
}

Runs a compliance plan

This API call will create WF job that will execute the compliance plan

Authorizations:
None
Request Body schema: application/json

request body

planId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
options
object (options)

Responses

Request samples

Content type
application/json
{
  • "planId": "5c35355dbebaa82eaf8113f0",
  • "options": { }
}

Response samples

Content type
application/json
{
  • "message": "Successfully started compliance plan.",
  • "planId": "67ead2e85f12757d048a48dd",
  • "instanceId": "67ead32c5f12757d048a48de"
}

Update properties of a compliance plan instance

Update properties of the specified compliance plan instance

Authorizations:
None
Request Body schema: application/json

request body

planId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
instanceId
string (configuration_manager_common_mongoObjectId) ^[0-9a-f]{24}$
object (options)

Responses

Request samples

Content type
application/json
{
  • "planId": "5c35355dbebaa82eaf8113f0",
  • "instanceId": "5c35355dbebaa82eaf8113f0",
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Compliance Run Report updated"
}

Customization

Get banner.

Get banner for customization

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "result": {
    }
}

Update the banner.

Update the banner

Authorizations:
None
Request Body schema: application/json

updates

_id
string^[0-9a-f]{24}$

String representation of a MongoDB ObjectId

active
required
boolean

A flag indicating if the banner will be displayed to users

text
required
string

Text in the banner when displayed

backgroundColor
string

The background color for the banner displayed

dismissible
required
boolean

A flag indicating if a banner should be dismissible by users

startTime
required
string^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z$

An ISO Timestring value indicating when the banner will show

endTime
string^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z$

A, ISO Timestring value indicating when the banner will no longer show

allPages
required
boolean

A flag indicating if the banner should show on all pages or only the IAP home page

image
string

A base64 image string containing the image that will be shown on the banner

messageLastUpdated
string^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z$

An ISO Timestring value indicating when the banner message was last updated

Responses

Request samples

Content type
application/json
{
  • "_id": "5cb7b531d06cceb89fd21b1c",
  • "active": true,
  • "text": "string",
  • "backgroundColor": "#fff",
  • "dismissible": true,
  • "startTime": "2018-08-02T15:56:12.912Z",
  • "endTime": "2018-08-02T15:56:12.912Z",
  • "allPages": true,
  • "image": "string",
  • "messageLastUpdated": "2018-08-02T15:56:12.912Z"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Device Counts

Get device count history

Get device count history

Authorizations:
None
query Parameters
skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

order
string
Default: "newest"
Enum: "newest" "oldest"

order

serverId
string

The server ID where the device counts came from

before
integer

The timestamp in milliseconds used as an upper range. Should be higher than the after value.

after
integer

The timestamp in milliseconds used as a lower range. Should be lower than the after value.

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "total": 1
}

Refresh device count history

Refresh device count history

Authorizations:
None

Responses

Response samples

Content type
application/json
null

Git

Retrieve a project from Git

Retrieve a project from Git

Authorizations:
None
path Parameters
gitType
required
string (iap_git-common_type)
Enum: "GitHub" "GitLab"

The name of the Git provider that is used

repoPath
required
string (repoPath)
Examples: github-organization gitlabGroup%2FsubGroup

The path in Git to the repository

branchName
required
string (branchName)
Examples: main

The name of the branch that is used.

projectPath
required
string (repoPath)
Examples: directory%2Fproject.json example.json

The file path within a Git repository to a project file

Responses

Response samples

Content type
application/json
{ }

Initialize a project in Git

Initialize a project in Git

Authorizations:
None
path Parameters
gitType
required
string (iap_git-common_type)
Enum: "GitHub" "GitLab"

The name of the Git provider that is used

repoPath
required
string (repoPath)
Examples: github-organization gitlabGroup%2FsubGroup

The path in Git to the repository

branchName
required
string (branchName)
Examples: main

The name of the branch that is used.

projectPath
required
string (repoPath)
Examples: directory%2Fproject.json example.json

The file path within a Git repository to a project file

project
required
object (project)

The project document being pushed to Git

Request Body schema: application/json

request body

commitMessage
string (iap_git-common_commitMessage)

The commit message sent to Git when updating a project

Responses

Request samples

Content type
application/json
{
  • "commitMessage": "This is an example commit message."
}

Response samples

Content type
application/json
{
  • "message": "Successfully initialized project",
  • "data": { }
}

Update a project in Git

Update a project in Git

Authorizations:
None
path Parameters
gitType
required
string (iap_git-common_type)
Enum: "GitHub" "GitLab"

The name of the Git provider that is used

repoPath
required
string (repoPath)
Examples: github-organization gitlabGroup%2FsubGroup

The path in Git to the repository

branchName
required
string (branchName)
Examples: main

The name of the branch that is used.

projectPath
required
string (repoPath)
Examples: directory%2Fproject.json example.json

The file path within a Git repository to a project file

project
required
object (project)

The project document being pushed to Git

Request Body schema: application/json

request body

commitMessage
string (iap_git-common_commitMessage)

The commit message sent to Git when updating a project

Responses

Request samples

Content type
application/json
{
  • "commitMessage": "This is an example commit message."
}

Response samples

Content type
application/json
{
  • "message": "Successfully updated project",
  • "data": { }
}

Create a new branch in a repository

Create a new branch in a repository

Authorizations:
None
path Parameters
gitType
required
string (iap_git-common_type)
Enum: "GitHub" "GitLab"

The name of the Git provider that is used

repoPath
required
string (repoPath)
Examples: github-organization gitlabGroup%2FsubGroup

The path in Git to the repository

Request Body schema: application/json

request body

originBranch
string (iap_git-common_branchName)

The name of the branch inside a Git repository

newBranch
string (iap_git-common_branchName)

The name of the branch inside a Git repository

Responses

Request samples

Content type
application/json
{
  • "originBranch": "main",
  • "newBranch": "main"
}

Response samples

Content type
application/json
{
  • "message": "Successfully created branch: exampleBranch"
}

List the available branches for a repository

List the available branches for a repository

Authorizations:
None
path Parameters
gitType
required
string (iap_git-common_type)
Enum: "GitHub" "GitLab"

The name of the Git provider that is used

repoPath
required
string (repoPath)
Examples: github-organization gitlabGroup%2FsubGroup

The path in Git to the repository

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a new repository in Git for storing projects

Create a new repository in Git for storing projects

Authorizations:
None
path Parameters
gitType
required
string (iap_git-common_type)
Enum: "GitHub" "GitLab"

The name of the Git provider that is used

repoPath
required
string (repoPath)
Examples: github-organization gitlabGroup%2FsubGroup

The path in Git to the repository

Request Body schema: application/json

request body

repoName
string (repoName)

Responses

Request samples

Content type
application/json
{
  • "repoName": "RepositoryName"
}

Response samples

Content type
application/json
{
  • "message": "`Successfully created repository: ExampleRepo",
  • "data": {
    }
}

Group Mappings

Get all group mappings.

Get all group mappings

Authorizations:
None
query Parameters
multiContains
object

multiContains

multiEquals
object

multiEquals

multiStartsWith
object

multiStartsWith

expand
string (List of fields to get expanded data)
Examples: expand=iapGroups

Sets the fields to expand

skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

sort
string (iap_common-schema_sort)
Default: "name"
Value: "name"

sort

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "total": 1
}

Create a group mapping.

Create a group mapping

Authorizations:
None
Request Body schema: application/json

request body

object (iap_mapping-schema)

This is the schema for an IAP group mapping stored in Mongo

Responses

Request samples

Content type
application/json
{
  • "groupMapping": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Get an individual group mapping.

Get an individual group mapping

Authorizations:
None
path Parameters
provenance
required
string (provenance)

The provenance for the requested group mapping.

externalGroup
required
string (externalGroup)

The name of the external group that is mapped.

Responses

Response samples

Content type
application/json
{
  • "externalGroup": "string",
  • "provenance": "Okta",
  • "iapGroups": [
    ]
}

Update a group mapping.

Update a group mapping

Authorizations:
None
path Parameters
provenance
required
string (provenance)

The provenance for the requested group mapping.

externalGroup
required
string (externalGroup)

The individual group mapping to update.

Request Body schema: application/json

request body

object (updates)

Responses

Request samples

Content type
application/json
{
  • "updates": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Delete a group mapping.

Delete a group mapping

Authorizations:
None
path Parameters
provenance
required
string (provenance)

The provenance for the requested group mapping.

externalGroup
required
string (externalGroup)

The individual group mapping to delete.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Health

Get the health of a single adapter.

Get the health of a single adapter in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name for the selected adapter.

Responses

Response samples

Content type
application/json
{
  • "id": "AdminEssentials",
  • "package_id": "@itential/adapter-local_aaa",
  • "version": "0.0.1",
  • "type": "Adapter",
  • "description": "A basic description",
  • "state": "DEAD",
  • "connection": { },
  • "uptime": 2245.9722,
  • "memoryUsage": {
    },
  • "cpuUsage": {
    },
  • "pid": 7125982,
  • "logger": {
    },
  • "routePrefix": "admin",
  • "prevUptime": 2245.9722
}

Get the health of a single application.

Get the health of a single application in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name for the selected application.

Responses

Response samples

Content type
application/json
{
  • "id": "AdminEssentials",
  • "package_id": "@itential/adapter-local_aaa",
  • "version": "0.0.1",
  • "type": "Adapter",
  • "description": "A basic description",
  • "state": "DEAD",
  • "connection": { },
  • "uptime": 2245.9722,
  • "memoryUsage": {
    },
  • "cpuUsage": {
    },
  • "pid": 7125982,
  • "logger": {
    },
  • "routePrefix": "admin",
  • "prevUptime": 2245.9722
}

Get the health of all the adapters.

Get the health of all the adapters in IAP.

Authorizations:
None
query Parameters
contains
string
Examples: contains=redis

contains

containsField
string
Examples: containsField=name

containsField

equals
string
Examples: equals=redis

equals

equalsField
string
Examples: equalsField=name

equalsField

startsWith
string
Examples: startsWith=redis

startsWith

startsWithField
string
Examples: startsWithField=name

startsWithField

skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

sort
string (iap_common-schema_sort)
Default: "name"
Value: "name"

sort

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "total": 1
}

Get the health of all the applications.

Get the health of all the applications in IAP.

Authorizations:
None
query Parameters
contains
string
Examples: contains=redis

contains

containsField
string
Examples: containsField=name

containsField

equals
string
Examples: equals=redis

equals

equalsField
string
Examples: equalsField=name

equalsField

startsWith
string
Examples: startsWith=redis

startsWith

startsWithField
string
Examples: startsWithField=name

startsWithField

skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

sort
string (iap_common-schema_sort)
Default: "name"
Value: "name"

sort

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "total": 1
}

Get the health of the server.

Get the health of the server.

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "version": "0.0.1",
  • "release": "0.0.1",
  • "arch": "arm",
  • "platform": "aix",
  • "versions": {
    },
  • "memoryUsage": {
    },
  • "cpuUsage": {
    },
  • "uptime": 2245.9722,
  • "pid": 7125982,
  • "dependencies": {
    }
}

Get the health of the system.

Get the health of the system.

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "arch": "x64",
  • "release": "0.0.1",
  • "uptime": 12539,
  • "freemem": 14377422848,
  • "totalmem": 34359738368,
  • "loadavg": [
    ],
  • "cpus": [
    ]
}

Get status.

Get status of current IAP.

query Parameters
exclude-services
boolean (exclude-services)

When set to true, this method will skip its liveness check against downstream services

Responses

Response samples

Content type
application/json
{
  • "host": "string",
  • "serverId": "string",
  • "services": [
    ],
  • "timestamp": 0,
  • "apps": "running",
  • "adapters": "running"
}

Help

Documentation Help

Generate documentation for adapters

Generate an HTML documentation page for adapters

Authorizations:
None

Responses

Response samples

Content type
application/json
"string"

Generate documentation for brokers

Generate an HTML documentation page for brokers

Authorizations:
None

Responses

Response samples

Content type
application/json
"string"

Generate documentation for applications

Generate an HTML documentation page for applications

Authorizations:
None

Responses

Response samples

Content type
application/json
"string"

Generate an OpenAPI v3 document for IAP

Generate an OpenAPI v3.1.0 document for IAP

Authorizations:
None
query Parameters
url
string
Examples: url=http://localhost:3000

url

Responses

Response samples

Content type
application/json
{ }

Indexes

Get all pre-defined indexes.

Get all pre-defined indexes to be used in Mongo.

Authorizations:
None
query Parameters
application
string
Examples: application=@itential/app-workflow_engine

application

Responses

Response samples

Content type
application/json
{
  • "property1": [
    ],
  • "property2": [
    ]
}

Check the status of a collection's indexes in Mongo

Check the status of pre-defined indexes for a specific collection.

Authorizations:
None
path Parameters
collection
required
string (collection)

The name of a collection in Mongo.

Responses

Response samples

Content type
application/json
{
  • "missing": [
    ],
  • "misnamed": [
    ],
  • "external": [
    ],
  • "indexed": 0,
  • "total": 1,
  • "collectionSize": 0,
  • "inProgress": true
}

Check the status of multiple collections' indexes in Mongo

Check the status of pre-defined indexes for multiple collections.

Authorizations:
None
query Parameters
Array of strings or string

collections

Responses

Response samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

Create a collection's indexes in Mongo

Create all pre-defined indexes for a specific collection.

Authorizations:
None
path Parameters
collection
required
string (collection)

The name of a collection in Mongo.

Responses

Response samples

Content type
application/json
{
  • "unchanged": 0,
  • "changed": 0,
  • "total": 1,
  • "running": true
}

Integration Models

Create a new integration model.

Create a new integration model in IAP.

Authorizations:
None
Request Body schema: application/json

request body

model
any (model)

Refer to OpenAPI specifications for the structure of an OpenAPI document.

Responses

Request samples

Content type
application/json
{
  • "model": null
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": { }
}

Get all integration models.

Get all the integration models in IAP.

Authorizations:
None
query Parameters
contains
string
Examples: contains=git contains=hub contains=v5

Filter the response based on each item that includes the provided query.

containsField
string
Value: "versionId"

containsField

equals
string
Examples: equals=GitHub:v5

Filter the response based on each item that is an exact match to the provided query.

equalsField
string
Value: "versionId"

equalsField

startsWith
string
Examples: startsWith=g

Filter the response based on each item that starts with the provided query.

startsWithField
string
Value: "versionId"

startsWithField

skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

sort
string
Value: "versionId"

Field to sort by. Default is versionId.

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

Responses

Response samples

Content type
application/json
{
  • "integrationModels": {
    },
  • "total": 1
}

Update an integration model.

Update an integration model in IAP.

Authorizations:
None
Request Body schema: application/json

request body

model
any (model)

Refer to OpenAPI specifications for the structure of an OpenAPI document.

Responses

Request samples

Content type
application/json
{
  • "model": null
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": { }
}

Delete an integration model.

Delete an integration model from IAP.

Authorizations:
None
path Parameters
name
required
string (name)
Examples: GitHub:v5

The name of the integration model.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Get a specific integration model.

Get a specific integration model in IAP.

Authorizations:
None
path Parameters
name
required
string (name)
Examples: Gitlab:v5

The name of the integration model.

Responses

Response samples

Content type
application/json
{
  • "model": "@itential/adapter_GitHub:v5",
  • "versionId": "GitHub:v5",
  • "description": "A standard description about the integration model",
  • "properties": { }
}

Export an integration model.

Export an integration model's open API spec.

Authorizations:
None
path Parameters
name
required
string (name)
Examples: GitHub:v5

The name of the integration model.

Responses

Response samples

Content type
application/json
{ }

Gets an integration model's security schemes.

Projection simplification for exportIntegrationModel

Authorizations:
None
path Parameters
name
required
string (name)
Examples: GitHub:v5

The name of the integration model.

Responses

Response samples

Content type
application/json
{ }

Validate an integration model.

Validate an integration model.

Authorizations:
None
Request Body schema: application/json

request body

model
any (model)

Refer to OpenAPI specifications for the structure of an OpenAPI document.

Responses

Request samples

Content type
application/json
{
  • "model": null
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "string"
}

Integrations

Create a new integration.

Create a new integration in IAP.

Authorizations:
None
Request Body schema: application/json

request body

object (properties)

Responses

Request samples

Content type
application/json
{
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Get all integrations.

Get all integrations in IAP.

Authorizations:
None
query Parameters
contains
string
Examples: contains=GitHub

contains

containsField
string
Examples: containsField=name

containsField

equals
string
Examples: equals=GitHub

equals

equalsField
string
Examples: equalsField=name

equalsField

startsWith
string
Examples: startsWith=GitHub

startsWith

startsWithField
string
Examples: startsWithField=name

startsWithField

skip
integer (iap_common-schema_skip) >= 0
Default: 0
Examples: skip=1 skip=10 skip=50

skip

limit
integer (iap_common-schema_limit) >= 0
Default: 25
Examples: limit=1 limit=10 limit=50

limit

sort
string (iap_common-schema_sort)
Default: "name"
Value: "name"

sort

order
integer (iap_common-schema_order)
Default: 1
Enum: -1 1

order

skipActiveSync
boolean
Default: false

skipActiveSync

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "total": 1
}

Delete an integration.

Delete an integration from IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected integration.

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message"
}

Get a single integration.

Get a single integration in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected integration.

Responses

Response samples

Content type
application/json
{
  • "metadata": {
    },
  • "data": {
    }
}

Update an integration.

Update an integration in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

Contains the name for the selected integration.

Request Body schema: application/json

request body

object (properties)

Responses

Request samples

Content type
application/json
{
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Posts an access token with an Authorization Code

Initiates the Authorization Code exchange for an access token and stores the change

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name of the selected integration.

Request Body schema: application/json

request body

authorizationCode
string (authorizationCode)
redirectUri
string (redirectUri)

Responses

Request samples

Content type
application/json
{
  • "authorizationCode": "string",
  • "redirectUri": "string"
}

Response samples

Content type
application/json
{ }

Update the properties of an integration.

Update the properties of an integration in IAP.

Authorizations:
None
path Parameters
name
required
string (Name) ^[^\/]+$
Default: ""
Examples: Local AAA

The name for the selected integration.

Request Body schema: application/json

request body

properties
any (properties)

Responses

Request samples

Content type
application/json
{
  • "properties": null
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "message": "A sample success message",
  • "data": {
    }
}

Inventory Manager

Inventory Manager health check

Returns health status for Inventory Manager

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": "ok"
}

Create a new inventory

Creates a new inventory with the specified name and optional properties

Authorizations:
None
Request Body schema: application/json

request body

name
string non-empty

The name of the inventory

description
string
groups
Array of strings
tags
Array of strings

Array of tag IDs associated with this inventory

Array of objects
createBrokerActions
boolean
Default: false

Automatically create built-in broker actions (get-config, set-config, run-command, is-alive) for device broker compatibility. Custom actions with the same name will override the default broker actions.

defaultClusterId
string

Default cluster ID for built-in broker actions. Required when createBrokerActions is enabled.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "groups": [
    ],
  • "tags": [
    ],
  • "actions": [
    ],
  • "createBrokerActions": false,
  • "defaultClusterId": "string"
}

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "message": "string"
}

Get all inventories with filtering and pagination

Returns a paginated list of inventories with optional filtering by name, groups, and node count

Authorizations:
None
query Parameters
page
number
Default: 1

page

pageSize
number
Default: 25

pageSize

sortField
string
Default: "lastUpdated"

sortField

sortOrder
number
Default: -1

sortOrder

search
string

search

names
Array of strings

names

groups
Array of strings

groups

tags
Array of strings

tags

minNodes
number

minNodes

maxNodes
number

maxNodes

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "error": "string"
}

Get a single inventory by identifier

Returns a single inventory document by ID or name

Authorizations:
None
path Parameters
required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Inventory ID or name

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "error": "string"
}

Delete an inventory

Deletes an inventory by ID

Authorizations:
None
path Parameters
required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Inventory ID or name

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "message": "string"
}

Get inventory manager overview statistics

Returns total count of inventories and nodes

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "error": "string"
}

Expand node identifiers into full node documents across multiple inventories

Return an array of all inventory node documents specified in the input 'nodes' array

Authorizations:
None
Request Body schema: application/json

request body

Array of objects
fields
Array of strings

Responses

Request samples

Content type
application/json
{
  • "nodes": [
    ],
  • "fields": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": [
    ],
  • "error": "string"
}

Build inventory filter structure for service execution based on tag selection

Selects nodes by tags and returns them grouped by inventory in the format expected by Gateway Manager's runService method. Returns inventory name with nodeNames array for partial matches, or inventory name only when all nodes are selected.

Authorizations:
None
Request Body schema: application/json

request body

inventoryIdentifiers
Array of arrays
tagIdentifiers
Array of arrays
tagMatchType
string
Default: "any"
Enum: "any" "all"
outputFormat
string
Default: "compact"
Enum: "compact" "explicit"

Responses

Request samples

Content type
application/json
{
  • "inventoryIdentifiers": [ ],
  • "tagIdentifiers": [ ],
  • "tagMatchType": "any",
  • "outputFormat": "compact"
}

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": [
    ],
  • "error": "string"
}

Get all nodes with filtering and pagination

Returns a paginated list of nodes with optional filtering by name, type, and inventory

Authorizations:
None
query Parameters
page
number
Default: 1

page

pageSize
number
Default: 25

pageSize

sortField
string
Default: "updated_at"

sortField

sortOrder
number
Default: -1

sortOrder

search
string

search

inventory_identifier
string

inventory_identifier

types
Array of strings

types

tags
Array of strings

tags

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "error": "string"
}

Get all nodes for a specific inventory

Returns a paginated list of nodes for a specific inventory with optional filtering

Authorizations:
None
path Parameters
required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Inventory ID or name

query Parameters
page
number
Default: 1

page

pageSize
number
Default: 25

pageSize

sortField
string
Default: "updated_at"

sortField

sortOrder
number
Default: -1

sortOrder

search
string

search

types
Array of strings

types

tags
Array of strings

tags

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "error": "string"
}

Get a single node by identifier

Returns a single node document by ID or name within the specified inventory

Authorizations:
None
path Parameters
required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Inventory ID or name

required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Node ID or name

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "error": "string"
}

Populate inventory with nodes (clears existing nodes first)

Bulk insert nodes into an inventory. All existing nodes in the inventory are cleared before the new nodes are inserted.

Authorizations:
None
Request Body schema: application/json

request body

inventoryIdentifier (string) or inventoryIdentifier (string) (inventory_manager_common_inventoryIdentifier)
Array of objects (Inventory Node Database Schema)

Responses

Request samples

Content type
application/json
{
  • "inventory_identifier": "string",
  • "nodes": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "message": "string"
}

Clear all nodes from an inventory

Removes all nodes from the specified inventory

Authorizations:
None
path Parameters
required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Inventory ID or name to clear nodes from

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "message": "string"
}

Get all tags with filtering and pagination

Returns a paginated list of tags with optional filtering by name

Authorizations:
None
query Parameters
page
number
Default: 1

page

pageSize
number
Default: 25

pageSize

sortField
string
Default: "updated_at"

sortField

sortOrder
number
Default: -1

sortOrder

search
string

search

names
Array of strings

names

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "error": "string"
}

Get a single tag by identifier

Returns a single tag document by ID or name

Authorizations:
None
path Parameters
required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Tag ID or name

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "error": "string"
}

Get usage statistics for a tag

Returns usage statistics showing how many inventories and nodes use this tag

Authorizations:
None
path Parameters
required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Tag ID or name

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "error": "string"
}

Find inventories and nodes by tags

Returns inventories and nodes that have the specified tags

Authorizations:
None
Request Body schema: application/json

request body

tagIdentifiers
Array of strings non-empty
object

Responses

Request samples

Content type
application/json
{
  • "tagIdentifiers": [
    ],
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "error": "string"
}

Create a new inventory action

Creates a new action document in the inventory management system

Authorizations:
None
path Parameters
required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Inventory ID or name

Request Body schema: application/json

request body

name
required
string

Action name

action_type
required
string

Action type (e.g. iag5-service)

action_config
object
action_parameters
object

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "action_type": "string",
  • "action_config": { },
  • "action_parameters": { }
}

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "message": "string"
}

Get all actions for a specific inventory

Returns a paginated list of actions for a specific inventory with optional filtering

Authorizations:
None
path Parameters
required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Inventory ID or name

query Parameters
page
number
Default: 1

page

pageSize
number
Default: 25

pageSize

sortField
string
Default: "updated_at"

sortField

sortOrder
number
Default: -1

sortOrder

search
string

search

action_types
Array of strings

action_types

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "error": "string"
}

Get all inventory actions with filtering and pagination

Returns a paginated list of actions with optional filtering by name, type, and inventory

Authorizations:
None
query Parameters
page
number
Default: 1

page

pageSize
number
Default: 25

pageSize

sortField
string
Default: "updated_at"

sortField

sortOrder
number
Default: -1

sortOrder

search
string

search

inventory_identifier
string

inventory_identifier

action_types
Array of strings

action_types

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "error": "string"
}

Get a single inventory action by identifier

Returns a single action document by ID or name

Authorizations:
None
path Parameters
required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Inventory ID or name

required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Action ID or name

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "error": "string"
}

Delete an inventory action

Deletes an action by ID or name

Authorizations:
None
path Parameters
required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Inventory ID or name

required
inventoryIdentifier (string) or inventoryIdentifier (string) (inventoryIdentifier)

Action ID or name

Responses

Response samples

Content type
application/json
{
  • "status": "Success",
  • "result": {
    },
  • "message": "string"
}

JSON Forms

An application to create, edit, and publish forms based on JSON documents.

Creates a Json Form

Creates a new JSON form document with a unique name.

Authorizations:
None
Request Body schema: application/json

request body

name
string (name)
description
string (description)
object (json-forms_formStruct)
object (json-forms_formSchema_container)
object (json-forms_formUISchema_container)
bindingSchema
object (json-forms_formBindingSchema_bindingSchema)
validationSchema
object (json-forms_formValidationSchema_validationSchema)

Responses

Request samples

Content type
application/json
{
  • "name": "Device Form",
  • "description": "This form describes the connection information for a device.",
  • "struct": {
    },
  • "schema": {
    },
  • "uiSchema": { },
  • "bindingSchema": { },
  • "validationSchema": { }
}

Response samples

Content type
application/json
{
  • "_id": "5cb5252a1bbc5a00def564c1",
  • "created": "2019-04-16T00:43:22.038Z",
  • "createdBy": "5cb08d4f16640f00182c3890",
  • "lastUpdated": "2019-04-16T00:43:22.038Z",
  • "lastUpdatedBy": "5cb08d4f16640f00182c3890",
  • "name": "Device Form",
  • "tags": [
    ],
  • "description": "This form describes the connection information for a device.",
  • "struct": {
    },
  • "schema": {
    },
  • "uiSchema": { },
  • "validationSchema": { },
  • "bindingSchema": { },
  • "version": "2020.1",
  • "id": "5cb5252a1bbc5a00def564c1",
  • "namespace": { }
}

Returns all forms

Returns all JSON form documents that have previously been created.

Authorizations:
None

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Deletes a forms

Delete a list of JSON Forms from IAP.

Authorizations:
None
Request Body schema: application/json

request body

ids
Array of strings (ids)

Responses

Request samples

Content type
application/json
{
  • "ids": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "n": 0
}

Finds a form

Finds a previously created JSON form, based on a supplied document ID.

Authorizations:
None
path Parameters
id
required
string (json-forms_formDocument_formId)
Examples: 5cb5252a1bbc5a00def564c1

Unique name of the form

Responses

Response samples

Content type
application/json
{
  • "_id": "5cb5252a1bbc5a00def564c1",
  • "created": "2019-04-16T00:43:22.038Z",
  • "createdBy": "5cb08d4f16640f00182c3890",
  • "lastUpdated": "2019-04-16T00:43:22.038Z",
  • "lastUpdatedBy": "5cb08d4f16640f00182c3890",
  • "name": "Device Form",
  • "tags": [
    ],
  • "description": "This form describes the connection information for a device.",
  • "struct": {
    },
  • "schema": {
    },
  • "uiSchema": { },
  • "validationSchema": { },
  • "bindingSchema": { },
  • "version": "2020.1",
  • "id": "5cb5252a1bbc5a00def564c1",
  • "namespace": { }
}

Updates a form

Updates a previously created JSON form, based on a supplied document ID and an object of fields to update.

Authorizations:
None
path Parameters
id
required
string (json-forms_formDocument_formId)
Examples: 5cb5252a1bbc5a00def564c1

The ID of the form.

Request Body schema: application/json

request body

object (json-forms_formDocument_form)

Responses

Request samples

Content type
application/json
{
  • "options": {
    }
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "Form updated"
}

Import form documents

Insert form documents into the forms collection from a user supplied JSON document.

Authorizations:
None
Request Body schema: application/json

request body

Array of objects (forms)

Responses

Request samples

Content type
application/json
{
  • "forms": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "success",
  • "message": "2 forms imported successfully",
  • "imported": [
    ]
}

Validates form data against its schema

Retrieves the JSON schema for a given form ID and validates the supplied form data again it.

Authorizations:
None
path Parameters
id
required
string (json-forms_formDocument_formId)
Examples: 5cb5252a1bbc5a00def564c1

Unique ID of the form

Request Body schema: application/json

request body

object (json-forms_formDocument_formData)

Responses

Request samples

Content type
application/json
{
  • "formData": { }
}

Response samples

Content type
application/json
{
  • "status": 200,
  • "validation": {
    },
  • "message": "Form data is valid."
}

Validates data against a schema.

Performs data validation, given a JSON schema and form data.

Authorizations:
None
Request Body schema: application/json

request body

boolean or object (json-forms_metaSchema)
object (json-forms_formDocument_formData)

Responses

Request samples

Content type
application/json
{
  • "jsonSchema": true,
  • "data": { }
}

Response samples

Content type
application/json
{
  • "status": 200,
  • "validation": {
    },
  • "message": "Form data is valid."
}

Converts YANG to JSON Schema.

onverts a list of YANG inputs into JSON Schemas

Authorizations:
None
Request Body schema: application/json

request body

yangData
Array of strings (yang)

Responses

Request samples

Content type
application/json
{
  • "yangData": [
    ]
}

Response samples

Content type
application/json
[
  • { }
]

Decodes an encoded JSON Schema.

Decodes an encoded JSON Schema.

Authorizations:
None
Request Body schema: application/json

request body

jsonSchema
object (jsonSchema)

Responses

Request samples

Content type
application/json
{
  • "jsonSchema": { }
}

Response samples

Content type
application/json
{ }

Lifecycle Manager

Cancels an action execution

Cancels an action execution, if targeting a bulk action execution, all its child executions will also be canceled.

Authorizations:
None
path Parameters
executionId
required
string (MongoDB.ObjectId) ^[0-9a-fA-F]{24}$
Examples: 62a1f3d2ebedfc54e6e0065c

executionId

Responses

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": {
    },
  • "metadata": {
    }
}

Creates a new instance group

Creates a new instance group

Authorizations:
None
path Parameters
required
lifecycle-manager_common_ObjectIdLikeString (string) or lifecycle-manager_common_name (string) (modelIdentifier)

modelIdentifier

Request Body schema: application/json

instanceGroup

One of
name
required
string non-empty

The name of the document

description
string

The description of the document

modelId
required
string^[0-9a-f]{24}$

A string which is formatted like an ObjectId, Distinct from an actual ObjectId.

type
any
Value: "manual"
instances
Array of strings[ items^[0-9a-f]{24}$ ]

Responses

Request samples

Content type
application/json
{
  • "name": "myCoolDocumentName",
  • "description": "Some helpful information about the document",
  • "modelId": "string",
  • "type": "dynamic",
  • "filter": {
    }
}

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": {
    },
  • "metadata": {
    }
}

Gets multiple instance groups

Gets multiple instance groups

Authorizations:
None
path Parameters
required
lifecycle-manager_common_ObjectIdLikeString (string) or lifecycle-manager_common_name (string) (modelIdentifier)

modelIdentifier

Responses

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": [
    ],
  • "metadata": {
    }
}

Creates a new resource model

Creates a new resource model

Authorizations:
None
Request Body schema: application/json

resourceModelData

name
required
string

The name of the resource model

description
string
Default: ""

Free-form text describing the resource model

schema
any

A draft-07 JSON Schema which defines the validation applied to instances of the resource model

Array of objects

Responses

Request samples

Content type
application/json
{
  • "name": "VLAN Service",
  • "description": "This resource model represents something we use on a day-to-day basis.",
  • "schema": null,
  • "actions": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": {
    },
  • "metadata": {
    }
}

Searches resource models

Searches resource models

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": [
    ],
  • "metadata": {
    }
}

Deletes an instance group

Deletes an instance group

Authorizations:
None
path Parameters
required
lifecycle-manager_common_ObjectIdLikeString (string) or lifecycle-manager_common_name (string) (modelIdentifier)

modelIdentifier

required
lifecycle-manager_common_ObjectIdLikeString (string) or lifecycle-manager_common_name (string) (groupIdentifier)

groupIdentifier

Responses

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": "null",
  • "metadata": {
    }
}

Gets a single instance group

Gets a single new instance group

Authorizations:
None
path Parameters
required
lifecycle-manager_common_ObjectIdLikeString (string) or lifecycle-manager_common_name (string) (modelIdentifier)

modelIdentifier

required
lifecycle-manager_common_ObjectIdLikeString (string) or lifecycle-manager_common_name (string) (groupIdentifier)

groupIdentifier

Responses

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": {
    },
  • "metadata": {
    }
}

Updates a instance group

Updates a instance group

Authorizations:
None
path Parameters
required
lifecycle-manager_common_ObjectIdLikeString (string) or lifecycle-manager_common_name (string) (modelIdentifier)

modelIdentifier

required
lifecycle-manager_common_ObjectIdLikeString (string) or lifecycle-manager_common_name (string) (groupIdentifier)

groupIdentifier

Request Body schema: application/json

updates

One of
name
string non-empty

The name of the document

description
string

The description of the document

modelId
string^[0-9a-f]{24}$

A string which is formatted like an ObjectId, Distinct from an actual ObjectId.

type
any
Value: "manual"
instances
Array of strings[ items^[0-9a-f]{24}$ ]
Array of strings or strings
Array of strings or strings

Responses

Request samples

Content type
application/json
{
  • "name": "myCoolDocumentName",
  • "description": "Some helpful information about the document",
  • "modelId": "string",
  • "type": "dynamic",
  • "filter": {
    },
  • "instancesToAdd": [
    ],
  • "instancesToRemove": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": {
    },
  • "metadata": {
    }
}

Deletes a resource model

A resource model will not be deleted if it has associated instances. To override this behavior and delete the resource model along with any associated instances, set the 'delete-associated-instances' flag to 'true'.

Authorizations:
None
path Parameters
id
required
string (MongoDB.ObjectId) ^[0-9a-fA-F]{24}$
Examples: 62a1f3d2ebedfc54e6e0065c

id

Request Body schema: application/json

request body

object (queryParameters)

Responses

Request samples

Content type
application/json
{
  • "queryParameters": {
    }
}

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": "null",
  • "metadata": {
    }
}

Gets a resource model based on id

Gets a resource model based on id

Authorizations:
None
path Parameters
id
required
string (MongoDB.ObjectId) ^[0-9a-fA-F]{24}$
Examples: 62a1f3d2ebedfc54e6e0065c

The ObjectId of the resource model

query Parameters
dereference
string

dereference

Responses

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": {
    },
  • "metadata": {
    }
}

Updates a resource model

Updates a resource model

Authorizations:
None
path Parameters
id
required
string (MongoDB.ObjectId) ^[0-9a-fA-F]{24}$
Examples: 62a1f3d2ebedfc54e6e0065c

id

Request Body schema: application/json

updates

object (updates)

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": "null",
  • "metadata": {
    }
}

Performs edits to a resource model

Performs edits to a resource model. This method exists to support specific resource edit activities required by the UI.

Authorizations:
None
path Parameters
modelId
required
string (MongoDB.ObjectId) ^[0-9a-fA-F]{24}$
Examples: 62a1f3d2ebedfc54e6e0065c

Resource model ID

Request Body schema: application/json

properties

One of
command
required
string
Enum: "generate-action-workflow" "generate-action-pre-transformation" "generate-action-post-transformation"

Edit command to execute

required
lifecycle-manager_resource-model-common_action-identifier (string) or lifecycle-manager_resource-model-common_action (object)

Resource action ID or pending action definition

overwrite
boolean

Tells the component generator to either disregard and overwrite an existing component on the action (when true) or to refuse to generate a new component (when false).

updateAction
boolean

Tells the component generator to either update the action in the database (when true) or to only generate and return the new component (when false)

Responses

Request samples

Content type
application/json
{
  • "command": "generate-action-workflow",
  • "action": "0a2f",
  • "overwrite": true,
  • "updateAction": true
}

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": "null",
  • "metadata": {
    }
}

Exports a resource instance

This method exports a resource instance.

Authorizations:
None
path Parameters
required
lifecycle-manager_common_ObjectIdLikeString (string) or lifecycle-manager_common_name (string) (modelIdentifier)

modelIdentifier

required
lifecycle-manager_common_ObjectIdLikeString (string) or lifecycle-manager_common_name (string) (instanceIdentifier)

instanceIdentifier

Responses

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": {
    },
  • "metadata": {
    }
}

Exports a resource model

This method exports a resource model.

Authorizations:
None
path Parameters
modelId
required
string (MongoDB.ObjectId) ^[0-9a-fA-F]{24}$
Examples: 62a1f3d2ebedfc54e6e0065c

modelId

Responses

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": {
    },
  • "metadata": {
    }
}

Gets a single action execution record

Gets a single action execution record

Authorizations:
None
path Parameters
id
required
string (MongoDB.ObjectId) ^[0-9a-fA-F]{24}$
Examples: 62a1f3d2ebedfc54e6e0065c

id

Responses

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": {
    },
  • "metadata": {
    }
}

Searches resource action history documents

Searches resource action history documents

Authorizations:
None

Responses

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": [
    ],
  • "metadata": {
    }
}

Gets a single resource instance

Gets a single resource instance

Authorizations:
None
path Parameters
modelId
required
string (MongoDB.ObjectId) ^[0-9a-fA-F]{24}$
Examples: 62a1f3d2ebedfc54e6e0065c

modelId

instanceId
required
string (MongoDB.ObjectId) ^[0-9a-fA-F]{24}$
Examples: 62a1f3d2ebedfc54e6e0065c

The identifier of the resource instance

Responses

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": {
    },
  • "metadata": {
    }
}

Updates the `name` and `description` fields of a resource instance

Updates the name and description fields of a resource instance

Authorizations:
None
path Parameters
modelId
required
string (MongoDB.ObjectId) ^[0-9a-fA-F]{24}$
Examples: 62a1f3d2ebedfc54e6e0065c

modelId

instanceId
required
string (MongoDB.ObjectId) ^[0-9a-fA-F]{24}$
Examples: 62a1f3d2ebedfc54e6e0065c

instanceId

Request Body schema: application/json

updates

name
string (lifecycle-manager_resource-instance-common_name)

The name of the resource instance

description
string (lifecycle-manager_resource-instance-common_description)

Free-form text describing the resource instance

Responses

Request samples

Content type
application/json
{
  • "name": "VLAN Service",
  • "description": "EC2 Instance in US-EAST-1 with ID ec2-12345678"
}

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": {
    },
  • "metadata": {
    }
}

Searches resource instances

Searches resource instances

Authorizations:
None
path Parameters
modelId
required
string (MongoDB.ObjectId) ^[0-9a-fA-F]{24}$
Examples: 62a1f3d2ebedfc54e6e0065c

modelId

Responses

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": [
    ],
  • "metadata": {
    }
}

Imports an instance into a resource

Imports an instance into a resource

Authorizations:
None
path Parameters
required
lifecycle-manager_common_ObjectIdLikeString (string) or lifecycle-manager_common_name (string) (modelIdentifier)

modelIdentifier

Request Body schema: application/json

instance

name
required
string

The name of the resource instance

description
required
string
Default: ""

Free-form text describing the resource instance

created
required
any

An ISO date string denoting when this resource instance was created

createdBy
required
any

The account identifier of the user who created this resource instance

lastUpdated
required
any

An ISO date string denoting when this resource instance was last updated

lastUpdatedBy
required
any

The account identifier of the user who last updated this resource instance

required
object or null

The data for the resource instance

Responses

Request samples

Content type
application/json
{
  • "name": "VLAN Service",
  • "description": "EC2 Instance in US-EAST-1 with ID ec2-12345678",
  • "created": null,
  • "createdBy": null,
  • "lastUpdated": null,
  • "lastUpdatedBy": null,
  • "instanceData": { }
}

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": {
    },
  • "metadata": {
    }
}

Imports a resource model

Imports a resource model

Authorizations:
None
Request Body schema: application/json

importParameters

required
object
overwrite
boolean

Responses

Request samples

Content type
application/json
{
  • "model": {
    },
  • "overwrite": true
}

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": {
    },
  • "metadata": {
    }
}

Runs a resource action

Runs a resource action

Authorizations:
None
path Parameters
modelId
required
string (MongoDB.ObjectId) ^[0-9a-fA-F]{24}$
Examples: 62a1f3d2ebedfc54e6e0065c

The ID of the Resource Model to run an action on

Request Body schema: application/json

options

actionId
required
string (lifecycle-manager_resource-model-common_action-identifier) ^[0-9a-fA-F]{4}$

A 4-digit hexadecimal id

string or lifecycle-manager_resource-instance-http (object)
instanceName
string (lifecycle-manager_resource-instance-common_name)

The name of the resource instance

instanceDescription
string (lifecycle-manager_resource-instance-common_description)

Free-form text describing the resource instance

object or null

Responses

Request samples

Content type
application/json
{
  • "actionId": "0a2f",
  • "instance": "string",
  • "instanceName": "VLAN Service",
  • "instanceDescription": "EC2 Instance in US-EAST-1 with ID ec2-12345678",
  • "inputs": { }
}

Response samples

Content type
application/json
{
  • "message": "A server error occurred while processing this request",
  • "data": "null",
  • "metadata": {
    }
}

Runs a resource action against multiple instances

Runs a resource action against multiple instances

Authorizations:
None
path Parameters
required
lifecycle-manager_resource-model-common_name (string) or MongoDB.ObjectId (string)

The ID of the Resource Model to run an action on.

Request Body schema: application/json

options

actionId
required
string (lifecycle-manager_resource-model-common_action-identifier) ^[0-9a-fA-F]{4}$

A 4-digit hexadecimal id

lifecycle-manager_common_ObjectIdLikeString (string) or lifecycle-manager_common_name (string) (groupIdentifier)
instances
Array of strings (iap_common-schema_objectId) [ items^[0-9a-f]{24}$ ]
object or null
Array of arrays or null

Responses

Request samples

Content type
application/json