---
title: QasmBackendConfiguration (latest version)
description: API reference for qiskit_ibm_runtime.models.QasmBackendConfiguration in the latest version of qiskit-ibm-runtime
source: https://quantum.cloud.ibm.com/docs/en/api/qiskit-ibm-runtime/models-qasm-backend-configuration
---

# QasmBackendConfiguration

*class* `QasmBackendConfiguration(backend_name, backend_version, n_qubits, basis_gates, gates, local, simulator, conditional, open_pulse, memory, coupling_map, meas_levels=None, meas_kernels=None, discriminators=None, meas_map=None, supported_instructions=None, dynamic_reprate_enabled=False, rep_delay_range=None, default_rep_delay=None, sample_name=None, n_registers=None, register_map=None, configurable=None, credits_required=None, online_date=None, display_name=None, description=None, tags=None, dt=None, dtm=None, processor_type=None, parametric_pulses=None, **kwargs)`

[GitHub](https://github.com/Qiskit/qiskit-ibm-runtime/tree/stable/0.48/qiskit_ibm_runtime/models/backend_configuration.py#L185-L488)

Bases: `object`

Class representing an OpenQASM 2.0 Backend Configuration.

### backend\_name

backend name.

### backend\_version

backend version in the form X.Y.Z.

### n\_qubits

number of qubits.

### basis\_gates

list of basis gates names on the backend.

### gates

list of basis gates on the backend.

### local

backend is local or remote.

### simulator

backend is a simulator.

### conditional

backend supports conditional operations.

### open\_pulse

backend supports open pulse.

### memory

backend supports memory.

**Parameters**

- **backend\_name** (*str*) – The backend name

- **backend\_version** (*str*) – The backend version in the form X.Y.Z

- **n\_qubits** (*int*) – the number of qubits for the backend

- **basis\_gates** (*list*) – The list of strings for the basis gates of the backends

- **gates** (*list*) – The list of GateConfig objects for the basis gates of the backend

- **local** (*bool*) – True if the backend is local or False if remote

- **simulator** (*bool*) – True if the backend is a simulator

- **conditional** (*bool*) – True if the backend supports conditional operations

- **open\_pulse** (*bool*) – True if the backend supports OpenPulse

- **memory** (*bool*) – True if the backend supports memory

- **coupling\_map** (*list*) – The coupling map for the device

- **meas\_levels** (*list\[int] | None*) – Supported measurement levels.

- **meas\_kernels** (*list\[str] | None*) – Supported measurement kernels.

- **discriminators** (*list\[str] | None*) – Supported discriminators.

- **meas\_map** (*list | None*) – Grouping of measurement which are multiplexed

- **supported\_instructions** (*list\[str] | None*) – Instructions supported by the backend.

- **dynamic\_reprate\_enabled** (*bool*) – whether delay between programs can be set dynamically (ie via `rep_delay`). Defaults to False.

- **rep\_delay\_range** (*list\[float] | None*) – 2d list defining supported range of repetition delays for backend in μs. First entry is lower end of the range, second entry is higher end of the range. Optional, but will be specified when `dynamic_reprate_enabled=True`.

- **default\_rep\_delay** (*float | None*) – Value of `rep_delay` if not specified by user and `dynamic_reprate_enabled=True`.

- **sample\_name** (*str | None*) – Sample name for the backend

- **n\_registers** (*int | None*) – Number of register slots available for feedback (if conditional is True)

- **register\_map** (*list | None*) – An array of dimension n\_qubits X n\_registers that specifies whether a qubit can store a measurement in a certain register slot.

- **configurable** (*bool | None*) – True if the backend is configurable, if the backend is a simulator

- **credits\_required** (*bool | None*) – True if backend requires credits to run a job.

- **online\_date** (*datetime.datetime | None*) – The date that the device went online

- **display\_name** (*str | None*) – Alternate name field for the backend

- **description** (*str | None*) – A description for the backend

- **tags** (*list | None*) – A list of string tags to describe the backend

- **dt** (*float | None*) – Qubit drive channel timestep in nanoseconds.

- **dtm** (*float | None*) – Measurement drive channel timestep in nanoseconds.

- **processor\_type** (*dict | None*) –

  Processor type for this backend. A dictionary of the form `{"family": <str>, "revision": <str>, segment: <str>}` such as `{"family": "Canary", "revision": "1.0", segment: "A"}`.

  - family: Processor family of this backend.
  - revision: Revision version of this processor.
  - segment: Segment this processor belongs to within a larger chip.

- **parametric\_pulses** (*list | None*) – A list of pulse shapes which are supported on the backend. For example: `['gaussian', 'constant']`

- **kwargs** (*Any*) – optional fields

## Attributes

### num\_qubits

Returns the number of qubits.

In future, n\_qubits should be replaced in favor of num\_qubits for consistent use throughout Qiskit. Until this is properly refactored, this property serves as intermediate solution.

## Methods

### from\_dict

*classmethod* `from_dict(data)`

[GitHub](https://github.com/Qiskit/qiskit-ibm-runtime/tree/stable/0.48/qiskit_ibm_runtime/models/backend_configuration.py#L375-L391)

Create a new GateConfig object from a dictionary.

**Parameters**

**data** (*dict\[str, Any]*) – A dictionary representing the GateConfig to create. It will be in the same format as output by [`to_dict()`](#qiskit_ibm_runtime.models.QasmBackendConfiguration.to_dict "qiskit_ibm_runtime.models.QasmBackendConfiguration.to_dict").

**Returns**

The GateConfig from the input dictionary.

**Return type**

*QasmBackendConfigurationT*

### to\_dict

`to_dict()`

[GitHub](https://github.com/Qiskit/qiskit-ibm-runtime/tree/stable/0.48/qiskit_ibm_runtime/models/backend_configuration.py#L393-L469)

Return a dictionary format representation of the GateConfig.

**Returns**

The dictionary form of the GateConfig.

**Return type**

dict\[str, *Any*]
