From 3ecdf861df3c1c9515da35d72fcc99add40b65ad Mon Sep 17 00:00:00 2001 From: Thibault Le Ouay Ducasse Date: Thu, 17 Sep 2026 17:00:37 +0200 Subject: [PATCH] seo: small update --- .../docs/concept/latency-vs-response-time.mdx | 4 +- .../guides/best-hosted-status-page-2026.mdx | 5 +- .../best-opensource-status-page-2026.mdx | 22 ++--- .../guides/what-is-a-good-response-time.mdx | 7 +- apps/web/src/content/pages/home.mdx | 4 +- .../src/content/pages/product/status-page.mdx | 43 ++++------ .../pages/product/uptime-monitoring.mdx | 85 +++++++++---------- apps/web/src/lib/metadata/shared-metadata.ts | 5 +- 8 files changed, 84 insertions(+), 91 deletions(-) diff --git a/apps/web/src/content/pages/docs/concept/latency-vs-response-time.mdx b/apps/web/src/content/pages/docs/concept/latency-vs-response-time.mdx index de39c9d0..017c3c76 100644 --- a/apps/web/src/content/pages/docs/concept/latency-vs-response-time.mdx +++ b/apps/web/src/content/pages/docs/concept/latency-vs-response-time.mdx @@ -12,7 +12,7 @@ Latency and response time are often used interchangeably, but they measure diffe - **Latency** measures network travel time - **Response time** measures total time including server processing -Both metrics matter, but for different reasons. +Both metrics matter, but for different reasons. This page explains what each one measures and how to read them; if you are looking for target numbers, see [what is a good server response time?](/guides/what-is-a-good-response-time). ## What is latency? @@ -178,7 +178,7 @@ openstatus monitors and displays: Latency and response time are the raw measurements. These build on top of them: -- **[What is a good response time?](/guides/what-is-a-good-response-time)** — target numbers for both the server and the browser half, judged at the right percentile. +- **[What is a good server response time?](/guides/what-is-a-good-response-time)** — target numbers for both the server and the browser half, judged at the right percentile. - **[SLA vs SLO vs SLI](/guides/sla-vs-slo-vs-sli)** — turning a measurement into an internal target and a customer promise. - **[Error budgets explained](/guides/error-budgets-explained)** — how much failure your target actually permits, and what to do when it is spent. - **[What is MTTR?](/guides/what-is-mttr)** — measuring recovery once something has gone wrong. diff --git a/apps/web/src/content/pages/guides/best-hosted-status-page-2026.mdx b/apps/web/src/content/pages/guides/best-hosted-status-page-2026.mdx index ae1c4cdf..e6650be1 100644 --- a/apps/web/src/content/pages/guides/best-hosted-status-page-2026.mdx +++ b/apps/web/src/content/pages/guides/best-hosted-status-page-2026.mdx @@ -3,6 +3,7 @@ title: "Best Hosted Status Page Tools in 2026" description: "Compare the top hosted (SaaS) status page tools in 2026. We review openstatus, Atlassian Statuspage, Instatus, Betterstack, and Status.io to help you pick the right one for your team." author: "openstatus" publishedAt: "2026-06-09" +updatedAt: "2026-09-17" category: "alternative" faq: - question: "What is the best hosted status page tool in 2026?" @@ -15,7 +16,7 @@ faq: answer: "openstatus and Betterstack are the most cost-effective. openstatus starts at $30/month with monitoring and unlimited seats included, while Betterstack has a usable free tier. Atlassian Statuspage, Instatus, and Status.io get expensive quickly once you need private pages or larger subscriber lists." --- -# The State of Hosted Status Pages in 2026: What Are Your Best Options? +# Best Hosted Status Page Tools in 2026 ## TL;DR @@ -23,7 +24,7 @@ For most engineering teams in 2026, **openstatus** is the best hosted status pag Downtime is inevitable, but poor communication is a choice. When your API breaks or latency spikes, users shouldn't have to guess what's happening — and your on-call team shouldn't be copy-pasting incident updates across three tools. -Self-hosting a status page is a valid choice, but for most teams the math doesn't work: you're paying engineers to run uptime infrastructure for the thing that's supposed to communicate uptime. Hosted (SaaS) status pages take that operational tax off the table. +[Self-hosting an open source status page](/guides/best-opensource-status-page-2026) is a valid choice, but for most teams the math doesn't work: you're paying engineers to run uptime infrastructure for the thing that's supposed to communicate uptime. Hosted (SaaS) status pages take that operational tax off the table. We've reviewed the current landscape of hosted status pages. Here is a breakdown of the top contenders in 2026, where they shine, and where they fall short. diff --git a/apps/web/src/content/pages/guides/best-opensource-status-page-2026.mdx b/apps/web/src/content/pages/guides/best-opensource-status-page-2026.mdx index 37d03cdf..8017c311 100644 --- a/apps/web/src/content/pages/guides/best-opensource-status-page-2026.mdx +++ b/apps/web/src/content/pages/guides/best-opensource-status-page-2026.mdx @@ -1,16 +1,16 @@ --- -title: "Best Self-Hosted Status Page Tools 2026" +title: "Best Open Source Status Page Tools 2026" seo: - title: "Best Self-Hosted Status Page Tools in 2026" - description: "The self-hosted status page tools worth running in 2026 — openstatus, Cachet, Vigil, Statping-ng and Upptime — compared on maintenance, monitoring, and what each one costs you to operate." -description: "The self-hosted status page tools worth running on your own infrastructure in 2026 — compared on maintenance, built-in monitoring, and the real operational cost of hosting them yourself." + title: "Best Open Source Status Page Tools in 2026 (Self-Hosted)" + description: "The open source status page tools worth self-hosting in 2026 — openstatus, Cachet, Vigil, Statping-ng and Upptime — compared on maintenance, built-in monitoring, and what each one costs you to operate." +description: "The open source status page tools worth running on your own infrastructure in 2026 — compared on maintenance, built-in monitoring, and the real operational cost of self-hosting them." author: "openstatus" publishedAt: "2026-01-19" -updatedAt: "2026-08-26" +updatedAt: "2026-09-17" category: "alternative" faq: - - question: "What is the best self-hosted status page tool in 2026?" - answer: "openstatus is the strongest self-hosted option. It is actively maintained, ships as a Docker image you can run on your own infrastructure under AGPL-3.0, and unlike most self-hosted status pages it includes uptime monitoring rather than expecting you to wire in a separate tool. Cachet is the main alternative if you want something narrower and purely status-page focused." + - question: "What is the best open source status page tool in 2026?" + answer: "openstatus is the strongest open source option. It is actively maintained, ships as a Docker image you can run on your own infrastructure under AGPL-3.0, and unlike most self-hosted status pages it includes uptime monitoring rather than expecting you to wire in a separate tool. Cachet is the main alternative if you want something narrower and purely status-page focused." - question: "What does self-hosting a status page actually cost?" answer: "The software is free; the operation is not. Budget a VPS at $5-20/month, plus your time for upgrades, backups, TLS renewal, and keeping the box online. The subtler cost is architectural: a status page hosted on your own infrastructure can go down in the same incident it is supposed to report, which is the single strongest argument for hosting it somewhere else." - question: "Should I self-host my status page or use a hosted one?" @@ -21,13 +21,13 @@ faq: answer: "Upptime pioneered a clever GitOps approach using GitHub Actions and GitHub Pages, and it remains appealing if you want zero servers. But its last major release was in 2020, so for anything production-facing an actively maintained project is the safer choice." --- -# Best Self-Hosted Status Page Tools in 2026 +# Best Open Source Status Page Tools in 2026 -Running your own status page is a deliberate trade. You get full control of the data, no vendor bill, and a page that lives on infrastructure you own. In exchange you take on the server, the upgrades, the backups — and the awkward problem that your status page depends on infrastructure that may go down at the same time as everything else. +Running an open source status page on your own infrastructure is a deliberate trade. You get full control of the data, no vendor bill, and a page that lives on infrastructure you own. In exchange you take on the server, the upgrades, the backups — and the awkward problem that your status page depends on infrastructure that may go down at the same time as everything else. -If that trade is one you want to make, these are the tools worth running in 2026. Each is compared on how actively it is maintained, whether it monitors anything itself, and what it genuinely costs to operate once you include the server and your own time. +If that trade is one you want to make, these are the open source tools worth self-hosting in 2026. Each is compared on how actively it is maintained, whether it monitors anything itself, and what it genuinely costs to operate once you include the server and your own time. -If you would rather not run it at all, a [hosted status page](/status-page) removes the operational half of the trade while keeping the open-source codebase. +If you would rather not run it at all, see the [best hosted status page tools](/guides/best-hosted-status-page-2026) — openstatus is on both lists, since the [hosted version](/status-page) runs the same open source codebase. --- diff --git a/apps/web/src/content/pages/guides/what-is-a-good-response-time.mdx b/apps/web/src/content/pages/guides/what-is-a-good-response-time.mdx index b736fb09..34d08d77 100644 --- a/apps/web/src/content/pages/guides/what-is-a-good-response-time.mdx +++ b/apps/web/src/content/pages/guides/what-is-a-good-response-time.mdx @@ -1,10 +1,11 @@ --- -title: "What Is a Good Response Time?" +title: "What Is a Good Server Response Time?" seo: - title: "What Is a Good Response Time? Load Time Benchmarks" -description: "Target numbers for server response time and browser load time, why you should judge them at the 75th percentile rather than the average, and which metric to fix first when a page feels slow." + title: "What Is a Good Server Response Time? Benchmarks for 2026" +description: "Server response time benchmarks for 2026 — what counts as fast, acceptable and slow — plus page load targets, why you should judge them at the 75th percentile rather than the average, and which metric to fix first." author: "openstatus" publishedAt: "2026-08-15" +updatedAt: "2026-09-17" category: "fundamentals" faq: - question: "What is a good server response time?" diff --git a/apps/web/src/content/pages/home.mdx b/apps/web/src/content/pages/home.mdx index 32e5a49f..226dcdfb 100644 --- a/apps/web/src/content/pages/home.mdx +++ b/apps/web/src/content/pages/home.mdx @@ -1,8 +1,8 @@ --- -title: "Open Source Status Page & Uptime Monitoring" +title: "Free & Open Source Status Page and Uptime Monitoring" hero: "Keep your status page in code. Let your agents update it." publishedAt: "2026-04-07" -updatedAt: "2026-09-13" +updatedAt: "2026-09-17" author: "openstatus" description: "Open-source status page and uptime monitoring. Declare monitors in your repo with Terraform or the CLI. Let agents open and resolve status reports over MCP, every mutation audited. Hosted or self-hosted." category: "product" diff --git a/apps/web/src/content/pages/product/status-page.mdx b/apps/web/src/content/pages/product/status-page.mdx index 46143b0b..f0e906aa 100644 --- a/apps/web/src/content/pages/product/status-page.mdx +++ b/apps/web/src/content/pages/product/status-page.mdx @@ -1,11 +1,11 @@ --- title: "Status Page" seo: - title: "Create a Status Page — Hosted, Branded, Public or Private" - description: "Launch a branded status page on your own domain in minutes. Public or private, with password protection, IP allowlists, maintenance windows and RSS alerts." + title: "Free Status Page — Open Source, Custom Domain, Public or Private" + description: "Create a free status page on your own domain in minutes. Open source and self-hostable. Public or private (password, magic link, IP allowlist), subscribers, maintenance windows, Slack agent." hero: "Status pages your users actually trust" publishedAt: "2025-11-10" -updatedAt: "2026-08-26" +updatedAt: "2026-09-17" author: "Maximilian Kaske" description: "Create a public or private status page in minutes. Show real-time uptime, incidents and maintenance on a fully branded page with a custom domain." category: "Product" @@ -13,21 +13,19 @@ faq: - question: "What is a status page?" answer: "A status page is a dedicated webpage where companies communicate the real-time health of their services to users. It shows which systems are operational, degraded, or experiencing outages, and provides timestamped incident updates. Status pages reduce support tickets during incidents, build user trust through transparency, and satisfy compliance requirements like SOC 2." - question: "When should I use a public vs private status page?" - answer: "Use public status pages for customer-facing services where transparency builds trust. Use private status pages (password-protected, magic link, or IP-restricted) for internal tools, client-specific deployments, or when you need to control who receives status updates." + answer: "A public status page is customer-facing and indexed — it deflects support tickets and answers vendor questionnaires. A private (internal) status page is for staff, contractors, or a single client, with access controlled by password protection, magic link authentication, or an IP allowlist. You can run both from the same workspace." - question: "What's the difference between monitors and external services in page components?" - answer: "Monitors are automatically synced with your OpenStatus uptime monitoring data and update in real-time. External services are manually managed components for third-party dependencies or systems you don't directly monitor but want to report status for." + answer: "Monitors are automatically synced with your openstatus uptime monitoring data and update in real-time. External services are manually managed components for third-party dependencies or systems you don't directly monitor but want to report status for." - question: "Can I translate my status page into other languages?" answer: "Yes, status pages support multiple languages (currently English, French, German, Turkish, Hindi, Korean, and Japanese). You can set a default locale and enable a locale switcher so visitors choose their preferred language. Translations are open source — you can contribute new languages by adding a locale to the shared registry and running the dev server to generate the translation file." - question: "Can I use my own domain for the status page?" - answer: "Yes, you can configure custom domains to host your status page on your own domain (e.g., status.yourcompany.com) instead of the default OpenStatus subdomain. This keeps the experience consistent with your brand." + answer: "Yes, you can configure custom domains to host your status page on your own domain (e.g., status.yourcompany.com) instead of the default openstatus subdomain. This keeps the experience consistent with your brand." - question: "How do status page subscriptions work?" answer: "Users can subscribe to receive updates when you post status reports or maintenance notices. We support email notifications, RSS/Atom feeds for feed readers, and JSON feeds for programmatic consumption. Subscribers are automatically notified when you publish updates." - question: "Can I customize the appearance of my status page?" - answer: "Yes, use the Theme Store to apply community themes or create your own. Themes control colors, fonts, and layout. For private custom themes, contact us. You can also define which data to share (uptime percentages, response times, or manual reports only)." + answer: "Yes. Pick a community theme from the Theme Store or contribute your own. For a private look, the Custom Theme editor lets you override any CSS variable of the base theme for light and dark mode — included on Pro and Scale, or a $20/mo add-on on Starter. You can also define which data to share (uptime percentages, response times, or manual reports only)." - question: "How do I create a status page?" answer: "Sign up, create a status page, give it a name and a slug, then add page components — either monitors synced from your uptime monitoring or external services you manage by hand. Point a custom domain at it if you want status.yourcompany.com, pick a theme, and publish. Most teams are live in under ten minutes on the free plan." - - question: "Public vs internal status page?" - answer: "A public status page is customer-facing and indexed — it deflects support tickets and answers vendor questionnaires. An internal or private status page is for staff, contractors, or a single client, and access is controlled with password protection, magic link authentication, or an IP allowlist. You can run both from the same workspace." - question: "How much does a status page cost?" answer: "The free Hobby plan includes one status page with three components and no credit card. Paid plans start at $30/month for Starter (one status page, 20 components, custom domain, subscribers), $100/month for Pro, and $500/month for Scale. Annual billing gives you two months free. Extra status pages are $20/month each." - question: "What is the Slack agent and what can it do?" @@ -98,13 +96,13 @@ You can **group page components** by their services, locations, or any logical g ### Links -Add a **Get in touch** in touch button and add a specific **website** link or a **`mailto:`** address. +Add a **Get in touch** button that points to a specific **website** link or a **`mailto:`** address. Include a **homepage** link to redirect the user to your page on clicking on the left-hand nav icon. ### Subscriptions -Allow your users **subscribe** to your status page, to automatically receive **updates** whenever you add a status report or maintenance to your status page. +Allow your users to **subscribe** to your status page and automatically receive **updates** whenever you add a status report or maintenance. We support following communication channels: @@ -112,7 +110,7 @@ We support following communication channels: - **RSS/Atom feeds** - **JSON** -[Contact us](mailto:ping@openstatus.dev) if you are looking for specific a channel. +[Contact us](mailto:ping@openstatus.dev) if you are looking for a specific channel. ### Translations @@ -136,9 +134,11 @@ Read the [migration guides](/blog/import-from-statuspage-betterstack-instatus) f ## Branded status pages -Match your brand **appearance** by contributing your own theme to the community. We have build a **[Theme Store](https://themes.openstatus.dev)** that helps you create and use custom themes on your status page. Contribute your own theme. If you a private custom theme let us know via [email](mailto:ping@openstatus.dev?subject=Private%20Theme). +Match your brand **appearance** with a theme from the **[Theme Store](https://themes.openstatus.dev)**, or contribute your own to the community. -You can **define the values** you want to share with your users. If can decide between duration values/uptime ping values or purely based on manual status report updates. +Need something that stays private? The **Custom Theme** editor lets you override any CSS variable of the selected theme with your own values — separately for **light and dark mode**. Every variable you leave unset falls back to the base theme, so you can change a single color or restyle the entire page. Custom themes are included on Pro and Scale, and available as a **$20/mo add-on** on Starter. See the [supported variables](/docs/reference/status-page/#custom-theme). + +You can **define the values** you want to share with your users: response times and uptime from your monitors, or purely manual status report updates. You can create **custom domains** to keep the domain your users are used to. @@ -162,13 +162,13 @@ A status page is a dedicated webpage where companies communicate the real-time h
-Use public status pages for customer-facing services where transparency builds trust. Use private status pages (password-protected, magic link, or IP-restricted) for internal tools, client-specific deployments, or when you need to control who receives status updates. +A public status page is customer-facing and indexed — it deflects support tickets and answers vendor questionnaires. A private (internal) status page is for staff, contractors, or a single client, with access controlled by password protection, magic link authentication, or an IP allowlist. You can run both from the same workspace.
-Monitors are automatically synced with your OpenStatus uptime monitoring data and update in real-time. External services are manually managed components for third-party dependencies or systems you don't directly monitor but want to report status for. +Monitors are automatically synced with your openstatus uptime monitoring data and update in real-time. External services are manually managed components for third-party dependencies or systems you don't directly monitor but want to report status for.
@@ -180,7 +180,7 @@ Yes, status pages support multiple languages (currently English, French, German,
-Yes, you can configure custom domains to host your status page on your own domain (e.g., status.yourcompany.com) instead of the default OpenStatus subdomain. This keeps the experience consistent with your brand. +Yes, you can configure custom domains to host your status page on your own domain (e.g., status.yourcompany.com) instead of the default openstatus subdomain. This keeps the experience consistent with your brand.
@@ -192,7 +192,7 @@ Users can subscribe to receive updates when you post status reports or maintenan
-Yes, use the Theme Store to apply community themes or create your own. Themes control colors, fonts, and layout. For private custom themes, contact us. You can also define which data to share (uptime percentages, response times, or manual reports only). +Yes. Pick a community theme from the Theme Store or contribute your own. For a private look, the Custom Theme editor lets you override any CSS variable of the base theme for light and dark mode — included on Pro and Scale, or a $20/mo add-on on Starter. You can also define which data to share (uptime percentages, response times, or manual reports only).
@@ -202,12 +202,6 @@ Sign up, create a status page, give it a name and a slug, then add page componen -
- -A public status page is customer-facing and indexed — it deflects support tickets and answers vendor questionnaires. An internal or private status page is for staff, contractors, or a single client, and access is controlled with password protection, magic link authentication, or an IP allowlist. You can run both from the same workspace. - -
-
The free Hobby plan includes one status page with three components and no credit card. Paid plans start at $30/month for Starter (one status page, 20 components, custom domain, subscribers), $100/month for Pro, and $500/month for Scale. Annual billing gives you two months free. Extra status pages are $20/month each. @@ -219,4 +213,3 @@ The free Hobby plan includes one status page with three components and no credit The Slack agent lets you manage your status page directly from Slack using natural language. @mention @openstatus in any channel or thread to create incidents, post updates, and resolve reports — without leaving Slack. No slash commands required.
- diff --git a/apps/web/src/content/pages/product/uptime-monitoring.mdx b/apps/web/src/content/pages/product/uptime-monitoring.mdx index e268b0a3..670e2f25 100644 --- a/apps/web/src/content/pages/product/uptime-monitoring.mdx +++ b/apps/web/src/content/pages/product/uptime-monitoring.mdx @@ -1,11 +1,11 @@ --- title: "Uptime Monitoring" publishedAt: "2025-11-10" -updatedAt: "2026-08-26" +updatedAt: "2026-09-17" seo: - title: "API & Service Uptime Monitoring for Developers" - description: "Monitor API and service uptime from 28 regions. Instant alerts via Slack, Discord, PagerDuty and email. Monitoring as code with YAML, CLI and Terraform." -hero: "Uptime monitoring for websites, APIs and services" + title: "Open Source Uptime Monitoring — Free, 28 Regions, Alerts in Seconds" + description: "Free & open source uptime monitoring for websites and APIs. Checks from 28 regions every 30s, alerts to Slack, Discord, PagerDuty and email. Monitoring as code with Terraform." +hero: "Open source uptime monitoring for websites, APIs and services" author: "Thibault Le Ouay Ducasse" description: "Monitor your websites, APIs and services from 28 regions. Get alerted the moment a check fails an assertion or exceeds your threshold." category: "Product" @@ -33,9 +33,9 @@ faq: - question: "How do thresholds and assertions work together?" answer: "Assertions validate response correctness (status code, headers, body content) while thresholds define performance boundaries (degraded latency, timeout). Both can trigger alerts - assertions catch functional failures, thresholds catch performance degradation." - question: "What types of API endpoints can I monitor?" - answer: "You can monitor any HTTP/HTTPS endpoint including REST APIs, GraphQL APIs, webhooks, and third-party service endpoints. Openstatus supports all HTTP methods (GET, POST, PUT, DELETE, etc.) and custom headers for authentication." - - question: "Should I use YAML with CLI or Terraform for monitoring as code?" - answer: "Use YAML + CLI for simplicity and if you're not already using Terraform. It's lightweight and easy to get started. Choose Terraform if you're managing infrastructure as code and want to integrate monitoring into your existing Terraform workflows for unified state management." + answer: "You can monitor any HTTP/HTTPS endpoint including REST APIs, GraphQL APIs, webhooks, and third-party service endpoints. openstatus supports all HTTP methods (GET, POST, PUT, DELETE, etc.) and custom headers for authentication." + - question: "Can I manage monitors with Terraform?" + answer: "Yes. The openstatus Terraform provider manages HTTP, TCP, DNS and ICMP monitors — with headers, assertions and thresholds — plus notification channels, status pages and private locations. Monitors live in HCL next to the rest of your infrastructure and go through the same plan-and-apply lifecycle. Run `openstatus terraform generate` to bootstrap an HCL file from an existing workspace." - question: "Can I run private monitoring locations in different networks?" answer: "Yes, you can deploy as many private location probes as needed across different networks, VPCs, or regions. Each gets its own API key and appears as a separate monitoring region in your dashboard. The Docker image is only 8.5MB and supports ARM64 and AMD64." --- @@ -56,9 +56,9 @@ That external vantage point is the whole point. If your service runs on the same -Free to start. Paid plans from $30/mo. +Free to start. Paid plans from $30/mo. Open source and self-hostable. -## Trusted by teams who ship transparency +## Trusted by teams who ship reliability @@ -134,7 +134,7 @@ You should avoid monitoring your services from the same cloud providers you use ### API Monitoring -Monitor any HTTP/HTTPS endpoint including REST APIs, GraphQL APIs, webhooks, and third-party service endpoints. Openstatus supports all HTTP methods and custom headers for authentication. +Monitor any HTTP/HTTPS endpoint including REST APIs, GraphQL APIs, webhooks, and third-party service endpoints. openstatus supports all HTTP methods and custom headers for authentication. #### Assertions @@ -165,42 +165,39 @@ Automatically update your status page based on your uptime monitoring results. P ### Monitoring as Code -The best way to **version** your monitor changes is via the openstatus CLI and its **`YAML` config**. Additionally, we provide a [Terraform Provider](https://registry.terraform.io/providers/openstatusHQ/openstatus/latest). - -```yaml -# yaml-language-server: $schema=https://www.openstatus.dev/schema.json -uptime-monitor: - name: "Graphql" - description: "GitHub GraphQL API" - frequency: "10m" - active: true - regions: - - iad - - ams - - syd - - jnb - - gru - retry: 3 - kind: http - request: - url: https://api.github.com/graphql - method: POST - headers: - User-Agent: OpenStatus - Authorization: Bearer YOUR_TOKEN_HERE - body: | - { - "query": "query { viewer { login }}" - } +Declare your monitors in HCL with the [openstatus Terraform provider](https://registry.terraform.io/providers/openstatusHQ/openstatus/latest) and roll them out in the same plan-and-apply lifecycle as the rest of your infrastructure. Monitor changes get code-reviewed in the PR that ships the service they watch. + +```terraform +resource "openstatus_http_monitor" "api" { + name = "API Health Check" + url = "https://api.example.com/health" + periodicity = "1m" + active = true + regions = ["fly-iad", "fly-ams", "fly-syd"] + + headers { + key = "Authorization" + value = "Bearer ${var.api_token}" + } + + status_code_assertions { + target = 200 + comparator = "eq" + } +} ``` -Once set, apply your changes via [CLI](https://www.openstatus.dev/docs/tutorial/get-started-with-openstatus-cli/): - ```bash -openstatus monitors apply +terraform init +terraform plan +terraform apply ``` -Check our [GitHub repository](https://github.com/openstatusHQ/cli-template) to see the `YAML` templates of how to monitor **MCP**, **GraphQL**,... endpoints. We also provide a simple [GitHub Action](https://github.com/marketplace/actions/openstatus-synthetics-ci) to run it in your **CI/CD**. +Already have monitors in the dashboard? Run `openstatus terraform generate` to bootstrap an HCL file from your existing workspace. Read the [Terraform reference](/docs/reference/terraform) for every resource and argument. + +### Open Source & Self-Hostable + +openstatus is open source under AGPL-3.0. Run the hosted version, or [self-host the full stack](/docs/guides/self-hosting-openstatus) on your own infrastructure with Docker. If you are coming from Uptime Kuma, read [how openstatus compares as a hosted alternative](/guides/hosted-uptime-kuma-alternative). ### Private Locations @@ -306,13 +303,13 @@ Assertions validate response correctness (status code, headers, body content) wh
-You can monitor any HTTP/HTTPS endpoint including REST APIs, GraphQL APIs, webhooks, and third-party service endpoints. Openstatus supports all HTTP methods (GET, POST, PUT, DELETE, etc.) and custom headers for authentication. +You can monitor any HTTP/HTTPS endpoint including REST APIs, GraphQL APIs, webhooks, and third-party service endpoints. openstatus supports all HTTP methods (GET, POST, PUT, DELETE, etc.) and custom headers for authentication.
-
+
-Use YAML + CLI for simplicity and if you're not already using Terraform. It's lightweight and easy to get started. Choose Terraform if you're managing infrastructure as code and want to integrate monitoring into your existing Terraform workflows for unified state management. +Yes. The openstatus Terraform provider manages HTTP, TCP, DNS and ICMP monitors — with headers, assertions and thresholds — plus notification channels, status pages and private locations. Monitors live in HCL next to the rest of your infrastructure and go through the same plan-and-apply lifecycle. Run `openstatus terraform generate` to bootstrap an HCL file from an existing workspace.
diff --git a/apps/web/src/lib/metadata/shared-metadata.ts b/apps/web/src/lib/metadata/shared-metadata.ts index cc6ccc4c..e9ce803b 100644 --- a/apps/web/src/lib/metadata/shared-metadata.ts +++ b/apps/web/src/lib/metadata/shared-metadata.ts @@ -3,9 +3,10 @@ import type { Metadata } from "next"; import type { MDXData } from "../../content/utils"; export const TITLE = "openstatus"; -export const HOMEPAGE_TITLE = "Free & Open Source Status Page "; +export const HOMEPAGE_TITLE = + "Free & Open Source Status Page and Uptime Monitoring"; export const DESCRIPTION = - "Keep your status page in code. Let your agents update it. Open source, free to start, self-hostable."; + "Open source status page and uptime monitoring. Keep it in code, let your agents update it. Free to start, self-hostable."; export const OG_DESCRIPTION = "The status page for humans and agents"; -- 2.51.2