Skip to main content
Circuit formats describe the shape of a quantum circuit payload. The same identifiers apply at two points in a job’s lifecycle:
  • On submission — the input of a job carries a circuit in one of these formats (e.g. native-gate JSON for ionq.circuit.v1 with gateset: native).
  • After compilation — when the compiler transpiles a circuit to the target backend, the result is itself a circuit. It surfaces on the job’s output.compilation.compiled_circuits map, keyed by the same format identifier with each value an ArtifactDescriptor. Pass the descriptor’s id to the artifact endpoint to download the compiled circuit.
To fetch the JSON Schema for a format, call GET /v0.4/schemas/formats/{format} with the identifier.

Catalog of supported circuit artifact formats. The same identifiers are used both when a circuit is submitted (the job input payload) and when the compiler emits a transpiled circuit (the job output.compilation.compiled_circuits map) — both are circuits, just at different stages of the pipeline.

Each property below documents one format's payload structure. Used by the Circuit formats docs page.

ionq.native.v1
object
required

ionq.native.v1 — Compiled circuit expressed in IonQ native gates. Same shape as the native-gate circuit accepted on job creation: a qubit count plus an ordered list of native gate operations.

Example:
{
  "qubits": 2,
  "circuit": [
    {
      "gate": "ms",
      "targets": [0, 1],
      "phases": [0, 0.25]
    },
    {
      "gate": "gpi2",
      "target": 0,
      "phase": 0.75
    }
  ]
}