Back to sensacat

Home  /  Features

· SensaCat Team

Integrations: Works With Anything That Sends HTTP

There is no SDK and no agent. If your tool can make a POST request, it can report to SensaCat, which covers almost everything.

SensaCat has no SDK, no agent and no language-specific library. Reporting in is a single HTTP POST, which means anything capable of making a web request can integrate in about a minute.

That is a deliberate design choice rather than a gap. An SDK is one more dependency to version, audit and update, and a monitoring integration that breaks because a library went out of support is worse than no integration.

The whole interface

Ingest is dual-authenticated: the token identifies the resource, the header authenticates the account. Both must match, so a token appearing in a log file or a shared script is not on its own enough to forge pings.

Where this fits, by platform

Platform How you report in Guide
Bash, cron One curl line at the end of the script Cron jobs
Laravel Built-in thenPing on the scheduler Laravel
Django, Python requests or urllib in a try/finally Django
Node.js fetch with AbortSignal.timeout Node.js
Go http.Client in a deferred function Go
Ruby, Rails Net::HTTP in an ensure block Rails
GitHub Actions A curl step with if: success() GitHub Actions
AWS Lambda urllib in a finally block Lambda
Zapier Webhooks by Zapier as the final action Zapier
Make.com HTTP module as the final module Make
n8n HTTP Request node, plus an Error Trigger workflow n8n

No-code platforms are first-class here

Zapier, Make and n8n all ship a generic HTTP action, so they integrate exactly like code does. Put the request as the final step and it only fires when every preceding step succeeded.

This covers the case those platforms handle worst, which is a workflow that stops being triggered entirely. An inactive Zap produces no runs, no errors and no history, so the platform has nothing to alert on. An external monitor expecting a regular ping notices the silence.

Two rules worth following everywhere

Put the ping where the work actually completes, not where the request is received. A webhook handler that returns 200 and queues the work should ping from the queue worker, because the 200 is exactly the thing that can be true while nothing happens.

Never let the ping break the job. Set a short timeout and swallow its errors. Monitoring failing should never be the reason a working process reports a failure.

Webhook providers

For inbound webhooks from Stripe, Shopify, PayPal and similar, the pattern is the same but the placement matters more. Guides for each: Stripe, Shopify, PayPal.

Credentials and domains need no integration at all. Those are dates you enter, checked by us, with no code on your side.

Getting the token

Creating a monitor or a business flow shows a setup modal with a ready-made curl command containing your token and key. Copy it, paste it into your script, and the first ping registers immediately.

Start free: the Free tier includes two monitors, two credentials and a domain, which is enough to wire up a real job and see it working.