> ## Documentation Index
> Fetch the complete documentation index at: https://docs.manus.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# enterprise.export.create

> Creates a new data export task for a user. Runs asynchronously — the call returns immediately with status `EXPORT_STATUS_PENDING`. Poll [enterprise.export.detail](/enterprise/v1/enterprise.export.detail) until the export is `EXPORT_STATUS_COMPLETED`, then call [enterprise.export.downloadUrl](/enterprise/v1/enterprise.export.downloadUrl).

<sup>Questions or issues? Contact us at [api-support@manus.ai](mailto:api-support@manus.ai).</sup>

<Tip>
  **Required combos:** Provide either `user_id` or `email`. When `scope` is `ENTERPRISE_EXPORT_SCOPE_CUSTOM_SESSION_IDS`, `session_ids` is required. When `scope` is `ENTERPRISE_EXPORT_SCOPE_WEBDEV_PROJECT`, optionally narrow with `webdev_project_uids`. When `scope` is `ENTERPRISE_EXPORT_SCOPE_PROJECT`, optionally narrow with `project_uids`.

  **Async:** Returns immediately with `EXPORT_STATUS_PENDING`. Poll [enterprise.export.detail](/enterprise/v1/enterprise.export.detail) until status is `EXPORT_STATUS_COMPLETED`.

  **Concurrency:** Recommended to keep at most one in-flight export per user.

  **Audit:** `reason` is logged for compliance review — supply a meaningful value.
</Tip>


## OpenAPI

````yaml POST /dataexport.v1.EnterpriseDataExportService/CreateExport
openapi: 3.1.0
info:
  title: Manus Enterprise Data Export OpenAPI v1
  description: >-
    gRPC-style API for exporting enterprise user data. All endpoints are POSTs
    to `/dataexport.v1.EnterpriseDataExportService/<Method>` and return raw JSON
    with an inline `request_id`. See also [v2](/enterprise/v2/introduction),
    which provides the same operations over REST URLs with a unified response
    envelope.
  version: 1.0.0
servers:
  - url: https://api.manus.im
security:
  - ApiKeyAuth: []
paths:
  /dataexport.v1.EnterpriseDataExportService/CreateExport:
    post:
      summary: CreateExport
      description: >-
        Creates a new data export task for a user. Runs asynchronously — the
        call returns immediately with status `EXPORT_STATUS_PENDING`. Poll
        [enterprise.export.detail](/enterprise/v1/enterprise.export.detail)
        until the export is `EXPORT_STATUS_COMPLETED`, then call
        [enterprise.export.downloadUrl](/enterprise/v1/enterprise.export.downloadUrl).
      operationId: dataexport.v1.EnterpriseDataExportService.CreateExport
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                user_id:
                  type: string
                  description: >-
                    Target user ID. Either `user_id` or `email` must be
                    provided.
                  example: 123e4567-e89b-12d3-a456-426614174000
                  format: uuid
                email:
                  type: string
                  description: >-
                    Target user email. Either `user_id` or `email` must be
                    provided.
                  example: user@example.com
                scope:
                  $ref: '#/components/schemas/EnterpriseExportScope'
                  description: Export scope.
                include_deleted:
                  type: boolean
                  description: Include soft-deleted data.
                  default: false
                include_files:
                  type: boolean
                  description: Include attached files in the archive.
                  default: true
                start_time:
                  type: string
                  format: date-time
                  description: Lower time bound (RFC3339).
                end_time:
                  type: string
                  format: date-time
                  description: Upper time bound (RFC3339).
                session_ids:
                  type: array
                  items:
                    type: string
                  description: >-
                    Specific session IDs to export. Required when `scope` is
                    `ENTERPRISE_EXPORT_SCOPE_CUSTOM_SESSION_IDS`.
                reason:
                  type: string
                  description: Reason for the export. Logged for compliance auditing.
                  example: compliance audit
                webdev_project_uids:
                  type: array
                  items:
                    type: string
                  description: >-
                    Limit the export to specific webdev project UIDs. Only used
                    when `scope` is `ENTERPRISE_EXPORT_SCOPE_WEBDEV_PROJECT`.
                    Leave empty to include all webdev projects.
                project_uids:
                  type: array
                  items:
                    type: string
                  description: >-
                    Limit the export to specific Manus project UIDs. Only used
                    when `scope` is `ENTERPRISE_EXPORT_SCOPE_PROJECT`. Leave
                    empty to include all projects.
              required:
                - scope
              oneOf:
                - required:
                    - user_id
                - required:
                    - email
      responses:
        '200':
          description: Export task created successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  uid:
                    type: string
                    description: Export task UID.
                  status:
                    $ref: '#/components/schemas/ExportStatus'
                    description: >-
                      Initial status. Always `EXPORT_STATUS_PENDING` for a
                      freshly created task.
                  created_at:
                    type: string
                    format: date-time
                    description: Task creation time.
                  user_id:
                    type: string
                    description: Target user ID.
                    format: uuid
                    example: 123e4567-e89b-12d3-a456-426614174000
                  enterprise_uid:
                    type: string
                    description: Enterprise unique identifier.
                  request_id:
                    type: string
                    description: Request ID for tracing and auditing.
        4XX:
          description: Error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    EnterpriseExportScope:
      type: string
      description: >-
        Determines what data is included in the export archive. `FULL` includes
        all webdev projects and Manus project content; `TASKS` includes only
        task lists (no events); `TASKS_WITH_ATTACHMENTS` adds session
        attachments; `CUSTOM_SESSION_IDS` exports only the sessions named in
        `session_ids`; `WEBDEV_PROJECT` exports webdev projects (code + DB +
        static assets, with secrets masked); `PROJECT` exports Manus projects
        (name/instruction/connector_uids/skill_config + project_files).
      enum:
        - ENTERPRISE_EXPORT_SCOPE_FULL
        - ENTERPRISE_EXPORT_SCOPE_TASKS
        - ENTERPRISE_EXPORT_SCOPE_TASKS_WITH_ATTACHMENTS
        - ENTERPRISE_EXPORT_SCOPE_CUSTOM_SESSION_IDS
        - ENTERPRISE_EXPORT_SCOPE_WEBDEV_PROJECT
        - ENTERPRISE_EXPORT_SCOPE_PROJECT
    ExportStatus:
      type: string
      description: >-
        Lifecycle status of an export task. Flow: `PENDING` → `PROCESSING` →
        `COMPLETED` (or `FAILED` / `CANCELLED`).
      enum:
        - EXPORT_STATUS_PENDING
        - EXPORT_STATUS_PROCESSING
        - EXPORT_STATUS_COMPLETED
        - EXPORT_STATUS_FAILED
        - EXPORT_STATUS_CANCELLED
    ErrorResponse:
      type: object
      description: Standard gRPC-style error response.
      properties:
        code:
          type: string
          description: >-
            Error code: `INVALID_ARGUMENT`, `NOT_FOUND`, `PERMISSION_DENIED`,
            `FAILED_PRECONDITION`, or `INTERNAL`.
        message:
          type: string
          description: Human-readable error description.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key

````