FTTH Ticketing API iForte
FTTH Ticketing API iForte
DOCUMENTATION
iForte
1. Get Access Token
Path : {{BASE_URL}}/ftth/api/auth/oauth/token
Method : POST
Request
Field Name Type Format Description Mandatory
grant_type String password Y
username String To be disclosed privately Y
password String To be disclosed privately Y
basic_auth String To be disclosed privately Y
basic_password String To be disclosed privately Y
Sample Request
curl --location --request POST 'http://{{BASE_URL}}/ftth/api/auth/oauth/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: Basic SUZQMDAxMDkyOnMzY3JldA==' \
--header 'Cookie: JSESSIONID=498742F527425941E02F26056039AC07' \
--data-urlencode 'grant_type=password' \
--data-urlencode 'username=username' \
--data-urlencode 'password=password'
Response
Field Name Type Format Description Mandatory
access_token String Y
token_type String Y
refresh_token String Y
scope String Y
expires_in Number Seconds Expiry time Y
Response Sample
{
"access_token":
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOlsibXcvYWRtaW5hcHAiXSwidXNlc
l9uYW1lIjoiYWRtaW4iLCJzY29wZSI6WyJyb2AX2FkbWluIl0sImV4cCI6MTcwOTE3ODU0
OSwiYXV0aG9yaXRpZXMiOlsiUkVBRCIsInJvbGVfYWRtaW4iLCJSRU1PVkUiLCJERUxFVE
UiLCJVUERBVEUiXSwianRpIjoiOTZjMmQ0MDMtODJmOC00NzNjLTgwYjYtNTM1YzkwZ
GNiMTE2IiwiY2xpZW50X2lkIjoiZnR0aC1tdyJ9.nhfJzNTGb0x0tCrbOoQxhwKSUyHfkSc
MgtE_Qc8nMRI",
"token_type": "bearer",
"refresh_token":
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOlsibXcvYWRtaW5hcHAiXSwidXNlc
l9uYW1lIjoiYWRtaW4iLCJzY29wZSI6WyJyb2AX2FkbWluIl0sImF0aSI6Ijk2YzJkNDAzLTgy
ZjgtNDczYy04MGI2LTUzNWM5MGRjYjExNiIsImV4cCI6MTcwOTE3ODU0OSwiYXV0aG9
yaXRpZXMiOlsiUkVBRCIsInJvbGVfYWRtaW4iLCJSRU1PVkUiLCJERUxFVEUiLCJVUERBVE
UiXSwianRpIjoiZGVjMjM5OGYtNTI0MS00YTIzLTgwMWYtMjA2OTNkNjQ1MmVlIiwiY2
xpZW50X2lkIjoiZnR0aC1tdyJ9.Q_lH19hFp8KQG1T_sl8e3Le6SWXGIHlt-kIZyGnY_C4",
"expires_in": 3599,
"scope": "role_admin",
"jti": "96c2d403-82f8-473c-80b6-535c90dcb116"
}
2. Create New Ticket Single
Method : POST
Request
partnerTicketId String Y
ticketSubject String Y
ticketType String Y
homepassId String Y
ticketSeverity String Y
partnerSource String Y
customerInformation Object Y
additionalInfo String N
requireVisit boolean N
description String N
subscriptionStatus String Y
package String Y
acsStatus String Y
submittedBy String Y
vendorName String N
"partnerTicketId": "TICKET-001",
"ticketSubject": "Subject",
"description": "Description",
"ticketType": "Incident",
"homepassId": "HOMEPASSID",
"ticketSeverity": "High",
"partnerSource": "PARTNERID",
"customerInformation": {
"customerIdPartner": "custID-001",
"customerPhone": "62810000000",
"customerIdIforte": null,
"customerHomePhone": "",
"customerMobilePhone1": "",
"customerMobilePhone2": "",
"customerEmail": "",
"customerAddress": {
"city": "KARAWANG",
"district": "PURWASARI",
"subdistrict": "SUKASARI",
"longitude": 107.418349,
"latitude": -6.381714,
"zipCode": "41371",
},
"latitude": -6.381714,
"longitude": 107.418349
},
"additionalInfo": "Info tambahan",
"appointmentDate": "20230515|1",
"requireVisit": true,
"devices": [
"serialNumber": "SNONT",
"deviceType": "ONT"
},
"serialNumber": "SNSTB",
"deviceType": "STB"
],
"issueCategory": "INTERNET",
"subscriptionStatus": "active",
"acsStatus": "acsStatus",
"submittedBy": "User",
"vendorName": "IFORTE",
"documentIds": ["c0626ff4-1c0e-477a-9eb4-98702f1bda1c"]
Sample response
"partnerTicketId": "TICKET-001",
}
3. Create Gamas Ticket
Payload Body
1 partnerTicketID String Y
5 oltID String Y
6 oltIP String Y
7 oltLocation String Y
8 fdtID String Y
9 fatID String Y
10 impactedDevices List N
impactedDevices. devices.
13 String N
serialNumber
impactedDevices. devices.
14 String N
homepassID
impactedDevices. devices.
15 String N
customerID
only accepted :
16 severity String Y
low/medium/high/ catastrophe
format :
17 startTime Date Y
"YYYY-MM-DDTHH24:MI:SS"
format :
18 endTime Date Y
"YYYY-MM-DDTHH24:MI:SS"
19 title String Y
20 operationalImpact String Y
Array
21 clusterImpact Y ex : ["a","b","c"]
of String
Array
22 rootCause Y ex : ["a","b","c"]
of String
23 actionTaken List Y
format :
24 actionTaken.time Date Y
"YYYY-MM-DDTHH24:MI:SS"
25 actionTaken.action String Y
Sample Request :
{
"partnerTicketID":"DE-21223",
"partner":"IFORTE",
"status":"open",
"type":"incident",
"oltID":"JKPLM",
"oltIP":"10.10.2.22",
"oltLocation":"JKT-023",
"fdtID":"XLAT",
"fatID":"A01",
"impactedDevices":[
{
"ponPort":"ponPort1",
"devices":[
{
"serialNumber":"43232",
"homepassID":"JKPLM01H.XLAT.A01.152",
"customerID":"39501241"
},{
"serialNumber":"4323232",
"homepassID":"JKPLM01H.XLAT.A01.152",
"customerID":"39501248"
}
]
},
{
"ponPort":"ponPort2",
"devices":[
4
{
"serialNumber":"6454534",
"homepassID":"JKPLM01H.XLAT.A01.111",
"customerID":"JKPLM01H.XLAT.A01.111"
},{
"serialNumber":"4323232",
"homepassID":"JKPLM01H.XLAT.A01.153",
"customerID":"39501246"
}
]
}
],
"severity":"medium",
"startTime":"2023-09-01T10:22:10",
"endTime":"2023-09-10T07:22:10",
"title":"Signal Issue",
"operationalImpact":"JKT-01",
"clusterImpact":["CL-JKT02","CL-JKT03"],
"rootCause":["Jaringan Putus","Kabel rusak","lampu mati nyala"],
"actionTaken":[
{
"time": "2023-09-10T07:22:10",
"action": "Perbaikan Kabel"
},{
"time": "2023-09-11T08:22:10",
"action": "Perbaikan Konfigurasi Jaringan"
}
]
}