---
title: "Create blog with AI prompt"
method: POST
path: "/v1/ai/workspace/website/{website_id}/blog"
tags: ["Workflows"]
---

# Create blog with AI prompt

`POST /v1/ai/workspace/website/{website_id}/blog`

## Request

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

Starts an AI-driven blog creation workflow on an existing website. Requires website ownership verification. Returns a `workflow_id` you can poll via `GET /v1/ai/workspace/blog/status/{workflow_id}`.

## Path parameters

- `website_id` string, required: The ID of the website to create the blog on

## Request body

- CreateBlogWorkflowRequest
  - `language` string: Fallback output language (name or language code). An explicit language in the prompt takes precedence; otherwise defaults to the website language.
  - `prompt` string, required: AI prompt describing the blog post to create. Must be at least 10 characters.
  - `schedule_at` string: Optional ISO 8601 date to schedule the workflow for future execution.

## Response `200`

Workflow started successfully

- WorkflowResponse
  - `success` true, required: Indicates the workflow was started successfully
  - `result` object, required
    - `workflow_id` string, required: Unique identifier for this workflow. Pass it back to the matching status endpoint (GET /v1/ai/workspace/{website|page|blog}/status/{workflow_id}) to poll progress.
    - `website_id` string: Preallocated website ID. Returned by create-website so callers can reference the website while generation runs.

## Other responses

- `400`: Invalid request - validation error
- `401`: Unauthorized - invalid or missing API key
- `403`: Forbidden - website does not belong to workspace
- `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)
