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

> List all jobs in your project with optional filtering.

# Get jobs

List all [jobs](/user-manual/glossary#job) in your [project](/user-manual/glossary#project) with optional filtering by [job status](/user-manual/glossary#job-status) (submitted, ready, started, canceled, failed, completed). This provides a paginated overview of your job history including basic metadata and timing information for each job.


## OpenAPI

````yaml https://api.ionq.co/v0.4/api-docs GET /jobs
openapi: 3.0.3
info:
  contact:
    email: support@ionq.co
    name: IonQ
    url: https://ionq.com/
  description: |
    *Last updated: April 30, 2026*
    IonQ's API for accessing the IonQ Quantum Cloud platform

    Please subscribe for automated updates when we perform maintenance or
    experience an outage.

    In addition, you may use the [status endpoint](#tag/status) to check the
    current status of our API.

    ## Authentication

    <SecurityDefinitions />
  title: IonQ Cloud Platform API
  version: v0.4
servers:
  - url: https://api.ionq.co/v0.4
security: []
paths:
  /jobs:
    get:
      operationId: GetJobs
      parameters:
        - in: query
          name: ids
          required: false
          schema:
            items:
              type: string
            type: array
        - in: query
          name: parent_job_id
          required: false
          schema:
            type: string
        - in: query
          name: status
          required: false
          schema:
            $ref: '#/components/schemas/JobStatus'
        - description: >-
            Filter jobs by backend target. Supports single target or
            comma-separated list of targets.
          in: query
          name: target
          required: false
          schema:
            type: string
          example: simulator
        - in: query
          name: session_id
          required: false
          schema:
            type: string
        - description: >-
            The id of another user within a shared project to view their
            submitted jobs. Ignored if not a project member.
          in: query
          name: submitter_id
          required: false
          schema:
            type: string
        - in: query
          name: limit
          required: false
          schema:
            type: integer
            format: int32
        - in: query
          name: next
          required: false
          schema:
            type: string
      responses:
        '200':
          description: Successfully retrieved a list of jobs.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetJobsResponse'
              examples:
                Example 1:
                  value:
                    jobs:
                      - id: e1a09d90-b2ba-4ea5-9fd7-4bfc14eac524
                        status: completed
                        type: ionq.circuit.v1
                        backend: simulator
                        dry_run: false
                        submitter_id: 64b03577072d45001c85e9c4
                        project_id: 1333d459-cf47-4a5e-acc1-8d4eb4f7b025
                        parent_job_id: null
                        session_id: null
                        metadata: null
                        name: null
                        submitted_at: '2025-05-28T20:47:05.440Z'
                        started_at: null
                        completed_at: null
                        predicted_execution_duration_ms: null
                        predicted_wait_time_ms: null
                        execution_duration_ms: null
                        shots: 1000
                        noise:
                          model: ideal
                        failure: null
                        settings:
                          compilation: {}
                        stats:
                          qubits: 20
                          circuits: 1
                          gate_counts:
                            1q: 1028
                            2q: 110
                          predicted_quantum_compute_time_us: 5000
                          billed_quantum_compute_time_us: 5200
                        results:
                          probabilities:
                            url: >-
                              /v0.4/jobs/e1a09d90-b2ba-4ea5-9fd7-4bfc14eac524/results/probabilities
                        output: {}
                    next: null
        '429':
          description: >-
            Too Many Requests. To get a higher rate limit, please reach out to
            support@ionq.co
        '500':
          description: >-
            A generic server failure, please reach out to support@ionq.co for
            help with this error
        '502':
          description: >-
            Bad Gateway, this can be caused by misbehaving proxies, or by
            service issues. These can be retried, and downtime can be found on
            status.ionq.co
        '503':
          description: >-
            Service Unavailable, this is indicative of service outage, please
            check status.ionq.co
      security:
        - apiKeyAuth: []
      x-codeSamples:
        - lang: curl
          source: |
            # Get all jobs:
            curl "https://api.ionq.co/v0.4/jobs" \
              -H "Authorization: apiKey your-api-key"
components:
  schemas:
    JobStatus:
      type: string
      enum:
        - submitted
        - ready
        - started
        - canceled
        - failed
        - completed
    GetJobsResponse:
      properties:
        jobs:
          items:
            $ref: '#/components/schemas/BaseJob'
          type: array
        next:
          type: string
          nullable: true
      required:
        - jobs
        - next
      type: object
      additionalProperties: false
    BaseJob:
      properties:
        id:
          type: string
        status:
          $ref: '#/components/schemas/JobStatus'
        type:
          type: string
        backend:
          type: string
        dry_run:
          type: boolean
        submitter_id:
          type: string
          description: The id of the user who submitted the job
        project_id:
          type: string
          nullable: true
        parent_job_id:
          type: string
          nullable: true
        session_id:
          type: string
          nullable: true
        metadata:
          allOf:
            - $ref: '#/components/schemas/JobMetadata'
          nullable: true
        name:
          type: string
          nullable: true
        submitted_at:
          $ref: '#/components/schemas/IsoTimestamp'
        started_at:
          allOf:
            - $ref: '#/components/schemas/IsoTimestamp'
          nullable: true
        completed_at:
          allOf:
            - $ref: '#/components/schemas/IsoTimestamp'
          nullable: true
        predicted_wait_time_ms:
          type: integer
          format: int32
          nullable: true
        predicted_execution_duration_ms:
          type: integer
          format: int32
          nullable: true
        execution_duration_ms:
          type: integer
          format: int32
          nullable: true
          description: >-
            How long the job actually took to run on the QPU. Null if the job
            hasn't run yet.
        shots:
          type: integer
          format: int32
        noise:
          $ref: '#/components/schemas/Noise'
          description: Only present in the response when `backend` is simulator.
        failure:
          allOf:
            - $ref: '#/components/schemas/Failure'
          nullable: true
        output:
          $ref: '#/components/schemas/JsonObject'
        settings:
          $ref: '#/components/schemas/JsonObject'
        stats:
          $ref: '#/components/schemas/JsonObject'
        results:
          allOf:
            - $ref: '#/components/schemas/JsonObject'
          nullable: true
      required:
        - id
        - status
        - type
        - backend
        - dry_run
        - submitter_id
        - project_id
        - parent_job_id
        - session_id
        - metadata
        - name
        - submitted_at
        - started_at
        - completed_at
        - predicted_wait_time_ms
        - predicted_execution_duration_ms
        - execution_duration_ms
        - failure
        - output
        - settings
        - stats
        - results
      type: object
      additionalProperties: false
    JobMetadata:
      properties: {}
      type: object
      additionalProperties:
        type: string
    IsoTimestamp:
      type: string
    Noise:
      properties:
        model:
          $ref: '#/components/schemas/NoiseModel'
        seed:
          type: integer
          format: int32
      required:
        - model
      type: object
      additionalProperties: false
    Failure:
      properties:
        code:
          type: string
          enum:
            - InvalidInput
            - CompilationError
            - ContractExpiredError
            - DebiasingError
            - InternalError
            - NotEnoughQubits
            - OptimizationError
            - PreflightError
            - QuantumCircuitComplexityError
            - QuantumComputerError
            - QuotaExhaustedError
            - SimulationError
            - SimulationTimeout
            - SystemCancel
            - TooLongPredictedExecutionTime
            - TooManyControls
            - TooManyGates
            - TooManyShots
            - UnknownBillingError
            - UnsupportedGate
        message:
          type: string
      required:
        - code
        - message
      type: object
      additionalProperties: false
    JsonObject:
      properties: {}
      type: object
      additionalProperties: {}
    NoiseModel:
      type: string
      enum:
        - ideal
        - harmony
        - harmony-1
        - harmony-2
        - aria-1
        - aria-2
        - forte-1
        - forte-enterprise-1
  securitySchemes:
    apiKeyAuth:
      description: >-
        API keys are associated with a user and can be created on the [IonQ
        Quantum Cloud](https://cloud.ionq.com) application. To authenticate,
        prefix your API Key with `apiKey ` and place it in the `Authorization`
        request header. Ex: `Authorization: apiKey your-api-key`
      in: header
      name: Authorization
      type: apiKey

````