🔥 LogBlazer

API Documentation

LogBlazer has a single endpoint for ingesting logs. Send a POST request with your log data and it will appear in your dashboard. You can also attach monitor data to display the latest state on your project dashboard.

Base URL

https://app.logblazer.com

Endpoint

POST /api/logs/{api_key}

The api_key is a UUID unique to each project. You can find it in your project settings on the LogBlazer dashboard. No other authentication is required — the key in the URL is your credential.

Request

Headers

Content-Type: application/json

Body (JSON)

Field Type Required Description
payload string Yes The log message content.
status string No One of: SUCCESS, FAILURE, WARNING, NOTICE. Defaults to NOTICE.
source string No Identifies the origin of the log (e.g. web-server, cron-worker, deploy-script). Max 255 characters.
monitor_title string No* Display name for the monitor on your project dashboard (e.g. CPU Usage, Deploy Status). Max 255 characters.
monitor_type string No* One of: status, boolean, number, text. Determines how the value is displayed on the dashboard.
monitor_value string No* The current value for this monitor (e.g. healthy, true, 42). Max 255 characters.

* Monitor fields are optional, but if any one is provided then all three (monitor_title, monitor_type, monitor_value) are required together.

Monitors

Monitors let you display the latest state of a value on your project dashboard. Each log entry can optionally include monitor data. The dashboard shows the most recent value for each unique monitor_title within a project.

Monitor types

Type Description
status A status label such as healthy, degraded, or down.
boolean A true/false value (e.g. true or false).
number A numeric value (e.g. 42, 99.8).
text Free-form text (e.g. v2.4.1, us-east-1).

Example: sending a monitor

curl -X POST https://app.logblazer.com/api/logs/YOUR_API_KEY \
  -H "Content-Type: application/json" \
  -d '{
    "payload": "Health check passed",
    "status": "SUCCESS",
    "source": "health-checker",
    "monitor_title": "API Status",
    "monitor_type": "status",
    "monitor_value": "healthy"
  }'

Response

201 Created

{
  "message": "Log received"
}

404 Not Found

Returned when the API key does not match any project.

422 Unprocessable Entity

Returned when validation fails (e.g. missing payload or invalid status value).

Examples

cURL

curl -X POST https://app.logblazer.com/api/logs/YOUR_API_KEY \
  -H "Content-Type: application/json" \
  -d '{"payload": "User signed up", "status": "SUCCESS", "source": "auth-service"}'

JavaScript (fetch)

await fetch("https://app.logblazer.com/api/logs/YOUR_API_KEY", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    payload: "Deployment finished",
    status: "SUCCESS",
    source: "deploy-script"
  })
});

PHP

$response = Http::post("https://app.logblazer.com/api/logs/YOUR_API_KEY", [
    'payload' => 'Database backup completed',
    'status'  => 'SUCCESS',
    'source'  => 'backup-worker',
]);

Python

import requests

requests.post("https://app.logblazer.com/api/logs/YOUR_API_KEY", json={
    "payload": "Cron job failed: timeout after 30s",
    "status": "FAILURE",
    "source": "cron-worker"
})

Bash (minimal)

# Minimum required — just the payload
curl -X POST https://app.logblazer.com/api/logs/YOUR_API_KEY \
  -H "Content-Type: application/json" \
  -d '{"payload": "Something happened"}'

Quick reference

Authentication

API key in the URL path. No headers or tokens needed.

Content type

Always application/json.

Status values

SUCCESS, FAILURE, WARNING, NOTICE

Monitor types

status, boolean, number, text

Rate limits

None currently enforced.