Webhookah API (1.0.0)

Download OpenAPI specification:

Nick Kozhenin: kozhenin.nick@gmail.com

API for webhook testing service

Endpoints

Manages webhook endpoints

List all webhook endpoints

Authorizations:
sessionCookiebearerAuth

Responses

Response samples

Content type
application/json
[]

Create new webhook endpoint

Create new webhook endpoint, no args needed

Authorizations:
sessionCookiebearerAuth

Responses

Response samples

Content type
application/json
{}

Regenerate webhook URLs

Deletes all current endpoints and creates a new one

Authorizations:
sessionCookiebearerAuth

Responses

Response samples

Content type
application/json
{}

Update endpoint

Update endpoint configuration

Authorizations:
sessionCookiebearerAuth
path Parameters
endpointToken
required
string
Example: alpha-artemis-5aa3d2fc

Token of the endpoint

Request Body schema: application/json
badgeName
string

Name of the badge to display for the webhook

Responses

Request samples

Content type
application/json
{
  • "badgeName": "alpha"
}

Response samples

Content type
application/json
{}

Delete endpoint

Authorizations:
sessionCookiebearerAuth
path Parameters
endpointToken
required
string
Example: alpha-artemis-5aa3d2fc

Token of the endpoint

Responses

Response samples

Content type
application/json
{
  • "error": "string"
}

List all webhook requests for user

Authorizations:
sessionCookiebearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Clear all webhook requests for all endpoints

Authorizations:
sessionCookiebearerAuth

Responses

Response samples

Content type
application/json
{
  • "error": "string"
}

List webhook requests for specific endpoint

Authorizations:
sessionCookiebearerAuth
path Parameters
endpointToken
required
string
Example: alpha-artemis-5aa3d2fc

Token of the endpoint

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Clear webhook requests for specific endpoint

Authorizations:
sessionCookiebearerAuth
path Parameters
endpointToken
required
string
Example: alpha-artemis-5aa3d2fc

Token of the endpoint

Responses

Response samples

Content type
application/json
{
  • "error": "string"
}

Server-sent events for real-time updates

Authorizations:
sessionCookiebearerAuth

Responses

Response samples

Content type
application/json
{
  • "error": "string"
}

Webhooks

Endpoints for receiving webhooks

Receive webhook GET request

path Parameters
endpointToken
required
string
Example: alpha-artemis-5aa3d2fc

Token of the endpoint

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "message": "string"
}

Receive webhook POST request

path Parameters
endpointToken
required
string
Example: alpha-artemis-5aa3d2fc

Token of the endpoint

Request Body schema: */*
string

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "message": "string"
}

Receive webhook PUT request

path Parameters
endpointToken
required
string
Example: alpha-artemis-5aa3d2fc

Token of the endpoint

Request Body schema: */*
string

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "message": "string"
}

Receive webhook PATCH request

path Parameters
endpointToken
required
string
Example: alpha-artemis-5aa3d2fc

Token of the endpoint

