Skip to main content

HookPulse Overview

What is HookPulse?

HookPulse is a production-ready, enterprise-grade serverless task scheduling infrastructure designed for modern developers building AI agents, event-driven systems, and SaaS applications. Built on Elixir/OTP for unmatched reliability and performance, HookPulse eliminates the need to build and maintain complex scheduling infrastructure like Celery, Redis, or Sidekiq.

The Problem We Solve

Building reliable task scheduling infrastructure is hard. Most developers end up:
  • Spending 20+ hours/month maintaining Redis, Celery, or Sidekiq workers
  • Dealing with infrastructure complexity, scaling issues, and reliability concerns
  • Paying high costs for self-hosted solutions (often 95% more expensive)
  • Struggling with timezone handling, precise timing, and concurrency management
HookPulse solves all of this with a simple HTTP API that works with any programming language.

Core Capabilities

🎯 Precise Webhook & API Scheduling

Schedule webhooks and API calls with millisecond precision using multiple scheduling strategies:
  • Interval Scheduling: Run tasks every X seconds, minutes, hours, days, weeks, or months
  • Cron Scheduling: Industry-standard cron expressions with IANA timezone support (500+ timezones)
  • Solar Scheduling: Trigger tasks at sunrise, sunset, or other solar events using geographic coordinates
  • Clocked Scheduling: One-time scheduled executions at specific dates/times
  • Debounce Scheduling: Prevent rapid-fire executions with configurable debounce logic
  • Schedule Rules: Advanced rule engine with time windows, calendar windows, exclusions, and termination conditions
See Scheduling Overview for complete documentation.

πŸ”„ Advanced Workflow Orchestration

