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

# Get questionnaire export status

> Retrieves the current status and result of a questionnaire export using the id received from either the `createQuestionnaireExport` endpoint or the `v1.questionnaire.export-completed` webhook payload.

This endpoint utilizes a dynamic response schema that changes based on the value of the status field:

  - pending: The export is currently in the queue or processing. Only base metadata is returned.
  - completed: The export finished successfully. The response expands to include completedAt and a downloadUrl. This pre-signed URL is valid for 24 hours; if it expires, simply call this endpoint again to retrieve a fresh, active link.
  - failed: The process encountered an error. The response expands to include failedAt and an errorMessage detailing the reason for failure.

Developers should first check the status string before attempting to access result-specific fields like downloadUrl or errorMessage.



## OpenAPI

````yaml /reference/manage-vanta.json get /customer-trust/questionnaires/exports/{id}
openapi: 3.0.0
info:
  title: Manage Vanta
  version: 1.0.0
  description: >-
    The REST API lets customers query and mutate Vanta's data. Use this API to
    automate bulk actions, query data for custom workflows and dashboards, and
    bolster your security operations


    **Note for Vanta Gov (FedRAMP) customers:** Select `Vanta Gov (FedRAMP)`
    from the server dropdown to issue requests against
    `https://api.vanta-gov.com`. The OAuth token URL shown below defaults to the
    commercial host — replace it with `https://api.vanta-gov.com/oauth/token`.
  termsOfService: https://www.vanta.com/terms
  license:
    name: UNLICENSED
  contact:
    name: API Support
    url: https://help.vanta.com/
    email: support@vanta.com
servers:
  - url: https://api.vanta.com/v1
    description: Vanta (Commercial)
  - url: https://api.vanta-gov.com/v1
    description: Vanta Gov (FedRAMP)
security: []
paths:
  /customer-trust/questionnaires/exports/{id}:
    get:
      tags:
        - Customer Trust
      summary: Get questionnaire export status
      description: >-
        Retrieves the current status and result of a questionnaire export using
        the id received from either the `createQuestionnaireExport` endpoint or
        the `v1.questionnaire.export-completed` webhook payload.


        This endpoint utilizes a dynamic response schema that changes based on
        the value of the status field:

          - pending: The export is currently in the queue or processing. Only base metadata is returned.
          - completed: The export finished successfully. The response expands to include completedAt and a downloadUrl. This pre-signed URL is valid for 24 hours; if it expires, simply call this endpoint again to retrieve a fresh, active link.
          - failed: The process encountered an error. The response expands to include failedAt and an errorMessage detailing the reason for failure.

        Developers should first check the status string before attempting to
        access result-specific fields like downloadUrl or errorMessage.
      operationId: GetQuestionnaireExport
      parameters:
        - description: >-
            The unique identifier of the export job, returned from the POST
            endpoint.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          description: The export status and, if completed, the download URL.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomerTrustExportStatusResponse'
              examples:
                Example 1:
                  value:
                    id: 507f1f77bcf86cd799439011
                    status: completed
                    format: original
                    requestedAt: '2025-01-08T12:00:00.000Z'
                    completedAt: '2025-01-08T12:05:00.000Z'
                    downloadUrl: >-
                      https://storage.example.com/exports/questionnaire-export.xlsx?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9&expires=1736424000
                    expiresAt: '2025-01-09T12:00:00.000Z'
      security:
        - bearerAuth: []
components:
  schemas:
    CustomerTrustExportStatusResponse:
      description: >-
        Detailed status and result of a questionnaire export.

        When `status` is `"completed"`, the response includes a time-limited
        download URL.
      properties:
        id:
          type: string
          description: Unique identifier for the export job.
          example: 507f1f77bcf86cd799439011
        status:
          type: string
          enum:
            - pending
            - completed
            - failed
          description: >-
            Processing status of the export.

            - `"pending"`: Export is still being processed.

            - `"completed"`: Export finished successfully. Download URL is
            available.

            - `"failed"`: Export failed. See `errorMessage` for details.
          example: completed
        format:
          type: string
          enum:
            - original
            - csv
          description: The output format of the exported file.
          example: original
        requestedAt:
          type: string
          description: ISO 8601 timestamp indicating when the export was requested.
          example: '2025-01-08T12:00:00.000Z'
        completedAt:
          type: string
          description: >-
            ISO 8601 timestamp indicating when the export completed
            successfully.

            Only present when `status` is `"completed"`.
          example: '2025-01-08T12:05:00.000Z'
        downloadUrl:
          type: string
          description: >-
            Pre-signed URL for downloading the exported file. Valid for 24 hours
            from the time of this response.

            Only present when `status` is `"completed"`.
          example: >-
            https://storage.example.com/exports/questionnaire-export.xlsx?token=...
        expiresAt:
          type: string
          description: >-
            ISO 8601 timestamp indicating when the download URL expires. After
            this time, request a new export.

            Only present when `status` is `"completed"`.
          example: '2025-01-09T12:00:00.000Z'
        failedAt:
          type: string
          description: |-
            ISO 8601 timestamp indicating when the export failed.
            Only present when `status` is `"failed"`.
          example: '2025-01-08T12:03:00.000Z'
        errorMessage:
          type: string
          description: |-
            Human-readable description of why the export failed.
            Only present when `status` is `"failed"`.
          example: The questionnaire contains unsupported question types.
      required:
        - id
        - status
        - format
        - requestedAt
      type: object
      additionalProperties: false
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````