---
title: timeoutIntervalForRequest
framework: foundation
role: symbol
role_heading: Instance Property
path: foundation/urlsessionconfiguration/timeoutintervalforrequest
---

# timeoutIntervalForRequest

The timeout interval to use when waiting for additional data.

## Declaration

```swift
var timeoutIntervalForRequest: TimeInterval { get set }
```

## Discussion

Discussion This property determines the request timeout interval for all tasks within sessions based on this configuration. The request timeout interval controls how long (in seconds) a task should wait for additional data to arrive before giving up. The timer associated with this value is reset whenever new data arrives. When the request timer reaches the specified interval without receiving any new data, it triggers a timeout. The default value is 60. important: Any upload or download tasks created by a background session are automatically retried if the original request fails due to a timeout. To configure how long an upload or download task should be allowed to be retried or transferred, use the timeoutIntervalForResource property.

## See Also

### Setting general properties

- [identifier](foundation/urlsessionconfiguration/identifier.md)
- [httpAdditionalHeaders](foundation/urlsessionconfiguration/httpadditionalheaders.md)
- [networkServiceType](foundation/urlsessionconfiguration/networkservicetype.md)
- [allowsCellularAccess](foundation/urlsessionconfiguration/allowscellularaccess.md)
- [timeoutIntervalForResource](foundation/urlsessionconfiguration/timeoutintervalforresource.md)
- [sharedContainerIdentifier](foundation/urlsessionconfiguration/sharedcontaineridentifier.md)
- [waitsForConnectivity](foundation/urlsessionconfiguration/waitsforconnectivity.md)
- [usesClassicLoadingMode](foundation/urlsessionconfiguration/usesclassicloadingmode.md)
