Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.writerzroom.com/llms.txt

Use this file to discover all available pages before exploring further.

POST /generate starts a new content generation job. It accepts the selected template, selected style profile, generation mode, optional vertical, and structured user input required for that request. The response returns a request_id rather than a completed draft because generation runs asynchronously.

Generation Overview

Template
Defines the content structure.
Style
Controls tone, voice, and audience fit.
Input
Supplies topic, audience, and requirements.
Request ID
Tracks the job until completion.

Request

POST https://writerzroom.com/api/generate
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
{
  "template_id": "blog_article_generator",
  "style_profile_id": "general_blog",
  "generation_mode": "standard",
  "user_input": {
    "topic": "The future of AI in content marketing",
    "target_audience": "Marketing directors at B2B SaaS companies",
    "objective": "Educate on practical AI adoption strategies",
    "key_points": ["ROI measurement", "Team workflows", "Tool selection"]
  },
  "vertical_id": "saas_tech"
}

Response

{
  "request_id": "req_xyz789",
  "status": "pending",
  "created_at": "2026-03-10T20:00:00Z"
}

Core Request Fields

FieldRequiredDescription
template_idYesTemplate identifier, such as blog_article_generator
style_profile_idYesStyle profile identifier, such as general_blog
generation_modeRecommendedGeneration tier, such as quick, standard, or premium
user_inputYesStructured inputs required by the selected template
vertical_idOptionalDomain configuration, such as saas_tech, medical_ai, or political

Core Request Pattern

1

Choose a template identifier

Select the content structure that matches the output you want to create.
2

Choose a style profile identifier

Select the writing behavior that controls tone, voice, depth, and audience fit.
3

Provide required input fields

Add the required fields inside the user_input object.
4

Submit the request

Call POST /generate and store the returned request_id.
5

Poll until complete

Poll /generate/status/{request_id} until the request returns completed or failed.

Best Practice

Validate template and style identifiers before submitting large batches of requests. That reduces avoidable failures and makes automation more reliable.
Use /templates and /style-profiles to fetch valid identifiers programmatically rather than hardcoding them.

Check Generation Status

Poll the request until content completes or fails.

Endpoints Reference

Review available API endpoints.
Last modified on May 17, 2026