Overview
Revoke API Key
Permanently revoke a company API key
DELETE
/
api
/
v1
/
api-keys
/
{apiKeyId}
Revoke API Key
curl --request DELETE \
--url https://api.sequenzy.com/api/v1/api-keys/{apiKeyId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sequenzy.com/api/v1/api-keys/{apiKeyId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sequenzy.com/api/v1/api-keys/{apiKeyId}', 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.sequenzy.com/api/v1/api-keys/{apiKeyId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.sequenzy.com/api/v1/api-keys/{apiKeyId}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.sequenzy.com/api/v1/api-keys/{apiKeyId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/api-keys/{apiKeyId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"apiKey": {
"id": "key_abc123",
"name": "SST production handoff",
"prefix": "seq_live_abcd",
"type": "company",
"scopes": ["account:read", "subscribers:read"],
"permissions": {
"preset": "custom",
"fullAccess": false,
"selectedScopeCount": 2,
"currentScopeCount": 63,
"description": "2 of 63 current permissions are enabled."
},
"deviceName": null,
"lastUsedAt": null,
"createdAt": "2026-07-17T10:30:00Z",
"updatedAt": "2026-07-17T10:30:00Z",
"isCurrent": false
},
"message": "API key revoked successfully."
}
{
"error": "API key not found"
}
Permanently revoke a company-scoped API key. The caller must have the
api_keys:manage permission.
Call List API Keys first and compare the key ID,
name, non-secret prefix, and isCurrent flag. Revocation cannot be undone, and
revoking the active credential will prevent it from making another request.
Exact API key ID returned by the list API keys endpoint.
curl -X DELETE "https://api.sequenzy.com/api/v1/api-keys/key_abc123" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-company-id: company_abc123"
Response
{
"success": true,
"apiKey": {
"id": "key_abc123",
"name": "SST production handoff",
"prefix": "seq_live_abcd",
"type": "company",
"scopes": ["account:read", "subscribers:read"],
"permissions": {
"preset": "custom",
"fullAccess": false,
"selectedScopeCount": 2,
"currentScopeCount": 63,
"description": "2 of 63 current permissions are enabled."
},
"deviceName": null,
"lastUsedAt": null,
"createdAt": "2026-07-17T10:30:00Z",
"updatedAt": "2026-07-17T10:30:00Z",
"isCurrent": false
},
"message": "API key revoked successfully."
}
The response confirms the removed key with metadata only. It never includes the
plain key or stored hash.
{
"error": "API key not found"
}
⌘I
Revoke API Key
curl --request DELETE \
--url https://api.sequenzy.com/api/v1/api-keys/{apiKeyId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sequenzy.com/api/v1/api-keys/{apiKeyId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sequenzy.com/api/v1/api-keys/{apiKeyId}', 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.sequenzy.com/api/v1/api-keys/{apiKeyId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.sequenzy.com/api/v1/api-keys/{apiKeyId}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.sequenzy.com/api/v1/api-keys/{apiKeyId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/api-keys/{apiKeyId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"apiKey": {
"id": "key_abc123",
"name": "SST production handoff",
"prefix": "seq_live_abcd",
"type": "company",
"scopes": ["account:read", "subscribers:read"],
"permissions": {
"preset": "custom",
"fullAccess": false,
"selectedScopeCount": 2,
"currentScopeCount": 63,
"description": "2 of 63 current permissions are enabled."
},
"deviceName": null,
"lastUsedAt": null,
"createdAt": "2026-07-17T10:30:00Z",
"updatedAt": "2026-07-17T10:30:00Z",
"isCurrent": false
},
"message": "API key revoked successfully."
}
{
"error": "API key not found"
}