Trigv home

Search docs

Getting started
  • Overview
  • How Trigv works
Help
  • Send test
  • API keys
  • Channels
  • Image attachments
Guides
  • All guides
  • cURL
  • Laravel
  • AI coding agents
  • Cursor
  • Claude Code
  • OpenAI Codex
  • Other agents
SDKs
  • All SDKs
  • JavaScript
  • Python
  • PHP
  • Go
  • Ruby
  • CLI
API reference
  • API overview
  • POST /api/v1/events
  • Errors & rate limits
  • API security
More
  • OpenAPI spec
Open in ChatGPT ↗ Ask questions about this page Open in Claude ↗ Ask questions about this page Open Markdown https://trigv.com/docs-md/errors.md

Errors & rate limits

Trigv uses standard HTTP status codes. Error bodies are JSON with a message string unless validation fails (422), which includes an errors object.

Status code summary

CodeWhenExample message
200Duplicate idempotency_key- (returns existing event object)
202Event accepted and queued- (returns new event object)
401Missing/invalid Bearer key, Sanctum token on ingest, or ingest key on dashboard routesInvalid API key. (or type-specific message)
403Key revoked, expired, wrong scope, or inactive workspaceThis API key has been revoked.
404Channel slug not found or inactiveChannel not found.
422Validation failed (missing channel, title, etc.)Laravel validation errors object
429Monthly workspace event cap or per-key burst limitSee below (two distinct cases)

Monthly event limit (429)

Each workspace has a monthly event allowance based on plan (stored in workspace_usage_counters). When events_count reaches events_limit, ingest returns:

Code
{
	"message": "Monthly event limit reached for this workspace."
}

Upgrade your plan or wait for the monthly counter reset. hop: 10,000/mo · leap: 40,000/mo. See pricing for current plans.

Burst rate limit (429)

Each API key is rate-limited to prevent accidental floods. Default: 60 requests per minute per key (configurable per key via rate_limit_per_minute).

Code
{
	"message": "Too many requests for this API key."
}

Backoff and retry. If you hit this often in cron loops, add jitter or batch alerts.

Idempotency

Pass the same idempotency_key on retries. The first request returns 202; subsequent identical keys return 200 with the original event and do not increment monthly usage.

Tip Distinguish 429 responses by reading message: monthly cap vs. burst throttle use different strings.

Previous POST /api/v1/events Next API security

On this page

    Native push alerts for developers. Send alerts from webhooks, cron jobs, and scripts. We deliver alerts to your devices, but don't keep the message or notification history on our servers.

    Follow @trigvapp →

    Built by Harish Chouhan

    Product

    • Features
    • How it works
    • Pricing
    • Docs
    • Integrations
    • SDKs
    • API
    • Full LLMs text

    Company

    • About
    • Support
    • Changelog

    Legal

    • Terms & Conditions
    • Privacy Policy
    • Cookie Policy
    • API Security
    All systems ok. Get back to coding.

    © 2026 Webtions OU (dba Trigv)