> ## Documentation Index
> Fetch the complete documentation index at: https://docs.overwatchapp.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Overwatch quickstart: set up your first monitor and alert

> Sign up for Overwatch, create your first HTTP monitor, connect a Slack alert channel, and confirm alerts fire — all in a few minutes.

This guide walks you through the fastest path to a working Overwatch setup: creating an account, adding an HTTP monitor, wiring up a Slack alert channel, and verifying that alerts fire correctly. By the end you will have live uptime monitoring and will receive a notification the next time your endpoint changes status.

<Steps>
  <Step title="Sign up at overwatchapp.dev">
    Go to [overwatchapp.dev](https://overwatchapp.dev) and click **Start free trial**. You get 14 days free with no credit card required. After signing up, Overwatch takes you through a short onboarding flow where you name your organization and choose a plan.

    <Tip>
      If you want to self-host instead of using the managed cloud, see the [open-source core](https://github.com/processfoundry/overwatch) on GitHub.
    </Tip>
  </Step>

  <Step title="Create your first HTTP monitor">
    From the dashboard, click **Add monitor** and select **HTTP** as the check type. Fill in the fields:

    | Field        | Description                                                                                           |
    | ------------ | ----------------------------------------------------------------------------------------------------- |
    | **Name**     | A label for the monitor, e.g. `Production API`.                                                       |
    | **URL**      | The endpoint to check, e.g. `https://api.example.com/health`.                                         |
    | **Interval** | How often to run the check. The minimum depends on your plan (5 minutes on Starter, 1 minute on Pro). |

    Click **Save**. Overwatch queues the first check immediately — the monitor status updates within a few seconds.
  </Step>

  <Step title="Add a Slack alert channel">
    Go to **Settings → Alert channels** and click **Add channel**. Select **Slack**, then follow the prompts to authorize the Overwatch Slack app and choose a channel to post to.

    Once saved, return to your monitor, open its settings, and enable the Slack channel under **Alert channels**. Overwatch sends an alert to that channel whenever the monitor's status changes — for example, from `up` to `down`, or back to `up` when it recovers.

    <Info>
      You can connect up to the number of alert channels your plan allows (1 on Starter, 5 on Pro). The same channel can be attached to multiple monitors.
    </Info>
  </Step>

  <Step title="Test the alert">
    To confirm alerts are wired up correctly, click **Send test alert** on the alert channel settings page. Overwatch posts a sample notification to your Slack channel. If you do not receive it, check that the Slack app is still authorized and that the channel name is correct.
  </Step>

  <Step title="Create a monitor via the API (optional)">
    If you prefer to manage monitors programmatically, you can use the REST API. First, generate an API key at **Settings → Security**. Your key starts with `ow_live_sk_` and is shown only once — copy it now.

    Pass the key as a Bearer token in the `Authorization` header:

    ```bash theme={null}
    curl -X POST https://overwatchapp.dev/api/v1/monitors \
      -H "Authorization: Bearer ow_live_sk_<your-key>" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "Production API",
        "type": "HTTP",
        "config": {
          "url": "https://api.example.com/health",
          "interval": 300
        }
      }'
    ```

    A successful response returns `201 Created` with the new monitor object:

    ```json theme={null}
    {
      "data": {
        "id": "3f8a1c2e-...",
        "name": "Production API",
        "type": "HTTP",
        "status": "unknown",
        "enabled": true,
        "config": {
          "url": "https://api.example.com/health",
          "interval": 300
        },
        "createdAt": "2026-04-15T10:00:00.000Z"
      }
    }
    ```

    <Warning>
      The `interval` value is in seconds. Passing a value below your plan's minimum (300 for Starter, 60 for Pro) returns a `422` error.
    </Warning>

    See the [API reference](/api-reference/authentication) for all available endpoints and request fields.
  </Step>
</Steps>

## What's next

<CardGroup cols={2}>
  <Card title="Core concepts" icon="book" href="/concepts">
    Understand how monitor types, statuses, and alert channels fit together.
  </Card>

  <Card title="Monitor types" icon="gauge" href="/monitors/overview">
    Configure TCP, TLS, DNS, and cron job monitors.
  </Card>

  <Card title="Alert channels" icon="bell" href="/alerts/overview">
    Connect Discord, Teams, email, or a custom webhook.
  </Card>

  <Card title="Team roles" icon="users" href="/teams/roles-permissions">
    Invite teammates and control what each person can do.
  </Card>
</CardGroup>
