Atmos Cloud API: Applications

The Atmos Cloud API allows administrators to have programmatic control over applications. Click here to learn more about generating an API token.

📘

NOTE

This is a limited release feature. For more information contact Axis Security Support: [email protected].

**Applications API is currently available for Network Range applications only

Create a new application

The management API allows administrators to create a new application.
A successful response will return a 201 response with the tag details.

Request Details:

  • Request URL: “admin-api.axissecurity.com/api/v1/applications”
  • Request Method: POST
  • Request Headers: Authorization: “Bearer {API Token}”
  • Request Body (JSON):
FieldTypeDescription
NameMandatoryThe application name
TypeMandatoryType: NetworkRange
EnabledOptionalEnter false if want to disable the application. Default: True
NetworkRangeApplicationData.IpRangesOrCIDRsMust be at least one IP Range or DNS SearchA list of IP addresses, IP ranges and CIDRs to be included in the Network Range.
NetworkRangeApplicationData.DnsSearchesMust be at least one IP Range or DNS SearchA list of FQDN/URLs and DNS wildcards to be included in the Network Range.
NetworkRangeApplicationData.ExcludedDnsSearchesOptionalA list of FQDN/URLs and DNS wildcards to be excluded from the Network Range.
NetworkRangeApplicationData.EnableICMPOptionalEnter true if want to enable ICMP traffic into the Network Range. Default: True

Note: This option cannot be used in Public Connector zone.
NetworkRangeApplicationData.PortsAndProtocolsMandatoryA list of port ranges & protocols of the format “<port range>:<tcp/udp>” or “\”
NetworkRangeApplicationData.ServerInitiatedPortsOptionalA list of port ranges & protocols of the format \“<port range>:<tcp/udp>\” or \“<port range>\” that the Atmos Agent will use to listen for incoming connections.
NetworkRangeApplicationData.EnforceResolvedDnsToIPOptionalEnter true to tunnel only DNS requests that resolves into one of the included IPs.
Default: false

Note: This option is limited. For more information contact Axis Support.
ConnectorZoneIDMandatoryThe connector zone ID
TagsOptionalA list of tags to which the application is added. Tags is a list of objects, where each object contains an “ID” field with the tag's ID.

📘

NOTE

The ID parameter is NOT required when adding a new applications via the API

Example:

{
"name":"Network Range 1",
"type": "NetworkRange",
"enabled": true,
"networkRangeApplicationData": {
		"ipRangesOrCIDRs": ["10.0.0.0/24","10.0.0.1/24","10.0.0.2","1.0.0.3-1.0.0.4"],
		"dnsSearches": ["*.acme1.com","*.acme2.com"],
		"excludedDnsSearches": ["admin.acme.com"],
		"enableICMP": true,
		"portsAndProtocols": ["1-10","11-20:tcp","21-30:udp","40","45:tcp"]
	},
"tags":[
 		{
			"id":"string"
		}
	],
"connectorZoneID": "string"
}

Successful Response Format:

{
"id": "string",
"name":"Network Range 1",
"type": "NetworkRange",
"enabled": true,
"networkRangeApplicationData": {
		"ipRangesOrCIDRs": ["10.0.0.0/24","10.0.0.1/24","10.0.0.2","1.0.0.3-1.0.0.4"],
		"dnsSearches": ["*.acme1.com","*.acme2.com"],
		"excludedDnsSearches": ["admin.acme.com"],
		"enableICMP": true,
		"portsAndProtocols": ["1-10","11-20:tcp","21-30:udp","40","45:tcp"],
    "serverInitiatedPorts": [],
    "enforceResolvedDnsToIp": false
	},
"tags":[
 		{
			"id":"string",
      "name": "string"
		}
	],
"connectorZoneID": "string"
}

Response Codes:

CodeDescription
201Application created successfully
400Bad request
401Unauthorized access. Make sure the API token includes writing permissions. Click here for more information.
409Conflict - An application already exists with the same name
500Internal server error
501Not supported - Operation is supported only for network range applications

Get the details of an existing application

To get the details of an existing tag, the application ID should be added to the request URL.

Request Details:

  • Request URL: “admin-api.axissecurity.com/api/v1/applications/<application ID>”
  • Request Method: GET
  • Request Headers: Authorization: “Bearer {API Token}”
  • Request Body: empty

Successful Response Format:

{
"id": "string",
"name":"Network Range 1",
"type": "NetworkRange",
"enabled": true,
"networkRangeApplicationData": {
		"ipRangesOrCIDRs": ["10.0.0.0/24","10.0.0.1/24","10.0.0.2","1.0.0.3-1.0.0.4"],
		"dnsSearches": ["*.acme1.com","*.acme2.com"],
		"excludedDnsSearches": ["admin.acme.com"],
		"enableICMP": true,
		"portsAndProtocols": ["1-10","11-20:tcp","21-30:udp","40","45:tcp"],
    "serverInitiatedPorts": [],
    "enforceResolvedDnsToIp": false
	},
"tags":[
 		{
			"id":"string",
      "name": "string"
		}
	],
"connectorZoneID": "string"
}

