> ## Documentation Index
> Fetch the complete documentation index at: https://tomee-mintlify-97b9ea5c.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Speakeasy

> Display autogenerated SDK code samples from Speakeasy in your API playground with multi-language examples for Python, TypeScript, Go, and more.

You can integrate autogenerated code snippets from Speakeasy SDKs directly into Mintlify API reference documentation. SDK usage snippets appear in the [interactive playground](/api-playground/overview) of Mintlify-powered documentation sites.

<Frame>
  <img src="https://mintcdn.com/tomee-mintlify-97b9ea5c/Z3WPp-t8BIqoB2wb/images/speakeasy/mintlify-with-speakeasy-openapi.png?fit=max&auto=format&n=Z3WPp-t8BIqoB2wb&q=85&s=750cf41ae1f54d50bc446ffc76e5a667" alt="A Mintlify API playground with Speakeasy code snippets." width="2560" height="1440" data-path="images/speakeasy/mintlify-with-speakeasy-openapi.png" />
</Frame>

## Prerequisites

To integrate Mintlify with Speakeasy, you'll need the following:

* A [Mintlify documentation repository](/quickstart).
* A Speakeasy-generated SDK with a configured [automated code sample URL](https://www.speakeasy.com/docs/code-samples/automated-code-sample-urls).

## Set up the integration

To integrate Speakeasy with Mintlify, you must get the API's combined spec public URL from the registry and update your `docs.json` configuration file.

### Get the API's combined spec public URL from the registry

Go to your [Speakeasy Dashboard](https://app.speakeasy.com) and open the **API Registry** tab. Open the `*-with-code-samples` entry for the API.

<Frame>
  <img src="https://mintcdn.com/tomee-mintlify-97b9ea5c/Z3WPp-t8BIqoB2wb/images/speakeasy/openapi-registry-and-combined-spec.png?fit=max&auto=format&n=Z3WPp-t8BIqoB2wb&q=85&s=49f04df68c61a5befc2a493e9cc14ce3" alt="Screenshot of the Speakeasy API Registry page. A red square and the number 1 emphasize the API Registry tab, and a red square and the number 2 emphasize the entry for the API." width="2560" height="1440" data-path="images/speakeasy/openapi-registry-and-combined-spec.png" />
</Frame>

<Note>
  If the entry is not labeled **Combined Spec**, ensure that the API has an [automatic code sample URL](https://www.speakeasy.com/docs/code-samples/automated-code-sample-urls) configured.
</Note>

From the registry entry's page, copy the provided public URL.

<Frame>
  <img src="https://mintcdn.com/tomee-mintlify-97b9ea5c/Z3WPp-t8BIqoB2wb/images/speakeasy/copy-combined-spec-url.png?fit=max&auto=format&n=Z3WPp-t8BIqoB2wb&q=85&s=11d6aed72b6c184f6944871e6459a756" alt="Screenshot showing the combined spec registry entry with the copy URL function emphasized with a red square." width="2560" height="1440" data-path="images/speakeasy/copy-combined-spec-url.png" />
</Frame>

### Update your `docs.json` configuration file

Add the combined spec URL to an **Anchors** or **Tabs** section in your `docs.json` file.

Add the combined spec URL to an anchor by updating the `anchor` field in your `docs.json` file as follows:

```json docs.json theme={null}
{
  "anchors": [
    {
      "name": "API Reference",
      // !mark
      "openapi": "SPEAKEASY_COMBINED_SPEC_URL",
      "url": "api-reference",
      "icon": "square-terminal"
    }
  ]
}
```

Add the combined spec URL to a tab by updating the `tab` field in the `docs.json` file as follows:

```json docs.json theme={null}
{
  "tabs": [
    {
      "name": "API Reference",
      "url": "api-reference",
      // !mark
      "openapi": "SPEAKEASY_COMBINED_SPEC_URL"
    }
  ]
}
```

You can now view Speakeasy-generated code snippets in your API docs and interact with them in the playground.

## Verify the integration

After you redeploy your documentation, open any endpoint in your API reference and confirm that language snippets appear in the playground. The set of available languages matches the SDK targets configured in your Speakeasy project.

If snippets do not appear, check that:

* The `openapi` URL in `docs.json` points to the `*-with-code-samples` combined spec entry, not the source OpenAPI file.
* The combined spec URL is publicly reachable from the browser.
* Your Speakeasy project has an [automated code sample URL](https://www.speakeasy.com/docs/code-samples/automated-code-sample-urls) configured and at least one SDK target enabled.
