---
title: "DeferredProperty(title:indexingKey:)"
framework: appintents
role: symbol
role_heading: Macro
path: "appintents/deferredproperty(title:indexingkey:)"
---

# DeferredProperty(title:indexingKey:)

A macro that adds an asynchronous app entity property with an asynchronous get accessor.

## Declaration

```swift
@attached(peer, names: prefixed(`$`), prefixed(`_`)) @attached(accessor, names: named(get), named(set)) macro DeferredProperty(title: LocalizedStringResource, indexingKey: PartialKeyPath<CSSearchableItemAttributeSet>)
```

## Parameters

- `title`: A localized string resource describing the property for display in the user interface.
- `indexingKey`: A Spotlight attribute set key mapping for this property.

## Example

Example struct Restaurant: AppEntity {     var model: Menu

@DeferredProperty(title: "Popular Items", indexingKey: \.displayName)     var popularItems: [MenuItem] {         get async {             await model.server.popularMenuItems()         }     } }

## See Also

### Property declarations

- [ComputedProperty()](appintents/computedproperty().md)
- [ComputedProperty(title:)](appintents/computedproperty(title:).md)
- [ComputedProperty(indexingKey:)](appintents/computedproperty(indexingkey:).md)
- [ComputedProperty(customIndexingKey:)](appintents/computedproperty(customindexingkey:).md)
- [ComputedProperty(title:customIndexingKey:)](appintents/computedproperty(title:customindexingkey:).md)
- [ComputedProperty(title:indexingKey:)](appintents/computedproperty(title:indexingkey:).md)
- [DeferredProperty()](appintents/deferredproperty().md)
- [DeferredProperty(title:)](appintents/deferredproperty(title:).md)
- [DeferredProperty(indexingKey:)](appintents/deferredproperty(indexingkey:).md)
- [EntityProperty](appintents/entityproperty.md)
- [EntityPropertyModifiers](appintents/entitypropertymodifiers.md)
- [Property comparators](appintents/property-comparators.md)