Build complex, multi-step workflows with enterprise features:
  • Visual Workflow Builder: Drag-and-drop interface for creating workflows
  • FIFO Sequential Mode: Strict First-In-First-Out ordering for critical workflows with full variable support
  • Concurrent Mode: Parallel execution for independent operations
  • Conditional Execution: Route execution based on field values and operators (eq, ne, lt, gt, lte, gte, in, contains)
  • Failure Handling: Stop on failure or continue execution with configurable retry strategies
  • Retry Strategies: Retry from initial step or resume from failed step
  • Human Approval: Pause workflows for manual approval steps with native support
  • Template Variables: Dynamic variable substitution with system secrets ({{ #key }}), step responses ({{ step.response.variable }}), and initial context ({{ initial.variable }})
See Workflow Template Overview for complete documentation.

πŸ›‘οΈ Enterprise-Grade Features

Traffic Guard Layer - Protect your infrastructure with built-in controls:
  • Rate Limiting: Set max requests per second per domain (configurable on/off)
  • Concurrency Control: Limit simultaneous executions to prevent overload (configurable on/off)
  • Domain Management: Separate API to handle concurrency and rate limiting per domain
  • Backpressure Logic: Automatically pause queues when limits are hit
  • Idempotency Keys: Prevent duplicate executions from network retries
See Domain Setup Overview for complete documentation.

πŸ” System Secret Vault

Enterprise-grade secret management for secure operations:
  • Encrypted Storage: All secrets encrypted at rest using AES-256
  • Runtime Injection: Secrets computed at execution time, never exposed in logs
  • Template Integration: Use secrets in webhook/workflow templates with {{ #key }} syntax
  • Audit Trail: Complete logging of secret access and usage
  • CRUD Operations: Full API for adding, updating, retrieving, and deleting secrets
See System Secret Vault Overview for complete documentation.

πŸ“‹ Webhook Templates

Reusable webhook configurations for efficient development:
  • Template System: Create once, use many times with different variables
  • Variable Support: Use {{ variable }} for dynamic values and {{ #key }} for system secrets
  • Reusability: Use with webhook UUID in schedules and workflows
  • Visual Dashboard: Create templates with visual tools in the dashboard or via API
  • Full CRUD: Create, retrieve, update, and delete webhook templates via API
See Webhook Template Overview for complete documentation.

πŸ‘₯ Human Approval Workflows

Built-in human approval for critical workflow steps:
  • Native Support: Pause workflows at any step for manual approval
  • Approval Dashboard: View all pending approvals in one place
  • Approve/Reject Actions: Simple API to approve or reject pending workflows
  • Automatic Resumption: Workflows automatically continue after approval
  • Failure Path Routing: Rejected workflows can route to failure paths
See Human Approval Overview for complete documentation.

🌍 Multi-Timezone Support

  • Full IANA timezone support (500+ timezones)
  • Timezone API: Get complete list of all available timezones
  • Automatic timezone conversion for all scheduled times
  • Timezone-aware scheduling for global applications
  • Automatic DST (Daylight Saving Time) handling
See Get Timezone Options for complete timezone list.

Why Choose HookPulse?

πŸš€ Save Development Time

Stop spending 20+ hours/month maintaining scheduling infrastructure. Focus on building your product instead.

πŸ’° Cost Effective

95% cheaper than self-hosting. Pay only for what you use with transparent, pay-as-you-go pricing.

πŸ”§ No Infrastructure

No Redis, no Celery workers, no message queues to manage. Just HTTP API calls.

πŸ“ˆ Scalable

Built on Elixir/OTP for horizontal scaling. Handles millions of scheduled tasks without breaking a sweat.

🎯 Production Ready

Enterprise-grade features out of the box: rate limiting, concurrency control, FIFO queues, and idempotency.

🌐 Global Ready

Multi-timezone support with IANA timezone database. Perfect for global applications.

Use Cases

πŸ€– AI Agent Orchestration

Schedule AI agent tasks, coordinate multi-agent workflows, and manage agent execution pipelines with precise timing and conditional logic.

πŸ“‘ Event-Driven Architectures

Build event-driven systems with scheduled webhooks, delayed processing, and event coordination across multiple services.

πŸ”” Notification Systems

Send scheduled notifications, reminders, and alerts with timezone-aware scheduling and retry logic.

πŸ“Š Data Processing Pipelines

Process data on schedules, coordinate ETL jobs, and manage batch processing workflows.

πŸ”„ API Automation

Automate API calls, sync data between services, and coordinate third-party integrations.

πŸ’Ό SaaS Applications

Add scheduling capabilities to SaaS products without building infrastructure from scratch.

Getting Started

  1. Sign Up: Create an account at hookpulse.io
  2. Add a Brand: Create a brand in your dashboard to get your brand UUID
  3. Get API Key: Select your brand and generate an API key from the API Keys section
  4. Make Your First Request: Schedule a webhook in under 5 minutes using both credentials
  5. Build Workflows: Create complex workflows with our visual builder
  6. Scale: Handle millions of scheduled tasks with confidence

Need Help?

For support, questions, or assistance: Our support team is here to help you succeed with HookPulse.

API Reference

Overview

Welcome to the HookPulse API reference. This comprehensive documentation provides detailed information about all available endpoints, request/response formats, authentication methods, and best practices. The HookPulse API is RESTful and uses JSON for all request and response payloads. All API requests must be authenticated using custom headers (x-hookpulse-api-key and x-brand-uuid). Built on Elixir/OTP for enterprise-grade reliability, the HookPulse API delivers 99.9% uptime SLA and handles millions of scheduled tasks effortlessly.

OpenAPI Specification

Download the complete OpenAPI 3.0.3 specification file with all endpoints and schemas

Interactive API Playground

Try API calls directly in your browser with our interactive playground

API Sections

HookPulse provides comprehensive APIs organized into logical sections:

πŸ” System Secret Vault

Enterprise-grade secret management with encrypted storage and runtime injection. Store API keys, tokens, and sensitive data securely.

🌐 Domain Setup

Manage domains with rate limiting and concurrency control to protect your infrastructure.
  • Domain Setup Overview
  • Add domains with configurable rate limits and concurrency controls
  • Retrieve domain information and UUIDs

πŸ“‹ Webhook Templates

Create reusable webhook configurations with variable support and system secret integration.

πŸ”„ Workflow Templates

Build complex multi-step workflows with conditional execution, human approval, and advanced orchestration.
  • Workflow Template Overview
  • Create workflows with FIFO sequential or concurrent execution
  • Add workflow steps with execution conditions
  • Human approval support at any workflow step

⏰ Scheduling

Comprehensive scheduling API supporting interval, cron, clocked, solar, and debounce scheduling with advanced rule engine.
  • Scheduling Overview
  • Get all available timezones (500+ IANA timezones)
  • Create schedules with interval, cron, clocked, or solar timing
  • Add schedule rules for time windows, exclusions, and termination
  • Manage schedule status and retrieve schedule details

πŸ‘₯ Human Approval

Native human approval workflows with API support for managing pending approvals.

πŸ“Š Error Handling

Consistent error handling across all endpoints with unified error response format.

Base URL

All API requests should be made to:
https://api.hookpulse.io

Authentication

All API endpoints require authentication using two custom headers. Include both headers in every request:
x-hookpulse-api-key: YOUR_API_KEY
x-brand-uuid: YOUR_BRAND_UUID
Never share these credentials with anyone. Keep your API key and brand UUID secure. Never expose them in client-side code or commit them to version control. If your credentials are compromised, regenerate them immediately from your dashboard.

Getting your credentials

Brand UUID (x-brand-uuid)

  1. Log in to your Hookpulse dashboard
  2. Add a brand (if you haven’t already)
  3. The brand UUID will be displayed in the UI
  4. Copy and securely store your brand UUID

API Key (x-hookpulse-api-key)

  1. Log in to your Hookpulse dashboard
  2. Select your brand from the dashboard
  3. Navigate to API Keys section
  4. Click Create API Key
  5. Add a node and you will receive your API Key
  6. The API Key will be displayed on the same card - click View to see it
  7. Copy and securely store your API key
Both the API key and brand UUID are required for all API requests. Make sure to include both headers in every request.

Rate limits

API requests are rate-limited to ensure fair usage:
  • Standard tier: 1000 requests per hour
  • Pro tier: 10000 requests per hour
  • Enterprise: Custom limits
Rate limit information is included in response headers:
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 999
X-RateLimit-Reset: 1640995200

Response format

All API responses follow a consistent format:

Success response

{
  "data": {
    // Response data here
  },
  "meta": {
    "timestamp": "2024-01-01T00:00:00Z"
  }
}

Error response

All endpoints use a consistent error format:
{
  "success": false,
  "error": "ERROR_MESSAGE_HERE"
}

Error Handling Guide

Learn how to handle errors, implement retry logic, and follow best practices

HTTP status codes

The API uses standard HTTP status codes:
  • 200 - Success
  • 201 - Created
  • 204 - No Content
  • 400 - Bad Request
  • 401 - Unauthorized
  • 403 - Forbidden
  • 404 - Not Found
  • 429 - Too Many Requests
  • 500 - Internal Server Error

Pagination

Most list endpoints support pagination using page query parameter (1-based):
GET https://api.hookpulse.io/v1/api/get_domain_paginated/?page=1
The base URL is https://api.hookpulse.io. All endpoints are prefixed with /v1/api/ and include trailing slashes.
Response includes pagination metadata:
{
  "data": [...],
  "meta": {
    "page": 1,
    "total_count": 100,
    "per_page": 20,
    "total_pages": 5,
    "has_next": true,
    "has_prev": false
  },
  "success": true
}

Code Examples

All API endpoints include code examples in multiple languages:
  • cURL: Command-line examples for quick testing
  • JavaScript/TypeScript: Modern JavaScript with fetch API
  • Python: Using the requests library
  • Ruby: Using Net::HTTP and JSON
  • PHP: Using curl functions

Multi-Language Support

HookPulse works with any programming language that supports HTTP. All examples are provided in 5+ languages for easy integration.

Template Variables

HookPulse supports powerful template variables across webhook templates and workflow steps:

System Secrets

Use {{ #key }} to inject secrets from the System Secret Vault at runtime:
{
  "headers": {
    "Authorization": "Bearer {{ #api_key }}"
  }
}

Workflow Step Responses

Use {{ step.response.variable }} to access responses from previous workflow steps:
{
  "body": {
    "user_id": "{{ step.response.user_id }}"
  }
}

Initial Context

Use {{ initial.variable }} to access variables passed when scheduling:
{
  "body": {
    "report_type": "{{ initial.report_type }}"
  }
}
See individual overview pages for detailed documentation on template variables.

Best Practices

API Best Practices

  • Always handle errors gracefully using the unified error format
  • Implement retry logic for transient failures
  • Use pagination for list endpoints
  • Store secrets in System Secret Vault instead of hardcoding
  • Use webhook/workflow templates for reusability
  • Set appropriate rate limits and concurrency controls per domain