---
title: MatterAddDeviceRequest
framework: mattersupport
role: symbol
role_heading: Structure
path: mattersupport/matteradddevicerequest
---

# MatterAddDeviceRequest

A request that adds and sets up a device into an ecosystem.

## Declaration

```swift
struct MatterAddDeviceRequest
```

## Topics

### Creating the request

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

### Setting up the request

- [MatterAddDeviceRequest.Home](mattersupport/matteradddevicerequest/home.md)
- [MatterAddDeviceRequest.Room](mattersupport/matteradddevicerequest/room.md)
- [MatterAddDeviceRequest.Topology](mattersupport/matteradddevicerequest/topology-swift.struct.md)
- [setupPayload](mattersupport/matteradddevicerequest/setuppayload.md)
- [topology](mattersupport/matteradddevicerequest/topology-swift.property.md)

### Defining the device criteria

- [MatterAddDeviceRequest.DeviceCriteria](mattersupport/matteradddevicerequest/devicecriteria.md)
- [showDeviceCriteria](mattersupport/matteradddevicerequest/showdevicecriteria.md)

### Performing the request

- [shouldScanNetworks](mattersupport/matteradddevicerequest/shouldscannetworks.md)
- [perform()](mattersupport/matteradddevicerequest/perform().md)

### Type Properties

- [isSupported](mattersupport/matteradddevicerequest/issupported.md)

### Default Implementations

- [Decodable Implementations](mattersupport/matteradddevicerequest/decodable-implementations.md)

## Relationships

### Conforms To

- [Copyable](swift/copyable.md)
- [Decodable](swift/decodable.md)
- [Encodable](swift/encodable.md)
- [Equatable](swift/equatable.md)
- [Escapable](swift/escapable.md)
- [Hashable](swift/hashable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Adding a device

- [Adding Matter support to your ecosystem](mattersupport/adding-matter-support-to-your-ecosystem.md)
- [MatterAddDeviceExtensionRequestHandler](mattersupport/matteradddeviceextensionrequesthandler.md)
