---
title: "init(topology:setupPayload:showing:shouldScanNetworks:)"
framework: mattersupport
role: symbol
role_heading: Initializer
path: "mattersupport/matteradddevicerequest/init(topology:setuppayload:showing:shouldscannetworks:)"
---

# init(topology:setupPayload:showing:shouldScanNetworks:)

Create the request with an optional network scan.

## Declaration

```swift
init(topology: MatterAddDeviceRequest.Topology, setupPayload: MTRSetupPayload? = nil, showing deviceCriteria: MatterAddDeviceRequest.DeviceCriteria = .allDevices, shouldScanNetworks: Bool = true)
```

## Parameters

- `topology`: The topology of the home.
- `setupPayload`: The setup payload.
- `shouldScanNetworks`: A flag that determines whether to request a network scan.

## See Also

### Creating the request

- [init(from:)](mattersupport/matteradddevicerequest/init(from:).md)
- [init(topology:setupPayload:showing:)](mattersupport/matteradddevicerequest/init(topology:setuppayload:showing:).md)
