Skip to content

Docs describe iconType on docs.json objects, which the schema rejects #7332

Description

@AgLyx3

I found three docs pages that document iconType as a property of docs.json objects. The published docs.json schema at https://mintlify.com/docs.json does not include iconType on any object, so a config written by following these pages fails validation.

iconType is also documented as a page frontmatter field in organize/pages. This report is only about the docs.json side.

Where it's documented

page where the iconType field comes from
ai/contextual-menu <IconsRequired />, from snippets/icons-required.mdx
organize/settings-structure <IconsOptional /> (rendered 5 times), from snippets/icons-optional.mdx
organize/settings-reference inline, in the type descriptions for tabs, anchors, dropdowns, and products, and one field table (L162, L168, L174, L194, L232, L553)

Repro

This custom contextual option fails validation:

{ "title": "Report an issue", "description": "Open a GitHub issue", "href": "https://github.com/org/repo/issues/new", "icon": "github", "iconType": "brands" }
Additional properties are not allowed ('iconType' was unexpected)

This one validates:

{ "title": "Report an issue", "description": "Open a GitHub issue", "href": "https://github.com/org/repo/issues/new", "icon": { "name": "github", "style": "brands" } }

I got the same result for navbar.links, navigation.global.anchors, and a navigation tab. I tested against the live schema on 2026-09-10.

Suggested fix

The schema expresses the style as icon: { name, style }, so I'd suggest updating the docs to match:

  • Give the docs.json pages a version of the icon snippets that documents the nested icon object in place of iconType.
  • Remove iconType from the inline type descriptions in settings-reference.

The frontmatter docs in organize/pages can keep iconType.

How I noticed it

I was testing how coding agents build Mintlify sites from the docs. In 6 of 12 runs, the agent followed the contextual-menu page, wrote iconType, and produced a config that fails validation. Every run that hit it had picked the GitHub icon, which needs the brands style.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions