API monitoring

API monitoring as simple as sending a request

If you can send a request in Postman, you can monitor it. Pick the method, paste the URL, and choose the checks: the status code, how fast it responds, and the fields in the body. Acumen Logs runs them on a schedule from the regions you choose. When an API goes down, slows down, or quietly starts returning the wrong data, you hear about it first.

No credit card. No scripts required.

POST
https://api.northline.example/v1/orders
Params
Headers
Body
Checks
✓
Status is 200–201
Pass
✓
body.status equals "paid"
Pass
✓
Responds under 500 ms
Pass
201 Created
184 ms
{
"id": "ord_10482",
"status": "paid",
"total": 248.00
}
Up is not the same as right

The endpoint answered. The answer was wrong

A ping tells you an API responded. A 200 only means the server answered. API monitoring checks the body is the right data, in the right shape, and fast enough. An empty product list or a renamed price field still fails the run.

A ping reports
An API check finds
Up

GET /products returns 200 in 140 ms.

Wrong data

The body is an empty list. Every product page now says “out of stock”.

Up

POST /auth/token returns 200.

Wrong data

The token works, but the next call to /orders returns 401. Checkout is broken for every customer.

Up

GET /prices returns 200.

Wrong data

A release renamed price to amount. The mobile app shows £0.00 on every item.

Chained requests

Real flows, built like you’d test them by hand

Most APIs are a conversation, not a single call. A customer signs in, then places an order. Chain those requests into one journey, save a token or an order ID from one response, and use it in the next. It looks like a Postman collection, and it runs on a schedule.

1
POST
/auth/token
saves token
Sign in with a test account
2
POST
/v1/orders
saves order_id
Authorization: Bearer {{token}}
3
GET
/v1/orders/{{order_id}}
Check body.status equals "paid"
4
DELETE
/v1/orders/{{order_id}}
Clean up so the test leaves nothing behind

Values that carry forward

Pull an ID, a token, or any field out of a response and drop it into the next URL, header, or body as {{variable}}.

Auth that just works

API keys in headers, bearer tokens fetched by a pre-request script, basic auth, or a client certificate for mutual TLS.

Script hooks when you need them

Most journeys need none. When one does, add custom logic for signatures, calculations, or anything unusual.

Checks

Check what matters, without writing a test suite

Pick the checks from a list and combine them. A 200 with a missing field still fails.

e.g. 200 and 204

Status codes

Allow a range, or exactly the codes you expect. Anything else fails the run.

e.g. 500 ms

Response time

Set a limit on how long a response may take. If it is slower than that, the run fails. Slow is treated as broken.

body.status

JSON fields

Check that a field exists, or equals the value it should. The wrong data fails, even with a 200.

Text

Body content

Require a word or phrase in the response, or fail when an error message appears.

Schema

Response contracts

Upload a JSON schema, a description of the shape the response must have. A renamed or missing field fails the run the day it ships.

Cache · version

Headers

Confirm cache headers, version numbers, and security headers are still there after every release.

Results

Every request, on the record

Each run keeps the full request and response, which is what you need when something breaks. Latency, the time the API takes to respond, is charted over time and by region, so a slow day or a slow city is obvious at a glance.

Payments – Charge API
Recent runs
14:10
London
201
182 ms
Pass
14:10
Frankfurt
201
1,920 ms
Fail
14:05
London
201
176 ms
Pass
14:05
Ohio
201
204 ms
Pass
14:00
Singapore
201
311 ms
Pass
Frankfurt · 14:10
Fail
Request
POST /v1/charges
Status
201 Created
Response time
1,920 ms
Failed check
Under 500 ms

The payment went through, but nearly four times slower than the time limit, and only from Frankfurt.

Production controls

Point it at real APIs, with the controls in your hands

API checks often touch payment, account, and partner endpoints. Mask sensitive fields, allow-list the monitoring IPs, choose where the check runs, and keep an activity log. These controls do not make a production check risk-free.

Scrub personal data

Mask sensitive fields before logs are exported or alerts are sent.

Allow-list friendly

Add the monitoring IP addresses to your gateway or firewall, so a check can reach an internal API.

Choose where it runs

Pick the region the check runs from. Where the request runs is not a promise about where the logs are stored.

An audit trail

The activity log shows who changed a monitor and when.

Use a test account with limited permissions. A check can still change data if the account you give it is allowed to.

Alerts

Know which call broke, and why

Alerts arrive with the endpoint, the failed check, and the region. The person who looks after the site can start on the failure, instead of hunting for which call broke.

Slack
Microsoft Teams
PagerDuty
Webhooks
Email
  • Set how many failures in a row must happen before anyone is told. One slow response does not have to wake the team. Two in a row, or whatever suits the API.
  • Maintenance windows keep alerts quiet during a planned release.
  • Alerts can carry the endpoint, a short summary of the response, and correlation IDs, the IDs that tie this call to your own logs.
Acumen Logs · #payments-oncall
Payments – Charge API is failing

Check failed: body.status expected "paid", got "pending". 2 runs in a row, Frankfurt and London.

POST /v1/charges · 201 Created · 410 ms
Same dashboard

Everything else your API depends on

API monitoring sits beside the rest of Acumen Logs, so one tool covers the whole stack.

Uptime monitoring

A simple HTTP check for a site or a health endpoint, on the interval you set. It does not read the body the way an API check does.

Uptime monitoring →

Synthetic journeys

A real browser walks login and checkout, and keeps the screenshot when a step breaks. A green API is not the same as a customer finishing checkout.

Synthetic monitoring →

Heartbeat and cron

Background jobs and queues ping in when they finish. Silence is the alert. An API check will not notice a job that never ran.

Heartbeat monitoring →

Status pages

Show customers and partners the health of your API on a page that updates itself.

Status pages →
Pricing

Start free with one API monitor

No credit card to start, and you can cancel any time.

Free

$0
forever
  • 1 API monitor
  • 60 synthetic tokens a month
  • Tests run when you start them
  • Screenshots, console, and network logs
  • 10 uptime, SSL, and WHOIS checks
  • Email alerts
Start free

Solo also includes 15 API monitors. Pro includes 25, and Pro Plus includes 40. Free cannot run a check more often than every 24 minutes. Solo and Essentials can run every 10 minutes, Pro every 5, and Pro Plus every minute.

See every plan →
Testimonials

Trusted by clients that rely on reliable monitoring

“They played a crucial role in helping us quickly onboard several hundred sites for both uptime and synthetic monitoring, providing invaluable support every step of the way.”

Jared
Prisim RBS

“The company I work for needed to transition to a new monitoring system for the many ecommerce sites we support, and Acumen has stepped in and filled the void in a terrific way.”

Brian
Prisim RBS

“Love the support we got from Acumen Logs! Highly recommended.”

Mark
HostingNL
API monitoring

Know when an API returns the wrong answer

Check availability, the time to respond, and the body. When a check fails, the alert goes to your developer, agency, or the person who looks after the site. Acumen Logs tells you. It does not fix the API.