---
title: "Programmatic SEO template planner"
method: POST
path: "/content/programmatic-template"
---

# Programmatic SEO template planner

`POST /content/programmatic-template`

## Request

- Base URL: `https://www.agentseo.dev/api/v1`
- URL: `https://www.agentseo.dev/api/v1/content/programmatic-template`
- Auth: API key in header `x-api-key`

Plan safe programmatic SEO templates before building pages at scale. Returns readiness score, scale risk, launch decision, template sections, uniqueness rules, indexation gates, internal-link architecture, schema recommendations, launch plan, agent_workflow, and markdown_summary. Costs 2 credits and does not call a paid search API.

## Query parameters

- `sync` boolean

## Headers

- `x-project-id` string
- `x-workflow-id` string

## Request body

- ProgrammaticTemplateParams
  - `target` string: Optional target brand, domain, or product.
  - `playbook` 'templates' | 'curation' | 'conversions' | 'comparisons' | 'examples' | 'locations' | 'personas' | 'integrations' | 'glossary' | 'translations' | 'directory' | 'profiles' | 'custom'
  - `page_goal` 'traffic' | 'lead_generation' | 'trial_signup' | 'demo_request' | 'purchase' | 'authority' | 'support'
  - `keyword_pattern` string, required
  - `url_pattern` string, required
  - `audience` string
  - `page_count_estimate` integer
  - `data_sources` object[], required
    - `name` string, required
    - `type` 'first_party' | 'product' | 'user_generated' | 'licensed' | 'public' | 'manual' | 'unknown'
    - `freshness` 'real_time' | 'daily' | 'weekly' | 'monthly' | 'quarterly' | 'static' | 'unknown'
    - `fields` string[]
  - `variables` string[], required
  - `unique_fields` string[]
  - `sample_records` object[]
  - `competitors` string[]
  - `conversion_cta` string
  - `publishing_cadence` 'pilot' | 'weekly_batch' | 'monthly_batch' | 'bulk_import'
  - `include_schema` boolean
  - `include_internal_linking` boolean

## Response `200`

Completed programmatic SEO template workflow with agent_workflow

- ProgrammaticTemplateResponse
  - `target` string, nullable
  - `programmatic_template_plan` object
  - `agent_workflow` AgentWorkflow
    - `summary` string
    - `decision` 'ready' | 'act_now' | 'monitor' | 'blocker'
    - `confidence` number
    - `recommended_actions` AgentWorkflowAction[]
      - `priority` 'critical' | 'high' | 'medium' | 'low'
      - `action` string
      - `why` string
    - `evidence` AgentWorkflowEvidence[]
      - `finding` string
      - `detail` string
      - `severity` 'critical' | 'high' | 'medium' | 'low'
    - `limitations` string[]
    - `next_calls` AgentWorkflowNextCall[]
      - `endpoint` string
      - `reason` string
  - `markdown_summary` string

## Other responses

- `202`: Job queued or still processing

---

[API](https://skmtc.dev/agentseo/apis/agentseo-api.md) · [All operations](https://skmtc.dev/agentseo/apis/agentseo-api/llms.txt) · [OpenAPI document](https://skmtc.dev/agentseo/apis/agentseo-api/revisions/53a62da6f92c?raw)
