## Deep Security Manager Web Service APIs

### Overview

Trend Micro Deep Security Manager includes two different Web Services APIs to allow Deep Security functionality to be integrated with other applications: the SOAP-based service that has been included in previous releases and a new REST (REpresentational State Transfer) API. This package includes documentation for both services.

#### What's Included

This package includes the following files and folders:

- `3rdparty` - Licenses for all third-party JAR files included in the lib\ folder.
- `apidocs` - Generated API documentation giving the description of all available REST API calls.
- `images` - The images included in this document.
- `javadoc` - Javadoc for the generated REST API client.
- `lib`- The Java JAR files containing the generated REST API client. These may be used in Java applications as a way to make accessing the API more convenient. Their use is not required, and any REST API client technology may be used. Only the `restapi.jar` file is created by Trend Micro, with all the other files being third-party dependencies.
- `samples` - An Eclipse project containing Java sample code showing how to use the included Java REST API client.
- `SOAPSamples` - Java and C# samples showing use of the SOAP API.
- `styles` - Cascading Style Sheets used to style this document.
- `license.txt` - License Agreement.
- `Readme.html` - This document.
- `REST API.html` - Documentation of the REST API.
- `Deep Security WebService SDK.pdf` - Documentation of the SOAP API.

### The REST and SOAP APIs

The two Web Services offer different functionality, so which service you need to use will depend on which functionality you require.

#### The SOAP API

The SOAP API includes the following functionality:

- Authentication - sign a user in and out.
- Dashboard - retrieve counters for dashboard widgets; retrieve feature summary for the system; retrieve an overall computer and alert status for the system
- Computers - create, retrieve, update and delete Computers; initiate Agent operations
- Computer Groups - create, retrieve, update and delete Groups
- Security Policies - create, retrieve, update and delete Security Policies
- Anti-Malware Events - retrieve Anti-Malware events
- Anti-Malware Configurations - create, retrieve, update and delete Anti-Malware configurations; create, retrieve, update and delete Directory Lists; create, retrieve, update and delete File Lists; create, retrieve, update and delete File Extension Lists
- Web Reputation Events - retrieve Web Reputation events
- Web Reputation Configurations - retrieve, and update Web Reputation configurations (via the system setting APIs and not via dedicated APIs)
- Firewall Events - retrieve Firewall events
- Firewall Rules - create, retrieve, update and delete Firewall rules; create, retrieve, update and delete Stateful Configurations
- Intrusion Prevention Events - create, retrieve, update and delete Intrusion Prevention events
- Intrusion Prevention Rules - create, retrieve, update and delete Intrusion Prevention rules; create, retrieve, update and delete Application Types
- Integrity Monitoring Events - retrieve Integrity Monitoring events
- Integrity Monitoring Rules - create, retrieve, update and delete Integrity Monitoring rules
- Integrity Scanning - initiate Computer "Scan For Integrity Changes" and "Rebuild Baseline" operations
- Log Inspection Events - retrieve Log Inspection events
- Log Inspection Rules - create, retrieve, update and delete Log Inspection rules
- Log Inspection Decoders - create, retrieve, update and delete Log Inspection decoders
- IP Lists - create, retrieve, update and delete IP Lists
- MAC Lists - create, retrieve, update and delete MAC Lists
- Port Lists - create, retrieve, update and delete Port Lists
- Schedules - create, retrieve, update and delete Schedules
- System - retrieve System Events; retrieve System Information; retrieve and update System Settings
- License - retrieve and update License
- Updates - import, retrieve, apply and delete Security Updates; retrieve and delete stored Agent/Appliance software; retrieve and update Security Center customer account information

For more information, see the SOAP API documentation.

#### The REST API

The REST API offers the following functionality:

- Authentication - sign a user in and out.
- Cloud Accounts - create, list, update and delete cloud accounts that Deep Security Manager synchronizes with; force cloud synchronization.
- Events - list Anti-Malware and Web Reputation events.
- Status Monitoring - view the status of Deep Security Manager nodes, including various health checks.
- Tenant Management - create, list, update and delete tenant accounts; create and list database servers used by tenants.
- Usage Monitoring - retrieve statistics about what operations Deep Security Manager has performed for which tenants.

For more information, see the REST API documentation.

#### Using the REST and SOAP APIs in the Same Application

Depending on the application you are writing, you may need access to both APIs. Both APIs require a valid session identifier (SID). To ease development when using both APIs, the session identifiers are interchangeable. That is, a SID acquired by authenticating to the REST API can be used in the SOAP API, and vice versa. Similarly, when you end a session with the SOAP API that SID is no longer usable with the REST API, and vice versa.