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

# List operations

> List all operations for an assistant. Returns operations that are in progress, as well as recently completed or failed operations.
Both successful and failed operations are retained for 30 days after completion.
Use the `operation_type` and `status` query parameters to filter results.


<RequestExample>
  ```bash curl theme={null}
  PINECONE_API_KEY="YOUR_API_KEY"
  ASSISTANT_NAME="example-assistant"

  # List all operations
  curl -X GET "https://prod-1-data.ke.pinecone.io/assistant/operations/$ASSISTANT_NAME" \
    -H "Api-Key: $PINECONE_API_KEY" \
    -H "X-Pinecone-Api-Version: 2026-04"

  # Filter by status
  # curl -X GET "https://prod-1-data.ke.pinecone.io/assistant/operations/$ASSISTANT_NAME?status=Processing" \
  #   -H "Api-Key: $PINECONE_API_KEY" \
  #   -H "X-Pinecone-Api-Version: 2026-04"
  ```
</RequestExample>


## OpenAPI

````yaml https://raw.githubusercontent.com/pinecone-io/pinecone-api/refs/heads/main/2026-04/assistant_data_2026-04.oas.yaml GET /operations/{assistant_name}
openapi: 3.0.3
info:
  title: Pinecone assistant data plane API
  description: >-
    Pinecone Assistant Engine is a context engine to store and retrieve relevant
    knowledge from millions of documents at scale. This API supports
    interactions with assistants.
  contact:
    name: Pinecone Support
    url: https://support.pinecone.io
    email: support@pinecone.io
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  version: 2026-04
servers:
  - url: https://{assistant_host}
    variables:
      assistant_host:
        default: unknown
        description: The host of the created assistant
security:
  - ApiKeyAuth: []
tags:
  - name: Manage Assistants
    description: Actions that manage Assistants
paths:
  /operations/{assistant_name}:
    get:
      tags:
        - Manage Assistants
      summary: List operations
      description: >
        List all operations for an assistant. Returns operations that are in
        progress, as well as recently completed or failed operations.

        Both successful and failed operations are retained for 30 days after
        completion.

        Use the `operation_type` and `status` query parameters to filter
        results.
      operationId: list_operations
      parameters:
        - in: header
          name: X-Pinecone-Api-Version
          description: Required date-based version header
          required: true
          schema:
            default: 2026-04
            type: string
          style: simple
        - in: path
          name: assistant_name
          description: The name of the assistant to list operations for.
          required: true
          schema:
            type: string
          example: test-assistant
          style: simple
        - in: query
          name: operation_type
          description: Filter operations by type.
          schema:
            x-enum:
              - upload_file
              - upsert_file
              - update_file_metadata
              - delete_file
            type: string
          example: upload_file
          style: form
        - in: query
          name: status
          description: Filter operations by status.
          schema:
            x-enum:
              - Processing
              - Completed
              - Failed
            type: string
          example: Processing
          style: form
        - in: query
          name: limit
          description: Limit on the number of operations to return.
          schema:
            type: integer
            minimum: 1
            maximum: 100
          example: 100
          style: form
        - in: query
          name: pagination_token
          description: Pagination token to continue a previous listing operation.
          schema:
            type: string
          example: dXNlcl9pZD11c2VyXzE=
          style: form
      responses:
        '200':
          description: A list of operations.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OperationList'
              examples:
                multiple-operations:
                  summary: Multiple operations with different states
                  value:
                    operations:
                      - created_on: '2025-10-01T12:30:00.000Z'
                        file_id: my-report-2025
                        id: op-1234-abcd-5678
                        operation_type: upload_file
                        percent_complete: 42
                        status: Processing
                      - completed_on: '2025-10-01T12:05:00.000Z'
                        created_on: '2025-10-01T12:00:00.000Z'
                        file_id: quarterly-analysis
                        id: op-8765-dcba-4321
                        operation_type: upload_file
                        percent_complete: 100
                        status: Completed
                      - completed_on: '2025-10-01T11:32:00.000Z'
                        created_on: '2025-10-01T11:30:00.000Z'
                        error_message: 'File processing failed: unsupported file format.'
                        file_id: invalid-file
                        id: op-5555-eeee-9999
                        operation_type: upload_file
                        percent_complete: 15
                        status: Failed
                      - completed_on: '2025-10-01T11:02:00.000Z'
                        created_on: '2025-10-01T11:00:00.000Z'
                        file_id: old-report
                        id: op-7777-ffff-0000
                        operation_type: delete_file
                        percent_complete: 100
                        status: Completed
                    pagination:
                      next: dXNlcl9pZD11c2VyXzE=
        '401':
          description: 'Unauthorized. Possible causes: Invalid API key.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  summary: Unauthorized
                  value:
                    error:
                      code: UNAUTHENTICATED
                      message: Invalid API key.
                    status: 401
        '404':
          description: Assistant not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                assistant-not-found:
                  summary: Assistant not found.
                  value:
                    error:
                      code: NOT_FOUND
                      message: Assistant "example-assistant" not found.
                    status: 404
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                internal-server-error:
                  summary: Internal server error
                  value:
                    error:
                      code: UNKNOWN
                      message: Internal server error
                    status: 500
