Skip to main content
content_tools:write The content_tools:write scope allows you to generate supplementary data for content — SEO metadata, structured data schemas, social media snippets, page slugs, post tags, and search intent analysis. You can generate all tools at once or target a specific tool.

Endpoints

MethodPathDescription
POST/public/content/{id}/content-toolsGenerate all or selected content tools
POST/public/content/{id}/content-tools/{tool}Generate a single content tool

Available content tools

ToolDescription
seo-metadataPage title, meta description, and keywords
schemasJSON-LD structured data (Article, Author, Organization, FAQ, etc.)
social-snippetsFacebook, Twitter, Instagram, and Google Business snippets
page-slugsSEO-friendly URL slugs
post-tagsContent categorization tags
search-intentSearch intent analysis

Generate content tools

POST /public/content/{id}/content-tools
Triggers generation for all content tools or a specified subset. Generation runs asynchronously. Use the Get components endpoint (requires content:read) to check when each component is ready, or subscribe to the content_tools.completed webhook event.

Path parameters

NameTypeRequiredDescription
idstring (UUID)YesArticle ID

Request body (optional)

FieldTypeRequiredDescription
toolsarray of stringsNoSpecific tools to generate. If omitted, default tools are generated

Example — Generate all tools

curl -X POST https://api.app.hrizn.io/v1/public/content/d4e5f6a7-b8c9-0123-def0-456789abcdef/content-tools \
  -H "X-API-Key: hzk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "tools": ["seo-metadata", "schemas", "social-snippets", "page-slugs", "post-tags", "search-intent"]
  }'

Response — 202 Accepted

{
  "data": {
    "article_id": "d4e5f6a7-b8c9-0123-def0-456789abcdef",
    "tools": [
      "seo-metadata",
      "schemas",
      "social-snippets",
      "page-slugs",
      "post-tags",
      "search-intent"
    ],
    "status": "generating"
  }
}

Example — Generate only SEO metadata and schemas

curl -X POST https://api.app.hrizn.io/v1/public/content/d4e5f6a7-b8c9-0123-def0-456789abcdef/content-tools \
  -H "X-API-Key: hzk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "tools": ["seo-metadata", "schemas"]
  }'

Response — 202 Accepted

{
  "data": {
    "article_id": "d4e5f6a7-b8c9-0123-def0-456789abcdef",
    "tools": ["seo-metadata", "schemas"],
    "status": "generating"
  }
}

Status codes

CodeDescription
202Content tool generation started
400Validation error (invalid tool name, article ID missing)
401Missing or invalid API key
403API key does not have content_tools:write scope
404Content not found or belongs to a different site
500Internal server error

Generate a single content tool

POST /public/content/{id}/content-tools/{tool}
Shorthand endpoint to generate a single content tool by specifying it in the URL path.

Path parameters

NameTypeRequiredDescription
idstring (UUID)YesArticle ID
toolstringYesThe tool to generate (e.g. seo-metadata, schemas)

Example

curl -X POST https://api.app.hrizn.io/v1/public/content/d4e5f6a7-b8c9-0123-def0-456789abcdef/content-tools/seo-metadata \
  -H "X-API-Key: hzk_your_key_here"

Response — 202 Accepted

{
  "data": {
    "article_id": "d4e5f6a7-b8c9-0123-def0-456789abcdef",
    "tools": ["seo-metadata"],
    "status": "generating"
  }
}

Retrieving generated content tools

Once generated, retrieve the components using the content:read scope:
curl https://api.app.hrizn.io/v1/public/content/d4e5f6a7-b8c9-0123-def0-456789abcdef/components/SeoMetadata \
  -H "X-API-Key: hzk_your_key_here"
{
  "data": {
    "id": "comp-002-uuid",
    "type": "seoMetadata",
    "content": {
      "title": "2026 Honda Civic vs Toyota Corolla | Full Comparison",
      "description": "Compare the 2026 Honda Civic and Toyota Corolla on price, fuel economy, and features.",
      "keywords": ["honda civic", "toyota corolla", "2026", "comparison", "compact sedan"]
    },
    "metadata": {},
    "status": "complete",
    "created_at": "2026-02-01T15:25:00Z",
    "updated_at": "2026-02-01T15:26:00Z"
  }
}

Status codes

CodeDescription
202Content tool generation started
400Invalid tool name or content ID missing
401Missing or invalid API key
403API key does not have content_tools:write scope
404Content not found or belongs to a different site
500Internal server error

Error response — Missing scope

If your API key does not include content_tools:write, any request to these endpoints returns:
{
  "error": {
    "code": "forbidden",
    "message": "This API key requires one of the following scopes: content_tools:write",
    "details": {
      "required_scopes": ["content_tools:write"]
    }
  }
}
Last modified on March 1, 2026