Skip to main content
Hrizn’s Content Intelligence system analyzes your dealership’s inventory, search performance, competitive landscape, and seasonal trends every night to surface actionable content recommendations. This guide explains how the system works and how to build automations around it using the API.

How it works

Every night at 4:00 AM ET, the content intelligence pipeline runs a multi-stage analysis:
  1. Snapshot — Aggregates your site’s inventory, articles, IdeaClouds, search console data, and analytics into a unified snapshot.
  2. Gap analysis — Compares your snapshot against network benchmarks and runs 20+ analyzers to identify content gaps.
  3. Scoring — Each recommendation is assigned a priority score (0-100) based on estimated traffic impact, competitive urgency, and timeliness.
  4. Deduplication — Semantic similarity and fingerprint matching prevent duplicate recommendations across nightly runs.
The pipeline produces up to 200 active recommendations per site, covering everything from missing model pages to seasonal events.

Recommendation types

Each recommendation has a suggestion_type that indicates the kind of content opportunity. Use the content intelligence types reference for a full list, or call GET /reference/content-intelligence-types to get types with their actionable_via field.

Inventory-driven

TypeDescriptionAction endpoint
missing_model_pageVehicle in inventory with no model research pagePOST /model-landing-pages
inventory_moveAging stock, high volume, or price segment opportunityPOST /model-landing-pages
model_year_transitionNew model year arriving, needs updated contentPOST /model-landing-pages
price_segment_contentPrice segment (e.g. “SUVs under $35k”) with no contentPOST /ideaclouds

Search and performance

TypeDescriptionAction endpoint
search_gapHigh-impression query with no matching contentPOST /ideaclouds
search_position_opportunityPage 2 query that could move to page 1POST /ideaclouds
keyword_cannibalizationMultiple pages competing for same keywordPOST /ideaclouds
content_refreshArticle declining in traffic, needs refreshPOST /content/{id}/generate
trending_topicTrending topic in search with no coveragePOST /ideaclouds

Competitive and network

TypeDescriptionAction endpoint
comparison_opportunityCross-shopped vehicles for comparison articlePOST /comparisons
network_benchmarkPeer dealerships have content this site is missingPOST /ideaclouds
network_winning_patternPattern performing well across peer networkPOST /ideaclouds

IdeaCloud and content

TypeDescriptionAction endpoint
ideacloud_contentIdeaCloud with unanswered questionsPOST /ideaclouds
ideacloud_questionSpecific uncovered question in an IdeaCloudPOST /ideaclouds
seasonal_contentSeasonal topic timely for current periodPOST /ideaclouds

Events

TypeDescriptionAction endpoint
oem_eventOEM campaign or incentive eventPOST /sales-events
seasonal_eventSeasonal sales event (e.g. year-end clearance)POST /sales-events
model_launch_eventNew model launch or reveal eventPOST /sales-events
community_eventCommunity engagement eventPOST /sales-events
local_eventLocal community eventPOST /sales-events

Safety and service

TypeDescriptionAction endpoint
recall_contentNHTSA recall for vehicle in inventoryPOST /ideaclouds
service_contentService interval milestone for popular modelPOST /ideaclouds

Priority scoring

Every recommendation includes a priority_score from 0 to 100:
TierScore rangeMeaning
High80-100High-impact opportunity — significant traffic or competitive gap
Medium60-79Moderate opportunity worth considering
Low0-59Lower urgency, still a valid gap
Use priority_min when listing recommendations to focus on the most impactful opportunities:
curl "https://api.app.hrizn.io/v1/public/content-intelligence?priority_min=80" \
  -H "X-API-Key: hzk_your_key_here"

Metadata

Each recommendation includes a metadata object with type-specific context. The shape varies by suggestion_type:

Vehicle metadata (model pages, comparisons, transitions)

{
  "make": "Toyota",
  "model": "Camry",
  "year": 2026,
  "inventory_count": 14,
  "estimated_monthly_searches": 8400
}

Comparison metadata

{
  "vehicles": [
    { "make": "Toyota", "model": "Camry", "year": 2026 },
    { "make": "Honda", "model": "Accord", "year": 2026 }
  ],
  "search_overlap_score": 0.78
}

Search metadata (search gaps, position opportunities)

{
  "query": "2026 toyota camry towing capacity",
  "impressions": 12500,
  "position": 14.2,
  "clicks": 340
}

Event metadata

{
  "eventName": "Year-End Clearance Sale",
  "category": "Sales Event",
  "startDate": "2026-12-26",
  "endDate": "2026-12-31",
  "description": "End of year clearance pricing on all remaining 2026 models"
}

Traffic estimate (when available)

{
  "trafficEstimate": {
    "estimatedMonthlyViews": 2400,
    "confidence": "high",
    "basis": "search_console_data"
  }
}

Recommendation lifecycle

Recommendations follow a four-state lifecycle:
StatusMeaning
activeSurfaced to the site, ready to be acted on or dismissed
dismissedReviewed and declined; stays in DB to prevent re-suggesting
acted_onContent was created; linked to the article via acted_on_article_id
expiredSuperseded by a newer batch or past the expires_at date
The nightly pipeline automatically expires old recommendations and generates fresh ones. Dismissed recommendations are kept so the pipeline can use fingerprint deduplication to avoid re-suggesting the same gap.

Full automation workflow

Here’s how to build an end-to-end automation that monitors recommendations and creates content:
1

Get the summary

Call GET /content-intelligence/summary to check how many active recommendations exist and which types are most common.
curl "https://api.app.hrizn.io/v1/public/content-intelligence/summary" \
  -H "X-API-Key: hzk_your_key_here"
2

List high-priority recommendations

Fetch the top recommendations, optionally filtering by type or article type.
curl "https://api.app.hrizn.io/v1/public/content-intelligence?priority_min=80&types=missing_model_page,comparison_opportunity" \
  -H "X-API-Key: hzk_your_key_here"
3

Create content from a recommendation

Use the suggestion_type and actionable_via fields to determine which endpoint to call. For example, for missing_model_page, extract the vehicle info from metadata and create a model landing page:
curl -X POST "https://api.app.hrizn.io/v1/public/model-landing-pages" \
  -H "X-API-Key: hzk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "year": 2026,
    "make": "Toyota",
    "model": "Camry"
  }'
The response includes the new article id.
4

Link the recommendation to the article

Close the feedback loop by marking the recommendation as acted on:
curl -X POST "https://api.app.hrizn.io/v1/public/content-intelligence/c3a1f8b2.../act" \
  -H "X-API-Key: hzk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"article_id": "a1b2c3d4..."}'
5

Dismiss irrelevant recommendations

For recommendations you don’t want to act on, dismiss them individually or in bulk:
curl -X POST "https://api.app.hrizn.io/v1/public/content-intelligence/bulk-dismiss" \
  -H "X-API-Key: hzk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"ids": ["id1", "id2", "id3"]}'

Required scopes

ScopeGrants access to
content_intelligence:readList, get, dismiss, and summary endpoints
content_intelligence:writeAct-on and bulk-dismiss endpoints
For the full automation workflow you’ll also need content:write or ideaclouds:write (depending on which content creation endpoints you call).
Last modified on March 12, 2026