Monroe

Documentation

Webhook API

Coming soon. The Webhook API described below is on the public roadmap but not yet shipped. The endpoints (/api/workspace/<id>/trigger, /api/runs/<id>), workspace webhook tokens, and the rate-limit envelope are all targets for the next release. Today, the only way to drive Monroe is from Slack — see Slack install. If you need API access before this ships, email enterprise@getmonroe.com and we will prioritize against your timeline.

Monroe exposes a single webhook endpoint per workspace that any external system can POST to. This lets you trigger Monroe from CI, cron, alerts, or any backend that produces signal worth acting on.

Endpoint

POST https://app.getmonroe.com/api/workspace/<workspace_id>/trigger
Authorization: Bearer <workspace_webhook_token>
Content-Type: application/json

{
  "task": "Summarize today's prod errors from Sentry and post in #engineering",
  "channel": "#engineering",
  "metadata": {
    "source": "sentry-daily-cron",
    "trigger_id": "evt_abc123"
  }
}

Get the workspace webhook token from Dashboard → Settings → API.

Response

{
  "run_id": "run_xyz",
  "estimated_credits": 400,
  "channel": "#engineering",
  "status": "queued"
}

Monroe starts the run and posts the result in the specified channel. Run receipts post to metadata.run_id so external systems can correlate.

Status polling

GET https://app.getmonroe.com/api/runs/<run_id>
Authorization: Bearer <workspace_webhook_token>

Returns the current state, credits consumed so far, and the in-progress output if any.

Webhooks back (Enterprise)

For systems that need to know when Monroe finishes (e.g. a CI gate that waits for Monroe-generated release notes), Enterprise customers can register a callback URL. Monroe POSTs {run_id, status, output_url} when the run completes.

Rate limits

  • 100 requests/minute per workspace token
  • 10 concurrent runs per workspace (self-serve tiers)
  • 50 concurrent runs per workspace (Enterprise)

Need higher limits? Email enterprise@getmonroe.com.

Errors

  • 401 — bad token
  • 402 — workspace over spend cap (the response includes the date of next reset)
  • 403 — workspace suspended
  • 429 — rate-limited (retry with backoff; Retry-After header included)
  • 500 — internal error, log includes a correlation ID for support

Next: run receipt format.