Use Private Locations to run checks from your own infrastructure, VPCs, or isolated networks. With a Private Location, you can monitor internal services and applications not accessible from the public internet.
Prerequisites
Before creating private locations, ensure you have:
An initialized Checkly CLI project
Access to the infrastructure where you’ll deploy the private location agent
Network connectivity from your infrastructure to Checkly’s API endpoints
Understanding of your internal network topology and security requirements
Administrative privileges to deploy and run the private location agent
For additional setup information, see CLI overview.
import { PrivateLocation } from "checkly/constructs"const myPrivateLocation = new PrivateLocation("private-location-1", { name: "My Private Location", icon: "server", slugName: "my-private-location"})
Unique slug identifier for your private location. This must be unique across your entire Checkly account and is used for referencing the location.Usage:
new PrivateLocation("my-location", { name: "My Location", slugName: "my-unique-location-slug",})
// Too generic or likely to changenew PrivateLocation("location-1", { name: "Location 1", slugName: "location-1" // Too generic})new PrivateLocation("temp-loc", { name: "Temporary Location", slugName: "temp-location-2024" // Date-based, will become outdated})
The slugName must be unique across your entire Checkly account and cannot be changed after creation. Choose descriptive, stable names.
Proxy URL for outgoing HTTP calls from this private location. Use when your infrastructure requires all external traffic to go through a corporate proxy.Usage:
new PrivateLocation('corporate-location', { name: 'Corporate Network', slugName: 'corporate-network', proxyUrl: 'http://proxy.company.local:8080'})
const corporateLocation = new PrivateLocation("corporate-with-proxy", { name: "Corporate Network with Proxy", icon: "shield-lock", slugName: "corporate-with-proxy", proxyUrl: "http://proxy.company.local:8080"})// All API Check HTTP calls from this location will go through the proxynew ApiCheck("proxied-external-check", { name: "External API via Corporate Proxy", privateLocations: [corporateLocation], request: { method: "GET", url: "https://api.external-service.com/health" }})