Start SAML2 SSO login
curl --request POST \
--url https://backendapi.corbado.io/v2/sso/saml2/start \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"email": "<string>",
"invitationToken": "<string>"
}
'import requests
url = "https://backendapi.corbado.io/v2/sso/saml2/start"
payload = {
"email": "<string>",
"invitationToken": "<string>"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({email: '<string>', invitationToken: '<string>'})
};
fetch('https://backendapi.corbado.io/v2/sso/saml2/start', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://backendapi.corbado.io/v2/sso/saml2/start",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'email' => '<string>',
'invitationToken' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://backendapi.corbado.io/v2/sso/saml2/start"
payload := strings.NewReader("{\n \"email\": \"<string>\",\n \"invitationToken\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://backendapi.corbado.io/v2/sso/saml2/start")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"email\": \"<string>\",\n \"invitationToken\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://backendapi.corbado.io/v2/sso/saml2/start")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"email\": \"<string>\",\n \"invitationToken\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"idpRedirectURL": "<string>",
"ssoNonce": "<string>"
}{
"httpStatusCode": 123,
"message": "OK",
"requestData": {
"requestID": "req-557...663",
"link": "https://my.corbado.com/requests/req-xxxxxxxxxxxxxxxxxxx"
},
"runtime": 0.06167686,
"error": {
"type": "<string>",
"details": "<string>",
"validation": [
{
"field": "<string>",
"message": "<string>"
}
],
"links": [
"<string>"
]
},
"data": {}
}SSO
Start SAML2 SSO login
Starts SAML2-based SSO login by resolving the project’s SSO configuration for the email and returning an IdP redirect URL.
POST
/
sso
/
saml2
/
start
Start SAML2 SSO login
curl --request POST \
--url https://backendapi.corbado.io/v2/sso/saml2/start \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"email": "<string>",
"invitationToken": "<string>"
}
'import requests
url = "https://backendapi.corbado.io/v2/sso/saml2/start"
payload = {
"email": "<string>",
"invitationToken": "<string>"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({email: '<string>', invitationToken: '<string>'})
};
fetch('https://backendapi.corbado.io/v2/sso/saml2/start', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://backendapi.corbado.io/v2/sso/saml2/start",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'email' => '<string>',
'invitationToken' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://backendapi.corbado.io/v2/sso/saml2/start"
payload := strings.NewReader("{\n \"email\": \"<string>\",\n \"invitationToken\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://backendapi.corbado.io/v2/sso/saml2/start")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"email\": \"<string>\",\n \"invitationToken\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://backendapi.corbado.io/v2/sso/saml2/start")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"email\": \"<string>\",\n \"invitationToken\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"idpRedirectURL": "<string>",
"ssoNonce": "<string>"
}{
"httpStatusCode": 123,
"message": "OK",
"requestData": {
"requestID": "req-557...663",
"link": "https://my.corbado.com/requests/req-xxxxxxxxxxxxxxxxxxx"
},
"runtime": 0.06167686,
"error": {
"type": "<string>",
"details": "<string>",
"validation": [
{
"field": "<string>",
"message": "<string>"
}
],
"links": [
"<string>"
]
},
"data": {}
}Authorizations
Basic authentication is used to authenticate requests to the Backend API. The username is the project ID and the password is the API secret.
The project ID and API secret can be found in the Developer Panel.
Was this page helpful?
⌘I