Request Body schema: */*
string

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "message": "string"
}

Receive webhook DELETE request

path Parameters
endpointToken
required
string
Example: alpha-artemis-5aa3d2fc

Token of the endpoint

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "message": "string"
}

Receive webhook OPTIONS request

path Parameters
endpointToken
required
string
Example: alpha-artemis-5aa3d2fc

Token of the endpoint

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "message": "string"
}

Receive webhook HEAD request

path Parameters
endpointToken
required
string
Example: alpha-artemis-5aa3d2fc

Token of the endpoint

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "message": "string"
}

Auth

Authentication and session management

Ensure guest session

Creates a guest user and session cookie if missing; no-op when a valid session exists

Responses

Response samples

Content type
application/json
{
  • "error": "string"
}

Sign up with email and password

Creates a registered account and merges current guest endpoints into it

Authorizations:
sessionCookiebearerAuth
Request Body schema: application/json
required
email
required
string <email>
password
required
string >= 8 characters

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com",
  • "password": "stringst"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "email": "string",
  • "isGuest": true,
  • "plan": "plus",
  • "subscriptionId": "string",
  • "price": "string",
  • "currency": "string",
  • "dateStart": "2019-08-24T14:15:22Z",
  • "dateEnd": "2019-08-24T14:15:22Z",
  • "datePurchase": "2019-08-24T14:15:22Z",
  • "status": "active"
}

Sign in with email and password

Authenticates and merges current guest endpoints into the account

Authorizations:
sessionCookiebearerAuth
Request Body schema: application/json
required
email
required
string <email>
password
required
string >= 8 characters

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com",
  • "password": "stringst"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "email": "string",
  • "isGuest": true,
  • "plan": "plus",
  • "subscriptionId": "string",
  • "price": "string",
  • "currency": "string",
  • "dateStart": "2019-08-24T14:15:22Z",
  • "dateEnd": "2019-08-24T14:15:22Z",
  • "datePurchase": "2019-08-24T14:15:22Z",
  • "status": "active"
}

Log out

Destroys the current session and issues a fresh guest session

Authorizations:
sessionCookiebearerAuth

Responses

Response samples

Content type
application/json
{
  • "error": "string"
}

Current user

Returns the current session principal (guest or registered)

Authorizations:
sessionCookiebearerAuth

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "email": "string",
  • "isGuest": true,
  • "plan": "plus",
  • "subscriptionId": "string",
  • "price": "string",
  • "currency": "string",
  • "dateStart": "2019-08-24T14:15:22Z",
  • "dateEnd": "2019-08-24T14:15:22Z",
  • "datePurchase": "2019-08-24T14:15:22Z",
  • "status": "active"
}

OAuth

Google OAuth sign-in

Start Google OAuth sign-in

Returns the Google authorization URL to start the authorization-code flow

Authorizations:
sessionCookiebearerAuth

Responses

Response samples

Content type
application/json

Billing

Stripe subscription webhooks and billing

Stripe subscription lifecycle webhook Webhook

Inbound callback from Stripe for subscription and checkout events. Verified via Stripe-Signature header; raw body must be preserved for signature verification. Handled event types: checkout.session.completed, invoice.payment_succeeded, customer.subscription.updated, customer.subscription.deleted.

header Parameters
Stripe-Signature
required
string

Stripe webhook signature header

Request Body schema: application/json
required
id
required
string
type
required
string

Event type (e.g. checkout.session.completed)

required
object

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "type": "string",
  • "data": {
    }
}

Response samples

Content type
application/json
{
  • "error": "string"
}

Receive Stripe webhook events

Verifies Stripe-Signature using STRIPE_WEBHOOK_SECRET and processes subscription lifecycle events. Does not require a session cookie. Always preserves the raw request body for signature verification.

header Parameters
Stripe-Signature
required
string

Stripe webhook signature header

Request Body schema: */*
required
string

Raw Stripe event JSON payload

Responses

Response samples

Content type
application/json
{
  • "error": "string"
}

APIKeys

API key management for paid accounts

List API keys

Lists API keys for the signed-in account. Requires a session cookie. The secret is never returned. Plus or Enterprise plan required.

Authorizations:
sessionCookiebearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create API key

Creates an API key for the signed-in account. Requires a session cookie. The secret is returned once. Plus or Enterprise plan required. Maximum 20 keys.

Authorizations:
sessionCookiebearerAuth
Request Body schema: application/json
required
name
required
string [ 1 .. 100 ] characters

Label shown in the dashboard so the key can be recognized later

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "trackingId": "a1b2c",
  • "keyHint": "wh-abc12",
  • "name": "CI deploy",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "lastUsed": "2019-08-24T14:15:22Z",
  • "secret": "wh-abcdefghijklmnopqrstuvwxyz0123456789abcd"
}

Revoke API key

Deletes one API key owned by the signed-in account. Requires a session cookie.

Authorizations:
sessionCookiebearerAuth
path Parameters
trackingId
required
string^[0-9a-f]{5}$
Example: a1b2c

Last 5 hex characters of the key's UUIDv7 tracking id

Responses

Response samples

Content type
application/json
{
  • "error": "string"
}