Overview
HotSpot Guest Portal API provides the ability to create, read, update, delete and search hotspot guest portals.
Please note that these examples are not meant to
be used as is because they have references to DB data.
You should treat it as a basic template and edit it before sending to server.
Resource definition
Attribute |
Type |
Required |
Default
value |
Description |
name |
String |
Yes |
Resource name |
|
id |
String |
Yes |
Resourse UUID |
|
description |
String |
No |
||
macAddress |
String |
Yes |
MAC address of the endpoint |
|
policyName |
String |
Yes |
Policy name for applying to the endpoint |
XML example:
1. XML
2.
<?xml version="1.0" encoding="UTF-8"?>
3. <ns0:ancendpoint xmlns:ns0="anc.ers.ise.cisco.com" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns1="ers.ise.cisco.com" xmlns:ers="ers.ise.cisco.com">
4.
<macAddress>00:11:22:33:44:55</macAddress>
5. <policyName>policy1</policyName>
6.
</ns0:ancendpoint>
7.
8.
JSON
9. {
10. "ErsAncEndpoint" : {
11. "macAddress" : "00:11:22:33:44:55",
12. "policyName" : "policy1"
13.
}
14.}
Revision History
Revision
0 |
|
Resource Version |
1.0 |
ISE Version |
2.1 |
Description |
Initial Ise Version |
Api Reference
Get-By-Id
Request:
Method: |
GET |
URI: |
https://10.56.60.175:9060/ers/config/ancendpoint/{id} |
HTTP 'Content-Type' Header: |
application/xml | application/json |
HTTP 'Accept' Header: |
application/xml | application/json |
HTTP 'ERS-Media-Type' Header (Not
Mandatory): |
anc.ancendpoint.1.0 |
HTTP 'X-CSRF-TOKEN' Header
(Required Only if Enabled from GUI): |
fetch |
Request Content:
N/A
Response: (ErsAncEndpoint)
HTTP Status: |
200 (OK) |
Content:
XML
<?xml version="1.0" encoding="UTF-8"?>
<ns0:ancendpoint
xmlns:ns0="anc.ers.ise.cisco.com" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns1="ers.ise.cisco.com" xmlns:ers="ers.ise.cisco.com">
<macAddress>00:11:22:33:44:55</macAddress>
<policyName>policy1</policyName>
</ns0:ancendpoint>
JSON
{
"ErsAncEndpoint" : {
"macAddress" : "00:11:22:33:44:55",
"policyName" : "policy1"
}
}
clear
Request:
Method: |
PUT |
URI: |
https://10.56.60.175:9060/ers/config/ancendpoint/apply |
HTTP 'Content-Type' Header: |
application/xml | application/json |
HTTP 'Accept' Header: |
application/xml | application/json |
HTTP 'ERS-Media-Type' Header (Not
Mandatory): |
anc.ancendpoint.1.0 |
HTTP 'X-CSRF-TOKEN' Header
(Required Only if Enabled from GUI): |
The Token value from
the GET X-CSRF-TOKEN fetch request |
Additional Attributes: |
macAddress,ipAddress |
Request Content:
XML
<?xml version="1.0" encoding="UTF-8"?>
<ns0:operationAdditionalData
xmlns:ns0="ers.ise.cisco.com" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<requestAdditionalAttributes>
<additionalAttribute name="macAddress" value="value_0"/>
<additionalAttribute name="ipAddress" value="value_1"/>
</requestAdditionalAttributes>
</ns0:operationAdditionalData>
JSON
{
"OperationAdditionalData" : {
"additionalData" : [ {
"name" : "example additional attribute
name",
"value" : "its value"
} ]
}
}
Response: (N/A)
HTTP Status: |
null |
Content:
N/A
apply
Request:
Method: |
PUT |
URI: |
https://10.56.60.175:9060/ers/config/ancendpoint/apply |
HTTP 'Content-Type' Header: |
application/xml | application/json |
HTTP 'Accept' Header: |
application/xml | application/json |
HTTP 'ERS-Media-Type' Header (Not
Mandatory): |
anc.ancendpoint.1.0 |
HTTP 'X-CSRF-TOKEN' Header
(Required Only if Enabled from GUI): |
The Token value from
the GET X-CSRF-TOKEN fetch request |
Additional Attributes: |
macAddress,ipAddress,policyName |
Request Content:
XML
<?xml version="1.0" encoding="UTF-8"?>
<ns0:operationAdditionalData
xmlns:ns0="ers.ise.cisco.com" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<requestAdditionalAttributes>
<additionalAttribute name="macAddress" value="value_0"/>
<additionalAttribute name="ipAddress" value="value_1"/>
<additionalAttribute name="policyName" value="value_2"/>
</requestAdditionalAttributes>
</ns0:operationAdditionalData>
JSON
{
"OperationAdditionalData" : {
"additionalData" : [ {
"name" : "example additional attribute
name",
"value" : "its value"
} ]
}
}
Response: (N/A)
HTTP Status: |
null |
Content:
N/A
Get-All
Request:
Method: |
GET |
URI: |
https://10.56.60.175:9060/ers/config/ancendpoint |
HTTP 'Content-Type' Header: |
application/xml | application/json |
HTTP 'Accept' Header: |
application/xml | application/json |
HTTP 'ERS-Media-Type' Header (Not
Mandatory): |
anc.ancendpoint.1.0 |
HTTP 'X-CSRF-TOKEN' Header
(Required Only if Enabled from GUI): |
fetch |
Request Content:
N/A
Response: (SearchResult)
HTTP Status: |
200 (OK) |
Content:
XML
<?xml version="1.0" encoding="UTF-8"?>
<ns0:searchResult
xmlns:ns0="v2.ers.ise.cisco.com" xmlns:ns1="ers.ise.cisco.com" xmlns:ers-v2="ers-v2" total="2">
<ns0:nextPage rel="next" href="link-to-next-page" type="application/xml"/>
<ns0:previousPage rel="previous" href="link-to-previous-page" type="application/xml"/>
<ns0:resources>
<ns1:resource description="description1" id="id1" name="name1"/>
<ns1:resource description="description2" id="id2" name="name2"/>
</ns0:resources>
</ns0:searchResult>
JSON
{
"SearchResult" : {
"total" : 2,
"resources" : [ {
"id" : "id1",
"name" : "name1",
"description" : "description1"
}, {
"id" : "id2",
"name" : "name2",
"description" : "description2"
} ],
"nextPage" : {
"rel" : "next",
"href" : "link-to-next-page",
"type" : "application/xml"
},
"previousPage" : {
"rel" : "previous",
"href" : "link-to-previous-page",
"type" : "application/xml"
}
}
}
Supported Filter and Sorting Fields:
Filter: [name]
To search guest
users by using toDate column, please follow the below format:
DD-MON-YY (Ex: 13-SEP-18)
* Day or Year: GET /ers/config/guestuser/?filter=toDate.CONTAINS.13
* Month: GET /ers/config/guestuser/?filter=toDate.CONTAINS.SEP
* Date: GET /ers/config/guestuser/?filter=toDate.CONTAINS.13-SEP-18
Sorting: [name]
Get Version
Request:
Method: |
GET |
URI: |
https://10.56.60.175:9060/ers/config/ancendpoint/versioninfo |
HTTP 'Content-Type' Header: |
application/xml | application/json |
Response: (Version Info)
HTTP Status: |
200 (OK) |
Content:
XML
<?xml version="1.0" encoding="UTF-8"?>
<ns0:versionInfo
xmlns:ns0="ers.ise.cisco.com" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<currentServerVersion>1.0</currentServerVersion>
<link rel="self" href="link" type="application/xml"/>
<supportedVersions>0.9,0.8</supportedVersions>
</ns0:versionInfo>
JSON
{
"VersionInfo" : {
"currentServerVersion" : "1.0",
"supportedVersions" : "0.9,0.8",
"link" : {
"rel" : "self",
"href" : "link",
"type" : "application/xml"
}
}
}
Bulk Request
Request:
Method: |
PUT |
URI: |
https://10.56.60.175:9060/ers/config/ancendpoint/bulk/submit |
HTTP 'Content-Type' Header: |
application/xml | application/json |
Request Content:
XML
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns7:ancendpointBulkRequest
operationType="create" resourceMediaType="xml" xmlns:ns6="sxp.ers.ise.cisco.com" xmlns:ns5="trustsec.ers.ise.cisco.com" xmlns:ns8="network.ers.ise.cisco.com" xmlns:ns7="anc.ers.ise.cisco.com" xmlns:ers="ers.ise.cisco.com" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns4="identity.ers.ise.cisco.com">
<ns7:resourcesList/>
</ns7:ancendpointBulkRequest>
JSON
{
"ErsAncEndpointBulkRequest" : {
"operationType" : "create",
"resourceMediaType" : "xml"
}
}
Response:
HTTP Status: |
202 (Accepted) |
Content:
N/A
Monitor Bulk Status
Request:
Method: |
GET |
URI: |
https://10.56.60.175:9060/ers/config/ancendpoint/bulk/{bulkid} |
HTTP 'Content-Type' Header: |
application/xml | application/json |
Request Content:
N/A
Response:
HTTP Status: |
200 (OK) |
Content:
XML
<?xml version="1.0" encoding="UTF-8"?>
<ns0:bulkStatus
xmlns:ns0="ers.ise.cisco.com" xmlns:xs="http://www.w3.org/2001/XMLSchema" bulkId="1546939333413" executionStatus="COMPLETED" failCount="0" mediaType="" operationType="create" resourcesCount="5" startTime="Tue Jan
08 09:22:13 UTC 2019" successCount="5">
<ns0:resourcesStatus>
<ns0:resourceStatus
description="description..." id="1234454324" name="resource1" status="PENDING">
<resourceExecutionStatus>PENDING</resourceExecutionStatus>
</ns0:resourceStatus>
<ns0:resourceStatus
description="description..." id="2343242342" name="resource2" status="PENDING">
<resourceExecutionStatus>PENDING</resourceExecutionStatus>
</ns0:resourceStatus>
<ns0:resourceStatus
description="description..." id="4564566456" name="resource3" status="PENDING">
<resourceExecutionStatus>PENDING</resourceExecutionStatus>
</ns0:resourceStatus>
<ns0:resourceStatus
description="description..." id="6544566455" name="resource4" status="PENDING">
<resourceExecutionStatus>PENDING</resourceExecutionStatus>
</ns0:resourceStatus>
</ns0:resourcesStatus>
</ns0:bulkStatus>
JSON
{
"BulkStatus" : {
"bulkId" : "1546939333413",
"mediaType" : "",
"executionStatus" : "COMPLETED",
"operationType" : "create",
"startTime" : "Tue Jan
08 09:22:13 UTC 2019",
"resourcesCount" : 5,
"successCount" : 5,
"failCount" : 0,
"resourcesStatus" : [ {
"id" : "1234454324",
"name" : "resource1",
"description" : "description...",
"resourceExecutionStatus" : "PENDING",
"status" : "PENDING"
}, {
"id" : "2343242342",
"name" : "resource2",
"description" : "description...",
"resourceExecutionStatus" : "PENDING",
"status" : "PENDING"
}, {
"id" : "4564566456",
"name" : "resource3",
"description" : "description...",
"resourceExecutionStatus" : "PENDING",
"status" : "PENDING"
}, {
"id" : "6544566455",
"name" : "resource4",
"description" : "description...",
"resourceExecutionStatus" : "PENDING",
"status" : "PENDING"
} ]
}
}