Google Quantum AI website screenshot

Google Quantum AI

Google Quantum AI is Google's quantum-computing research and engineering arm, building superconducting quantum processors (most recently the Willow chip with below-threshold quantum error correction) and the open software stack that runs on them. The team operates the Quantum Computing Service via the Quantum Engine API (quantum.googleapis.com, v1alpha1), accessed primarily through the cirq-google Python client. Google Quantum AI also stewards a portfolio of Apache 2.0 open-source quantum software — Cirq, qsim, OpenFermion, Stim, Qualtran, TensorFlow Quantum, ReCirq, Tesseract, and Unitary — published under the quantumlib GitHub organisation, plus the Willow Early Access Program for sponsored researcher access to current hardware.

10 APIs 17 Features
Quantum ComputingQuantumHardwareNISQError CorrectionWillowSycamoreCirqQuantum EngineSuperconducting QubitsGoogle Cloud

APIs

Google Quantum Engine API

The Quantum Engine API (quantum.googleapis.com, v1alpha1) lets approved Google Cloud projects upload quantum circuits as programs, run them as jobs on Google's superconducting q...

Cirq

Cirq is an Apache 2.0 Python framework for designing, manipulating, simulating, and executing Noisy Intermediate-Scale Quantum (NISQ) circuits. Cirq is the canonical client libr...

qsim

qsim is a high-performance C++ state-vector simulator with a Python (qsimcirq) binding that plugs directly into Cirq. It is optimised for AVX/AVX-512, CUDA, and cuQuantum backen...

OpenFermion

OpenFermion is an Apache 2.0 library for translating quantum chemistry and materials science problems (electronic structure, fermionic operators, second quantisation) into quant...

Stim

Stim is a fast stabilizer-circuit simulator and detector-error-model toolchain that underpins Google Quantum AI's quantum error-correction work, including the Willow surface-cod...

Qualtran

Qualtran provides abstractions (Bloqs) for expressing, decomposing, and resource-estimating fault-tolerant quantum algorithms. It is Google Quantum AI's framework for reasoning ...

TensorFlow Quantum

TensorFlow Quantum (TFQ) is a hybrid quantum-classical machine learning library that integrates Cirq circuits as differentiable layers inside TensorFlow/Keras pipelines. Maintai...

ReCirq

ReCirq is a research-grade collection of reproducible Cirq experiments and applications published by Google Quantum AI, covering Fermi-Hubbard simulations, quantum chemistry ben...

Tesseract Decoder

Tesseract is a search-based maximum-likelihood decoder for quantum error correction that accompanies Stim. It targets surface-code and color-code decoding workloads used in Will...

Unitary

Unitary is an API library for adding quantum behaviours (superposition, entanglement, measurement) into classical games and interactive software, used in Google Quantum AI's edu...

Collections

Pricing Plans

Rate Limits

Google Quantum Ai Rate Limits

0 limits

RATE LIMITS

FinOps

Features

Willow superconducting quantum processor with below-threshold quantum error correction
Quantum Engine REST/gRPC API (quantum.googleapis.com, v1alpha1) for program, job, processor, reservation, and calibration management
cirq-google as the canonical client (QuantumEngineServiceClient) wrapping the gRPC service
Cirq Python framework v1.6.x for NISQ circuit design, simulation, and execution
qsim high-performance state-vector simulator with CUDA + cuQuantum acceleration
OpenFermion for quantum chemistry and materials simulation
Stim stabilizer simulator and Tesseract decoder for surface-code QEC
Qualtran for fault-tolerant algorithm authoring and resource estimation
TensorFlow Quantum for hybrid quantum-classical machine learning
ReCirq library of reproducible research experiments
Willow Early Access Program for sponsored researcher access to the latest hardware
Google Cloud IAM / Application Default Credentials for authentication
Cirq integrations for AQT, IonQ, Pasqal, and Rigetti via dedicated subpackages
Quantum Virtual Machine (QVM) including the willow_pink target for noise-aware local simulation
Coursera "Quantum Error Correction" course produced with Google Quantum AI
Unitary game-development library for educational quantum applications
All Google Quantum AI open-source software is Apache 2.0 licensed

Semantic Vocabularies

Google Quantum Ai Context

27 classes · 5 properties

JSON-LD

API Governance Rules

Google Quantum AI API Rules

