| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316 |
- ---
- title: "Global Settings"
- description: "Mintlify gives you complete control over the look and feel of your documentation using the docs.json file"
- icon: "gear"
- ---
- Every Mintlify site needs a `docs.json` file with the core configuration settings. Learn more about the [properties](#properties) below.
- ## Properties
- <ResponseField name="name" type="string" required>
- Name of your project. Used for the global title.
- Example: `mintlify`
- </ResponseField>
- <ResponseField name="navigation" type="Navigation[]" required>
- An array of groups with all the pages within that group
- <Expandable title="Navigation">
- <ResponseField name="group" type="string">
- The name of the group.
- Example: `Settings`
- </ResponseField>
- <ResponseField name="pages" type="string[]">
- The relative paths to the markdown files that will serve as pages.
- Example: `["customization", "page"]`
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="logo" type="string or object">
- Path to logo image or object with path to "light" and "dark" mode logo images
- <Expandable title="Logo">
- <ResponseField name="light" type="string">
- Path to the logo in light mode
- </ResponseField>
- <ResponseField name="dark" type="string">
- Path to the logo in dark mode
- </ResponseField>
- <ResponseField name="href" type="string" default="/">
- Where clicking on the logo links you to
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="favicon" type="string">
- Path to the favicon image
- </ResponseField>
- <ResponseField name="colors" type="Colors">
- Hex color codes for your global theme
- <Expandable title="Colors">
- <ResponseField name="primary" type="string" required>
- The primary color. Used most often for highlighted content, section headers, accents, in light mode
- </ResponseField>
- <ResponseField name="light" type="string">
- The primary color for dark mode. Used most often for highlighted content, section headers, accents, in dark mode
- </ResponseField>
- <ResponseField name="dark" type="string">
- The primary color for important buttons
- </ResponseField>
- <ResponseField name="background" type="object">
- The color of the background in both light and dark mode
- <Expandable title="Object">
- <ResponseField name="light" type="string" required>
- The hex color code of the background in light mode
- </ResponseField>
- <ResponseField name="dark" type="string" required>
- The hex color code of the background in dark mode
- </ResponseField>
- </Expandable>
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="topbarLinks" type="TopbarLink[]">
- Array of `name`s and `url`s of links you want to include in the topbar
- <Expandable title="TopbarLink">
- <ResponseField name="name" type="string">
- The name of the button.
- Example: `Contact us`
- </ResponseField>
- <ResponseField name="url" type="string">
- The url once you click on the button. Example: `https://mintlify.com/docs`
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="topbarCtaButton" type="Call to Action">
- <Expandable title="Topbar Call to Action">
- <ResponseField name="type" type={'"link" or "github"'} default="link">
- Link shows a button. GitHub shows the repo information at the url provided including the number of GitHub stars.
- </ResponseField>
- <ResponseField name="url" type="string">
- If `link`: What the button links to.
-
- If `github`: Link to the repository to load GitHub information from.
- </ResponseField>
- <ResponseField name="name" type="string">
- Text inside the button. Only required if `type` is a `link`.
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="versions" type="string[]">
- Array of version names. Only use this if you want to show different versions of docs with a dropdown in the navigation
- bar.
- </ResponseField>
- <ResponseField name="anchors" type="Anchor[]">
- An array of the anchors, includes the `icon`, `color`, and `url`.
- <Expandable title="Anchor">
- <ResponseField name="icon" type="string">
- The [Font Awesome](https://fontawesome.com/search?q=heart) icon used to feature the anchor.
- Example: `comments`
- </ResponseField>
- <ResponseField name="name" type="string">
- The name of the anchor label.
- Example: `Community`
- </ResponseField>
- <ResponseField name="url" type="string">
- The start of the URL that marks what pages go in the anchor. Generally, this is the name of the folder you put your pages in.
- </ResponseField>
- <ResponseField name="color" type="string">
- The hex color of the anchor icon background. Can also be a gradient if you pass an object with the properties `from` and `to` that are each a hex color.
- </ResponseField>
- <ResponseField name="version" type="string">
- Used if you want to hide an anchor until the correct docs version is selected.
- </ResponseField>
- <ResponseField name="isDefaultHidden" type="boolean" default="false">
- Pass `true` if you want to hide the anchor until you directly link someone to docs inside it.
- </ResponseField>
- <ResponseField name="iconType" default="duotone" type="string">
- One of: "brands", "duotone", "light", "sharp-solid", "solid", or "thin"
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="topAnchor" type="Object">
- Override the default configurations for the top-most anchor.
- <Expandable title="Object">
- <ResponseField name="name" default="Documentation" type="string">
- The name of the top-most anchor
- </ResponseField>
- <ResponseField name="icon" default="book-open" type="string">
- Font Awesome icon.
- </ResponseField>
- <ResponseField name="iconType" default="duotone" type="string">
- One of: "brands", "duotone", "light", "sharp-solid", "solid", or "thin"
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="tabs" type="Tabs[]">
- An array of navigational tabs.
- <Expandable title="Tabs">
- <ResponseField name="name" type="string">
- The name of the tab label.
- </ResponseField>
- <ResponseField name="url" type="string">
- The start of the URL that marks what pages go in the tab. Generally, this is the name of the folder you put your
- pages in.
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="api" type="API">
- Configuration for API settings. Learn more about API pages at [API Components](/api-playground/demo).
- <Expandable title="API">
- <ResponseField name="baseUrl" type="string">
- The base url for all API endpoints. If `baseUrl` is an array, it will enable for multiple base url
- options that the user can toggle.
- </ResponseField>
- <ResponseField name="auth" type="Auth">
- <Expandable title="Auth">
- <ResponseField name="method" type='"bearer" | "basic" | "key"'>
- The authentication strategy used for all API endpoints.
- </ResponseField>
- <ResponseField name="name" type="string">
- The name of the authentication parameter used in the API playground.
- If method is `basic`, the format should be `[usernameName]:[passwordName]`
- </ResponseField>
- <ResponseField name="inputPrefix" type="string">
- The default value that's designed to be a prefix for the authentication input field.
- E.g. If an `inputPrefix` of `AuthKey` would inherit the default input result of the authentication field as `AuthKey`.
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="playground" type="Playground">
- Configurations for the API playground
- <Expandable title="Playground">
- <ResponseField name="mode" default="show" type='"show" | "simple" | "hide"'>
- Whether the playground is showing, hidden, or only displaying the endpoint with no added user interactivity `simple`
- Learn more at the [playground guides](/api-playground/demo)
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="maintainOrder" type="boolean">
- Enabling this flag ensures that key ordering in OpenAPI pages matches the key ordering defined in the OpenAPI file.
- <Warning>This behavior will soon be enabled by default, at which point this field will be deprecated.</Warning>
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="openapi" type="string | string[]">
- A string or an array of strings of URL(s) or relative path(s) pointing to your
- OpenAPI file.
-
- Examples:
- <CodeGroup>
- ```json Absolute
- "openapi": "https://example.com/openapi.json"
- ```
- ```json Relative
- "openapi": "/openapi.json"
- ```
- ```json Multiple
- "openapi": ["https://example.com/openapi1.json", "/openapi2.json", "/openapi3.json"]
- ```
- </CodeGroup>
- </ResponseField>
- <ResponseField name="footerSocials" type="FooterSocials">
- An object of social media accounts where the key:property pair represents the social media platform and the account url.
-
- Example:
- ```json
- {
- "x": "https://x.com/mintlify",
- "website": "https://mintlify.com"
- }
- ```
- <Expandable title="FooterSocials">
- <ResponseField name="[key]" type="string">
- One of the following values `website`, `facebook`, `x`, `discord`, `slack`, `github`, `linkedin`, `instagram`, `hacker-news`
-
- Example: `x`
- </ResponseField>
- <ResponseField name="property" type="string">
- The URL to the social platform.
-
- Example: `https://x.com/mintlify`
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="feedback" type="Feedback">
- Configurations to enable feedback buttons
- <Expandable title="Feedback">
- <ResponseField name="suggestEdit" type="boolean" default="false">
- Enables a button to allow users to suggest edits via pull requests
- </ResponseField>
- <ResponseField name="raiseIssue" type="boolean" default="false">
- Enables a button to allow users to raise an issue about the documentation
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="modeToggle" type="ModeToggle">
- Customize the dark mode toggle.
- <Expandable title="ModeToggle">
- <ResponseField name="default" type={'"light" or "dark"'}>
- Set if you always want to show light or dark mode for new users. When not
- set, we default to the same mode as the user's operating system.
- </ResponseField>
- <ResponseField name="isHidden" type="boolean" default="false">
- Set to true to hide the dark/light mode toggle. You can combine `isHidden` with `default` to force your docs to only use light or dark mode. For example:
-
- <CodeGroup>
- ```json Only Dark Mode
- "modeToggle": {
- "default": "dark",
- "isHidden": true
- }
- ```
- ```json Only Light Mode
- "modeToggle": {
- "default": "light",
- "isHidden": true
- }
- ```
- </CodeGroup>
- </ResponseField>
- </Expandable>
- </ResponseField>
- <ResponseField name="backgroundImage" type="string">
- A background image to be displayed behind every page. See example with [Infisical](https://infisical.com/docs) and
- [FRPC](https://frpc.io).
- </ResponseField>
|