> ## Documentation Index
> Fetch the complete documentation index at: https://api-docs.hrizn.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Component types

> List all article component types

Returns the types of components that can be attached to articles (body, SEO metadata, schemas, etc.).

When used as a path parameter in `GET /content/{id}/components/{type}`, the type is **case-insensitive**.

<Note>
  The reference endpoint returns PascalCase keys (e.g. `Body`, `SeoMetadata`), but component API responses (e.g. `GET /content/{id}/components`) use camelCase (e.g. `body`, `seoMetadata`). Both formats are accepted as path parameters due to case-insensitivity.
</Note>

<AccordionGroup>
  <Accordion title="Content Components">
    | Type (API response) | Type (reference key) | Description                     |
    | ------------------- | -------------------- | ------------------------------- |
    | `body`              | `Body`               | Main article content (markdown) |
    | `seoMetadata`       | `SeoMetadata`        | SEO meta tags                   |
    | `pageSlugs`         | `PageSlugs`          | URL slugs                       |
    | `postTags`          | `PostTags`           | Content tags                    |
    | `blogCategories`    | `BlogCategories`     | Category assignments            |
    | `searchIntent`      | `SearchIntent`       | Search intent analysis          |
    | `videoScript`       | `VideoScript`        | Video script                    |
  </Accordion>

  <Accordion title="Layout">
    | Type (API response) | Type (reference key) | Description                                                                                 |
    | ------------------- | -------------------- | ------------------------------------------------------------------------------------------- |
    | `layout_html`       | `LayoutHtml`         | Rendered page HTML with embedded CSS -- the full visual layout output from the page builder |
  </Accordion>

  <Accordion title="Social Snippets">
    | Type (API response)  | Type (reference key) | Description              |
    | -------------------- | -------------------- | ------------------------ |
    | `facebookSnip`       | `FacebookSnip`       | Facebook social snippet  |
    | `twitterSnip`        | `TwitterSnip`        | Twitter/X social snippet |
    | `instagramSnip`      | `InstagramSnip`      | Instagram social snippet |
    | `googleBusinessSnip` | `GoogleBusinessSnip` | Google Business snippet  |
  </Accordion>

  <Accordion title="JSON-LD Schemas">
    | Type (API response)    | Type (reference key)   | Description                 |
    | ---------------------- | ---------------------- | --------------------------- |
    | `articleSchema`        | `ArticleSchema`        | Article JSON-LD schema      |
    | `authorSchema`         | `AuthorSchema`         | Author JSON-LD schema       |
    | `organizationSchema`   | `OrganizationSchema`   | Organization JSON-LD schema |
    | `vehicleListingSchema` | `VehicleListingSchema` | Vehicle JSON-LD schema      |
    | `faqSchema`            | `FaqSchema`            | FAQ JSON-LD schema          |
    | `eventSchema`          | `EventSchema`          | Event JSON-LD schema        |
    | `qaPageSchema`         | `QaPageSchema`         | QA Page JSON-LD schema      |
  </Accordion>
</AccordionGroup>

<Info>
  The `layout_html` component contains the complete, self-contained HTML document produced by the visual page builder. Unlike the `body` component which stores the design JSON and raw content, `layout_html` stores the rendered HTML output with all CSS in a `<style>` block -- ready to embed directly in a CMS or webpage. It is created or updated whenever a user saves or exports content in the visual editor.
</Info>

<ResponseExample>
  ```json 200 theme={"theme":{"light":"github-light","dark":"github-dark"}}
  {
    "data": {
      "component_types": {
        "Body": "Main article content",
        "SeoMetadata": "SEO meta tags",
        "PageSlugs": "URL slugs",
        "PostTags": "Content tags",
        "BlogCategories": "Category assignments",
        "SearchIntent": "Search intent analysis",
        "FacebookSnip": "Facebook social snippet",
        "TwitterSnip": "Twitter social snippet",
        "InstagramSnip": "Instagram social snippet",
        "GoogleBusinessSnip": "Google Business snippet",
        "VideoScript": "Video script",
        "ArticleSchema": "Article JSON-LD schema",
        "AuthorSchema": "Author JSON-LD schema",
        "OrganizationSchema": "Organization JSON-LD schema",
        "VehicleListingSchema": "Vehicle JSON-LD schema",
        "FaqSchema": "FAQ JSON-LD schema",
        "EventSchema": "Event JSON-LD schema",
        "QaPageSchema": "QA Page JSON-LD schema",
        "LayoutHtml": "Rendered page HTML with embedded styles"
      }
    }
  }
  ```
</ResponseExample>


## OpenAPI

````yaml GET /reference/component-types
openapi: 3.1.0
info:
  title: Hrizn Public API
  version: 1.2.0
  description: >
    The Hrizn Public API allows partners to programmatically create content,
    manage inventory descriptions, and integrate with the Hrizn platform.


    All endpoints are prefixed with `/public` and require an API key passed via
    the `X-API-Key` header (except the health check).
  contact:
    email: support@hrizn.io
servers:
  - url: https://api.app.hrizn.io/v1/public
    description: Production
security:
  - apiKeyAuth: []
tags:
  - name: IdeaClouds
    description: Create and manage AI-powered keyword research
  - name: Content Intelligence
    description: AI-powered content gap analysis and recommendations
  - name: Content
    description: Generate content from IdeaClouds
  - name: Compliance
    description: Run OEM compliance checks on content
  - name: Content Tools
    description: Generate SEO metadata, schemas, and social snippets
  - name: Inventory
    description: Access vehicle data and AI descriptions
  - name: Site
    description: View dealership details and configuration
  - name: Webhooks
    description: Manage webhook subscriptions for real-time events
  - name: Reference
    description: Look up available types, scopes, and events
  - name: Social
    description: >-
      Zernio-backed social posting and reviews across all connected platforms
      (X, Facebook, Instagram, LinkedIn, Google Business Profile)
  - name: Health
    description: Health check (no authentication)
paths:
  /reference/component-types:
    get:
      tags:
        - Reference
      summary: List component types
      operationId: getReferenceComponentTypes
      responses:
        '200':
          description: All component types
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      component_types:
                        type: object
components:
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: Your Hrizn API key (prefix hzk_)

````