---
title: "addTrigger(_:completionHandler:)"
framework: homekit
role: symbol
role_heading: Instance Method
path: "homekit/hmhome/addtrigger(_:completionhandler:)"
---

# addTrigger(_:completionHandler:)

Adds a trigger to the home.

## Declaration

```swift
func addTrigger(_ trigger: HMTrigger, completionHandler completion: @escaping @Sendable ((any Error)?) -> Void)
```

```swift
func addTrigger(_ trigger: HMTrigger) async throws
```

## Parameters

- `trigger`: The name of the new trigger. Must not be nil, and must not be the name of a trigger already in the home.
- `completion`: The block executed after the request is processed.

## See Also

### Triggering an action set

- [triggers](homekit/hmhome/triggers.md)
- [removeTrigger(_:completionHandler:)](homekit/hmhome/removetrigger(_:completionhandler:).md)
- [HMTimerTrigger](homekit/hmtimertrigger.md)
- [HMEventTrigger](homekit/hmeventtrigger.md)
- [HMTrigger](homekit/hmtrigger.md)
