Get publish status
Changed onPlan: Business or higher
Scope: projects:read
Returns the status of an async publish started with POST /v1/projects/{project_id}/publish, keyed by the id it returned. Poll until deployment succeeds (url is set) or fails (error_message explains the failure). Poll no more than once every 2 seconds and honor Retry-After on 429 responses.
On failure, use error_class to choose the next action.
| error_class | Action |
|---|---|
| transient | Retry publishing with backoff and a bounded retry limit. |
| code | Fix the app code or SQL, then publish again. |
| configuration | Fix configuration committed in the project, such as an oversized file, then publish again. |
| data | Review the migration against production data. Obtain human approval before changing data, then publish again. |
| integration | Repair external credentials, quota, or the connected service, then publish again. |
| policy | Ask the workspace administrator to lift the blocking policy or approve the publish. |
| internal | Contact Lovable support with the deployment ID. |
If error_class is null or unrecognized, show error_message and contact support instead of automatically retrying.
Request
- Base URLhttps://api.lovable.dev
- Auth
- API key in header Lovable-API-Key
- or HTTP bearer
Path parameters
Project ID.
Deployment ID returned by POST /v1/projects/{project_id}/publish.
Headers
Stable API version to serve, as a YYYY-MM-DD date. Omit for the oldest supported stable version, currently 2026-09-11.
Comma-separated beta revision strings to enable on top of the stable version.
Response
OK
Example response
{
"error_class": "configuration",
"error_message": "Missing environment variable VITE_API_URL",
"id": "c3d4e5f6-a7b8-9012-cdef-345678901234",
"status": "completed",
"url": "https://acme-landing-page.lovable.app"
}Changes
- info
for the
headerrequest parameterLovable-Version, the format was generalized fromdateto no format - info
added the non-success response with the status
- info
- info
added the non-success response with the status
- info