<!--
{
  "availability" : [
    "iOS: 11.0.0 - 27.0.0",
    "iPadOS: 11.0.0 - 27.0.0",
    "macCatalyst: 13.1.0 - 27.0.0",
    "visionOS: 1.0.0 - 27.0.0",
    "watchOS: 4.0.0 - 27.0.0"
  ],
  "documentType" : "symbol",
  "framework" : "SiriKit",
  "identifier" : "/documentation/Intents/INSetTaskAttributeIntent",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Intents"
    ],
    "preciseIdentifier" : "c:objc(cs)INSetTaskAttributeIntent"
  },
  "title" : "INSetTaskAttributeIntent"
}
-->

# INSetTaskAttributeIntent

A request to modify the attributes of a task.

```
class INSetTaskAttributeIntent
```

## Overview

Siri creates an [`INSetTaskAttributeIntent`](/documentation/Intents/INSetTaskAttributeIntent) object when the user marks a task as complete or changes the triggers used to generate reminders for the task. The intent object can contain the task information and values for any changed attributes.

To handle this intent, the handler object in your Intents extension must adopt the [`INSetTaskAttributeIntentHandling`](/documentation/Intents/INSetTaskAttributeIntentHandling) protocol. Your handler should confirm the request and create an [`INSetTaskAttributeIntentResponse`](/documentation/Intents/INSetTaskAttributeIntentResponse) object with the updated task information.

### Additional Intent Attributes

The following table lists additional attributes of this intent object:

|Attribute                      |Description |
|-------------------------------|------------|
|Supported by                   |Siri Intents|
|Always requires unlocked device|No          |

### Example Phrases

Users can ask Siri to modify task attributes in a variety of ways. The table below provides a few sample phrases in different languages. You can use these phrases during testing to trigger your intents. This list isn’t exhaustive and Siri may recognize many other phrases.

|Locale|Example 1                                              |Example 2                                                       |
|------|-------------------------------------------------------|----------------------------------------------------------------|
|en    |Mark dry cleaning as complete on `<appName>`           |Check call dad off my to do list                                |
|zh_CN |标记干洗为结束(在 `<appName>` 上)                               |把给爸爸打电话从待办事项列表里面去掉                                              |
|zh_HK |喺 `<appName>` 入面將乾洗標示為完成                               |剔咗待辦事項列表入面嘅打電話俾爸爸                                               |
|zh_TW |標記乾洗為完成(在 `<appName>` 上)                               |從我的待辦事項列表中刪除打電話給爸爸                                              |
|yue_CN|喺 `<appName>` 入面将干洗标示为完成                               |剔咗待办事项列表入面嘅打电话俾爸爸                                               |
|ar    |ضع علامة على تنظيف الملابس بأنه مكتمل  `<appName>`على  |قم بإلغاء الاتصال على أبي من قائمة الأعمال                      |
|da    |marker rensning som færdiggjort i `<appName>`          |marker ring til far som færdig i min at gøre liste              |
|de    |Markiere Reinigung als erledigt auf `<appName>`        |Hake Papa anrufen auf meiner Erinnerungsliste ab                |
|es    |Marca tintorería como completado en `<appName>`        |Tacha llamar a papá de mi lista de cosas por hacer              |
|fi    |Merkitse auton pesu suoritetuksi apissa `<appName>`    |Merkitse soita isälle suoritetuksi tehtävälistalla              |
|fr    |Marque laver le linge comme terminé sur `<appName>`    |Supprime appeler papa de ma liste de choses à faire             |
|he    |תסמני ניקוי יבש כהושלם ב                               |תסמני את להתקשר לאבא ברשימת הדברים לעשות                        |
|it    |Segna pulizia a secco come completato su `<appName>`   |Segna chiamare papà come fatto sulla mia lista da fare          |
|ja    |`<appName>` でドライクリーニングを完了済みにして                         |Todoリストにある父に電話に完了のマークをつけて                                       |
|ko    |`<appName>` 에서 드라이 클리닝을 완료로 표시해줘                       |아빠에게 전화하기를 내 할 일 목록에서 체크하기                                      |
|ms    |Tandakan cucian kering selesai pada `<appName>`        |Tandakan panggil ayah sebagai selesai pada senarai tugasan      |
|nb    |Marker klesvask som utført i `<appName>`               |Huk av ringe pappa på gjørelisten min                           |
|nl    |Markeer stomerij als voltooid in `<appName>`           |Vink papa bellen af op mijn takenlijst                          |
|pt    |Marcar lavagem a seco como concluída no `<appName>`    |Marcar ligar para o pai como concluído na minha lista de tarefas|
|ru    |Пометить химчистку как завершенную в `<appName>`       |Отметь позвонить папе в моём списке дел                         |
|sv    |Markera tvätta som avklarad i `<appName>`              |Bocka av ring pappa från min att göra-lista                     |
|th    |ทำเครื่องหมายว่าเสร็จแล้วที่ซักแห้งบนแอพ `<appName>`             |ทำเครื่องหมายโทรหาพ่อว่าเสร็จแล้วในรายการสิ่งที่ต้องทำ                       |
|tr    |`<appName>`’de kuru temizlemeyi yapıldı olarak işaretle|Ödevlerim listesindeki son anımsatıcıyı yapıldı işaretle        |

In table above, `<appName>` represents the name of the app whose Intents extension handles the request.

## Topics

### Initializing the Intent Object

[`-  initWithTargetTask:taskTitle:status:priority:spatialEventTrigger:temporalEventTrigger:`](/documentation/Intents/INSetTaskAttributeIntent/init(targetTask:taskTitle:status:priority:spatialEventTrigger:temporalEventTrigger:))

Initializes the intent object with information about the task and the changes that you want to make.

[`-  initWithTargetTask:status:spatialEventTrigger:temporalEventTrigger:`](/documentation/Intents/INSetTaskAttributeIntent/init(targetTask:status:spatialEventTrigger:temporalEventTrigger:))

Initializes the intent object with information about the task and the changes that you want to make.

### Getting the Task Information

[`priority`](/documentation/Intents/INSetTaskAttributeIntent/priority)

The priority for the task.

[`taskTitle`](/documentation/Intents/INSetTaskAttributeIntent/taskTitle)

The title for the task.

[`targetTask`](/documentation/Intents/INSetTaskAttributeIntent/targetTask)

The task targetted for modification.

[`status`](/documentation/Intents/INSetTaskAttributeIntent/status)

The status to apply to the task.

[`INTaskStatus`](/documentation/Intents/INTaskStatus)

Constants indicating the completion state of a task.

### Getting the Triggers

[`temporalEventTrigger`](/documentation/Intents/INSetTaskAttributeIntent/temporalEventTrigger)

The time-based trigger to apply to the task.

[`spatialEventTrigger`](/documentation/Intents/INSetTaskAttributeIntent/spatialEventTrigger)

The location-based trigger to apply to the task.

## Relationships

### Conforms To

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

[`NSCoding`](/documentation/Foundation/NSCoding)

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

[`Hashable`](/documentation/Swift/Hashable)

[`INIntentSetImageKeyPath`](/documentation/Intents/INIntentSetImageKeyPath)

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`NSCopying`](/documentation/Foundation/NSCopying)

[`Equatable`](/documentation/Swift/Equatable)

[`NSSecureCoding`](/documentation/Foundation/NSSecureCoding)

[`CVarArg`](/documentation/Swift/CVarArg)

### Inherits From

[`INIntent`](/documentation/Intents/INIntent)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)