cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1364
Views
0
Helpful
1
Replies

ISE 2.4 API header to send email to guests

thiagosilvino
Level 1
Level 1

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

1 Accepted Solution

Accepted Solutions

hslai
Cisco Employee
Cisco Employee

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

View solution in original post

1 Reply 1

hslai
Cisco Employee
Cisco Employee

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