Generate a webhook signing secret
POST
/v1/webhook-endpoints/generate-secret
const url = 'https://example.com/v1/webhook-endpoints/generate-secret';const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/v1/webhook-endpoints/generate-secret \ --header 'Authorization: Bearer <token>'Returns a new strong secret (whsec_ + base64 of 32 random bytes). Nothing is stored: put it in your secrets, then register the endpoint with its name.
Authorizations
Section titled “Authorizations”Responses
Section titled “Responses”A new secret.
Media typeapplication/json
object
secret
required
A new signing secret (whsec_ + base64 of 32 random bytes). Not stored anywhere: put it in your secrets (.env in development, the secrets store in production) and reference it by name.
string
Examplegenerated
{ "secret": "example"}Missing / malformed / expired / revoked bearer token.
Media typeapplication/json
object
error
required
object
code
required
Stable machine-readable discriminant. Values match domain error codes (see docs/API-ROUTE-CONVENTIONS.md §4.3).
string
message
required
string
details
Optional, kind-specific.
object
key
additional properties
any
requestId
required
Server-assigned request id; also echoed via X-Request-Id header.
string
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": {}, "requestId": "example" }}