9 rules · 4 errors 4 warnings 1 info

SPECTRAL

Example Payloads

Resources

🌐
Portal
Portal
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🚀
GettingStarted
GettingStarted
🚀
GettingStarted
GettingStarted
🚀
GettingStarted
GettingStarted
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Documentation
Documentation
🔗
Documentation
Documentation
📝
Signup
Signup
🎓
Training
Training
🎓
Training
Training
📰
Blog
Blog
🔗
Twitter
Twitter
🔗
VideoChannel
VideoChannel
👥
GitHubOrganization
GitHubOrganization
📦
SDKs
SDKs
📦
SDKs
SDKs
📦
SDKs
SDKs
📦
SDKs
SDKs
📦
SDKs
SDKs
💻
CodeExamples
CodeExamples
🔧
Tools
Tools
📦
SDKs
SDKs
🔧
Tools
Tools
📦
SDKs
SDKs
📦
SDKs
SDKs
🔗
PackageURL
PackageURL
🔗
PackageURL
PackageURL
🔗
PackageURL
PackageURL
🔗
PackageURL
PackageURL
🔗
PackageURL
PackageURL
🔗
Forums
Forums
🔗
Forums
Forums
📜
TermsOfService
TermsOfService
📜
PrivacyPolicy
PrivacyPolicy
🟢
StatusPage
StatusPage
📄
ChangeLog
ChangeLog
🔗
License
License
🔗
Courses
Courses
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Google Quantum Engine API
  version: v1alpha1
request:
  auth:
    type: oauth2
    flow: authorization_code
    authorizationUrl: https://accounts.google.com/o/oauth2/auth
    accessTokenUrl: https://oauth2.googleapis.com/token
    credentials:
      clientId: '{{clientId}}'
      clientSecret: '{{clientSecret}}'
items:
- info:
    name: Programs
    type: folder
  items:
  - info:
      name: List Quantum Programs
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:parent/programs
      params:
      - name: parent
        value: ''
        type: path
        description: The parent project resource, formatted as `projects/{project_id}`.
      - name: pageSize
        value: ''
        type: query
        description: Maximum number of items to return in a page.
      - name: pageToken
        value: ''
        type: query
        description: Continuation token from a previous list response.
      - name: filter
        value: ''
        type: query
        description: AIP-160 filter expression (e.g., `labels.team = quantum`, `executionStatus.state = SUCCESS`).
    docs: List programs in a project, with optional label, time, and pagination filters.
  - info:
      name: Create Quantum Program
      type: http
    http:
      method: POST
      url: https://quantum.googleapis.com/v1alpha1/:parent/programs
      params:
      - name: parent
        value: ''
        type: path
        description: The parent project resource, formatted as `projects/{project_id}`.
      body:
        type: json
        data: '{}'
    docs: Upload a quantum program (a hardware-compatible serialised circuit) to a Google Cloud project.
  - info:
      name: Get Quantum Program
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:name
      params:
      - name: name
        value: ''
        type: path
        description: The program resource name.
    docs: Retrieve a single quantum program by resource name.
  - info:
      name: Update Quantum Program
      type: http
    http:
      method: PATCH
      url: https://quantum.googleapis.com/v1alpha1/:name
      params:
      - name: name
        value: ''
        type: path
        description: The program resource name.
      - name: updateMask
        value: ''
        type: query
        description: FieldMask listing fields to update.
      body:
        type: json
        data: '{}'
    docs: Update mutable fields (labels, description) on a quantum program.
  - info:
      name: Delete Quantum Program
      type: http
    http:
      method: DELETE
      url: https://quantum.googleapis.com/v1alpha1/:name
      params:
      - name: name
        value: ''
        type: path
        description: The program resource name.
    docs: Delete a quantum program (and cascade-delete its jobs).
