Cisco Secure Access API
The Cisco Secure Access API connector facilitates the integration of Cisco's network access control capabilities into third-party applications.
Cisco Secure Access API provides robust security management by allowing users to automate the creation, retrieval, and management of destination lists. This integration with Swimlane Turbine enables seamless automation of security tasks, such as adding or removing destinations from lists, updating list details, and managing tenant information. By leveraging this connector, Swimlane Turbine end-users can enhance their security operations with efficient domain management and real-time threat response capabilities.
Prerequisites
Before you can use the Cisco Secure Access API connector for Turbine, you'll need access to the Cisco Secure Access API. This requires the following:
- Custom authentication using the following parameters:
- URL: The endpoint URL for accessing the Cisco Secure Access API.
- API Key: A unique key provided by Cisco for authenticating API requests.
- Key Secret: A secret associated with the API Key for enhanced security.
Capabilities
This Cisco Secure Access API connector provides the following capabilities:
- Get Destination List
- Get Destination Lists
- Get Destinations in Destination List
- List Tenants
- Create Destination List
- Update Destination List
- Delete Destination List
- Add Destinations to Destination List
- Delete Destinations from Destination List
Get Destination List
Retrieve a destination list from Cisco Secure Access API using the specified destinationListId as a path parameter.
Cisco's documentation for this action can be found here.
Get Destination Lists
Get the destination lists in your organization using Cisco Secure Access API.
Cisco's documentation for this action can be found here.
Get Destinations in Destination List
Get destinations in a destination list.
Cisco's documentation for this action can be found here.
List Tenants
Retrieve a list of tenants within the organization using Cisco Secure Access API. Requires organizationIds as input.
Cisco's documentation for this action can be found here.
Create Destination List
Create a destination list in your organization using Cisco Secure Access API. Requires JSON body with access, name, and isGlobal parameters.
Cisco's documentation for this action can be found here.
Update Destination List
Update the name of a destination list in your organization using Cisco Secure Access API. Requires destinationListId as path parameter and name in JSON body.
Cisco's documentation for this action can be found here.
Delete Destination List
Remove a destination list from your organization in Cisco Secure Access API using the specified destinationListId.
Cisco's documentation for this action can be found here.
Add Destinations to Destination List
Add destinations (domain, URL, or IPv4) to a destination list. A domain is one type of destination.
Cisco's documentation for this action can be found here.
Delete Destinations from Destination List
Remove destinations from a destination list by destination ID (max 500 IDs per request). Use Get Destinations in Destination List to obtain IDs.
Cisco's documentation for this action can be found here.
Configurations
Asset
Configuration Parameters
Parameter | Description | Type | Required |
|---|---|---|---|
url | Base URL for the Cisco Secure Access API. | string | Required |
api_key | Secure Access API Key ID. | string | Required |
api_secret | Secure Access API Key Secret. | string | Required |
verify_ssl | Verify SSL certificate | boolean | Optional |
http_proxy | A proxy to route requests through. | string | Optional |
Actions
Add Destinations to Destination List
Add domains, URLs, or IPv4 addresses to a destination list in Cisco Secure Access API using the destinationListId path parameter.
Endpoint
- URL: /destinationlists/{{destinationListId}}/destinations
- Method: POST
Input
Argument Name | Type | Required | Description |
|---|---|---|---|
path_parameters.destinationListId | number | Required | The unique ID of the destination list. |
Input Example
{"json_body":[{"destination":"cisco.com","comment":"A comment about the destination"}],"path_parameters":{"destinationListId":245}}
Output
Parameter | Type | Description |
|---|---|---|
status_code | number | HTTP status code of the response |
reason | string | Response reason phrase |
id | number | Unique identifier |
organizationId | number | Unique identifier |
access | string | Output field: access |
isGlobal | boolean | Output field: isGlobal |
name | string | Name of the resource |
thirdpartyCategoryId | number | Unique identifier |
createdAt | number | Output field: createdAt |
modifiedAt | number | Output field: modifiedAt |
isMspDefault | boolean | Output field: isMspDefault |
markedForDeletion | boolean | Output field: markedForDeletion |
bundleTypeId | number | Unique identifier |
meta | object | Output field: meta |
meta.destinationCount | number | Count value |
Output Example
{"status_code":200,"reason":"OK","json_body":{"id":2477857,"organizationId":22429759,"access":"none","isGlobal":false,"name":"New Destination List","thirdpartyCategoryId":0,"createdAt":1532628019,"modifiedAt":1532628019,"isMspDefault":false,"markedForDeletion":false,"bundleTypeId":2,"meta":{"destinationCount":5}}}
Create Destination List
Create a destination list in your organization using Cisco Secure Access API. Requires JSON body with bundleTypeId, access, name, and isGlobal parameters.
Endpoint
- URL: /destinationlists
- Method: POST
Input
Argument Name | Type | Required | Description |
|---|---|---|---|
bundleTypeId | number | Optional | The type of destination list to create. |
access | string | Optional | Configure your access rules to block or allow certain destination lists. |
name | string | Optional | The name of the destination list. |
isGlobal | boolean | Optional | Specifies whether the destination list is a global destination list. |
destinations | array | Optional | The list of destinations. |
destinations.destination | string | Optional | The destination to block or allow. |
destinations.type | string | Optional | The type of destination. |
destinations.comment | string | Optional | The comment about the destination. |
Input Example
{"json_body":{"bundleTypeId":2,"access":"none","name":"Threat Intelligence Blocklist","isGlobal":false,"destinations":[{"destination":"www.internetbadguys.com","type":"domain","comment":"Known malicious domain"},{"destination":"http://malware.example.com/payload","type":"url","comment":"Malware distribution URL"},{"destination":"192.0.2.100","type":"ipv4","comment":"Suspicious IP address"}]}}
Output
Parameter | Type | Description |
|---|---|---|
status_code | number | HTTP status code of the response |
reason | string | Response reason phrase |
status | object | Status value |
status.code | number | Status value |
status.text | string | Status value |
data | object | Response data |
data.id | number | Response data |
data.organizationId | number | Response data |
data.access | string | Response data |
data.isGlobal | boolean | Response data |
data.name | string | Response data |
data.thirdpartyCategoryId | number | Response data |
data.createdAt | number | Response data |
data.modifiedAt | number | Response data |
data.isMspDefault | boolean | Response data |
data.markedForDeletion | boolean | Response data |
data.bundleTypeId | number | Response data |
data.meta | object | Response data |
data.meta.destinationCount | number | Response data |
data.meta.domainCount | number | Response data |
data.meta.urlCount | number | Response data |
data.meta.ipv4Count | number | Response data |
data.meta.ipv6Count | number | Response data |
data.meta.applicationCount | number | Response data |
Output Example
{"status_code":200,"reason":"OK","json_body":{"status":{"code":200,"text":"OK"},"data":{"id":1234567,"organizationId":2345678,"access":"none","isGlobal":false,"name":"Global Allow List","thirdpartyCategoryId":0,"createdAt":1490206249,"modifiedAt":1520476127,"isMspDefault":false,"markedForDeletion":false,"bundleTypeId":2,"meta":{}}}}
Delete Destination List
Remove a destination list from your organization in Cisco Secure Access API using the specified destinationListId.
Endpoint
- URL: /destinationlists/{{destinationListId}}
- Method: DELETE
Input
Argument Name | Type | Required | Description |
|---|---|---|---|
path_parameters.destinationListId | number | Required | The unique ID of the destination list. |
Input Example
{"path_parameters":{"destinationListId":245}}
Output
Parameter | Type | Description |
|---|---|---|
status_code | number | HTTP status code of the response |
reason | string | Response reason phrase |
Output Example
{"status_code":200,"reason":"OK","json_body":{}}
Delete Destinations from Destination List
Remove destinations from a destination list in Cisco Secure Access API using destination IDs. Supports up to 500 IDs per request. Use 'Get Destinations in Destination List' to obtain IDs.
Endpoint
- URL: /destinationlists/{{destinationListId}}/destinations/remove
- Method: DELETE
Input
Argument Name | Type | Required | Description |
|---|---|---|---|
path_parameters.destinationListId | number | Required | The unique ID of the destination list. |
Input Example
{"json_body":[12345,987435],"path_parameters":{"destinationListId":245}}
Output
Parameter | Type | Description |
|---|---|---|
status_code | number | HTTP status code of the response |
reason | string | Response reason phrase |
id | number | Unique identifier |
organizationId | number | Unique identifier |
access | string | Output field: access |
isGlobal | boolean | Output field: isGlobal |
name | string | Name of the resource |
thirdpartyCategoryId | number | Unique identifier |
createdAt | number | Output field: createdAt |
modifiedAt | number | Output field: modifiedAt |
isMspDefault | boolean | Output field: isMspDefault |
markedForDeletion | boolean | Output field: markedForDeletion |
bundleTypeId | number | Unique identifier |
meta | object | Output field: meta |
meta.destinationCount | number | Count value |
Output Example
{"status_code":200,"reason":"OK","json_body":{"id":2477857,"organizationId":22429759,"access":"none","isGlobal":false,"name":"New Destination List","thirdpartyCategoryId":0,"createdAt":1532628019,"modifiedAt":1532628019,"isMspDefault":false,"markedForDeletion":false,"bundleTypeId":2,"meta":{"destinationCount":5}}}
Get Destination List
Retrieve a destination list from Cisco Secure Access API using the specified destinationListId as a path parameter.
Endpoint
- URL: /destinationlists/{{destinationListId}}
- Method: GET
Input
Argument Name | Type | Required | Description |
|---|---|---|---|
path_parameters.destinationListId | number | Required | The unique ID of the destination list. |
Input Example
{"path_parameters":{"destinationListId":245}}
Output
Parameter | Type | Description |
|---|---|---|
status_code | number | HTTP status code of the response |
reason | string | Response reason phrase |
Output Example
{"status_code":200,"reason":"OK","json_body":{}}
Get Destination Lists
Get the destination lists in your organization using Cisco Secure Access API.
Endpoint
- URL: /destinationlists
- Method: GET
Input
Argument Name | Type | Required | Description |
|---|---|---|---|
parameters.page | number | Optional | The page number to get. |
parameters.limit | number | Optional | The number of items to get per page. |
Input Example
{"parameters":{"page":1,"limit":10}}
Output
Parameter | Type | Description |
|---|---|---|
status_code | number | HTTP status code of the response |
reason | string | Response reason phrase |
Output Example
{"status_code":200,"reason":"OK","json_body":[{"bundleTypeId":1,"createdAt":1576169250,"id":12345,"modifiedAt":1576259640,"organizationId":98765,"thirdpartyCategoryId":0,"access":"block","name":"Blocked Destinations","isGlobal":false,"isMspDefault":false,"markedForDeletion":false,"meta":{}},{"bundleTypeId":2,"createdAt":1576186213,"id":67890,"modifiedAt":1576186213,"organizationId":98765,"thirdpartyCategoryId":0,"access":"allow","name":"Allowed Destinations","isGlobal":false,"isMspDefault":false...
Get Destinations in Destination List
Get destinations in a specified destination list using the Cisco Secure Access API. Requires the destinationListId as a path parameter.
Endpoint
- URL: /destinationlists/{{destinationListId}}/destinations
- Method: GET
Input
Argument Name | Type | Required | Description |
|---|---|---|---|
parameters.page | number | Optional | The number of a page in the collection. |
parameters.limit | number | Optional | The number of records in the collection to return on the page. |
path_parameters.destinationListId | number | Required | The unique ID of the destination list. |
Input Example
{"parameters":{"page":4,"limit":50},"path_parameters":{"destinationListId":245}}
Output
Parameter | Type | Description |
|---|---|---|
status_code | number | HTTP status code of the response |
reason | string | Response reason phrase |
Output Example
{"status_code":200,"reason":"OK","json_body":[{"id":"1234590","destination":"cisco.com","type":"domain","comment":"A comment about test destination","createdAt":"2021-07-23 19:36:45"}]}
List Tenants
Retrieve a list of tenants within the organization using Cisco Secure Access API. Requires organizationIds as input.
Endpoint
- URL: /tenants/lists
- Method: GET
Input
Argument Name | Type | Required | Description |
|---|---|---|---|
parameters.organizationIds | string | Required | A comma-separated list of IDs for the tenant organizations. |
parameters.optionalFields | array | Optional | Optional fields to request additional data along with regular response. |
parameters.filters | object | Optional | Filters that can be applied to the response by the system. |
parameters.filters.organizationId | number | Optional | Filter by the ID of the tenant. |
parameters.filters.organizationName | string | Optional | Filter by the name of the tenant. |
parameters.sort | object | Optional | The properties to sort the collection. |
parameters.sort.order[organizationId] | string | Optional | The order to use when sorting the ID of the tenants. |
parameters.sort.order[organizationName] | string | Optional | The order to use when sorting the name of the tenants. |
Input Example
{"parameters":{"organizationIds":"1234567,2345678,3123456,4234567","optionalFields":["name","email","phone","address","city","state"],"filters":{"organizationId":1234567,"organizationName":"Acme Corporation"},"sort":{"order[organizationId]":"asc","order[organizationName]":"desc"}}}
Output
Parameter | Type | Description |
|---|---|---|
status_code | number | HTTP status code of the response |
reason | string | Response reason phrase |
Output Example
{"status_code":200,"reason":"OK","json_body":[{"organizationId":1234567,"organizationName":"tenant one"}]}
Update Destination List
Update the name of a destination list in your organization using Cisco Secure Access API. Requires destinationListId as a path parameter and name in JSON body.
Endpoint
- URL: /destinationlists/{{destinationListId}}
- Method: PATCH
Input
Argument Name | Type | Required | Description |
|---|---|---|---|
path_parameters.destinationListId | number | Required | The unique ID of the destination list. |
name | string | Optional | The name of the destination list. |
Input Example
{"json_body":{"name":"Global Allow list"},"path_parameters":{"destinationListId":245}}
Output
Parameter | Type | Description |
|---|---|---|
status_code | number | HTTP status code of the response |
reason | string | Response reason phrase |
id | number | Unique identifier |
organizationId | number | Unique identifier |
access | string | Output field: access |
isGlobal | boolean | Output field: isGlobal |
name | string | Name of the resource |
thirdpartyCategoryId | number | Unique identifier |
createdAt | number | Output field: createdAt |
modifiedAt | number | Output field: modifiedAt |
isMspDefault | boolean | Output field: isMspDefault |
markedForDeletion | boolean | Output field: markedForDeletion |
bundleTypeId | number | Unique identifier |
meta | object | Output field: meta |
meta.destinationCount | number | Count value |
Output Example
{"status_code":200,"reason":"OK","json_body":{"id":2477857,"organizationId":22429759,"access":"none","isGlobal":false,"name":"New name of destination list","thirdpartyCategoryId":0,"createdAt":1532628019,"modifiedAt":1532628019,"isMspDefault":false,"markedForDeletion":false,"bundleTypeId":2,"meta":{"destinationCount":1}}}
Response Headers
Header | Description | Example |
|---|---|---|
Content-Type | The media type of the resource | application/json |
Date | The date and time at which the message was originated | Thu, 01 Jan 2024 00:00:00 GMT |