0% found this document useful (0 votes)
8 views12 pages

Eline APIs

The document outlines the API specifications for the AI_Connect project, detailing endpoints for retrieving port and circuit inventory, performance metrics, and associated JSON payloads. It includes information on required parameters, headers, and example requests and responses for both internal and external access. The APIs are designed to facilitate access to network inventory and performance data based on customer and billing inputs.

Uploaded by

zeeshan7237444
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views12 pages

Eline APIs

The document outlines the API specifications for the AI_Connect project, detailing endpoints for retrieving port and circuit inventory, performance metrics, and associated JSON payloads. It includes information on required parameters, headers, and example requests and responses for both internal and external access. The APIs are designed to facilitate access to network inventory and performance data based on customer and billing inputs.

Uploaded by

zeeshan7237444
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 12

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
}
]
}

You might also like