---
title: "Check status of a website-creation workflow"
method: GET
path: "/v1/ai/workspace/website/status/{workflow_id}"
tags: ["Workflows"]
---

# Check status of a website-creation workflow

`GET /v1/ai/workspace/website/status/{workflow_id}`

## Request

- Base URL: `https://api.lindo.ai`
- URL: `https://api.lindo.ai/v1/ai/workspace/website/status/{workflow_id}`
- Auth: HTTP bearer

Poll the status of a website-creation workflow started via `POST /v1/ai/workspace/website`. Aggregates the home page plus every additional page: `status` is only `complete` when every page has succeeded, `partial` if the website exists but one or more pages failed.

## Path parameters

- `workflow_id` string, required: The workflow_id returned by the create-website endpoint

## Response `200`

Status retrieved

- WebsiteWorkflowStatusResponse
  - `success` true, required: The status poll succeeded. This is independent of whether the workflow itself succeeded; check `status` for that.
  - `done` boolean, required: True once the workflow has reached a terminal state (`complete`, `partial`, or `errored`). While `false`, clients should poll again after `poll_after_ms`.
  - `status` 'scheduled' | 'running' | 'complete' | 'partial' | 'errored', required: - `scheduled`: queued to run in the future - `running`: currently executing - `complete`: fully finished with no errors - `partial`: finished, but some sub-steps (e.g. individual pages of a website) failed - `errored`: the workflow itself failed
  - `workflow_id` string, required: The workflow_id you polled
  - `message` string, required: Human-readable, safe-to-quote status message. Agents can surface this directly to end users.
  - `poll_after_ms` number: When `done` is false, suggested delay before the next status check, in milliseconds. Absent when `done` is true.
  - `result` WebsiteWorkflowResult: Present as soon as the website record is created. While running, `pages_summary` and `pages` track per-page progress. When `status` is `complete`, every page succeeded; when `partial`, the website exists but one or more additional pages failed.
    - `website_id` string, required: ID of the website
    - `website_name` string: Business name of the website
    - `domain` string: Canonical URL where the website is reachable. Returns the verified custom domain if one has been connected, otherwise the Lindo preview URL.
    - `home_page_id` string: ID of the website's home page (available once published)
    - `pages_summary` object, required: Aggregate progress across the home page and all additional pages.
      - `total` number, required: Total pages being generated, including the home page
      - `complete` number, required: Pages successfully published
      - `running` number, required: Pages still being generated
      - `errored` number, required: Pages that failed to generate
    - `pages` WebsitePageEntry[], required: Every page being generated for the website, including the home page.
      - `page_id` string: ID of the published page (absent while running or if errored before publish)
      - `slug` string, required: URL slug of the page. Empty string for the home page.
      - `path` string, required: URL path of the page. '/' for the home page.
      - `status` 'running' | 'complete' | 'errored', required: Status of this individual page
      - `error_message` string: Error message (only when `status` is `errored`)
  - `error` string: When `status` is `errored`, a machine-readable error message

## Other responses

- `400`: workflow_id exists but isn't a website workflow
- `401`: Unauthorized - invalid or missing API key
- `404`: Workflow not found
- `500`: Internal server error

---

[API](https://skmtc.dev/lindo/apis/lindo-unified-api.md) · [All operations](https://skmtc.dev/lindo/apis/lindo-unified-api/llms.txt) · [OpenAPI document](https://skmtc.dev/lindo/apis/lindo-unified-api/revisions/2672f34525a4?raw)
