Documentation

The API

Everything the portal does, the API does. Here is how to call it, without signing in first.

The portal is optional

There are no private endpoints: every screen in HopMango is built on the same public API a script, a pipeline or an assistant calls.

Where the API lives

One origin, one version prefix. Everything below hangs off it.

Base URL
https://api.hopmango.com

The whole surface is described by one OpenAPI document, served by the API itself. https://api.hopmango.com/openapi.yaml

Authenticating

Create an API key in the portal, under Settings → API keys, and send it as a bearer token.

The header every call carries
Authorization: Bearer hm_your_key_here

A key is shown once and stored as a hash. Keep it in an environment variable, never in a repository; two can be active while you rotate one.

Four calls to start with

Export your key as HOPMANGO_API_KEY first.

List the hosts
curl -s https://api.hopmango.com/v1/hosts \
  -H "Authorization: Bearer $HOPMANGO_API_KEY"
List the open incidents
curl -s "https://api.hopmango.com/v1/incidents?status=open" \
  -H "Authorization: Bearer $HOPMANGO_API_KEY"
Acknowledge an incident
curl -s -X POST https://api.hopmango.com/v1/incidents/{incidentId}/acknowledge \
  -H "Authorization: Bearer $HOPMANGO_API_KEY"
Create a website monitor
curl -s -X POST https://api.hopmango.com/v1/synthetics/monitors \
  -H "Authorization: Bearer $HOPMANGO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Storefront","url":"https://www.example.com","interval":"60s","for":"2m"}'

Rate limits

Per organization and per credential, with reads and writes counted apart. Every answer carries RateLimit-* headers; a refusal carries Retry-After.

Connecting an assistant

The same operations are exposed over MCP, for your own assistant: AI and MCP documentation