Spaces:
Sleeping
Sleeping
<html lang="en"> | |
<head> | |
<meta charset="utf-8" /> | |
<meta name="viewport" content="width=device-width, initial-scale=1" /> | |
<meta name="description" content="SwaggerUI" /> | |
<title>3GPP 5GC SBI OpenAPI</title> | |
<link rel="stylesheet" href="https://unpkg.com/[email protected]/swagger-ui.css" /> | |
<style> | |
#swagger-ui { | |
padding: 10px; | |
margin: 0; | |
width: 100vw; | |
position: relative; | |
} | |
ul { | |
margin-top: 0.4em; | |
margin-bottom: 0; | |
} | |
h5 { | |
margin-top: 1em; | |
margin-bottom: 0; | |
} | |
/* table of contents */ | |
#toc { | |
background-color: white; | |
z-index: 2; | |
/* width: 250px; */ | |
position: fixed; | |
/* border: solid; */ | |
} | |
#toc nav { | |
display: none; | |
overflow: auto; | |
padding-right: 1em; | |
height: calc(100vh - 48px); | |
} | |
#toc.active nav { | |
display: block; | |
} | |
#release-select { | |
z-index: 2; | |
position: relative; | |
float: right; | |
} | |
</style> | |
</head> | |
<body> | |
<select id="release-select" onchange="update(currentFile)"> | |
<option value="Rel-18">Rel-18</option> | |
<option value="Rel-17">Rel-17</option> | |
<option value="Rel-16">Rel-16</option> | |
<option value="Rel-15">Rel-15</option> | |
</select> | |
<div id="toc"> | |
<label><b>☰ 5GC NF List</b></label> | |
<nav class="toc"> | |
<h5>AMF 29.518</h5> | |
<ul class="compact toc ulBare ulEmpty"> | |
<li><a href="#" onclick="update('TS29518_Namf_Communication.yaml')"> | |
Communication</a></li> | |
<li><a href="#" onclick="update('TS29518_Namf_EventExposure.yaml')"> | |
Event Exposure</a></li> | |
<li><a href="#" onclick="update('TS29518_Namf_Location.yaml')"> | |
Location</a></li> | |
<li><a href="#" onclick="update('TS29518_Namf_MT.yaml')"> | |
MT</a></li> | |
<li><a href="#" onclick="update('TS29518_Namf_MBSCommunication.yaml')"> | |
MBS Communication</a></li> | |
<li><a href="#" onclick="update('TS29518_Namf_MBSBroadcast.yaml')"> | |
MBS Broadcast</a></li> | |
</ul> | |
<h5>SMF 29.502/508/542</h5> | |
<ul> | |
<li><a href="#" onclick="update('TS29502_Nsmf_PDUSession.yaml')"> | |
PDU Session</a></li> | |
<li><a href="#" onclick="update('TS29508_Nsmf_EventExposure.yaml')"> | |
Event Exposure</a></li> | |
<li><a href="#" onclick="update('TS29542_Nsmf_NIDD.yaml')"> | |
NIDD</a></li> | |
</ul> | |
<h5>NRF 29.510</h5> | |
<ul> | |
<li><a href="#" onclick="update('TS29510_Nnrf_NFManagement.yaml')"> | |
NF Management</a></li> | |
<li><a href="#" onclick="update('TS29510_Nnrf_NFDiscovery.yaml')"> | |
NF Discovery</a></li> | |
<li><a href="#" onclick="update('TS29510_Nnrf_AccessToken.yaml')"> | |
OAuth2</a></li> | |
<li><a href="#" onclick="update('TS29510_Nnrf_Bootstrapping.yaml')"> | |
Bootstrapping</a></li> | |
</ul> | |
<h5>UDM 29.503</h5> | |
<ul> | |
<li><a href="#" onclick="update('TS29503_Nudm_SDM.yaml')"> | |
SDM</a></li> | |
<li><a href="#" onclick="update('TS29503_Nudm_UECM.yaml')"> | |
UECM</a></li> | |
<li><a href="#" onclick="update('TS29503_Nudm_UEAU.yaml')"> | |
UE Authentication</a></li> | |
<li><a href="#" onclick="update('TS29503_Nudm_EE.yaml')"> | |
Event Exposure</a></li> | |
<li><a href="#" onclick="update('TS29503_Nudm_PP.yaml')"> | |
Parameter Provisioning</a></li> | |
<li><a href="#" onclick="update('TS29503_Nudm_NIDDAU.yaml')"> | |
NIDD Authorization</a></li> | |
<li><a href="#" onclick="update('TS29503_Nudm_MT.yaml')"> | |
MT</a></li> | |
<li><a href="#" onclick="update('TS29503_Nudm_SSAU.yaml')"> | |
Service-Specific Authorization</a></li> | |
<li><a href="#" onclick="update('TS29503_Nudm_RSDS.yaml')"> | |
RSDS</a></li> | |
<li><a href="#" onclick="update('TS29503_Nudm_UEID.yaml')"> | |
UEID</a></li> | |
</ul> | |
<h5>NSSF 29.531</h5> | |
<ul> | |
<li><a href="#" onclick="update('TS29531_Nnssf_NSSAIAvailability.yaml')"> | |
NSSAI Availability</a></li> | |
<li><a href="#" onclick="update('TS29531_Nnssf_NSSelection.yaml')"> | |
NS Selection</a></li> | |
</ul> | |
<h5>LMF 29.572</h5> | |
<ul> | |
<li><a href="#" onclick="update('TS29572_Nlmf_Location.yaml')"> | |
Location</a></li> | |
<li><a href="#" onclick="update('TS29572_Nlmf_Broadcast.yaml')"> | |
Broadcast</a></li> | |
</ul> | |
<h5>AUSF 29.509</h5> | |
<ul> | |
<li><a href="#" onclick="update('TS29509_Nausf_UEAuthentication.yaml')"> | |
UE Authentication</a></li> | |
<li><a href="#" onclick="update('TS29509_Nausf_SoRProtection.yaml')"> | |
SoR Protection </a></li> | |
<li><a href="#" onclick="update('TS29509_Nausf_UPUProtection.yaml')"> | |
UPU Protection </a></li> | |
</ul> | |
<h5>SMSF 29.540</h5> | |
<ul> | |
<li><a href="#" onclick="update('TS29540_Nsmsf_SMService.yaml')"> | |
SM Service</a></li> | |
</ul> | |
<h5>PCF 29.514/534/507/512/554/525/537</h5> | |
<ul> | |
<li><a href="#" onclick="update('TS29514_Npcf_PolicyAuthorization.yaml')"> | |
Policy Authorization</a></li> | |
<li><a href="#" onclick="update('TS29534_Npcf_AMPolicyAuthorization.yaml')"> | |
AM Policy Authorization</a></li> | |
<li><a href="#" onclick="update('TS29507_Npcf_AMPolicyControl.yaml')"> | |
AM Policy Control</a></li> | |
<li><a href="#" onclick="update('TS29512_Npcf_SMPolicyControl.yaml')"> | |
SM Policy Control</a></li> | |
<li><a href="#" onclick="update('TS29554_Npcf_BDTPolicyControl.yaml')"> | |
BDT Policy Control</a></li> | |
<li><a href="#" onclick="update('TS29523_Npcf_EventExposure.yaml')"> | |
Event Exposure</a></li> | |
<li><a href="#" onclick="update('TS29525_Npcf_UEPolicyControl.yaml')"> | |
UE Policy Control</a></li> | |
<li><a href="#" onclick="update('TS29537_Npcf_MBSPolicyControl.yaml')"> | |
MBS Policy Control </a></li> | |
<li><a href="#" onclick="update('TS29537_Npcf_MBSPolicyAuthorization.yaml')"> | |
MBS Policy Authorization</a></li> | |
</ul> | |
<h5>NSSAAF 29.526</h5> | |
<ul> | |
<li><a href="#" onclick="update('TS29526_Nnssaaf_NSSAA.yaml')"> | |
NSSAA</a></li> | |
<li><a href="#" onclick="update('TS29526_Nnssaaf_AIW.yaml')"> | |
AIW</a></li> | |
</ul> | |
<br></br> | |
</nav> | |
<!-- Add more API links here --> | |
</div> | |
<div id="swagger-ui"></div> | |
<script src="https://unpkg.com/[email protected]/swagger-ui-bundle.js" crossorigin></script> | |
<script> | |
let currentRelease = 'Rel-18'; | |
let currentFile = 'TS29518_Namf_Communication.yaml'; | |
function update(updatedFile) { | |
const selectElement = document.getElementById('release-select'); | |
currentRelease = selectElement.value; | |
currentFile = updatedFile; | |
load(currentRelease, currentFile); // Load the corresponding file for the selected release | |
} | |
function load(loadRelease, loadFile) { | |
console.log('Load: ', loadRelease, loadFile, window.location.href); | |
window.ui = SwaggerUIBundle({ | |
url: loadRelease + '/' + loadFile, | |
dom_id: '#swagger-ui' | |
}); | |
} | |
window.onload = () => { | |
update(currentFile); | |
}; | |
const toc = document.getElementById("toc"); | |
const swagger = document.getElementById("swagger-ui"); | |
toc.querySelector("label").addEventListener("click", e => { | |
toc.classList.toggle("active"); | |
}); | |
toc.querySelector("nav").addEventListener("click", e => { | |
toc.classList.remove("active"); | |
}); | |
swagger.addEventListener("click", e => { | |
toc.classList.remove("active"); | |
}); | |
</script> | |
</body> | |
</html> |