# Generate export bundle (/api/static-export/generate-bundle)

<!-- agent-signals: reading_time_min: 2 · est_tokens: 845 · updated: 2026-07-30 -->
Related: [Start static export job](/api/static-export/start-job.md), [Get static export job status](/api/static-export/get-job-status.md), [Product updates](/changelog.md)

<Info>
  Static export requires an [Enterprise plan](https://mintlify.com/pricing?ref=static-export).
</Info>

`POST /static-export/jobs/{jobId}/bundle`

Package a completed static export job into a single archive and return a download link. The link is a presigned S3 URL — download it before `expiresAt`.

The job must have a `status` of `completed` before a bundle can be generated.

Static export is available on Enterprise plans.

Authenticate with an admin API key.

## OpenAPI

```json
{
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "parameters": [
    {
      "name": "jobId",
      "in": "path",
      "description": "The ID of a completed static export job.",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "description": "A presigned S3 link to the static export bundle.",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "jobId",
              "bundleUrl",
              "sizeBytes",
              "expiresAt"
            ],
            "properties": {
              "jobId": {
                "type": "string",
                "description": "The ID of the job this bundle was generated for.",
                "example": "se_3f9a2c1b8e7d4a06"
              },
              "bundleUrl": {
                "type": "string",
                "format": "uri",
                "description": "A presigned S3 link to the static export bundle archive. Download it before the link expires.",
                "example": "https://mintlify-static-exports.s3.amazonaws.com/se_3f9a2c1b8e7d4a06/bundle.tar.gz?X-Amz-Signature=..."
              },
              "sizeBytes": {
                "type": "integer",
                "description": "The size of the bundle in bytes.",
                "example": 18432000
              },
              "expiresAt": {
                "type": "string",
                "format": "date-time",
                "description": "When the presigned link expires."
              }
            }
          }
        }
      }
    },
    "401": {
      "description": "Authentication failed.",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "error": {
                "type": "string",
                "description": "A human-readable description of the error."
              }
            }
          }
        }
      }
    },
    "404": {
      "description": "No job exists with the provided ID.",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "error": {
                "type": "string",
                "description": "A human-readable description of the error."
              }
            }
          }
        }
      }
    },
    "409": {
      "description": "The job has not finished yet, so a bundle cannot be generated.",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "error": {
                "type": "string",
                "description": "A human-readable description of the error."
              }
            }
          }
        }
      }
    }
  }
}
```
