Create a passkey event for a user
curl --request POST \
--url https://backendapi.cloud.corbado.io/v2/users/{userID}/passkeyEvents \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"expires": 123,
"processID": "<string>",
"clientEnvID": "<string>",
"credentialID": "<string>",
"challenge": "<string>"
}
'import requests
url = "https://backendapi.cloud.corbado.io/v2/users/{userID}/passkeyEvents"
payload = {
"expires": 123,
"processID": "<string>",
"clientEnvID": "<string>",
"credentialID": "<string>",
"challenge": "<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({
expires: 123,
processID: '<string>',
clientEnvID: '<string>',
credentialID: '<string>',
challenge: '<string>'
})
};
fetch('https://backendapi.cloud.corbado.io/v2/users/{userID}/passkeyEvents', 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.cloud.corbado.io/v2/users/{userID}/passkeyEvents",
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([
'expires' => 123,
'processID' => '<string>',
'clientEnvID' => '<string>',
'credentialID' => '<string>',
'challenge' => '<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.cloud.corbado.io/v2/users/{userID}/passkeyEvents"
payload := strings.NewReader("{\n \"expires\": 123,\n \"processID\": \"<string>\",\n \"clientEnvID\": \"<string>\",\n \"credentialID\": \"<string>\",\n \"challenge\": \"<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.cloud.corbado.io/v2/users/{userID}/passkeyEvents")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"expires\": 123,\n \"processID\": \"<string>\",\n \"clientEnvID\": \"<string>\",\n \"credentialID\": \"<string>\",\n \"challenge\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://backendapi.cloud.corbado.io/v2/users/{userID}/passkeyEvents")
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 \"expires\": 123,\n \"processID\": \"<string>\",\n \"clientEnvID\": \"<string>\",\n \"credentialID\": \"<string>\",\n \"challenge\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"passkeyEventID": "<string>",
"userID": "<string>",
"eventType": "user-login-blacklisted",
"created": "<string>",
"createdMs": 123,
"clientEnvID": "<string>",
"processID": "<string>",
"credentialID": "<string>",
"expires": 123
}{
"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": {}
}Passkey diagnostics
Create a passkey event for a user
Creates a new passkey event for a user by given userID.
Required API key permission: passkey_events:write.
POST
/
users
/
{userID}
/
passkeyEvents
Create a passkey event for a user
curl --request POST \
--url https://backendapi.cloud.corbado.io/v2/users/{userID}/passkeyEvents \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"expires": 123,
"processID": "<string>",
"clientEnvID": "<string>",
"credentialID": "<string>",
"challenge": "<string>"
}
'import requests
url = "https://backendapi.cloud.corbado.io/v2/users/{userID}/passkeyEvents"
payload = {
"expires": 123,
"processID": "<string>",
"clientEnvID": "<string>",
"credentialID": "<string>",
"challenge": "<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({
expires: 123,
processID: '<string>',
clientEnvID: '<string>',
credentialID: '<string>',
challenge: '<string>'
})
};
fetch('https://backendapi.cloud.corbado.io/v2/users/{userID}/passkeyEvents', 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.cloud.corbado.io/v2/users/{userID}/passkeyEvents",
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([
'expires' => 123,
'processID' => '<string>',
'clientEnvID' => '<string>',
'credentialID' => '<string>',
'challenge' => '<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.cloud.corbado.io/v2/users/{userID}/passkeyEvents"
payload := strings.NewReader("{\n \"expires\": 123,\n \"processID\": \"<string>\",\n \"clientEnvID\": \"<string>\",\n \"credentialID\": \"<string>\",\n \"challenge\": \"<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.cloud.corbado.io/v2/users/{userID}/passkeyEvents")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"expires\": 123,\n \"processID\": \"<string>\",\n \"clientEnvID\": \"<string>\",\n \"credentialID\": \"<string>\",\n \"challenge\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://backendapi.cloud.corbado.io/v2/users/{userID}/passkeyEvents")
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 \"expires\": 123,\n \"processID\": \"<string>\",\n \"clientEnvID\": \"<string>\",\n \"credentialID\": \"<string>\",\n \"challenge\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"passkeyEventID": "<string>",
"userID": "<string>",
"eventType": "user-login-blacklisted",
"created": "<string>",
"createdMs": 123,
"clientEnvID": "<string>",
"processID": "<string>",
"credentialID": "<string>",
"expires": 123
}{
"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
basicAuthbearerAuth
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 Management Console.
Path Parameters
Unique identifier of the user. Format: usr-<number>.
Example:
"usr-4693224802260150919"
Body
application/json
Available options:
user-login-blacklisted, login-explicit-abort, login-error, login-error-untyped, login-one-tap-switch, user-append-after-cross-platform-blacklisted, user-append-after-login-error-blacklisted, append-credential-exists, append-explicit-abort, append-error, login-no-credentials, manage-error, manage-credential-exists, manage-delete-explicit-abort Response
Passkey event has been created.
ID of the user
Available options:
user-login-blacklisted, login-explicit-abort, login-error, login-error-untyped, login-one-tap-switch, user-append-after-cross-platform-blacklisted, user-append-after-login-error-blacklisted, append-credential-exists, append-explicit-abort, append-error, login-no-credentials, manage-error, manage-credential-exists, manage-delete-explicit-abort Timestamp of when the entity was created in yyyy-MM-dd'T'HH:mm:ss format
Was this page helpful?