Documentation Index
Fetch the complete documentation index at: https://mintlify.com/upptime/upptime/llms.txt
Use this file to discover all available pages before exploring further.
Quickstart
Get your Upptime instance up and running in under 5 minutes. This guide will walk you through the fastest path to a working uptime monitor.This quickstart uses the Upptime template repository. For a more detailed setup, see the Installation guide.
Create repository from template
Go to the Upptime template repository and click “Use this template” to create a new repository in your GitHub account.Choose a repository name (e.g.,
upptime or status) and set it to Public (required for free GitHub Actions minutes and Pages).Enable GitHub Actions
After creating your repository, GitHub Actions should be enabled by default. Verify by going to the Actions tab in your repository.If Actions are disabled, enable them in your repository settings under Settings > Actions > General.
Configure your sites
Edit the Then add your sites to monitor:Commit this change directly to the main branch.
.upptimerc.yml file in your repository to add the websites you want to monitor.Update the owner and repo fields with your GitHub username and repository name:Create a GitHub Personal Access Token
Upptime needs a Personal Access Token (PAT) to create issues and update your repository.
- Go to GitHub Settings > Developer settings > Personal access tokens > Tokens (classic)
- Click “Generate new token (classic)”
- Give it a descriptive name like “Upptime”
- Set expiration to “No expiration” (or your preferred duration)
- Select these scopes:
repo(Full control of private repositories)workflow(Update GitHub Action workflows)
- Click “Generate token” and copy the token
Add the token to repository secrets
Store your Personal Access Token as a repository secret:
- Go to your repository Settings > Secrets and variables > Actions
- Click “New repository secret”
- Name it
GH_PAT - Paste your Personal Access Token as the value
- Click “Add secret”
Enable GitHub Pages
Enable GitHub Pages to host your status page:
- Go to Settings > Pages
- Under “Source”, select “Deploy from a branch”
- Under “Branch”, select
gh-pagesand/ (root) - Click “Save”
The
gh-pages branch will be created automatically when the setup workflow runs.Trigger the setup workflow
The setup workflow runs automatically when you edit
.upptimerc.yml, but you can also trigger it manually:- Go to the Actions tab
- Click on “Setup CI” workflow
- Click “Run workflow”
- Select the main branch and click “Run workflow”
- Generate all necessary GitHub Actions workflows
- Create initial response time data
- Build and deploy your status page to GitHub Pages
- Update the README with your status summary
What happens next?
Once setup is complete, Upptime runs automatically:- Every 5 minutes: The Uptime CI workflow checks all your sites
- Every 6 hours: Response times are recorded and committed
- Daily: Graphs are regenerated with the latest data
- When downtime occurs: A GitHub Issue is automatically opened
- When service recovers: The issue is automatically closed
Customize your status page
You can customize the status page by editing.upptimerc.yml:
After editing
.upptimerc.yml, the Setup CI workflow runs automatically to regenerate your workflows and status page.Add a custom domain
To use a custom domain likestatus.mywebsite.com:
-
Add the
cnamefield to your.upptimerc.yml: -
Add a CNAME record in your DNS settings pointing to:
- Commit the changes and wait for the Setup CI workflow to complete
Next steps
- Configure advanced monitoring options
- Set up notifications
- Customize your status page
- Learn about incident tracking
Troubleshooting
Setup workflow failed?- Verify your
GH_PATsecret is set correctly - Check that the token has
repoandworkflowscopes - Ensure the repository is public or has sufficient Actions minutes
- Wait 5-10 minutes after the first setup workflow completes
- Check that GitHub Pages is enabled and set to the
gh-pagesbranch - Look for errors in the “Static Site CI” workflow logs
- Verify the URLs in
.upptimerc.ymlare correct and accessible - Check if the sites require authentication or have CORS restrictions
- Review the workflow logs in the Actions tab for specific errors