Delete Hook Secrets
When you no longer need Hook Secrets for a given Hook, you can delete them using either the Dashboard or the Management API.
Hook Secrets can also be imported and exported using the Deploy Command-Line Interface (CLI) tool.
Delete Hook Secrets using the Dashboard
Navigate to the Hooks page in the Auth0 Dashboard, and click the pencil icon next to the Hook you want to edit.
In the Hook editor, click the wrench icon, and click Secrets.
Locate the Hook Secret you want to delete, click the trash can icon, and click Yes.
Delete Hook Secrets using the Management API
Make a DELETE
call to the Delete Hook Secrets endpoint. Be sure to replace HOOK_ID
, HOOK_SECRET_NAME
, and MGMT_API_ACCESS_TOKEN
placeholder values with your Hook ID, your Hook Secret name(s), and Management API access token, respectively.
curl --request DELETE \
--url 'https://{yourDomain}/api/v2/hooks/HOOK_ID/secrets' \
--header 'authorization: Bearer MGMT_API_ACCESS_TOKEN' \
--data '{ [ "HOOK_SECRET_NAME", "HOOK_SECRET_NAME" ] }'
Was this helpful?
var client = new RestClient("https://{yourDomain}/api/v2/hooks/HOOK_ID/secrets");
var request = new RestRequest(Method.DELETE);
request.AddHeader("authorization", "Bearer MGMT_API_ACCESS_TOKEN");
request.AddParameter("undefined", "{ [ \"HOOK_SECRET_NAME\", \"HOOK_SECRET_NAME\" ] }", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Was this helpful?
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://{yourDomain}/api/v2/hooks/HOOK_ID/secrets"
payload := strings.NewReader("{ [ \"HOOK_SECRET_NAME\", \"HOOK_SECRET_NAME\" ] }")
req, _ := http.NewRequest("DELETE", url, payload)
req.Header.Add("authorization", "Bearer MGMT_API_ACCESS_TOKEN")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
Was this helpful?
HttpResponse<String> response = Unirest.delete("https://{yourDomain}/api/v2/hooks/HOOK_ID/secrets")
.header("authorization", "Bearer MGMT_API_ACCESS_TOKEN")
.body("{ [ \"HOOK_SECRET_NAME\", \"HOOK_SECRET_NAME\" ] }")
.asString();
Was this helpful?
var axios = require("axios").default;
var options = {
method: 'DELETE',
url: 'https://{yourDomain}/api/v2/hooks/HOOK_ID/secrets',
headers: {authorization: 'Bearer MGMT_API_ACCESS_TOKEN'},
data: '{ [ "HOOK_SECRET_NAME", "HOOK_SECRET_NAME" ] }'
};
axios.request(options).then(function (response) {
console.log(response.data);
}).catch(function (error) {
console.error(error);
});
Was this helpful?
#import <Foundation/Foundation.h>
NSDictionary *headers = @{ @"authorization": @"Bearer MGMT_API_ACCESS_TOKEN" };
NSData *postData = [[NSData alloc] initWithData:[@"{ [ "HOOK_SECRET_NAME", "HOOK_SECRET_NAME" ] }" dataUsingEncoding:NSUTF8StringEncoding]];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://{yourDomain}/api/v2/hooks/HOOK_ID/secrets"]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:10.0];
[request setHTTPMethod:@"DELETE"];
[request setAllHTTPHeaderFields:headers];
[request setHTTPBody:postData];
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
NSLog(@"%@", error);
} else {
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
NSLog(@"%@", httpResponse);
}
}];
[dataTask resume];
Was this helpful?
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{yourDomain}/api/v2/hooks/HOOK_ID/secrets",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => "{ [ \"HOOK_SECRET_NAME\", \"HOOK_SECRET_NAME\" ] }",
CURLOPT_HTTPHEADER => [
"authorization: Bearer MGMT_API_ACCESS_TOKEN"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
Was this helpful?
import http.client
conn = http.client.HTTPSConnection("")
payload = "{ [ \"HOOK_SECRET_NAME\", \"HOOK_SECRET_NAME\" ] }"
headers = { 'authorization': "Bearer MGMT_API_ACCESS_TOKEN" }
conn.request("DELETE", "/{yourDomain}/api/v2/hooks/HOOK_ID/secrets", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
Was this helpful?
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://{yourDomain}/api/v2/hooks/HOOK_ID/secrets")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Delete.new(url)
request["authorization"] = 'Bearer MGMT_API_ACCESS_TOKEN'
request.body = "{ [ \"HOOK_SECRET_NAME\", \"HOOK_SECRET_NAME\" ] }"
response = http.request(request)
puts response.read_body
Was this helpful?
import Foundation
let headers = ["authorization": "Bearer MGMT_API_ACCESS_TOKEN"]
let postData = NSData(data: "{ [ "HOOK_SECRET_NAME", "HOOK_SECRET_NAME" ] }".data(using: String.Encoding.utf8)!)
let request = NSMutableURLRequest(url: NSURL(string: "https://{yourDomain}/api/v2/hooks/HOOK_ID/secrets")! as URL,
cachePolicy: .useProtocolCachePolicy,
timeoutInterval: 10.0)
request.httpMethod = "DELETE"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data
let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
print(error)
} else {
let httpResponse = response as? HTTPURLResponse
print(httpResponse)
}
})
dataTask.resume()
Was this helpful?
Value | Description |
---|---|
HOOK_ID |
ID of the Hook for which you want to delete secrets. |
MGMT_API_ACCESS_TOKEN |
Access Tokens for the Management API with the scope update:hooks . To learn more, read Management API Access Tokens. |
HOOK_SECRET_NAME |
Name(s) of the secret(s) you would like to delete from the specified Hook. This endpoint accepts an array of secret names to delete. |