11-30-2018 10:12 AM - edited 03-11-2019 01:52 AM
I am running ISE 2.4.0.357 and the function to send e-mail to guests by using API calls is not working.
I guess that the documention is informing the wrong headers for this call.
This is what I see in the live documentation (https://1.1.1.1:9060/ers/sdk#email):
Method: PUT
URI: https://1.1.1.1:9060/ers/config/guestuser/email/{id}/portalId/{portalId}
HTTP 'Content-Type' Header: application/xml | application/json
HTTP 'Accept' Header: application/xml | application/json
HTTP 'ERS-Media-Type' Header (Not Mandatory): identity.guestuser.2.0
HTTP 'X-CSRF-TOKEN' Header (Required Only if Enabled from GUI): The Token value from the GET X-CSRF-TOKEN fetch request
Bulk Support: Operation 'email' can be used within Bulk Request.
Additional Attributes: senderEmail
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="senderEmail" value="value_0"/>
</requestAdditionalAttributes>
</ns0:operationAdditionalData>
JSON
{
"OperationAdditionalData" : {
"additionalData" : [ {
"name" : "example additional attribute name",
"value" : "its value"
} ]
}
}
I performed many tests. By using JSON and XML and it didn’t work.
Do you guys know what is the correct header?
Example tests:
Header "Content-Type: application/xml"
[user@server]$ cat xml.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="senderEmail" value="email@example.com"/>
</requestAdditionalAttributes>
</ns0:operationAdditionalData>
[user@server]$ curl --tlsv1.1 -v -k -X 'PUT' -H "Content-Type: application/xml" -d @xml.xml 'https://sponsor:XXX@1.1.1.1:9060/ers/config/guestuser/email/31e8ca71-f49e-11e8-bc83-2e9d9d140649/portalId/36a96010-c267-11e8-89ad-2e2e02dc7046'
ERROR: < HTTP/1.1 415 Unsupported Media Type
Header "Content-Type: application/json"
[user@server]$ curl --tlsv1.1 -v -k -X 'PUT' -H 'Content-Type: application/json' -d '{"OperationAdditionalData":{"additionalData":[{"name":"senderEmail","value":"email@example.com"}]}}' 'https://sponsor:XXX@1.1.1.1:9060/ers/config/guestuser/email/31e8ca71-f49e-11e8-bc83-2e9d9d140649/portalId/36a96010-c267-11e8-89ad-2e2e02dc7046'
ERROR: < HTTP/1.1 415 Unsupported Media Type
Header "Content-Type: application/json" “ACCEPT: application/json”
[user@server]$ curl --tlsv1.1 -v -k -X 'PUT' -H 'ACCEPT: application/json' -H 'Content-Type: application/json' -d '{"OperationAdditionalData":{"additionalData":[{"name":"senderEmail","value":"email@example.com"}]}}' 'https://sponsor:XXX@1.1.1.1:9060/ers/config/guestuser/email/31e8ca71-f49e-11e8-bc83-2e9d9d140649/portalId/36a96010-c267-11e8-89ad-2e2e02dc7046'
ERROR: < HTTP/1.1 500 Internal Server Error
< Server:
<
{
"ERSResponse" : {
"operation" : "PUT-email-guestuser",
"messages" : [ {
"title" : "Email request for GuestUser with ID (31e8ca71-f49e-11e8-bc83-2e9d9d140649) failed due to Error while generating Email ",
"type" : "ERROR",
"code" : "CRUD operation exception"
} ],
"link" : {
"rel" : "related",
"href" : "https://1.1.1.1:9060/ers/config/guestuser/email/31e8ca71-f49e-11e8-bc83-2e9d9d140649/portalId/36a96010-c267-11e8-89ad-2e2e02dc7046",
"type" : "application/xml"
}
}
HEADER "Content-Type: application/vnd.com.cisco.ise.identity.guestuser.2.0+xml"
[user@server]$ curl --tlsv1.1 -v -k -X 'PUT' -H "Content-Type: application/vnd.com.cisco.ise.identity.guestuser.2.0+xml" -d @xml.xml 'https://sponsor:XXX@1.1.1.1:9060/ers/config/guestuser/email/31e8ca71-f49e-11e8-bc83-2e9d9d140649/portalId/36a96010-c267-11e8-89ad-2e2e02dc7046'
ERROR: < HTTP/1.1 415 Unsupported Media Type
Solved! Go to Solution.
12-21-2018 10:55 PM - edited 12-22-2018 05:38 PM
Below worked for me.
curl -X PUT -k -H 'Content-Type: application/json' -H 'Accept: application/json' -i 'https://mySponsor:mySponsorPassword@myISE:9060/ers/config/guestuser/email/11c276c0-05b4-11e9-a436-005056abd9c7/portalId/40963c00-2e02-11e8-ba71-005056872c7f' --data '{
"OperationAdditionalData" : {
"additionalData" : [ {
"name" : "senderEmail",
"value" : "sponsor@demo.local"
} ]
}
}'
12-21-2018 10:55 PM - edited 12-22-2018 05:38 PM
Below worked for me.
curl -X PUT -k -H 'Content-Type: application/json' -H 'Accept: application/json' -i 'https://mySponsor:mySponsorPassword@myISE:9060/ers/config/guestuser/email/11c276c0-05b4-11e9-a436-005056abd9c7/portalId/40963c00-2e02-11e8-ba71-005056872c7f' --data '{
"OperationAdditionalData" : {
"additionalData" : [ {
"name" : "senderEmail",
"value" : "sponsor@demo.local"
} ]
}
}'
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide