Integration Guide

    Integrate TaskPulse in Minutes

    Copy-paste code snippets to add monitoring to your scheduled tasks, automation workflows, and applications.

    Quick Start

    Get up and running in 3 simple steps

    1

    Create a Monitor

    Sign up and create a heartbeat or signal monitor from your dashboard.

    2

    Copy Your UUID

    Each monitor has a unique UUID. Copy it from the monitor details page.

    3

    Add the Ping

    Add an HTTP POST request at the end of your task using the snippets below.

    Understanding Monitor Types

    Choose the right type for your use case

    Heartbeat Monitoring

    "Did my task run?"

    Best for:

    • Cron jobs & scheduled tasks
    • Database backups
    • Report generation
    • Data sync jobs
    Task Runs
    Send Ping
    ✓ OK

    Ping on success → Get alerted if ping is missed

    POST /ping/{uuid}
    Smart Heartbeats FREE
    Signal Events

    "What happened in my app?"

    Best for:

    • Payment events
    • User signups & actions
    • Order completions
    • Error & exception tracking
    Event Occurs
    Send Signal
    📊 Logged

    Send anytime → Auto-extracts level from payload

    POST /signal/{uuid}
    Counts toward quota

    Heartbeat Monitoring

    For cron jobs and scheduled tasks

    Remember: Only send a ping when your task completes successfully. If your task fails, don't send a ping — TaskPulse will alert you when the expected ping is missed.

    Smart Heartbeats

    Turn simple pings into data-rich events by including a JSON payload with your heartbeat. Track metrics like items processed, revenue, or error counts alongside uptime monitoring. Payloads are FREE — they don't count against your monthly event quota. Max size: 4KB.

    # Simple heartbeat ping
    curl -X POST https://api.taskpulse.co/ping/YOUR_MONITOR_UUID
    
    # Heartbeat with execution duration (in milliseconds)
    curl -X POST https://api.taskpulse.co/ping/YOUR_MONITOR_UUID/1500
    
    # Smart Heartbeat with JSON payload (track metrics alongside uptime)
    curl -X POST https://api.taskpulse.co/ping/YOUR_MONITOR_UUID \
      -H "Content-Type: application/json" \
      -d '{"duration_ms": 1500, "items_processed": 150, "revenue": 4999.99}'
    
    # Example in a cron job script
    #!/bin/bash
    START_TIME=$(date +%s%3N)
    
    # Your task logic here
    /path/to/your/script.sh
    
    END_TIME=$(date +%s%3N)
    DURATION=$((END_TIME - START_TIME))
    
    # Send simple ping with duration
    curl -X POST "https://api.taskpulse.co/ping/YOUR_MONITOR_UUID/${DURATION}"
    
    # Or send smart ping with metrics
    curl -X POST "https://api.taskpulse.co/ping/YOUR_MONITOR_UUID" \
      -H "Content-Type: application/json" \
      -d "{"duration_ms": ${DURATION}, "items_processed": 100}"
    bash

    Signal Events

    For tracking business events and metrics

    Signal events accept any JSON payload up to 4KB. TaskPulse automatically extracts the severity level from fields like status,level, or severity.

    # Send a signal event with JSON payload
    curl -X POST https://api.taskpulse.co/signal/YOUR_MONITOR_UUID \
      -H "Content-Type: application/json" \
      -d '{"status": "success", "processed": 150, "duration_ms": 1234}'
    
    # Signal with error level
    curl -X POST https://api.taskpulse.co/signal/YOUR_MONITOR_UUID \
      -H "Content-Type: application/json" \
      -d '{"status": "error", "message": "Database connection failed", "code": 500}'
    
    # Signal with custom data
    curl -X POST https://api.taskpulse.co/signal/YOUR_MONITOR_UUID \
      -H "Content-Type: application/json" \
      -d '{
        "event": "order_processed",
        "order_id": "ORD-12345",
        "amount": 99.99,
        "customer": "john@example.com"
      }'
    bash

    Low-Code / No-Code Platforms

    Integration guides for automation tools

    ## n8n Integration ### Heartbeat Monitoring Add an **HTTP Request** node at the end of your workflow: 1. Add a new **HTTP Request** node 2. Configure: - **Method**: POST - **URL**: https://api.taskpulse.co/ping/YOUR_MONITOR_UUID 3. Connect it as the last node in your workflow ### Smart Heartbeat (with metrics) Send workflow metrics alongside your heartbeat (payloads are FREE!): 1. Add an **HTTP Request** node 2. Configure: - **Method**: POST - **URL**: https://api.taskpulse.co/ping/YOUR_MONITOR_UUID - **Body Content Type**: JSON - **Body**: { "duration_ms": {{ $json.executionTime }}, "items_processed": {{ $json.itemCount }}, "workflow": "{{ $workflow.name }}" } ### Signal Events (for business events) To send workflow data as a signal: 1. Add an **HTTP Request** node 2. Configure: - **Method**: POST - **URL**: https://api.taskpulse.co/signal/YOUR_MONITOR_UUID - **Body Content Type**: JSON - **Body**: { "status": "{{ $json.success ? 'success' : 'error' }}", "workflow": "{{ $workflow.name }}", "processed": {{ $json.itemCount }}, "execution_id": "{{ $execution.id }}" } ### Pro Tips for n8n - Place TaskPulse node AFTER your main logic (not in error branch) - Use expressions to include dynamic data in signals - For scheduled workflows, set monitor interval to match your Schedule trigger - Add a separate error workflow with a signal to track failures

    Notification Integrations

    Connect TaskPulse to Slack, Discord, and more

    Pro & Business Feature

    Slack and Discord integrations require a Pro plan. Custom Webhooks are available on Business plan only.

    ## Slack Integration ### Prerequisites - TaskPulse Pro or Business plan - A Slack workspace where you can add webhooks ### Step 1: Create a Slack Webhook 1. Go to [Slack API Apps](https://api.slack.com/apps) 2. Click **Create New App** → **From scratch** 3. Name it "TaskPulse Alerts" and select your workspace 4. Go to **Incoming Webhooks** → Enable **Activate Incoming Webhooks** 5. Click **Add New Webhook to Workspace** 6. Choose the channel for alerts (e.g., #alerts) 7. Copy the **Webhook URL** ### Step 2: Configure in TaskPulse 1. Open your monitor in TaskPulse dashboard 2. Scroll to **Integrations** section 3. Click **Add Integration** → **Slack** 4. Configure: - **Name**: e.g., "Team Alerts" - **Webhook URL**: Paste your Slack webhook URL - **Channel**: Override channel (optional) - **Username**: Bot display name (optional) 5. Click **Save** ### Step 3: Test Your Integration 1. Click **Test** button on the integration card 2. You should receive a test message in your Slack channel 3. If successful, you're all set! ### Alert Format TaskPulse sends formatted Slack messages with: - Monitor name and status - Old vs new status - Timestamp - Direct link to monitor dashboard ### Troubleshooting | Issue | Solution | |-------|----------| | "Invalid webhook URL" | Ensure URL starts with https://hooks.slack.com/ | | No message received | Check channel permissions and bot access | | Rate limited | Slack allows 1 message/second per webhook |

    Best Practices

    ✅ Do

    • Place the ping at the END of your task, after all logic completes

    • Include execution duration for performance tracking

    • Set monitor interval slightly longer than your schedule

    • Use signal events for important business metrics

    • Test your integration before going to production

    ❌ Don't

    • Don't send a heartbeat ping if your task fails — let TaskPulse alert you

    • Don't put heartbeat pings in error/catch blocks — use Signal monitors with status: "error" to track failures instead

    • Don't set interval shorter than your actual schedule

    • Don't ignore TaskPulse connection errors in production

    • Don't share monitor UUIDs publicly

    Ready to start monitoring?

    Create your free account and set up your first monitor in under a minute.

    Get Started Free

    © 2026 TaskPulse. All rights reserved.

    Using an AI assistant? Share our llms.txt for better integration help.