- info:
    name: Jobs
    type: folder
  items:
  - info:
      name: List Quantum Jobs
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:parent/jobs
      params:
      - name: parent
        value: ''
        type: path
        description: The parent program resource, formatted as `projects/{project_id}/programs/{program_id}`.
      - name: pageSize
        value: ''
        type: query
        description: Maximum number of items to return in a page.
      - name: pageToken
        value: ''
        type: query
        description: Continuation token from a previous list response.
      - name: filter
        value: ''
        type: query
        description: AIP-160 filter expression (e.g., `labels.team = quantum`, `executionStatus.state = SUCCESS`).
    docs: List jobs belonging to a program. Supports filtering by state, label, and creation time.
  - info:
      name: Create Quantum Job
      type: http
    http:
      method: POST
      url: https://quantum.googleapis.com/v1alpha1/:parent/jobs
      params:
      - name: parent
        value: ''
        type: path
        description: The parent program resource, formatted as `projects/{project_id}/programs/{program_id}`.
      body:
        type: json
        data: '{}'
    docs: Submit a new job to execute a program on a processor or simulator backend.
  - info:
      name: Get Quantum Job
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:name/job
      params:
      - name: name
        value: ''
        type: path
        description: The job resource name.
    docs: Retrieve a single quantum job by resource name.
  - info:
      name: Update Quantum Job
      type: http
    http:
      method: PATCH
      url: https://quantum.googleapis.com/v1alpha1/:name/job
      params:
      - name: name
        value: ''
        type: path
        description: The job resource name.
      - name: updateMask
        value: ''
        type: query
        description: FieldMask listing fields to update.
      body:
        type: json
        data: '{}'
    docs: Update mutable fields (labels, description, priority) on a job.
  - info:
      name: Delete Quantum Job
      type: http
    http:
      method: DELETE
      url: https://quantum.googleapis.com/v1alpha1/:name/job
      params:
      - name: name
        value: ''
        type: path
        description: The job resource name.
    docs: Delete a quantum job and its results.
  - info:
      name: Cancel Quantum Job
      type: http
    http:
      method: POST
      url: https://quantum.googleapis.com/v1alpha1/:name:cancel
      params:
      - name: name
        value: ''
        type: path
        description: The job resource name.
    docs: Cancel a queued or running quantum job.
  - info:
      name: List Quantum Job Events
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:parent/events
      params:
      - name: parent
        value: ''
        type: path
        description: The parent job resource, formatted as `projects/{project_id}/programs/{program_id}/jobs/{job_id}`.
      - name: pageSize
        value: ''
        type: query
        description: Maximum number of items to return in a page.
      - name: pageToken
        value: ''
        type: query
        description: Continuation token from a previous list response.
    docs: List lifecycle events emitted for a job (queued, running, completed, failed).
- info:
    name: Results
    type: folder
  items:
  - info:
      name: Get Quantum Result
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:parent/result
      params:
      - name: parent
        value: ''
        type: path
        description: The parent job resource, formatted as `projects/{project_id}/programs/{program_id}/jobs/{job_id}`.
    docs: Retrieve the serialised measurement result of a completed quantum job.
- info:
    name: Processors
    type: folder
  items:
  - info:
      name: List Quantum Processors
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:parent/processors
      params:
      - name: parent
        value: ''
        type: path
        description: The parent project resource, formatted as `projects/{project_id}`.
      - name: pageSize
        value: ''
        type: query
        description: Maximum number of items to return in a page.
      - name: pageToken
        value: ''
        type: query
        description: Continuation token from a previous list response.
      - name: filter
        value: ''
        type: query
        description: AIP-160 filter expression (e.g., `labels.team = quantum`, `executionStatus.state = SUCCESS`).
    docs: List processors visible to the Google Cloud project.
  - info:
      name: Get Quantum Processor
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:name/processor
      params:
      - name: name
        value: ''
        type: path
        description: The processor resource name.
    docs: Retrieve a single quantum processor and its current device specification.
- info:
    name: Calibrations
    type: folder
  items:
  - info:
      name: List Quantum Calibrations
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:parent/calibrations
      params:
      - name: parent
        value: ''
        type: path
        description: The parent processor resource, formatted as `projects/{project_id}/processors/{processor_id}`.
      - name: pageSize
        value: ''
        type: query
        description: Maximum number of items to return in a page.
      - name: pageToken
        value: ''
        type: query
        description: Continuation token from a previous list response.
      - name: filter
        value: ''
        type: query
        description: AIP-160 filter expression (e.g., `labels.team = quantum`, `executionStatus.state = SUCCESS`).
    docs: List historical calibration snapshots for a processor.
  - info:
      name: Get Quantum Calibration
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:name/calibration
      params:
      - name: name
        value: ''
        type: path
        description: The calibration resource name.
    docs: Retrieve a single calibration snapshot for a processor.
