GEO Writer

Create a GEO Writer task

Changed on

Creates a GEO Writer task, processed asynchronously: poll GET /intelligence_tasks/{id} until status is completed. Prompt-based mode takes prompt_id; agentic mode takes custom_topic and/or user_instructions. task_type product_listing is API-only and serves store apps: send a product object (title required) and optionally prompt_ids, and the completed result_data holds ready-to-apply product page copy. Edit and revert it with PATCH /intelligence_tasks/{id} and POST /intelligence_tasks/{id}/revert. Requires a read_write scope API key.

post/intelligence_tasks

Request

  • Base URL
    https://api.llmpulse.ai/api/v1
  • URL
    https://api.llmpulse.ai/api/v1/intelligence_tasks
  • Auth
    API key in header Authorization

Request body

project_idinteger required
task_type'brief' | 'create' | 'update' | 'pr_insights' | 'custom' | 'product_listing' required

product_listing is API-only: it needs product and returns ready-to-apply product page copy

prompt_idinteger nullable

Not used by product_listing; send null or omit it

custom_topicstring
user_instructionsstring
output_language_codestring
existing_contentstring
existing_content_urlstring uri
prompt_idsinteger[]

product_listing only: up to 20 project prompts the copy should answer

Response

Created

idinteger
public_idstring
project_idinteger
task_typestring
titlestring
statusstring
prompt_idinteger nullable
prompt_textstring nullable
agentic_modeboolean
custom_topicstring nullable
user_instructionsstring nullable
output_language_codestring nullable
word_countinteger nullable
result_dataobject nullable

The generated content once status is completed; null before that. A product_listing task returns title, summary, description_html (p, ul, ol, li, strong, em, h3 and br only), faq (question and answer pairs), seo_title, seo_description, image_alts (image_id and alt), changes (field and reason) and labels

error_messagestring nullable
estimated_timestring nullable
created_atstring date-time
processed_atstring date-time nullable
manually_edited_atstring date-time nullable

When the content was last edited by hand; null while the output is as generated

edited_by_user_idinteger nullable

User behind the last manual edit; null for an unedited task or an edit made from an embedded portal

result_versionstring

Concurrency token for content edits: send it back as result_version on PATCH /intelligence_tasks/{id} so an edit composed before a regeneration is refused with ERR_STALE_CONTENT (409). It is "0" until the task first completes, then changes each time a generation or regeneration replaces result_data, never on a manual edit or a revert. Treat it as opaque text

request_idstring

Example response

{
  "result_version": "1775642580"
}

Changes