Vercel integration
Monitor the production domains of your Vercel projects automatically, on every production deploy.
The Vercel integration creates an Uptimely Website monitor for each production domain of the Vercel projects you choose, and does it again whenever one of those projects ships a production deployment. You don't add the monitors by hand.
What it does
- When a production deployment of a watched Vercel project is live, Uptimely asks Vercel for that project's production domains and creates one Website monitor per domain in the Uptimely project you connected.
- Only verified production domains that don't redirect are monitored, up to 10
per Vercel project. The project's
*.vercel.appproduction alias is included when Vercel lists it. - Each monitor is named after the domain, probes
https://<domain>, and has a description that starts with "Created by the Vercel integration". - A domain is monitored once. A repeated deploy, a webhook that Vercel sends twice, or two deliveries at the same time create one monitor, not several.
- If you delete a monitor the integration created, it is not created again while the integration stays connected. The integration remembers the domain. After a disconnect and a new install, a deleted monitor can be created again.
- The integration also checks the watched projects right after you connect, so monitors exist before your next deploy.
Monitors are created through the same path as every other monitor, so the same rules apply. A domain is skipped, not created, when your plan's monitor limit is reached, when the project's probe budget is used up, or when the domain does not resolve to a public address.
Install
- Install the Uptimely integration from Vercel and choose the Vercel scope and projects it can see.
- Vercel sends you to the Connect Vercel page in Uptimely. Sign in or sign up if you aren't already.
- Choose the Uptimely project the monitors should go in. Only projects where you are an owner or admin, or have the settings:manage permission, are listed.
- Tick the Vercel projects to monitor and select Connect Vercel.
You can also start from Uptimely: open Settings → Vercel in a project and select Install from Vercel. An install started this way is tied to your signed-in session and browser.
The Connect Vercel page always shows which Vercel team or account the install belongs to and who installed it. If you did not start the install from Uptimely, you have to tick "I installed Uptimely on this Vercel account myself" before it connects. If someone sent you the link, close the page.
An install has to be connected within 30 minutes. A background job runs every 15 minutes, removes the integration from Vercel for installs that were never connected, and deletes them. If that happens, install again from Vercel.
What happens on a deploy
Uptimely acts on production deployment events from Vercel:
deployment.succeeded, deployment.ready and deployment.promoted. A promoted
deployment counts as production.
Preview deployments, and any other non-production target, are ignored. They create nothing and are never monitored. Events that aren't deployment, project removal or integration removal events are acknowledged and ignored.
Every event is checked against a signature from Vercel before anything is read. A call without a valid signature is rejected and creates nothing.
Manage the connection
Open Settings → Vercel in the Uptimely project. For each connected Vercel account you can:
- change which Vercel projects are watched. The next production deploy of each selected project is monitored.
- see the production domains already monitored, with a link to each monitor.
- disconnect.
Only project owners and admins, and members with the settings:manage permission, can connect, change or disconnect. Vercel's Configure button for the integration opens this page.
Disconnect and removal
Disconnect in Settings removes the integration from your Vercel account and stops new monitors being created. Monitors that were already created are kept. If Vercel doesn't confirm the removal, Uptimely still disconnects on its side and tells you to also remove the integration from your Vercel dashboard.
If you remove the integration in Vercel instead, Vercel sends
integration-configuration.removed and Uptimely deletes the installation. If you
delete a Vercel project, Vercel sends project.removed and Uptimely stops
watching that project. In both cases the monitors stay; they belong to you.
Deleting the Uptimely project the integration is connected to makes the installation inert.
Troubleshooting
- "This Vercel install is no longer waiting". The install expired after 30 minutes or was already connected. Install again from Vercel.
- "No project to connect Vercel to". You aren't an owner or admin of any Uptimely project, and no role you hold has the settings:manage permission. Create a project, then return to the Connect page within 30 minutes.
- "This Vercel install was not started from this Uptimely session". An install started from Uptimely has to finish in the same signed-in session and browser, within 30 minutes. Sign in and start the install again from Settings.
- "Vercel refused the install code". The one-time code expired or was already used. Start the install again from Vercel.
- Vercel's project list doesn't load. Reload the Connect page. If the list is empty, the installation can't see any Vercel project; give it access to a project in Vercel and install again.
- A domain has no monitor. It may be unverified, a redirect, over the limit of 10 per project, not public, or skipped because of your plan's monitor limit or the project's probe budget. You may also have deleted its monitor earlier.
- Monitors stopped appearing after a deploy. If Vercel rejects the stored token (for example the configuration was disabled), Uptimely reports the failure and can't read the project's domains until the configuration works again, for example after you reinstall.
- "The Vercel integration is not available on this server". The Uptimely deployment has no Vercel integration credentials configured.
The integration stores the access token Vercel issues encrypted.