<!--
{
  "availability" : [
    "iOS: 11.0.0 -",
    "iPadOS: 11.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.13.0 -",
    "tvOS: 11.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 4.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CloudKit",
  "identifier" : "/documentation/CloudKit/CKOperation/Configuration-swift.class",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "CloudKit"
    ],
    "preciseIdentifier" : "c:objc(cs)CKOperationConfiguration"
  },
  "title" : "CKOperation.Configuration"
}
-->

# CKOperation.Configuration

An object that describes how a CloudKit operation behaves.

```
class Configuration
```

## Overview

All of the properties in `CKOperationConfiguration` have a default value. When determining which properties to apply to a CloudKit operation, consult the operation’s configuration property, as well as the [`defaultConfiguration`](/documentation/CloudKit/CKOperationGroup/defaultConfiguration) property of the group that the operation belongs to. These properties combine through the following rules:

|Group default configuration value|Operation configuration value|Value applied to operation               |
|---------------------------------|-----------------------------|-----------------------------------------|
|default value                    |default value                |default value                            |
|default value                    |explicit value               |operation.configuration explicit value   |
|explicit value                   |default value                |group.defaultConfiguration explicit value|
|explicit value                   |explicit value               |operation.configuration explicit value   |

## Topics

### Preparing a Configuration

[`allowsCellularAccess`](/documentation/CloudKit/CKOperation/Configuration-swift.class/allowsCellularAccess)

A Boolean value that indicates whether operations that use this configuration can send data over the cellular network.

[`container`](/documentation/CloudKit/CKOperation/Configuration-swift.class/container)

The configuration’s container.

[`isLongLived`](/documentation/CloudKit/CKOperation/Configuration-swift.class/isLongLived)

A Boolean value that indicates whether the operations that use this configuration are long-lived.

[`qualityOfService`](/documentation/CloudKit/CKOperation/Configuration-swift.class/qualityOfService)

The priority that the system uses when it allocates resources to the operations that use this configuration.

[`timeoutIntervalForRequest`](/documentation/CloudKit/CKOperation/Configuration-swift.class/timeoutIntervalForRequest)

The maximum amount of time that a request can take.

[`timeoutIntervalForResource`](/documentation/CloudKit/CKOperation/Configuration-swift.class/timeoutIntervalForResource)

The maximum amount of time that a resource request can take.



---

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)