Projects
Create a project, what the base URL imposes on monitored URLs, pausing, labels, deletion and quotas.
Updated on 25 September 2026
On this page
- Create a project
- The base URL and host matching
- Pause
- Labels
- Delete a project
- Quotas
- Troubleshooting
- Why “Invalid URL” on an address that works in my browser?
- Why can't I add https://acme.fr when the project is on https://www.acme.fr?
- Why is my project no longer checked?
- Why “Project not found, or read-only”?
- Team
- The roles
- Invite someone
- Manage collaborators
- What triggers an alert
- Limits and plans
- Troubleshooting
A project stands for a site: its production domain. Everything else — monitored URLs, deploys, alerts, status page — lives inside it. This page says what a project is, what you can do with it, and what bounds it.
Create a project
From the project list, Create my first project or the create button. 2 fields, then a few questions:
- Project name: required, 120 characters at most. It appears in the alerts and on the status page.
- Base URL: the production address, in
httpsnecessarily (“The URL must be https.”), without credentials in the URL, and publicly reachable — a private or local address is refused. - What you want to monitor: “The pages that earn” (home, pricing, login, payment), “Scan the site and suggest” (PostShip goes through the pages and lets you pick from the list), “The home page, to start”, or “I pick my URLs myself”.
- How you deploy: Vercel, Netlify, Cloudflare Pages, GitHub Actions or other CI, otherwise — to take you to the right “connect” page.
The first check runs immediately. The step-by-step guide is on First project.
The base URL and host matching
Every monitored URL must belong to the base URL's host, or to a subdomain: with https://acme.fr, https://www.acme.fr/pricing and https://app.acme.fr/login pass, https://other-site.fr is refused with “The URL must belong to acme.fr or a subdomain (e.g. www.acme.fr).”
It's PostShip's anti-abuse check: without it, anyone could point a project at a domain they don't control and use it as a free scheduled HTTP client against that site. It replaces ownership verification by DNS record, heavier for the same result.
Mind the direction: if your base URL is https://www.acme.fr, then https://acme.fr is not a subdomain of www.acme.fr, and will be refused. Give the apex (https://acme.fr) as base URL and you cover everything.
The base URL is also what the detection without webhook downloads on every run, what the one-click integrations compare your Vercel, Netlify or Cloudflare sites with, and what the RUM beacon accepts as origin. It's edited in Project → Settings → General, Base URL field.
Pause
Project → Settings → General, Pause block, Pause the project button — or, from the project list, Pause in the project's menu. Automatic checks and alerts are suspended; “Check now” remains available. Fingerprint detection stops too. Re-enable checks (or Resume monitoring) starts everything again.
Pausing is made for a long, planned operation. For a short, regular window that must keep checking without alerting, prefer the maintenance.
Labels
With 3 projects you do without them; with 12, the project list becomes a directory and you look for “client A's”. Settings → General, Labels field: up to 8, comma-separated, 24 characters each. The input is normalised — lowercase, no accents, dashes instead of spaces — so that “Client A”, “client-a” and “clientA” don't make 3 labels. The project list then offers a filter by label; “No project with the label “…”” when nothing matches.
Delete a project
Settings → General, Danger zone, visible to the owner only: “Permanently deletes this project, its monitored URLs and all the associated check history.” Deletion is immediate and irreversible; deploys, incidents, captures and the status page go with it. A collaborator who tries sees “Only the owner can delete this project.” To delete the whole account, see Data & retention.
Quotas
| Discover | Pro | Pro Plus | |
|---|---|---|---|
| Projects | 1 | 3 | 10 |
| Monitored URLs, all projects together | 5 | 25 | 100 |
| Money journeys, each counting as one URL | 0 | 2 | 10 |
Quotas are counted on the projects you own: those you were invited to don't count. A reached limit shows a message naming your plan, the next plan, what it changes on that limit and its price; the full table is on Plans.
Troubleshooting
Why “Invalid URL” on an address that works in my browser?
The base URL must be https, without user:password@, on a public host. An http address, a localhost, a private IP or a host that doesn't resolve are refused.
Why can't I add https://acme.fr when the project is on https://www.acme.fr?
Host matching accepts the base host and its subdomains, not its parents. Change the base URL to https://acme.fr.
Why is my project no longer checked?
It's paused: the project list and the General page say so. Otherwise, look at the project's Journal — a run in error is explained there — and your plan's interval on Billing: 5 minutes on Discover, 2 on Pro, 1 on Pro Plus, with a probe every 30 seconds.
Why “Project not found, or read-only”?
You are a reader on this project (team): a reader sees everything and changes nothing.
Team
Available on the Pro Plus plan.
Invite collaborators to a project, what each role can do, and what stays with the owner.
A project belongs to one person: the one who pays. On Pro Plus, they can invite collaborators to it, project by project, with no seats to buy. A collaborator sees the project in their sidebar and works on it according to their role; they have access neither to the billing nor to the owner's other projects. The invitation waits for an answer: nobody enters a project without having accepted.
The roles
| Owner | Editor (“Edit”) | Reader (“Read-only”) | |
|---|---|---|---|
| See the Overview, Deploys, incidents, Health, Performance, Journal | Yes | Yes | Yes |
| Add, edit, delete monitored URLs | Yes | Yes | No |
| Set alerts, rules, webhooks and integrations | Yes | Yes | No |
| Rename the project, change the base URL, pause | Yes | Yes | No |
| Publish and edit the status page and its incidents | Yes | Yes | No |
| Invite, remove, change collaborators' role | Yes | No | No |
| Delete the project | Yes | No | No |
| Billing and plan | Yes | No | No |
A reader sees everything and changes nothing: it's what you give a client, an intern, the agency across the street. The gap between roles is held by the database, not by the interface: hiding a button has never prevented anyone from calling the action behind it. An action refused to a reader answers “Project not found, or read-only.”
Quotas — projects, URLs, journeys — are the owner's, and theirs alone: a Discover collaborator invited to 3 projects of a Pro Plus client keeps their own free project.
Invite someone
- Open Project → Settings → Team (tab visible to the owner only).
- Enter the Email address. The person doesn't need to already have a PostShip account.
- Choose what they can do: Edit (“Add URLs, change alerts and webhooks”) or Read-only (“Sees everything, changes nothing”). Edit is the default.
- Add A word to say why, optional, 280 characters: “X invited you” without context reads like spam.
- Send the invitation.
The invitee receives an email “you@example.com invites you to Acme” describing the role. If they have an account, they find the invitation as a banner on their projects list with Accept and Decline; otherwise, they create an account with the same address and the banner awaits them. A refusal is remembered: the owner sees it and doesn't re-invite the following week without knowing.
You can't invite yourself, nor invite the same person twice (“This person is already a collaborator on the project.”).
Manage collaborators
The Team tab lists the active members, the pending invitations and the refusals. Each row's menu offers:
- Allow edits or Switch to read-only — the role change is immediate.
- Resend the invitation — as long as it's pending. “The email couldn't be resent.” flags a sending error, not a dead invitation.
- Remove from the project (“immediately loses access to this project”) or Withdraw the invitation (“will no longer be able to answer this invitation. You can send a new one.”).
A collaborator can leave on their own: Project → Settings → General, “You are a collaborator on this project” block, Leave the project button. The same block reminds that “the owner keeps control of the billing and the deletion of the project”.
Every accepted member carries their presence, set on their profile (Account → Profile → Presence): available, on call, or away until a date. An away member can ask for their alert emails to go to the workspace's other accepted members meanwhile — the owner stays a recipient if there is nobody else. The profile also carries the alert signature: the line that closes alert emails and the monthly report.
What triggers an alert
Email alerts remain the owner's: their Account → Notifications only concern them. Collaborators are told through the project's channels — Discord, Slack (channels) — and by the escalation if it's set. A collaborator who wants to receive the alert emails must be in the channel, not in the member list.
Limits and plans
| Discover | Pro | Pro Plus | |
|---|---|---|---|
| Collaborators per project | No | No | Yes |
| Number of collaborators | — | — | No declared limit |
| Seats to pay | — | — | None |
Below Pro Plus, the tab folds into a summary and the button to the plan that opens it, and the invitation action answers “Members are only available with the Pro Plus plan on this workspace.” A project whose owner drops below Pro Plus keeps its members in the database, but the tab folds. See the plans.
Troubleshooting
Why doesn't my colleague see the project?
They haven't accepted yet. The invitation is pending in their banner on /app, or the email went to their spam: Resend the invitation. If they signed up with another address than the one invited, the invitation doesn't attach — withdraw it and invite the right address.
Why “Project not found, or read-only”?
You are a reader on this project. Ask the owner to switch you to Edit.
Why doesn't the Team tab appear?
You aren't the owner, or the owner isn't on Pro Plus. Only the owner manages members, whatever your role.