Skip to main content

Compatibility Notice

Make sure to check your product version, and then review and update your add-ons and scripts leveraging Netwrix Auditor Integration API. Download the latest add-on version in the Add-on Store.

Property in 8.0 – 8.5New property in 9.0 and above
- XML: <AuditedSystem></AuditedSystem> - JSON: "AuditedSystem"- XML: <DataSource></DataSource> - JSON: "DataSource"
- XML: <ManagedObject></ManagedObject> - JSON: "ManagedObject"- XML: <MonitoringPlan> `````` `<Name>`Name</Name> `````` <ID>Unique ID</ID> `````` </MonitoringPlan> - JSON: "MonitoringPlan" : { `````` "ID": "{Unique ID}", `````` "Name": "Name" `````` } Now the MonitoringPlan contains two sub-entries: ID and Name. The ID property is optional and is assigned automatically by the product.
- XML: <Item> `````` `<Name>`Item name</Name> `````` </Item> - JSON: "Item": {"Name": "Item name"}

To learn more about input and output Activity Record structure, refer to Activity Records.

Error Details

On error, most requests contain an error description in the response body (except some requests with empty body, e.g., 404, 405). Response Status Codes

The error details include:

BlockDescription
CategoryDefines the type of error (XML formatting-related error, invalid input-related error, etc.)
DescriptionProvides details about this error.
Location(optional) Provides a link to a corrupted text in request. XML is considered a default format for Netwrix Auditor Integration API. Error location is defined in XML format.

The error details have the format similar to the following:

FormatExample
XML<?xml version="1.0" encoding="UTF-8" ?> `````` <ErrorList xmlns="http://schemas.netwrix.com/api/v1/"> `````` <Error> `````` <Category>Category</Category> `````` <Description>Error Description</Description> `````` <Location>Error Location</Location> `````` </Error> `````` </ErrorList>
JSON{ `````` "ErrorList": [ `````` { `````` "Category": "Category", `````` "Description": "Error Description", `````` "Location": "Error Location" `````` } `````` ] `````` }

Review examples below to see how error details correspond to invalid requests.

RequestError details returned
Invalid request: XML: curl -H "Content-Type: application/xml; Charset=UTF-8" https://WKSWin12R2:9699/ netwrix/api/v1/activity_records/search -u Enterprise\ NetwrixUser:NetwrixIsCool --data-binary @C:\APIdocs\Search.xml <?xml version="1.0" encoding="utf-8"?> `````` <ActivityRecordSearch xmlns="http://schemas. netwrix.com/api/v1/activity_records/"> `````` <FilterList> `````` <Who>Administrator</Who> `````` <DataSource>Active Directory `````` <Action>Modified</Action> `````` </FilterList> `````` </ActivityRecordSearch> - JSON: curl -H "Content-Type: application/json; Charset=UTF-8" https://WKSWin12R2:9699/ netwrix/api/v1/activity_records/search?format=json -u Enterprise\NetwrixUser: NetwrixIsCool --data-binary @C:\APIdocs\Search.json { `````` "FilterList": { `````` "Who": "Administrator", `````` "DataSource": "Active Directory `````` "Action": "Added" `````` } `````` }400 Bad Request - XML: <?xml version="1.0" encoding="UTF-8" ?> `````` <ErrorList xmlns="http://schemas.netwrix.com/api/v1/"> `````` <Error> `````` <Category>XMLError</Category> `````` <Description>0xC00CE56D End tag 'FilterList' does not match the start tag 'DataSource' `````` </Description> `````` </Error> `````` </ErrorList> - JSON: If JSON is corrupted, server returns 500 Internal Server Error with empty body.
Invalid request: - XML: curl https://WKSWin12R2:9699/ netwrix/api/v1/activity_records/ enum?count=FIVE -u Enterprise\ NetwrixUser:NetwrixIsCool - JSON: curl https://WKSWin12R2:9699/ netwrix/api/v1/activity_records/ enum?format=json&count=FIVE -u Enterprise\NetwrixUser: NetwrixIsCool400 Bad Request - XML: <?xml version="1.0" encoding="UTF-8" ?> `````` <ErrorList xmlns="http://schemas.netwrix.com/api/v1/"> `````` <Error> `````` <Category>InputError</Category> `````` <Description>Invalid count parameter specified. Error details: 0x80040204 Cannot convert the attribute data type `````` </Description> `````` </Error> `````` </ErrorList> - JSON: { `````` "ErrorList": [ `````` { `````` "Category": "InputError", `````` "Description": "Invalid count parameter specified. Error details: 0x80040204 Cannot convert the attribute data type" `````` } `````` ] `````` }
Valid request, but the Audit Database is unreachable: - XML: curl https://WKSWin12R2:9699/ netwrix/api/v1/activity_records/enum -u Enterprise\ NetwrixUser:NetwrixIsCool - JSON: curl https://WKSWin12R2:9699/ netwrix/api/v1/activity_records/enum?format=json -u Enterprise\NetwrixUser: NetwrixIsCool500 Internal Server Error - XML: <?xml version="1.0" encoding="UTF-8" ?> `````` <ErrorList xmlns="http://schemas.netwrix.com/api/v1/"> `````` <Error> `````` <Category>ServerError</Category> `````` <Description>0x80040C0A SQL Server cannot be contacted, connection is lost (0x80040C0A SQL Server cannot be contacted, connection is lost (0x80004005 [DBNETLIB][ConnectionOpen (Connect()). ]SQL Server does not exist or access denied.)) [0x00007FFDCC06BBC8,0x00007FFDB99EF4BA; 0x00007FFDB99BEEEF,0x00007FFDB99EF4DC] `````` </Description> `````` </Error> `````` </ErrorList> - JSON: { `````` "ErrorList": [ `````` { `````` "Category": "ServerError", `````` "Description": "0x80040C0A SQL Server cannot be contacted, connection is lost (0x80040C0A SQL Server cannot be contacted, connection is lost (0x80004005 [DBNETLIB][ConnectionOpen (Connect()). ]SQL Server does not exist or access denied.)) [0x00007FFDCC06BBC8,0x00007FFDB99EF4BA; 0x00007FFDB99BEEEF,0x00007FFDB99EF4DC]" `````` } `````` ] `````` }

