Machines

List targets

The gate-model machines available to your account — always-on simulators and real quantum processors — with live availability and price. Read this list rather than hard-coding ids: the fleet changes. Analog (non-gate) devices are never listed here, because a QASM circuit cannot execute on them.

get/v1/machines

Request

  • Base URL: https://api.roroquantum.com
  • URL: https://api.roroquantum.com/v1/machines
  • Auth: HTTP bearer

Response

Available targets

targetIdstring

The codename to pass as machineTargetId (or targetId) when submitting.

displayNamestring
providerstring

roro for RoRo's own simulators and for white-labeled partner hardware; the real vendor (amazon, ibm, ionq) for machines that keep their brand.

kind'sim' | 'qpu'

Coarse class: simulator or quantum processor.

qubitsinteger

Maximum qubits for this target.

costPerShotnumber double

The catalogue's credits per shot. On a per-shot machine a run costs shots × costPerShot; on any other priceModel the quote is the only price. 0 on RoRo's own simulators; a machine your organization's plan makes free (see free) keeps its catalogue rate here, and a run on it charges nothing.

freeboolean

True when a run here charges YOU nothing: RoRo's own simulators (roro.sim.*, free by catalogue policy), and machines your organization's plan makes free to its members (an institution's plan can cover cloud simulators, within its own daily allowance; such a run can still be refused once that allowance is used up, and the quote says so). Computed for the organization your runs bill when no workspace is named; a run in another organization's workspace is priced by that organization, and the quote is the authority. Print the word from this flag, never from costPerShot == 0 (an analog device, or a machine priced by device time, also reports 0).

priceModel'free' | 'per-shot' | 'per-second' | 'per-job'

How this machine prices a run for you: free (whenever free is true), per-shot (every rate below is 0), per-second (a rate per projected quantum-second, usually with a per-job minimum), or per-job (a job fee or minimum on top of the per-shot rate). These are RATES; what a run costs is what POST /v1/runs/quote answers.

costPerSecondnumber double

Credits per projected quantum-second (0 when the machine has no time rate).

costPerJobnumber double

Credits added to every job (0 when none).

minJobCreditsnumber double

The least a job costs, in credits (0 when there is no floor).

onlineboolean

True when the target is accepting runs right now.

status'online' | 'offline' | 'busy'

busy is an external machine that is queued/inactive/health-degraded — runs may still be accepted.

queueDepthinteger nullable

Jobs ahead on the backend when the machine reports it; null when unknown (simulators).

type'aer' | 'qsimulator' | 'qtester' | 'qpu'

Machine taxonomy: aer = instant local simulator, qsimulator = partner-grade simulator, qtester = hardware test device, qpu = real quantum processor.

modality'simulator' | 'superconducting' | 'trapped-ion' | 'neutral-atom'

The physics of the device.

connectivity'all-to-all' | 'nearest-neighbour' | 'programmable' | 'limited'

Coarse qubit-connectivity class (the coupling map of a brand-kept machine is on its properties).

nativeGatesstring[]

The gate basis the hardware physically executes (informational — the server transpiles your circuit down to it).

availabilitystring

A one-line

analogboolean

Always false on this list — analog (Hamiltonian-schedule) devices cannot run QASM and are not offered here.

resiliencestring[]

Error-mitigation methods a run on this machine may request right now (resilience on a run). Empty when none — resilienceNote says why.

resilienceNotestring

Why nothing is offered (e.g. an exact simulator has no readout error to mitigate), or a note on what is (e.g. a layout hint is advisory). Empty when there is nothing to add.

resilienceState'offered' | 'switched-off-by-operator' | 'not-offered'

offered; switched-off-by-operator (available on this class of machine, switched off right now); not-offered (does not apply here).

resilienceMaxEffectiveShotsinteger nullable

The most shot-equivalents one resilience run may bill here; null when nothing is offered.

Example response

[
  {
    "targetId": "roro.sim.sv",
    "displayName": "RoRo Statevector Simulator",
    "provider": "roro",
    "kind": "sim",
    "qubits": 22,
    "free": true,
    "priceModel": "per-shot",
    "online": true,
    "status": "online",
    "type": "aer",
    "modality": "simulator",
    "connectivity": "all-to-all",
    "nativeGates": [
      "h",
      "x",
      "y",
      "z",
      "rx",
      "ry",
      "rz",
      "cx",
      "cz",
      "measure"
    ],
    "availability": "Always on — instant, exact simulation.",
    "resilience": [
      "readout",
      "zne"
    ],
    "resilienceState": "offered",
    "resilienceMaxEffectiveShots": 12000,
    "calibration": {
      "processorType": "Heron r2",
      "twoQubitErrorMedian": 0.0035,
      "readoutErrorMedian": 0.012,
      "syncedAt": "2026-09-23T10:00:00Z"
    }
  }
]

Changes

No recorded changes to this operation across all 1 revision of this API.