---
title: UndoableIntent
framework: appintents
role: symbol
role_heading: Protocol
path: appintents/undoableintent
---

# UndoableIntent

An interface you use to register undoable actions in your app intent code.

## Declaration

```swift
protocol UndoableIntent : SystemIntent
```

## Mentioned in

Creating your first app intent

## Overview

Overview Add support for this protocol if your app intent performs a task that someone might want to undo from your app’s interface. This protocol provides access to an instance of the UndoManager type suitable for use in your app intent’s code. You can use this undo manager from either your app or an app extension you use to run app intents. For more information about adding undo support to your code, see the UndoManager type.

## Topics

### Getting the undo manager

- [undoManager](appintents/undoableintent/undomanager.md)

## Relationships

### Inherits From

- [AppIntent](appintents/appintent.md)
- [PersistentlyIdentifiable](appintents/persistentlyidentifiable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
- [SystemIntent](appintents/systemintent.md)

## See Also

### Add-on behaviors

- [CancellableIntent](appintents/cancellableintent.md)
- [LongRunningIntent](appintents/longrunningintent.md)
- [PredictableIntent](appintents/predictableintent.md)
- [IntentPrediction](appintents/intentprediction.md)
