REST & GraphQL API Monitoring

Мониторинг доступности для стартапов СНГ

Start Free Monitoring View Live Demo

status-codes

Configure Response Code Checks

Define exactly which HTTP status codes your endpoints should return. Statusly expects 200 OK for your /api/v2/products feed, 201 Created on POST /webhooks/stripe, and 401 Unauthorized when authentication tokens expire. Any deviation triggers an instant alert via Slack, Telegram, or email.

Set per-endpoint expectations: your /health endpoint must return 200, your payment callback /webhooks/yookassa expects 200, and your GraphQL mutation /graphql should return 200 even when individual fields fail — because GraphQL always returns 200 and you validate errors in the body instead. Statusly understands this distinction and lets you configure code-level and body-level checks independently.

Code 200 OK

Default expectation for GET endpoints. Applied to /api/v2/catalog, /api/v2/search?q=monitoring, and your public GraphQL query endpoint at https://api.statusly.io/graphql.

Code 201 Created

Validate POST /api/v2/orders and POST /webhooks/stripe return 201 on success. If the endpoint returns 200 or 204, Statusly flags it as a regression.

Code 204 No Content

Expected for DELETE /api/v2/sessions/:id and PATCH /api/v2/users/:id/preferences when the response body is intentionally empty.

response-time

Response Time Thresholds

Set latency budgets per endpoint and get warned before your users notice degradation. Statusly measures time-to-first-byte (TTFB) from monitoring locations in Moscow, Berlin, and Frankfurt, so you can track regional performance for your CIS customer base.

For example, your GraphQL endpoint at https://api.statusly.io/graphql should respond under 350 ms from Moscow. Your REST search endpoint /api/v2/search?limit=50 has a 500 ms budget. If TTFB exceeds the threshold for three consecutive checks (every 60 seconds), Statusly fires a P1 alert to your #api-incidents Slack channel and starts an incident in your dashboard.

Dashboard showing REST and GraphQL API response time graphs with threshold lines for Moscow, Berlin, and Frankfurt monitoring locations

json-assertions

JSON Body Validation for Critical Endpoints

Go beyond status codes and response times. Statusly lets you assert the presence, type, and value of fields inside your JSON responses — essential for GraphQL mutations and REST endpoints that power checkout flows, user onboarding, or webhook deliveries.

Define assertions such as: data.product.name must be a non-empty string, data.totalItems must be a number greater than 0, and errors must be an empty array (or absent) for your GraphQL /graphql endpoint. If your /api/v2/orders response suddenly drops the trackingNumber field after a backend deploy, Statusly detects the missing key and alerts your backend team before customers complain.

Key Presence Checks

Assert that required fields like data.order.id, data.user.email, or data.cart.total exist in every response. Missing keys trigger a P1 alert immediately.

Type & Value Assertions

Validate that data.product.price is a number, data.status equals "active", and data.items.length is greater than 0. Supports regex matching on string fields.

GraphQL Error Inspection

Since GraphQL always returns 200, Statusly inspects the errors array inside the response body. If errors.length > 0, the check fails and your team gets notified with the exact error message.

Start Monitoring Your API Today

Add your first REST or GraphQL endpoint in under 60 seconds. Statusly's free plan includes 3 API monitors, 60-second check intervals, and Slack notifications. Upgrade to Teams for 50 monitors, JSON assertions, and multi-location response time tracking.

Create Your First Monitor