Create a connectToken
curl --request POST \
--url https://backendapi.corbado.io/v2/connectTokens \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"data": {
"displayName": "Jane Doe",
"identifier": "jane@doe.com"
},
"maxLifetimeInSeconds": 3600
}
'import requests
url = "https://backendapi.corbado.io/v2/connectTokens"
payload = {
"data": {
"displayName": "Jane Doe",
"identifier": "jane@doe.com"
},
"maxLifetimeInSeconds": 3600
}
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({
data: {displayName: 'Jane Doe', identifier: 'jane@doe.com'},
maxLifetimeInSeconds: 3600
})
};
fetch('https://backendapi.corbado.io/v2/connectTokens', 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/connectTokens",
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([
'data' => [
'displayName' => 'Jane Doe',
'identifier' => 'jane@doe.com'
],
'maxLifetimeInSeconds' => 3600
]),
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/connectTokens"
payload := strings.NewReader("{\n \"data\": {\n \"displayName\": \"Jane Doe\",\n \"identifier\": \"jane@doe.com\"\n },\n \"maxLifetimeInSeconds\": 3600\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/connectTokens")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"data\": {\n \"displayName\": \"Jane Doe\",\n \"identifier\": \"jane@doe.com\"\n },\n \"maxLifetimeInSeconds\": 3600\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://backendapi.corbado.io/v2/connectTokens")
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 \"data\": {\n \"displayName\": \"Jane Doe\",\n \"identifier\": \"jane@doe.com\"\n },\n \"maxLifetimeInSeconds\": 3600\n}"
response = http.request(request)
puts response.read_body{
"id": "ctk-940364795071150919",
"tokenType": "passkey-append",
"data": {
"displayName": "Jane Doe",
"identifier": "jane@doe.com"
},
"connectTokenStatus": "initial",
"expires": 1752749184,
"secret": "ctk1_sxmexzS7RFBaJSA4V4kBFPs45bkxMK"
}{
"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": {}
}ConnectTokens
Create a connectToken
Creates a new ConnectToken, which is essential for Corbado Connect. ConnectTokens authorize actions that modify user data.
Consult the Documentation for more details.
POST
/
connectTokens
Create a connectToken
curl --request POST \
--url https://backendapi.corbado.io/v2/connectTokens \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"data": {
"displayName": "Jane Doe",
"identifier": "jane@doe.com"
},
"maxLifetimeInSeconds": 3600
}
'import requests
url = "https://backendapi.corbado.io/v2/connectTokens"
payload = {
"data": {
"displayName": "Jane Doe",
"identifier": "jane@doe.com"
},
"maxLifetimeInSeconds": 3600
}
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({
data: {displayName: 'Jane Doe', identifier: 'jane@doe.com'},
maxLifetimeInSeconds: 3600
})
};
fetch('https://backendapi.corbado.io/v2/connectTokens', 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/connectTokens",
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([
'data' => [
'displayName' => 'Jane Doe',
'identifier' => 'jane@doe.com'
],
'maxLifetimeInSeconds' => 3600
]),
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/connectTokens"
payload := strings.NewReader("{\n \"data\": {\n \"displayName\": \"Jane Doe\",\n \"identifier\": \"jane@doe.com\"\n },\n \"maxLifetimeInSeconds\": 3600\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/connectTokens")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"data\": {\n \"displayName\": \"Jane Doe\",\n \"identifier\": \"jane@doe.com\"\n },\n \"maxLifetimeInSeconds\": 3600\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://backendapi.corbado.io/v2/connectTokens")
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 \"data\": {\n \"displayName\": \"Jane Doe\",\n \"identifier\": \"jane@doe.com\"\n },\n \"maxLifetimeInSeconds\": 3600\n}"
response = http.request(request)
puts response.read_body{
"id": "ctk-940364795071150919",
"tokenType": "passkey-append",
"data": {
"displayName": "Jane Doe",
"identifier": "jane@doe.com"
},
"connectTokenStatus": "initial",
"expires": 1752749184,
"secret": "ctk1_sxmexzS7RFBaJSA4V4kBFPs45bkxMK"
}{
"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.
Body
application/json
Response
ConnectToken has been created.
Unique identifier of the connectToken.
Example:
"ctk-940364795071150919"
Available options:
passkey-append, passkey-delete, passkey-list, passkey-login Data for passkey-append.
- Option 1
- Option 2
- Option 3
- Option 4
Show child attributes
Show child attributes
Available options:
initial, consumed Unix time of when the connectToken expires (in seconds elapsed since January 1, 1970, 00:00:00 UTC).
Example:
1752749184
Secret of the connectToken.
Example:
"ctk1_sxmexzS7RFBaJSA4V4kBFPs45bkxMK"
Was this page helpful?