Skip to main content
Each subcategory in Octavia AI CMS belongs to exactly one category, identified by the categoryId field.
Subcategories support multiple languages, following the same standard multilingual format used across the CMS.
Example:
"name": {
  "en": "Artificial Intelligence",
  "es": "Inteligencia Artificial",
  ...
}

Rules

  • ✅ Each subcategory must have a valid categoryId belonging to an existing category
  • ✅ Multilingual fields (name, description) must use lowercase ISO 639-1 codes (en, es, etc.)
  • ✅ At least one language entry is required
  • ✅ Slug must be unique within the parent category
  • ❌ A subcategory cannot belong to more than one category
  • ❌ Do not send plain strings for multilingual fields

Validation & Behavior

  • categoryId is required and must reference a valid category
  • Slug must be unique within that category
  • Name and description are multilingual fields
  • Thumbnail and isPrivate are optional
  • Language fallback applies when fetching data (default language is returned if the requested locale is missing)