Project: AI_Connect
ELine Network Type APIs
Contents
1. Port Inventory ELINE.................................................................................2
2. Port Inventory IDS.....................................................................................4
3. Port Performance Cisco.............................................................................6
4. Port Performance Ciena............................................................................8
5. Circuit Inventory.....................................................................................10
6. Circuit Performance................................................................................12
1. Port Inventory ELINE
Endpoint: POST /resource/v1/port/eline
Description: Retrieve port inventory attributes for external and internal use.
JSON Payload
Parameter Type Required Description
cleId string Yes Customer Location Entity ID
ban array Yes Billing Account Numbers
limit integer Optional Number of records per page (default: 25)
offset integer Optional Number of records to skip (default: 0)
evcId string Optional Filter by specific evcId
evcStatus string Optional Filter by status ( default: “inEffect” )
Headers:
Header Required Value/Type Description
authorizatio Yes Bearer <token> OAuth 2.0 access token
n
x-role Yes Internal / External Controls access to sensitive attributes
Example Request Body:
"cleId": "CLE-45678",
"ban": ["BAN123456", "BAN654321"],
"limit": 10,
"offset": 0,
"evcStatus": "In Effect"
}
Example Response (Internal)
[
{
"evcId": "EVC001",
"serviceType": "ELINE",
"serviceInstanceId": "SI12345",
"aDeviceName": "router-nyc-1",
"zDeviceName": "router-la-3",
"aInterface": "TenGigE0/0/0",
"zInterface": "TenGigE0/1/1",
"aSubInterface": "1.1",
"zSubInterface": "1.2",
"evc_bandwidth": "500 Mbps",
"evcStatus": "In Effect"
}
]
Example Response (External):
[
{
"evcId": "EVC001",
"serviceType": "ELINE",
"serviceInstanceId": "SI12345",
"evc_bandwidth": "500 Mbps",
"evcStatus": "In Effect"
}
]
2. Port Inventory IDS
Endpoint: POST /resource/v1/port/ids
Description: Returns IDS (Integrated Design Service) port inventory details
based on customer and billing inputs. Role-based headers determine whether
sensitive internal attributes are returned.
JSON Payload
Parameter Type Required Description
cleId string Yes Customer Location Entity ID
ban array Yes Billing Account Numbers
limit integer Optional Number of records per page (default: 25)
offset integer Optional Number of records to skip (default: 0)
evcId string Optional Filter by specific evcId.
evcStatus string Optional Filter by status ( default: “inEffect” )
Headers:
Header Required Value/Type Description
authorizatio Yes Bearer <token> OAuth 2.0 access token
n
x-role Yes Internal / External Controls access to sensitive attributes
Example Request Body:
"cleId": "CLE-45678",
"ban": ["BAN123456", "BAN654321"],
"limit": 10,
"offset": 0,
"evcStatus": "In Effect"
Example Response (Internal):
[
{
"evcId": "IDS001",
"serviceType": "IDS",
"evc_bandwidth": "200 Mbps",
"classOfService": "Gold",
"qosTrafficProfile": "Standard",
"ceIpAddress": "192.0.2.10",
"ceIpv6Address": "2001:db8::10",
"peIpAddress": "203.0.113.1",
"peIpv6Address": "2001:db8::20",
"routingProtocol": "BGP",
"bgpAsNum": "65010",
"ipv6RoutingProtocol": "OSPFv3",
"ipv6BgpAsNum": "65011",
"evcStatus": "In Effect"
}
]
Example Response (External):
[
{
"evcId": "IDS001",
"serviceType": "IDS",
"evc_bandwidth": "200 Mbps",
"classOfService": "Gold",
"qosTrafficProfile": "Standard",
"ceIpAddress": "192.0.2.10",
"peIpAddress": "203.0.113.1",
"peIpv6Address": "2001:db8::20",
}
]
3. Port Performance
Endpoint: POST /performance/v1/port
Description: Returns port-level performance metrics (e.g., bandwidth
usage, discards, errors) based on circuit information and time range.
JSON Payload
Parameter Type Required Description
cleId string Yes Customer Location Entity ID
ban array Yes Billing Account Numbers
circuitId string Optional Circuit Identifier (mapped via USP)
startDate string Optional ISO 8601 format (e.g. 2025-06-04T00:00:00Z)
endDate string Optional ISO 8601 format (e.g. 2025-06-04T00:00:00Z)
interval string Optional Time bucket size: hourly, daily, weekly (default:
daily)
limit integer Optional Number of records per page (default: 25)
offset integer Optional Number of records to skip (default: 0)
sort string Optional Sort by following given attributes, to sort in
descending use “-” as prefix ( e.g., -octectsRx )
Headers:
Header Required Value/Type Description
authorizatio Yes Bearer <token> OAuth 2.0 access token
n
x-role Yes Internal / External Controls access to sensitive attributes
Sortable Attributes:
1. octectsRx
2. octectsTx
3. errorsRs
4. errorsTx
5. discardsRx
6. discardsTx
Example Request Body:
"cleId": "CLE-45678",
"ban": ["BAN123456", "BAN654321"],
"circuitId": "C123456",
"startTime": "2025-07-17T00:00:00Z",
"endTime": "2025-07-17T01:00:00Z",
"interval": "daily",
"limit": 25,
"offset": 0,
"sort": "-octectsRx",
Example Response (Internal):
{
"circuitId": "C123456",
"deviceName": "router-nyc-core01",
"ifAlias": "TenGigE0/0/1",
"performance": [
{
"timestamp": "2025-06-04T00:00:00Z",
"octetsRx": 1024000,
"octetsTx": 2048000,
"bitsPerSecondRx": 300,
"bitsPerSecondTx": 250,
"errorsRx": 1,
"errorsTx": 2,
"discardsRx": 0.1
"discardsTx": 0.1
"discardsPerSecondRx": 0,
"discardsPerSecondTx": 1,
"errorsPerSecondTx": 0.2,
}
]
}
Example Response (External):
{
"circuitId": "C123456",
"performance": [
{
"timestamp": "2025-06-04T00:00:00Z",
"octetsRx": 1024000,
"octetsTx": 2048000,
"bitsPerSecondRx": 300,
"bitsPerSecondTx": 250,
"errorsRx": 1,
"errorsTx": 2,
"discardsRx": 0.1
"discardsTx": 0.1
"discardsPerSecondRx": 0,
"discardsPerSecondTx": 1,
"errorsPerSecondTx": 0.2,
}
]
}
4. Port Performance Ciena
4. Circuit Inventory
Endpoint: POST /resource/v1/circuit
Description: This endpoint returns circuit-level inventory information, such
as lifecycle state, provisioning revision, and in-service dates. It's based on
the canonical EVC circuit definitions, unlike port-level operational mappings.
JSON Payload
Parameter Type Required Description
cleId string Yes Customer Location Entity ID
ban array Yes Billing Account Numbers
limit integer Optional Number of records per page (default: 25)
offset integer Optional Number of records to skip (default: 0)
evcId string Optional Filter by specific evcId.
evcStatus string Optional Filter by status ( default: “inEffect” )
Headers:
Header Required Value/Type Description
authorizatio Yes Bearer <token> OAuth 2.0 access token
n
x-role Yes Internal / External Controls access to sensitive attributes
Example Request Body:
"cleId": "CLE-45678",
"ban": ["BAN123456", "BAN654321"],
"limit": 10,
"offset": 0,
"evcStatus": "In Effect"
Example Response (Internal):
[
{
"evcId": "EVC123",
"serviceType": "ELINE",
"serviceInstanceId": "SI12345",
"aDeviceName": "router-nyc-1",
"zDeviceName": "router-la-3",
"aInterface": "TenGigE0/0/0",
"zInterface": "TenGigE0/1/1",
"aSubInterface": "1.1",
"zSubInterface": "1.2",
"evc_bandwidth": "500 Mbps",
"evcStatus": "In Effect",
"cktRevision": "R12",
"inServiceDate": "2023-09-01"
}
]
Example Response (External):
[
{
"evcId": "EVC123",
"serviceType": "ELINE",
"serviceInstanceId": "SI12345",
"evc_bandwidth": "500 Mbps",
"evcStatus": "In Effect",
"cktRevision": "R12",
"inServiceDate": "2023-09-01"
}
]
6. Circuit Performance
Endpoint: POST /performance/v1/circuit
Description: Returns circuit-level performance metrics for a given time
window. It includes KPIs such as latency, jitter, packet loss, and availability.
The data is sourced from the EPNM performance table and is B-to-E specific
(C-to-D metrics are deprioritized)
JSON Payload
Parameter Type Required Description
cleId string Yes Customer Location Entity ID
ban array Yes Billing Account Numbers
circuitId string Optional Circuit Identifier (mapped via USP)
startDate string Optional ISO 8601 format (e.g. 2025-06-04T00:00:00Z)
endDate string Optional ISO 8601 format (e.g. 2025-06-04T00:00:00Z)
interval string Optional Time bucket size: hourly, daily, weekly (default:
daily)
limit integer Optional Number of records per page (default: 25)
offset integer Optional Number of records to skip (default: 0)
Headers:
Header Required Value/Type Description
authorizatio Yes Bearer <token> OAuth 2.0 access token
n
x-role Yes Internal / External Controls access to sensitive attributes
Example Request Body:
"cleId": "CLE-45678",
"ban": ["BAN123456", "BAN654321"],
"circuitId": "C123456",
"startTime": "2025-07-17T00:00:00Z",
"endTime": "2025-07-17T01:00:00Z",
"interval": "daily"
Example Response (Internal & External):
{
"circuitId": "C123456",
"performance": [
{
"timestamp": "2025-06-04T00:00:00Z",
"availability": 99.99,
"delay2way": 12,
"jitterforward": 0.8,
"jitterbackward": 0.6,
"lossforward": 0.05,
"lossbackward": 0.03
}
]
}