openapi: 3.2.0 info: title: Hookbase Webhook Applications API version: 1.0.0 description: Official OpenAPI 3.0 specification for the Hookbase webhook relay platform. Generated from the maintained Postman collection. Authenticate with an API key (whr_ prefix) as a Bearer token. contact: name: Hookbase url: https://www.hookbase.app servers: - url: https://api.hookbase.app description: Production security: - bearerAuth: [] tags: - name: Webhook Applications paths: /api/webhook-applications: post: tags: - Webhook Applications summary: Create application operationId: webhook_applications_create_application responses: '200': description: Successful response description: Create a webhook application (a tenant/customer that owns endpoints and subscriptions). requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: Required. Application name (1–255). externalId: type: string description: Optional. Your own id for this application (max 255). metadata: type: object description: Optional. Arbitrary metadata object. rateLimitPerSecond: type: integer description: Optional. Per-second rate limit (1–10000). rateLimitPerMinute: type: integer description: Optional. Per-minute rate limit (1–100000). rateLimitPerHour: type: integer description: Optional. Per-hour rate limit (1–1000000). required: - name example: name: Acme Corp externalId: cust_acme metadata: plan: pro rateLimitPerSecond: 100 rateLimitPerMinute: 1000 rateLimitPerHour: 50000 get: tags: - Webhook Applications summary: List applications operationId: webhook_applications_list_applications parameters: - name: limit in: query required: false schema: type: string example: '50' responses: '200': description: Successful response description: List webhook applications (paginated). /api/webhook-applications/{webhookApplicationId}: get: tags: - Webhook Applications summary: Get application by id operationId: webhook_applications_get_application_by_id parameters: - name: webhookApplicationId in: path required: true schema: type: string responses: '200': description: Successful response description: Fetch a single webhook application. patch: tags: - Webhook Applications summary: Update application operationId: webhook_applications_update_application parameters: - name: webhookApplicationId in: path required: true schema: type: string responses: '200': description: Successful response description: Update a webhook application. All fields optional. requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: Optional. Application name. metadata: type: object description: Optional. Metadata object. rateLimitPerSecond: type: integer description: Optional. Per-second rate limit (1–10000). rateLimitPerMinute: type: integer description: Optional. Per-minute rate limit (1–100000). rateLimitPerHour: type: integer description: Optional. Per-hour rate limit (1–1000000). isDisabled: type: boolean description: Optional. Disable the application. disabledReason: type: string description: Optional. Reason shown when disabled (max 500). example: name: Acme Corp metadata: plan: pro rateLimitPerSecond: 100 rateLimitPerMinute: 1000 rateLimitPerHour: 50000 isDisabled: false disabledReason: Past due components: securitySchemes: bearerAuth: type: http scheme: bearer description: Hookbase API key with the whr_ prefix.