In this video, we explore how you can identify and use a REST API inside Dundas BI to perform application functions without stepping foot in the application
NOTE:
Things have changed a little bit since this was posted and the script will require a slight modification. Specifically, it is now required to properly set the content type to application/json. Here is a full modified script.
$body = @{
"accountName"="YOURACCOUNT"
"password"="YOURPASSWORD"
"cultureName"="en-us"
"deleteOtherSessions"="false"
"isWindowsLogOn"="false"
} | ConvertTo-Json
#view body (for testing)
$body
$response = Invoke-WebRequest -UseBasicParsing -Uri 'https://YOURSERVERADDRESS/Api/LogOn' -ContentType application/json -Method 'POST' -Body $body
#check response
$response
#
#StatusCode : 200
#StatusDescription : OK
#Content : {"sessionId":"80247c55-4268-4366-ab70-#19abcdc1153a","logOnFailureReason":"None","message":"Successful"}
#RawContent : HTTP/1.1 200 OK
# Pragma: no-cache
# Content-Length: 103
# Cache-Control: no-cache
# Content-Type: application/json; charset=utf-8
# Date: Fri, 26 Mar 2021 17:39:10 GMT
# Expires: -1
#
# {"sessionId":"80247c...
#Forms :
#Headers : {[Pragma, no-cache], [Content-Length, 103], [Cache-Control, no-cache],
[Content-#Type, application/json; charset=utf-8]...}
#Images : {}
#InputFields : {}
#Links : {}
#ParsedHtml :
#RawContentLength : 103
#
$sessionId = $response |ConvertFrom-Json | Select sessionId
$sesh = $sessionId.sessionId
$uri = 'https://YOURSERVERADDRESS/API/DataCub... + $sesh
$body = @{a='a'} | ConvertTo-Json
$response2 = Invoke-WebRequest -UseBasicParsing -Uri $uri -ContentType application/json -Method Post -Body $body
#check response2, it should be something like this if I worked.
#StatusCode : 200
#StatusDescription : OK
#Content : {}
#RawContent : HTTP/1.1 200 OK
# Pragma: no-cache
# Content-Length: 0
# Cache-Control: no-cache
# Date: Fri, 26 Mar 2021 17:49:22 GMT
# Expires: -1
#
#
#Headers : {[Pragma, no-cache], [Content-Length, 0], [Cache-Control, no-cache],
[Date, Fri, 26 #Mar 2021 17:49:22 GMT]...}
#RawContentLength : 0
#
About the Author
Jeff Hainsworth is a Senior Solutions Architect at Dundas Data Visualization with over a decade and a half of experience in Business Intelligence. He has a passion for building, coding and everything visual – you know, shiny things! Check out "Off the Charts... with Jeff", his platform for great content on all things analytics, data visualizations, dashboards, and business intelligence. There’s something for everyone!
Follow Us
Support