The HTTPS POST API call is designed to monitor and analyze network traffic. It consists of three primary components - query parameters, metadata, and actual data to be scanned. This section outlines the structure and use of the API for both HTTP and SMTP protocols, along with example requests and responses.
POST request URL
POST/monitor?evidence=1&incident=1&msize=776&need_event_xml=1&reporting_product=REPORTING_PRODUCT_PREVENT&return_rule_info=1
Request Parameters
Use the query parameters to return the incident details.
Parameter name | Description | Required | Values |
|---|---|---|---|
evidence | Specifies if evidence must be generated. | Required | Boolean |
incident | Indicates if an incident must be created for ePO | Required | Boolean |
need_decoded_event_xml | Returns a DLP style opg event xml (.OPG is an internal format for storing Trellix DLP events). | Optional | Boolean |
msize | Size of the metadata part of the request. | Required | Integer |
protocol | SMTP or HTTP protocol type for scanning rules (Email or Web protection). | Required | String |
return_rule_info
| Returns additional information in the response.
| Required | Boolean
|
need_event_xml | Required | Boolean | |
reporting_product | Required | REPORTING_PRODUCT_PREVENT |
Payload
Element | Description |
|---|---|
SMTP | The payload must be the full email in .eml format. |
HTTP | The payload must include HTTP data. If sending a plain file, wrap it inside an HTTP POST or PUT request. |
Metadata
Metadata is part of the HTTP payload and provides additional details about the data being passed. The size of the metadata is specified by the msize query parameter.
The metadata must be a JSON string, containing at minimum the following fields:
Element | Description |
|---|---|
protocol → type: | Specifies an array of network protocols. For example, HTTP, TCP, IP, ETH or SMTP, IP, ETH. |
version: | Request version. Currently supported is 1.2. |
Element | Description |
|---|---|
dip | Destination IP address. |
dport | Destination port. |
flowid | A unique identifier representing the conversation. |
sip | Source IP address. |
sport | Source port. |
sproxyip | IP of the web gateway sending the request (for HTTP protocol). |
timestamp | Unix timestamp of the request. |
Element | Description |
|---|---|
request → authscheme | Authentication scheme (NTLP, WINNT, Kerberos, LDAP). |
request → method | HTTP method (For example, POST, GET). |
request → url | HTTP URL. |
request → user | User Details Based on Authentication Scheme. For example, For Active Directory (AD) - |
request → version | HTTP version. |
Element | Description |
|---|---|
command → helo | HELO SMTP command. |
command → mail | MAIL FROM SMTP command. |
command → rcpt | Array of RCPT TO SMTP commands. |
Sample Metadata for HTTP
{
"connection": {
"dip": "0.0.0.0",
"dport": "80",
"flowid": "648e_0659_81b0fca2_e70e_458e_9a33_5dab43bac6dd",
"id": "648e_0659_81b0fca2_e70e_458e_9a33_5dab43bac6dd",
"sip": "0.0.0.0",
"sport": "0",
"sproxyip": "10.213.65.7",
"timestamp": 1719904996
},
"protocol": {
"http": {
"request": {
"authscheme": "UNKNOWN",
"method": ["POST"],
"url": ["http://test/"],
"version": ["HTTP/1.1"]
}
},
"type": ["HTTP", "TCP"]
},
"version": "1.2"
} Sample Metadata for SMTP
{
"connection": {
"flowid": "2984_058e_ba11318b_b9dc_4a6b_8eb6_a103b990248d",
"id": "2984_058e_ba11318b_b9dc_4a6b_8eb6_a103b990248d",
"sproxyip": "10.213.65.7",
"timestamp": 1719904712
},
"protocol": {
"smtp": {
"command": {
"helo": ["EHLO mdurga-dev"],
"mail": ["MAIL FROM:<mdurga@mdurga-dev>"],
"rcpt": ["RCPT TO:<user@client.std.dom>"]
}
},
"type": ["SMTP", "TCP"]
},
"version": "1.2"
} Response parameters
The response parameters provides detailed information about the scan results and incidents triggered. It can include these fields:
Element | Description |
|---|---|
classifications_triggered | An array of classification identifiers and names that were triggered during the request. Each classification is represented by a GUID (Globally Unique Identifier) and its corresponding name, indicating the types of sensitive information that matched the configured rules. |
event | A Base64-encoded representation of the DLP (Data Loss Prevention) style OPG event. This is primarily used for internal debugging purposes to capture detailed information about the event for troubleshooting. |
incident_severity | Specifies the severity level of the incident. Possible values include severity levels such as |
num_attachments | The total number of attachments present in the request. This count is useful for identifying the potential volume of data being transferred and can influence the DLP policy enforcement. |
opg_id | The unique identifier (GUID) of the DLP policy that was applied to the request. This parameter helps trace which specific policy was responsible for detecting the incident. |
opg_name | The name of the DLP policy as configured in ePO (ePolicy Orchestrator). This descriptive name helps administrators quickly identify and review the policy involved in triggering the incident. |
opg_revision | The revision number of the DLP policy that was applied during the request. This value can be cross-referenced with the ePO policy revision history to identify changes that may have affected incident detection. |
result | Indicates the outcome of the scan on the request. Possible values include whether the scan was "clean" (no incidents detected) or if it "triggered" (one or more rules were matched). |
result_action | Specifies the DLP action that was executed based on the policy configuration. For example, PO_ACTION_BLOCK_AND_RETURN_TO_SENDER |
rules_triggered | An array of GUIDs and corresponding names of the DLP rules that were triggered during the request. Each rule represents a specific set of conditions or patterns defined in the policy, such as detecting sensitive data types or specific keywords. |
Sample response
{
"all_attachments": "abcxyz",
"classifications_triggered": [
{
"id": "72b693e2-2b45-44a9-a0fe-225b82d48561",
"name": "Confidential"
}
],
"event": "abc+xyz",
"global_event_id": "d0ea53ae-5b39-4060-8779-2e3abb7c4243",
"incident_severity": "PO_SEVERITY_CRITICAL",
"num_attachments": "1",
"opg_id": "dad13ad1-52b9-4a15-9a6e-0ffc804de37b",
"opg_name": "ETP Policy",
"opg_revision": "11",
"result": "trigger",
"result_action": "PO_ACTION_BLOCK_AND_RETURN_TO_SENDER",
"rules_triggered": [
{
"action": "PO_ACTION_BLOCK_AND_RETURN_TO_SENDER",
"id": "2d620d4b-5080-4a3b-8570-104aff0f3c29",
"name": "Jay block and return test 1",
"revision": 41,
"ruleset": "ETP Rules"
}
],
"scan_classifications": [
"fc9a8477-083b-418c-ae08-2e3ad232685c",
"e98d11ab-c0c9-4ac5-a82e-45b5c29d13a6",
"e3a84186-f62f-4b6a-8d78-5f991e533fee",
"bbad1585-97bc-414c-983a-7df6f77b9df8",
"b9d43045-c0ab-432e-a0f5-0229196743fa",
"3208e3cc-b87b-4e76-a495-4c69c9472c91",
"59e6ac67-095d-4a4d-a9bf-df00767163ca",
"d2a965e8-4782-4bd3-b191-8ecde3b08ca3",
"2707be46-da80-4100-8d8a-256ff1c021b2",
"0e8b9940-d329-42a2-99b9-2e4c101fbc03",
"7375344d-b7dd-4c99-a556-493494032d55",
"018d0137-dda4-4a3e-90f5-2347fb47fc57",
"8b95fc20-affe-496b-bbc7-b273ca95835b",
"72b693e2-2b45-44a9-a0fe-225b82d48561",
"671a89a7-6e1e-4ee8-9512-de2db36b23b7",
"9b588e02-45f6-4eaa-a5f2-9a964653b0e0"
],
"stemoverflow": false
}