Monitoring API for Avaya Session Border Controller for Enterprise (Release 10.2.1.0 / Spec Revision 1.0)

Download OpenAPI specification:Download

This is the Monitoring API definition for the Avaya Session Border Controller for Enterprise.

Each supported endpoint is defined in this file along with a description of the endpoint, any required parameters, permissions, and the expected responses with examples. Detailed information on how to fully configure a system from start to finish can be found in the Administering Avaya Session Border Controller for Enterprise document available on the Avaya Support site (see https://support.avaya.com/products/P0997/avaya-session-border-controller-for-enterprise/).

Note that each endpoint definition also includes an embedded x-required-capability property which contains the required permissions for the endpoint (this is also included in the description).

System Information

APIs for viewing system information, including installed applications and statuses.

Get System Overview

Get an overview of the system hardware specifications.

User must have the system-overview:read capability to perform this action.

Responses

Response samples

Content type
application/json
{
  • "cpu": {
    },
  • "memory": {
    },
  • "disk": {
    },
  • "nic": {
    },
  • "bios": {
    },
  • "os": {
    }
}

Get Application Status List

Get a list of applications and the current status.

User must have the application-status:read capability to perform this action.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Get Installed Application List

Get an overview of the system hardware specifications.

User must have the installed-application:read capability to perform this action.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Packet Capture

APIs for managing packet captures.

Get Current Packet Capture Status

Get the current status of packet capture.

User must have the packet-capture:read capability to perform this action.

Responses

Response samples

Content type
application/json
{
  • "capturing": true,
  • "interfaceName": "B2",
  • "localTarget": "*:443",
  • "remoteTarget": "*",
  • "protocol": "*",
  • "packetCaptureLimit": 10000,
  • "captureFilename": "test.pcap"
}

Update Packet Capture Status

Start or stop a packet capture.

WARNING: Starting or stopping packet capture in quick succession. It is recommended to wait at least 5-10 seconds after starting a capture before attempting to stop it.

Note: While running a packet capture, all fields except the capturing field will be ignored as changing settings during an active capture is not supported.

User must have the packet-capture:update capability to perform this action.

Request Body schema: application/json

Parameters to use to configure the packet capture. All parameters are optional, however all parameters except capturing will be ignored while a packet capture is active.

capturing
boolean

Current status of the packet capture (is it currently capturing?)

interfaceName
string

Name of the interface the packet capture will be performed on.

localTarget
string

Local IP the packet capture will listen on.

Note: This should be a valid IP address or a valid IP and port combination. A wildcard value is allowed here to listen on any IP address (or to only listen on a specific port).

remoteTarget
string

Remote IP the packet capture will listen on.

Note: This should be a valid IP address or a valid IP and port combination. A wildcard value is allowed here to listen on any IP address (or to only listen on a specific port).

protocol
string
Enum: "ANY" "TCP" "UDP"

Protocol the packet capture will listen on.

packetCaptureLimit
integer <int32>

Number of packets to capture before the capture will stop.

Note: Capturing more than 10,000 packets may have an adverse effect on application performance.

captureFilename
string

Name of the output capture file name.

Note: The extension is not required and may be omitted.

Responses

Request samples

Content type
application/json
{
  • "capturing": true,
  • "interfaceName": "B2",
  • "localTarget": "*:443",
  • "remoteTarget": "*",
  • "protocol": "*",
  • "packetCaptureLimit": 10000,
  • "captureFilename": "test.pcap"
}

Response samples

Content type
application/json
{
  • "capturing": true,
  • "interfaceName": "B2",
  • "localTarget": "*:443",
  • "remoteTarget": "*",
  • "protocol": "*",
  • "packetCaptureLimit": 10000,
  • "captureFilename": "test.pcap"
}

Get Packet Capture File List

Get a list of packet capture (.pcap) files current available on this system.

User must have the packet-capture:read capability to perform this action.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Download Packet Capture File

Get the contents of a specific packet capture (.pcap) file on this system.

Note: This API directly returns .pcap files in binary format and should be handled accordingly.

User must have the packet-capture:read capability to perform this action.

Responses

Response samples

Content type
application/json
{
  • "error": {
    }
}

Delete Packet Capture File

Delete a specific packet capture (.pcap) file from this system.

User must have the packet-capture:delete capability to perform this action.

Responses

Response samples

Content type
application/json
{
  • "error": {
    }
}

Statistics

APIs for viewing device statistics.

Get SIP Summary Statistics Counter List

Get a list of statistics associated with the SIP Summary category.

User must have the statistics:read capability to perform this action.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Get SIP Summary Statistics Counter

Get a specific counter in the SIP Summary category.

Note: This API endpoint is provided as a convenience and simply applies a filter to the full SIP Summary counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
mibNameOrOid
required
string

A mibName or oid to filter for from the counter list.

Responses

Response samples

Content type
application/json
{
  • "mibName": "ipcssipcTotalActiveTCPRegistrations",
  • "oid": ".1.3.6.1.4.1.6889.2.77.1.3.1.11.0",
  • "displayName": "Active TCP Registrations",
  • "value": 0
}

Get CES Summary Statistics Counter List

Get a list of statistics associated with the CES Summary category.

User must have the statistics:read capability to perform this action.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Get CES Summary Statistics Counter

Get a specific counter in the CES Summary category.

Note: This API endpoint is provided as a convenience and simply applies a filter to the full CES Summary counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
mibNameOrOid
required
string

A mibName or oid to filter for from the counter list.

Responses

Response samples

Content type
application/json
{
  • "mibName": "sbcTotal1xMCesUserLoginFailed",
  • "oid": ".1.3.6.1.4.1.6889.2.77.1.5.1.0",
  • "displayName": "1XM User Logins Failed",
  • "value": 0
}

Get Transcoding Summary Statistics Counter List

Get a list of statistics associated with the Transcoding Summary category.

User must have the statistics:read capability to perform this action.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Get Transcoding Summary Statistics Counter

Get a specific counter in the Transcoding Summary category.

Note: This API endpoint is provided as a convenience and simply applies a filter to the full Transcoding Summary counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
mibNameOrOid
required
string

A mibName or oid to filter for from the counter list.

Responses

Response samples

Content type
application/json
{
  • "mibName": "ipcsTotalActiveTranscodingSessions",
  • "oid": ".1.3.6.1.4.1.6889.2.77.1.6.1.0",
  • "displayName": "Total Active Transcoding Sessions",
  • "value": 0
}

Get License Summary Statistics Counter List

Get a list of statistics associated with the License Summary category.

User must have the statistics:read capability to perform this action.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Get License Summary Statistics Counter

Get a specific counter in the License Summary category.

Note: This API endpoint is provided as a convenience and simply applies a filter to the full License Summary counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
mibNameOrOid
required
string

A mibName or oid to filter for from the counter list.

Responses

Response samples

Content type
application/json
{
  • "mibName": "ipcsLicenseStandardSessionReservedCount",
  • "oid": ".1.3.6.1.4.1.6889.2.77.11.1.0",
  • "displayName": "Standard Sessions Reserved",
  • "value": 0
}

Get All Subscriber Flow Statistics Counter Lists

Get a list of statistics associated with the each Subscriber Flow.

User must have the statistics:read capability to perform this action.

Responses

Response samples

Content type
application/json
{
  • "1": [
    ],
  • "2": [
    ]
}

Get Subscriber Flow Statistics Counter List

Get a list of statistics associated with a specific Subscriber Flow based on its priority (identifier).

Note: This API endpoint is provided as a convenience and simply applies a filter to the full License Summary counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
priority
required
integer <int32>

The flow priority used to identify the specific flow.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Get Subscriber Flow Statistics Counter

Get a specific counter from a Subscriber Flow based on its priority (identifier).

Note: This API endpoint is provided as a convenience and simply applies a filter to the full License Summary counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
priority
required
integer <int32>

The flow priority used to identify the specific flow.

mibNameOrOid
required
string

A mibName or oid to filter for from the counter list.

Responses

Response samples

Content type
application/json
{
  • "mibName": "ipcssipcActiveTurnSession",
  • "oid": ".1.3.6.1.4.1.6889.2.77.1.3.1.30.0",
  • "displayName": "ipcssipcActiveTurnSession",
  • "value": 0
}

Get All Server Flow Statistics Counter Lists

Get a list of statistics associated with the each Server Flow.

User must have the statistics:read capability to perform this action.

Responses

Response samples

Content type
application/json
{
  • "1": [
    ],
  • "2": [
    ]
}

Get Server Flow Statistics Counter List

Get a list of statistics associated with a specific Server Flow based on its priority (identifier).

Note: This API endpoint is provided as a convenience and simply applies a filter to the full Server Flow counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
priority
required
integer <int32>

The flow priority used to identify the specific flow.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Get Server Flow Statistics Counter

Get a specific counter from a Server Flow based on its priority (identifier).

Note: This API endpoint is provided as a convenience and simply applies a filter to the full Server Flow counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
priority
required
integer <int32>

The flow priority used to identify the specific flow.

mibNameOrOid
required
string

A mibName or oid to filter for from the counter list.

Responses

Response samples

Content type
application/json
{
  • "mibName": "ipcssipcActiveTurnSession",
  • "oid": ".1.3.6.1.4.1.6889.2.77.1.3.1.30.0",
  • "displayName": "ipcssipcActiveTurnSession",
  • "value": 0
}

Get All Endpoint Policy Group Statistics Counter Lists

Get a list of statistics associated with the each Endpoint Policy Group.

User must have the statistics:read capability to perform this action.

Responses

Response samples

Content type
application/json
{
  • "1": [
    ]
}

Get Endpoint Policy Group Statistics Counter List

Get a list of statistics associated with a specific Endpoint Policy Group based on its identifier.

Note: This API endpoint is provided as a convenience and simply applies a filter to the full Endpoint Policy Group counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
id
required
integer <int32>

The id used to identify the specific policy set.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Get Endpoint Policy Group Statistics Counter

Get a specific counter from a Endpoint Policy Group based on its identifier.

Note: This API endpoint is provided as a convenience and simply applies a filter to the full Endpoint Policy Group counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
id
required
integer <int32>

The id used to identify the specific policy set.

mibNameOrOid
required
string

A mibName or oid to filter for from the counter list.

Responses

Response samples

Content type
application/json
{
  • "mibName": "ipcssipcActiveTurnSession",
  • "oid": ".1.3.6.1.4.1.6889.2.77.1.3.1.30.0",
  • "displayName": "ipcssipcActiveTurnSession",
  • "value": 0
}

Get All To URI Statistics Counter Lists

Get a list of statistics associated with the each To URI Group.

User must have the statistics:read capability to perform this action.

Responses

Response samples

Content type
application/json
{
  • "2": [
    ]
}

Get To URI Statistics Counter List

Get a list of statistics associated with a specific To URI Group based on its identifier.

Note: This API endpoint is provided as a convenience and simply applies a filter to the full To URI Group counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
id
required
integer <int32>

The id used to identify the specific uri group.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Get To URI Statistics Counter

Get a specific counter from a To URI Group based on its identifier.

Note: This API endpoint is provided as a convenience and simply applies a filter to the full To URI Group counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
id
required
integer <int32>

The id used to identify the specific uri group.

mibNameOrOid
required
string

A mibName or oid to filter for from the counter list.

Responses

Response samples

Content type
application/json
{
  • "mibName": "ipcssipcActiveTurnSession",
  • "oid": ".1.3.6.1.4.1.6889.2.77.1.3.1.30.0",
  • "displayName": "ipcssipcActiveTurnSession",
  • "value": 0
}

Get All From URI Statistics Counter Lists

Get a list of statistics associated with the each From URI Group.

User must have the statistics:read capability to perform this action.

Responses

Response samples

Content type
application/json
{
  • "2": [
    ]
}

Get From URI Statistics Counter List

Get a list of statistics associated with a specific From URI Group based on its identifier.

Note: This API endpoint is provided as a convenience and simply applies a filter to the full From URI Group counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
id
required
integer <int32>

The id used to identify the specific uri group.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Get From URI Statistics Counter

Get a specific counter from a From URI Group based on its identifier.

Note: This API endpoint is provided as a convenience and simply applies a filter to the full From URI Group counter list before returning the response. If two or more counters are needed, it is recommended to fetch the full list and perform filtering on the client side.

User must have the statistics:read capability to perform this action.

path Parameters
id
required
integer <int32>

The id used to identify the specific uri group.

mibNameOrOid
required
string

A mibName or oid to filter for from the counter list.

Responses

Response samples

Content type
application/json
{
  • "mibName": "ipcssipcActiveTurnSession",
  • "oid": ".1.3.6.1.4.1.6889.2.77.1.3.1.30.0",
  • "displayName": "ipcssipcActiveTurnSession",
  • "value": 0
}

Telemetry

(Note: This feature is currently restricted to Microsoft Teams calls only.)

These APIs are available to access the raw telemetry data for calls made via Microsoft Teams to comply with reporting requirements enforced by Microsoft. The data provided is 90% of what is required, but because certain values must be averaged and counted a certain way, the remaining 10% needs to be calculated by the user before submitting the requested data to Microsoft.

The reason why this data is not automatically summarized is because a partner and/or customer can be configured on more than one SBC, on an HA pair, or on a completely separate EMS. Because the data is stored per device, this means that the data needs to be collected from every device involved, some of which may not be able to communicate with each other.

As it stands currently, the APIs will provide the following information:

  • Partner ID
  • Customer ID
  • Start Time
  • End Time
  • Call Type (always TEAMS)
  • Usage Statistics
    • Inbound/Outbound Total Call Count
    • Inbound/Outbound Total Duration in Minutes
    • Hashed URIs that made a call or received a call
  • Performance Statistics
    • Join/Transfer Total Call Count
    • Join/Transfer Successful Call Count
    • Join/Transfer Failed Call Count Grouped by Failure Reason Code

To get the rest of the requisite data:

  • The data can be combined between devices by adding all of the numbers together, or by only adding numbers together if the Partner ID and/or Customer ID are the same.
  • Usage -> Average Call Count can be calculated by dividing the Total Duration in Minutes by the Total Call Count.
  • Performance -> Join/Transfer Success Rate can be calculated by dividing the Successful Call Count by the Total Call Count.
  • Performance -> Top Failure Reasons can be calculated by taking the top X number of entries in the Failed Call Count Grouped by Failure Reason Code.

For convenience, we have provided a sample script that can connect to any number of SBCs to help gather some of this data.

Get All Telemetry Data

Get all of the telemetry data.

User must have the telemetry:read capability to perform this action.Wa

query Parameters
collapse
boolean
Default: false

Optionally collapse each individual entry into a single entry.

startDate
string
Example: startDate=2023-12-15T17:44:38Z

Optionally only include entries after the provided ISO-8601 formatted Instant.

endDate
string
Example: endDate=2024-03-15T17:44:38Z

Optionally only include entries before the provided ISO-8601 formatted Instant.

Responses

Response samples

Content type
application/json
{
  • "usageData": [
    ],
  • "performanceData": [
    ]
}

Get All Telemetry Usage Data

Get all of the telemetry usage data.

User must have the telemetry:read capability to perform this action.

query Parameters
collapse
boolean
Default: false

Optionally collapse each individual entry into a single entry.

startDate
string
Example: startDate=2023-12-15T17:44:38Z

Optionally only include entries after the provided ISO-8601 formatted Instant.

endDate
string
Example: endDate=2024-03-15T17:44:38Z

Optionally only include entries before the provided ISO-8601 formatted Instant.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get All Telemetry Performance Data

Get all of the telemetry performance data.

User must have the statistics:read capability to perform this action.

query Parameters
collapse
boolean
Default: false

Optionally collapse each individual entry into a single entry.

startDate
string
Example: startDate=2023-12-15T17:44:38Z

Optionally only include entries after the provided ISO-8601 formatted Instant.

endDate
string
Example: endDate=2024-03-15T17:44:38Z

Optionally only include entries before the provided ISO-8601 formatted Instant.

Responses

Response samples

Content type
application/json
[
  • {
    }
]