Content / CLI

Submit content reference analysis

Validate and save caller-authored reference analysis using the source SHA-256 hash. No hosted AI call. Extract an unchanged opening hook; do not infer spoken hooks.

pipeline submit-content-reference-analysisDeterministic operation

Parameters

workspaceIdOptional · string
See the input schema for this field.
postIdRequired · string
See the input schema for this field.
contentHashRequired · string
See the input schema for this field.
analysisRequired · object
See the input schema for this field.
Request example
pipeline submit-content-reference-analysis \
  --post-id "00000000-0000-4000-8000-000000000001" \
  --content-hash "5cc4476591bb3df248323b120445833dff9a4a11e16f2177ec6eca6eedf8f0c8" \
  --analysis-json '{"postType":"thought_leadership","hookStyle":"question","bodyStructure":"insight_framework","ctaStyle":"question","whyItWorks":"A specific opening question gives the reader a clear problem to consider.","tags":["writing"],"reference":{"exactHook":"What changes when you write for one reader?","topic":"Writing for a specific reader","pattern":["Open with a focused question"],"ideaSeed":"Explain how choosing one reader changes a draft."}}'
Full input schema
Input schema
{
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "workspaceId": {
      "type": "string",
      "format": "uuid"
    },
    "postId": {
      "type": "string",
      "format": "uuid"
    },
    "contentHash": {
      "type": "string"
    },
    "analysis": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "postType": {
          "type": "string",
          "enum": [
            "thought_leadership",
            "lead_magnet",
            "case_study",
            "personal_story"
          ]
        },
        "hookStyle": {
          "type": "string",
          "enum": [
            "question",
            "contrarian",
            "story",
            "statistic",
            "bold_claim",
            "curiosity_gap"
          ]
        },
        "bodyStructure": {
          "type": "string",
          "enum": [
            "insight_framework",
            "problem_solution",
            "before_after",
            "story_lesson",
            "list",
            "comparison"
          ]
        },
        "ctaStyle": {
          "type": "string",
          "enum": [
            "question",
            "engagement",
            "lead_capture",
            "soft_sell",
            "none"
          ]
        },
        "whyItWorks": {
          "type": "string"
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "reference": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "exactHook": {
              "type": "string"
            },
            "topic": {
              "type": "string"
            },
            "pattern": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "minItems": 1,
              "maxItems": 10
            },
            "ideaSeed": {
              "type": "string"
            }
          },
          "required": [
            "exactHook",
            "topic",
            "pattern",
            "ideaSeed"
          ]
        }
      },
      "required": [
        "postType",
        "hookStyle",
        "bodyStructure",
        "ctaStyle",
        "whyItWorks",
        "tags",
        "reference"
      ]
    }
  },
  "required": [
    "postId",
    "contentHash",
    "analysis"
  ]
}
See this operation inMCP REST API TypeScript SDK
CLI guide | Pipeline v2 preview