<!--
{
  "documentType" : "article",
  "framework" : "AppIntents",
  "identifier" : "/documentation/AppIntents/IntentParameter-Measurements-Duration",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Durations"
}
-->

# Durations

Configure the details for parameter variables that contain durations.

## Topics

### Creating an intent parameter

[`convenience init(title: LocalizedStringResource, description: LocalizedStringResource?, defaultValue: Double?, defaultUnit: IntentParameter<Value>.Duration?, defaultUnitAdjustForLocale: Bool, supportsNegativeNumbers: Bool, requestValueDialog: IntentDialog?, inputConnectionBehavior: InputConnectionBehavior)`](/documentation/AppIntents/IntentParameter/init(title:description:defaultValue:defaultUnit:defaultUnitAdjustForLocale:supportsNegativeNumbers:requestValueDialog:inputConnectionBehavior:)-9llvy)

Creates an app intent parameter with a default unit for the measurement.

[`convenience init<Spec>(title: LocalizedStringResource, description: LocalizedStringResource?, defaultValue: Double?, defaultUnit: IntentParameter<Value>.Duration?, defaultUnitAdjustForLocale: Bool, supportsNegativeNumbers: Bool, requestValueDialog: IntentDialog?, inputConnectionBehavior: InputConnectionBehavior, resolvers: () -> Spec)`](/documentation/AppIntents/IntentParameter/init(title:description:defaultValue:defaultUnit:defaultUnitAdjustForLocale:supportsNegativeNumbers:requestValueDialog:inputConnectionBehavior:resolvers:)-3enhk)

Creates an app intent parameter with a default unit for the measurement.

[`convenience init(title: LocalizedStringResource, description: LocalizedStringResource?, defaultValue: Double?, unit: IntentParameter<Value>.Duration, unitAdjustForLocale: Bool, supportsNegativeNumbers: Bool, requestValueDialog: IntentDialog?, inputConnectionBehavior: InputConnectionBehavior)`](/documentation/AppIntents/IntentParameter/init(title:description:defaultValue:unit:unitAdjustForLocale:supportsNegativeNumbers:requestValueDialog:inputConnectionBehavior:)-1nq46)

Creates an app intent parameter that specifies the unit for the measurement.

[`convenience init<Spec>(title: LocalizedStringResource, description: LocalizedStringResource?, defaultValue: Double?, unit: IntentParameter<Value>.Duration, unitAdjustForLocale: Bool, supportsNegativeNumbers: Bool, requestValueDialog: IntentDialog?, inputConnectionBehavior: InputConnectionBehavior, resolvers: () -> Spec)`](/documentation/AppIntents/IntentParameter/init(title:description:defaultValue:unit:unitAdjustForLocale:supportsNegativeNumbers:requestValueDialog:inputConnectionBehavior:resolvers:)-92pkd)

Creates an app intent parameter that specifies the unit for the measurement.

[`convenience init<OptionsProvider>(title: LocalizedStringResource, description: LocalizedStringResource?, requestValueDialog: IntentDialog?, inputConnectionBehavior: InputConnectionBehavior, optionsProvider: OptionsProvider)`](/documentation/AppIntents/IntentParameter/init(title:description:requestValueDialog:inputConnectionBehavior:optionsProvider:)-hetl)

Creates an app intent parameter with a list of selectable options.

[`convenience init<Spec, OptionsProvider>(title: LocalizedStringResource, description: LocalizedStringResource?, requestValueDialog: IntentDialog?, inputConnectionBehavior: InputConnectionBehavior, resolvers: () -> Spec, optionsProvider: OptionsProvider)`](/documentation/AppIntents/IntentParameter/init(title:description:requestValueDialog:inputConnectionBehavior:resolvers:optionsProvider:)-8ba5t)

Creates an app intent parameter with a list of selectable options that can convert the selected value.

### Accessing unit details

[`var unit: IntentParameter<Value>.Duration?`](/documentation/AppIntents/IntentParameter/unit-6yxwx)

[`enum Duration`](/documentation/AppIntents/IntentParameter/Duration)

[`var defaultUnit: IntentParameter<Value>.Duration?`](/documentation/AppIntents/IntentParameter/defaultUnit-7lkkh)

[`var supportsNegativeNumbers: Bool?`](/documentation/AppIntents/IntentParameter/supportsNegativeNumbers-89ub3)

[`var unitAdjustForLocale: Bool?`](/documentation/AppIntents/IntentParameter/unitAdjustForLocale-2bek3)



---

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)