Integration API Ports

Review a full list of protocols and ports required for add-ons or any queries leveraging Netwrix Auditor Integration API.

  • Allow outbound connections from the dynamic (1024 - 65535) local port on the computer where Netwrix Auditor Server resides.
  • Allow outbound connections to remote ports on the source and inbound connections to local ports on the target.

On any computer you plan to host the add-on (source), allow outbound connections to remote 9699 TCP port. On the computer where Netwrix Auditor Server resides (target), allow inbound connections to local 9699 TCP port.

Add-onPortProtocolSourceTargetPurpose
All add-ons or queries9699TCPScript or query hostNetwrix Auditor  ServerThe default Netwrix Auditor Integration API port. However, you can configure another TCP port for that purpose.
AlienVault USM53UDP/TCPScript hostDNS ServerDNS Client
Amazon Web Services443TCPScript hostAmazon Web Services
53UDP/TCPScript hostDNS serverDNS Client
- Event Log Export - IBM QRadar - Intel Security - LogRhythm - SolarWinds Log & Event Manager - Splunk53UDP/TCPScript hostDNS serverDNS Client
CEF Export53UDP/TCPScript hostDNS serverDNS Client
- Cisco Network Devices - Privileged User Monitoring - General Linux Syslog514UDPCisco network devicesService hostThe default port for Cisco network devices remote Syslog logging. However, you can configure another UDP port for that purpose.
53UDPService hostDNS serverDNS Client
HPE ArcSight515TCPScript hostArcSight Logger
514UDPScript hostArcSight Logger
53UDP/TCPScript hostDNS serverDNS Client
53UDPScript hostDNS serverDNS Client
RADIUS Server139TCPScript hostRADIUS serverRPC/NP Eventlog
445TCPScript hostRADIUS serverRPC/NP Eventlog
137UDPScript hostRADIUS serverRPC/NP Eventlog
138UDPScript hostRADIUS serverRPC/NP Eventlog
135TCPScript hostRADIUS serverRPC Endpoint Mapper Eventlog
1024 – 65535 (Dynamically assigned)TCPScript hostRADIUS serverRPC Eventlog
53UDP/TCPScript hostDNS serverDNS Client

Response Status Codes

CodeStatusWrite Activity RecordsRetrieve, search Activity Records
200 OKSuccessSuccess. The body is empty. Activity Records were written to the Audit Database and the Long-Term Archive.Success. The body contains Activity Records. Activity Records were retrieved from the Audit Database.
400 Bad RequestErrorError validating Activity Records. Make sure the Activity Records are compatible with the Schema.Error validating request parameters or post data. Make sure the post data files (Continuation mark, Search parameters) are compatible with their schemas and the ?count= parameter is valid.
401 UnauthorizedErrorThe request is unauthorized and the body is empty. See for API Endpoints more information.
404 Not FoundErrorError addressing the endpoint. The body is empty. The requested endpoint does not exist (e.g., /netwrix/api/v1/mynewendpoint/).
405 Method Not AllowedErrorError addressing the endpoint. The body is empty. Wrong HTTP request was sent (any except POST).Error addressing the endpoint. The body is empty. Wrong HTTP request was sent (any except GET or POST).
413 Request Entity Too LargeErrorError transferring files. The body is empty. The posted file exceeds supported size.
500 Internal Server ErrorErrorError writing Activity Records to the Audit Database or the Long-Term Archive: - One or more Activity Records were not processed. - Netwrix Auditor license has expired. - Internal error occurred.Error retrieving Activity Records from the Audit Database: - Netwrix Auditorlicense has expired. - The Netwrix Auditor Archive Service is unreachable. Try restarting the service on the computer that hosts Netwrix Auditor Server. - Internal error occurred.
503 Service UnavailableErrorThe Netwrix Auditor Archive Service is busy or unreachable. Try restarting the service on the computer that hosts Netwrix Auditor Server.

Most failed requests contain error in the response body (except those with empty body, e.g., 404, 405). Error Details