- info:
    name: Reservations
    type: folder
  items:
  - info:
      name: List Quantum Reservations
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:parent/reservations
      params:
      - name: parent
        value: ''
        type: path
        description: The parent processor resource, formatted as `projects/{project_id}/processors/{processor_id}`.
      - name: pageSize
        value: ''
        type: query
        description: Maximum number of items to return in a page.
      - name: pageToken
        value: ''
        type: query
        description: Continuation token from a previous list response.
      - name: filter
        value: ''
        type: query
        description: AIP-160 filter expression (e.g., `labels.team = quantum`, `executionStatus.state = SUCCESS`).
    docs: List reservations on a processor.
  - info:
      name: Create Quantum Reservation
      type: http
    http:
      method: POST
      url: https://quantum.googleapis.com/v1alpha1/:parent/reservations
      params:
      - name: parent
        value: ''
        type: path
        description: The parent processor resource, formatted as `projects/{project_id}/processors/{processor_id}`.
      body:
        type: json
        data: '{}'
    docs: Reserve a future time window on a quantum processor.
  - info:
      name: Get Quantum Reservation
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:name/reservation
      params:
      - name: name
        value: ''
        type: path
        description: The reservation resource name.
    docs: Retrieve a single processor reservation.
  - info:
      name: Update Quantum Reservation
      type: http
    http:
      method: PATCH
      url: https://quantum.googleapis.com/v1alpha1/:name/reservation
      params:
      - name: name
        value: ''
        type: path
        description: The reservation resource name.
      - name: updateMask
        value: ''
        type: query
        description: FieldMask listing fields to update.
      body:
        type: json
        data: '{}'
    docs: Update a reservation's window or whitelisted users.
  - info:
      name: Delete Quantum Reservation
      type: http
    http:
      method: DELETE
      url: https://quantum.googleapis.com/v1alpha1/:name/reservation
      params:
      - name: name
        value: ''
        type: path
        description: The reservation resource name.
    docs: Delete an upcoming reservation.
  - info:
      name: Cancel Quantum Reservation
      type: http
    http:
      method: POST
      url: https://quantum.googleapis.com/v1alpha1/:name/reservation:cancel
      params:
      - name: name
        value: ''
        type: path
        description: The reservation resource name.
    docs: Cancel an in-progress reservation, freeing its remaining time.
  - info:
      name: List Quantum Time Slots
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:parent/timeSlots
      params:
      - name: parent
        value: ''
        type: path
        description: The parent processor resource, formatted as `projects/{project_id}/processors/{processor_id}`.
      - name: pageSize
        value: ''
        type: query
        description: Maximum number of items to return in a page.
      - name: pageToken
        value: ''
        type: query
        description: Continuation token from a previous list response.
      - name: filter
        value: ''
        type: query
        description: AIP-160 filter expression (e.g., `labels.team = quantum`, `executionStatus.state = SUCCESS`).
    docs: List the OPEN_SWIM / MAINTENANCE / RESERVATION / UNALLOCATED time slots for a processor.
  - info:
      name: List Quantum Reservation Budgets
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:parent/reservationBudgets
      params:
      - name: parent
        value: ''
        type: path
        description: The parent project resource, formatted as `projects/{project_id}`.
      - name: pageSize
        value: ''
        type: query
        description: Maximum number of items to return in a page.
      - name: pageToken
        value: ''
        type: query
        description: Continuation token from a previous list response.
    docs: List the reservation budgets allocated to a project.
  - info:
      name: List Quantum Reservation Grants
      type: http
    http:
      method: GET
      url: https://quantum.googleapis.com/v1alpha1/:parent/reservationGrant
      params:
      - name: parent
        value: ''
        type: path
        description: The parent project resource, formatted as `projects/{project_id}`.
      - name: pageSize
        value: ''
        type: query
        description: Maximum number of items to return in a page.
      - name: pageToken
        value: ''
        type: query
        description: Continuation token from a previous list response.
    docs: List the reservation grants (sponsorship records) available to a project.
  - info:
      name: Reallocate Quantum Reservation Grant
      type: http
    http:
      method: POST
      url: https://quantum.googleapis.com/v1alpha1/:name:reallocate
      params:
      - name: name
        value: ''
        type: path
        description: The reservation grant resource name.
      body:
        type: json
        data: '{}'
    docs: Move budget between projects sharing a reservation grant.
bundled: true