---
title: API keys vs. webhooks
description: Two different, complementary mechanisms it's easy to conflate.
order: 7
---

HeimPulse has two ways to connect external systems, and they're opposites, not alternatives:

- **API keys** (this API, `/v1`) are how **you call HeimPulse** - you hold the credential, you make
  the request, on your own schedule. Use them to create a service as part of infrastructure-as-code,
  or open/resolve an incident from your own alerting or ChatOps tooling.
- **Webhooks** (notification channels, configured in the dashboard) are how **HeimPulse calls you**
  - HeimPulse holds the credential (a signing secret) and pushes an event to a URL you configured,
  the moment an incident is created, updated, or a certificate is about to expire.

A concrete example of using both together: you might use a webhook to get notified the instant an
incident opens, and an API key in the same automation to post a status update to it a few minutes
later once your on-call engineer has confirmed root cause.

They don't share credentials, scopes, or configuration - setting up one doesn't affect the other.
