Content generation
Use POST /generate-content when you want SEOforGPT to create a draft from project context. For expand-vs-new decisions, call content-suggestions first and pass its routing metadata into generation. Blog requests can return data.status: processing; poll GET /reports/:id until ready.
POST /generate-content
Body: projectId, platform (blog, linkedin, thread), topic, plus optional metadata and promptType. For update briefs, include metadata.content_action=optimize_existing_url with target_url and target_title from content-suggestions.
curl --request POST \
--url https://www.seoforgpt.io/api/v1/generate-content \
--header "Authorization: Bearer $SEOFORGPT_TOKEN" \
--header "Content-Type: application/json" \
--data '{"projectId":"<uuid>","platform":"blog","topic":"How to measure AI search visibility"}'- The response includes data.id for GET /reports/:id and may include data.status: processing for blog drafts.
- It also returns context_quality and context_message so you know whether the draft used completed website analysis.