Klipfolio SSO Test Page

HTML

<h1>Klipfolio SSO Test Page</h1>
<p>This page can be used to test a generated SSO token for Klipfolio Dashboard.  After generating the token enter it below along with the associated company ID click the button to submit the token.</p>


<div>30e9deaeea86668f0e4406ab226019a6ed043ed7:</div>
<div><textarea class='f-token' id="sso_token"></textarea></div>
<div>	a68466daef49499983afaa1bb93117ef:</div>
<div><input class='f-cid' type='text' id="cid"></input></div>
<div><input style='margin-top:10px' type='button' id='button-sso' value='Submit SSO Token'></div>

<div id='result'/>

CSS

body { font-family:arial,verdana,sans-serif }

.fail { color:red }
.f-token { font-family:"courier new",monospace; width:100%;height:45px;padding:5px}
.f-cid { font-family:"courier new",monospace; width:100%; padding:5px } 
input[type=button] { font-size:1.1em }

JavaScript

var ssoUrl = "https://app.klipfolio.com/users"
		var ssoToken = "";
		var ssoCompany = "";

$('#button-sso').click( function(){
    
        ssoToken = $('#sso_token').val();
    ssoCompany = $('#cid').val();
                     

			$.ajax({

				url : ssoUrl + "/sso_auth",
				type: "post",
				xhrFields:{
					withCredentials:true
				},
				headers:{
					"KF-SSO": ssoToken,
					"KF-Company": ssoCompany
				},
				dataType:"json",
				success : function(data){
					console.log(data)
                    $('#result').html("<h2>SSO Success</h2><p>Logged in as: "+ data.user.email +
                                      "<p>Test your session by going to <a href='https://app.klipfolio.com/dashboard'>Klipfolio Dashboard</p>");
				},
				error : function(err){
					console.log("sso auth failed",err)
                    var errMsg = JSON.parse( err.responseText) ;
                    console.log(errMsg)
                    $('#result').html("<h2 class='fail'>SSO Failed<h2><p>Error: (#"+errMsg.error_code+") "
                                      +errMsg.error_message+"</p>");
				}
			})

		})


		function logoutSSO(){
			$.ajax({

				url : ssoUrl + "/sso_logout",
				type: "post",
				xhrFields:{
					withCredentials:true
				},
				headers:{
					"KF-SSO": ssoToken,
					"KF-Company": ssoCompany
				},
				dataType:"json",
				success : function(data){
					console.log("logout",data)
				},
				error : function(err){
					console.log("sso auth failed",err.responseJSON)
				}
			})

		}