components:
  schemas:
    OperationList:
      description: A list of operations.
      type: object
      properties:
        operations:
          description: The list of operations for the assistant.
          type: array
          items:
            $ref: '#/components/schemas/OperationModel'
        pagination:
          $ref: '#/components/schemas/PaginationResponse'
    ErrorResponse:
      example:
        error:
          code: TOO_MANY_REQUESTS
          message: Too many get or list assistant requests, try again later
        status: 429
      description: The response shape used for all error responses.
      type: object
      properties:
        status:
          example: 500
          description: The HTTP status code of the error.
          type: integer
        error:
          example:
            code: INVALID_ARGUMENT
            message: 'Invalid region: Valid options are us, eu'
          description: Detailed information about the error that occurred.
          type: object
          properties:
            code:
              description: The status code associated with the error.
              x-enum:
                - OK
                - UNKNOWN
                - INVALID_ARGUMENT
                - DEADLINE_EXCEEDED
                - QUOTA_EXCEEDED
                - NOT_FOUND
                - ALREADY_EXISTS
                - PERMISSION_DENIED
                - UNAUTHENTICATED
                - RESOURCE_EXHAUSTED
                - FAILED_PRECONDITION
                - ABORTED
                - OUT_OF_RANGE
                - UNIMPLEMENTED
                - INTERNAL
                - UNAVAILABLE
                - DATA_LOSS
                - FORBIDDEN
                - TOO_MANY_REQUESTS
              type: string
            message:
              example: Message content cannot be empty
              description: A message providing details about the error.
              type: string
            details:
              description: >-
                Additional information about the error. This field is not
                guaranteed to be present.
              type: object
          required:
            - code
            - message
      required:
        - status
        - error
    OperationModel:
      description: >-
        The OperationModel describes the status of an ongoing or completed
        server operation.
      type: object
      properties:
        id:
          example: op-1234-abcd-5678
          description: The unique identifier for the operation.
          type: string
        operation_type:
          example: upload_file
          description: >-
            The kind of action represented by this operation, such as uploading
            or deleting a file.
          x-enum:
            - upload_file
            - upsert_file
            - update_file_metadata
            - delete_file
          type: string
        file_id:
          nullable: true
          example: my-file-id-123
          description: The identifier of the file being operated on.
          type: string
        status:
          example: Processing
          description: |-
            The status of the operation.

            - `Processing`: The operation is in progress.
            - `Completed`: The operation finished successfully.
            - `Failed`: The operation failed. See `error_message` for details.
          x-enum:
            - Processing
            - Completed
            - Failed
          type: string
        created_on:
          example: '2025-10-01T12:30:00.000Z'
          description: The timestamp when the operation was created, in ISO 8601 format.
          type: string
          format: date-time
        completed_on:
          nullable: true
          example: '2025-10-01T12:35:00.000Z'
          description: >-
            The timestamp when the operation completed or failed, in ISO 8601
            format. Present only when status is `Completed` or `Failed`.
          type: string
          format: date-time
        percent_complete:
          example: 42
          description: The progress made by the operation, as a percentage (0-100).
          type: integer
          format: int32
          minimum: 0
          maximum: 100
        error_message:
          nullable: true
          example: 'File processing failed: unsupported file format.'
          description: |-
            A message describing the error that caused the operation to fail.
            Present only when status is `Failed`.
          type: string
        ingestion_units:
          nullable: true
          example: 50
          description: >-
            The number of ingestion units consumed by this operation.

            Present only when status is `Completed` for file ingestion
            operations.
          type: number
          format: double
      required:
        - id
        - operation_type
        - status
        - created_on
    PaginationResponse:
      example:
        next: dXNlcl9pZD11c2VyXzE=
      description: >-
        Object that contains the next pagination token to continue a previous
        listing operation.
      type: object
      properties:
        next:
          description: The token to use to retrieve the next page of results.
          type: string
      required:
        - next
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: Api-Key
      description: Pinecone API Key

````