Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

The getPorts() method of the Serial interface returns a Promise that resolves with an array of SerialPort objects representing serial ports connected to the host which the origin has permission to access.


var promise = Serial.getPorts();

Return value

A Promise that resolves with an array of SerialPort objects.


DOMException "SecurityError"

The returned Promise rejects with this error if a Feature Policy restricts use of this API or a permission to use it has not granted via a user gesture.


The following example uses getPorts() to initialize a list of available ports.

navigator.serial.getPorts().then((ports) => {
  // Initialize the list of available ports with `ports` on page load.


Web Serial API
# dom-serial-getports

Browser compatibility

BCD tables only load in the browser