Response Codes:

CodeDescription
200Application information retrieved successfully
400Bad request
401Unauthorized access. Make sure the API token includes writing permissions. Click here for more information.
404Application not found
500Internal server error

Get a list of existing applications

Request Details

  • Request URL: “admin-api.axissecurity.com/api/v1/applications?pageSize=100&pageNumber=1”
  • Request Method: GET
  • Request Headers: Authorization: “Bearer {API Token}”
  • Query params:
Query ParamDescription
PageSizeSpecify the maximum number of tags to retrieve.
PageNumberPage number 1 will retrieve the first tags.

Successful Response Format

{
"pageNumber":1,
"pageSize":100,
"firstPage":"<URL to retrieve first page>",
"lastPage":"<URL to retrieve last page>",
"totalPages":1,
"totalRecords":50,
"nextPage":"<URL to retrieve next page>",
"previousPage":"<URL to retrieve previous page>",
"data":[
  	{
      "id": "string",
      "name":"Network Range 1",
      "type": "NetworkRange",
      "enabled": true,
			"networkRangeApplicationData": {
					"ipRangesOrCIDRs": ["10.0.0.0/24","10.0.0.1/24","10.0.0.2","1.0.0.3-1.0.0.4"],
					"dnsSearches": ["*.acme1.com","*.acme2.com"],
					"excludedDnsSearches": ["admin.acme.com"],
					"enableICMP": true,
					"portsAndProtocols": ["1-10","11-20:tcp","21-30:udp","40","45:tcp"],
    			"serverInitiatedPorts": [],
    			"enforceResolvedDnsToIp": false
        },
      "tags":[
          {
            "id":"string"
          }
        ],
      "connectorZoneID": "string"
      }
  ]

Response Codes:

CodeDescription
200Applications retrieved successfully
400Bad request
401Unauthorized access. Make sure the API token includes writing permissions. Click here for more information.
500Internal server error

Update an existing application

To update an existing tag, the application's ID should be added to the request URL.
A successful response will return a 204 response with the tag details.

📘

Note

The values stated in the request body will override the user's existing values.

Request Details:
Request URL: “admin-api.axissecurity.com/api/v1/applications/<application ID>”
Request Method: PUT
Request Headers: Authorization: “Bearer {API Token}”

Example:

{
"name":"Network Range 1",
"type": "NetworkRange",
"enabled": true,
"networkRangeApplicationData": {
		"ipRangesOrCIDRs": ["10.0.0.0/24","10.0.0.1/24","10.0.0.2","1.0.0.3-1.0.0.4"],
		"dnsSearches": ["*.acme1.com","*.acme2.com"],
		"excludedDnsSearches": ["admin.acme.com"],
		"enableICMP": true,
		"portsAndProtocols": ["1-10","11-20:tcp","21-30:udp","40","45:tcp"]
	},
"tags":[
 		{
			"id":"string"
		}
	],
"connectorZoneID": "string"
}

Successful Response Format

{
"id": "string",
"name":"Network Range 1",
"type": "NetworkRange",
"enabled": true,
"networkRangeApplicationData": {
		"ipRangesOrCIDRs": ["10.0.0.0/24","10.0.0.1/24","10.0.0.2","1.0.0.3-1.0.0.4"],
		"dnsSearches": ["*.acme1.com","*.acme2.com"],
		"excludedDnsSearches": ["admin.acme.com"],
		"enableICMP": true,
		"portsAndProtocols": ["1-10","11-20:tcp","21-30:udp","40","45:tcp"],
    "serverInitiatedPorts": [],
    "enforceResolvedDnsToIp": false
	},
"tags":[
 		{
			"id":"string",
			"name": "string"
		}
	],
"connectorZoneID": "string"
}

Response Codes:

CodeDescription
204Application updated successfully
400Bad request
401Unauthorized access. Make sure the API token includes writing permissions. Click here for more information.
404Application not found
500Internal server error
501Not supported - Operation is supported only for network range applications

Delete an application

To delete an existing tag, the application's ID should be added to the request URL.
A successful response will return a 204 response with an empty body.

Request Details

  • Request URL: “admin-api.axissecurity.com/api/v1/applications/<application ID>”
  • Request Method: Delete
  • Request Headers: Authorization: “Bearer {API Token}”
  • Request Body: empty
CodeDescription
204Application deleted successfully
400Bad request
401Unauthorized access. Make sure the API token includes writing permissions. Click here for more information.
404Application not found
500Internal server error
501Not supported - Operation is supported only for network range applications