Hard-delete a credential
curl --request DELETE \
--url https://api.example.com/v1/credentials/{id}import requests
url = "https://api.example.com/v1/credentials/{id}"
response = requests.delete(url)
print(response.text)const options = {method: 'DELETE'};
fetch('https://api.example.com/v1/credentials/{id}', 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://api.example.com/v1/credentials/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/credentials/{id}"
req, _ := http.NewRequest("DELETE", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://api.example.com/v1/credentials/{id}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/credentials/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
response = http.request(request)
puts response.read_body{
"deleted": true
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": [
{
"issue": "<string>",
"field": "<string>",
"hint": "<string>"
}
],
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": [
{
"issue": "<string>",
"field": "<string>",
"hint": "<string>"
}
],
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": [
{
"issue": "<string>",
"field": "<string>",
"hint": "<string>"
}
],
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": [
{
"issue": "<string>",
"field": "<string>",
"hint": "<string>"
}
],
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": [
{
"issue": "<string>",
"field": "<string>",
"hint": "<string>"
}
],
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": [
{
"issue": "<string>",
"field": "<string>",
"hint": "<string>"
}
],
"request_id": "<string>"
}
}Credentials API
Delete a Credential
Remove a credential from the database entirely. Reserved for rare cases like GDPR Article 17 erasure requests or credentials issued in error before any use. The audit trail for this credential is destroyed. The status list bit stays flipped — bit slots are not reused once allocated.
For normal lifecycle management, use POST /:id/revoke instead. Revoke
preserves the full audit trail.
DELETE
/
v1
/
credentials
/
{id}
Hard-delete a credential
curl --request DELETE \
--url https://api.example.com/v1/credentials/{id}import requests
url = "https://api.example.com/v1/credentials/{id}"
response = requests.delete(url)
print(response.text)const options = {method: 'DELETE'};
fetch('https://api.example.com/v1/credentials/{id}', 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://api.example.com/v1/credentials/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/credentials/{id}"
req, _ := http.NewRequest("DELETE", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://api.example.com/v1/credentials/{id}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/credentials/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
response = http.request(request)
puts response.read_body{
"deleted": true
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": [
{
"issue": "<string>",
"field": "<string>",
"hint": "<string>"
}
],
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": [
{
"issue": "<string>",
"field": "<string>",
"hint": "<string>"
}
],
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": [
{
"issue": "<string>",
"field": "<string>",
"hint": "<string>"
}
],
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": [
{
"issue": "<string>",
"field": "<string>",
"hint": "<string>"
}
],
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": [
{
"issue": "<string>",
"field": "<string>",
"hint": "<string>"
}
],
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": [
{
"issue": "<string>",
"field": "<string>",
"hint": "<string>"
}
],
"request_id": "<string>"
}
}Was this page helpful?
⌘I