Runcrate · AsyncAPI Specification

Runcrate Webhooks

Version

View Spec View on GitHub Artificial IntelligenceGPUInferenceComputePlatformAsyncAPIEvents

AsyncAPI Specification

Raw ↑
generated: '2026-10-21'
method: searched
generator: extract-docs-artifacts.py (local)
source: https://www.runcrate.ai/docs/webhooks/overview
sources:
- https://www.runcrate.ai/docs/webhooks/overview
- https://www.runcrate.ai/docs/webhooks/slack
- https://www.runcrate.ai/docs/webhooks/discord
- https://www.runcrate.ai/docs/webhooks/events
description: Runcrate webhooks deliver events to HTTP, Slack, or Discord endpoints. Signed HTTP webhooks include an HMAC‑SHA256 signature in the
  `Runcrate-Signature` header; Slack and Discord endpoints have no signature (the URL itself is the secret). Deliveries are retried up to 8 times
  over roughly 3 hours 40 minutes.
events:
- event: budget.threshold_reached
  description: An environment’s month to date reached 80% of its monthly budget.
- event: budget.reached
  description: 'An environment spent its full monthly budget: launches are refused, instances stop and its API keys are declined.'
- event: instance.ready
  description: An instance or crate is running and reachable over SSH and its ports.
- event: instance.launch_failed
  description: A launch did not start. Nothing was charged for it.
- event: instance.runtime_ending
  description: An instance is 10 minutes from its max runtime.
- event: instance.auto_stopped
  description: 'Runcrate stopped an instance: max runtime, idle stop, a budget or a low balance.'
- event: instance.stopped
  description: An instance was terminated for any reason. `stop_reason` says why.
- event: job.queued
  description: 'A job is waiting: no capacity for the GPUs it asked for yet, or the budget.'
- event: job.started
  description: A job’s command started running on its machine.
- event: job.finished
  description: 'A job ended: succeeded, failed, timed out or cancelled.'
- event: schedule.failed
  description: A scheduled launch did not start.
- event: schedule.paused
  description: 'A schedule was turned off: 5 scheduled runs in a row failed, or who it runs as lost access.'
- event: balance.low
  description: The balance is running low. When `stops_at` is set, running instances stop then unless money is added.
- event: balance.depleted
  description: The balance ran out and running instances were stopped.
- event: credits.added
  description: A payment or top‑up was added to the workspace balance.
- event: storage.suspended
  description: A storage volume was suspended because its storage could not be paid for.
- event: storage.reactivated
  description: A suspended storage volume is available again.
- event: webhook.test
  description: Sent by “Send a test event”. Never sent on its own.
- event: webhook.disabled
  description: An endpoint kept failing (3 days with no success and at least 10 failed attempts, or 20 events in a row given up on), so Runcrate
    turned it off.
delivery:
  retries: up to 8 attempts over about 3 hours 40 minutes
  content_type: application/json
note: All three channels share the same retry schedule and delivery log.
docs: https://www.runcrate.ai/docs/webhooks/overview

Work with this as data

Every AsyncAPI spec here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for asyncapi

4 MCP tools reach this
  • find_asyncapisBrowse and filter every AsyncAPI spec in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/runcrate-webhooks"
All asyncapi
curl "https://apis.io/api/v1/asyncapis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.