<!--
{
  "availability" : [
    "iOS: 12.0.0 -",
    "iPadOS: 12.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.14.0 -",
    "swift: 4.2.0 -",
    "tvOS: 12.0.0 -",
    "visionOS: -",
    "watchOS: 5.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CloudKit",
  "identifier" : "/documentation/CloudKit/CKFetchRecordZoneChangesOperation/init(recordZoneIDs:configurationsByRecordZoneID:)",
  "metadataVersion" : "0.1.0",
  "role" : "Initializer",
  "symbol" : {
    "kind" : "Initializer",
    "modules" : [
      "CloudKit"
    ],
    "preciseIdentifier" : "s:So33CKFetchRecordZoneChangesOperationC8CloudKitE06recordC3IDs016configurationsBybC2IDABSaySo08CKRecordcL0CGSg_SDyAGSo0abcD13ConfigurationCGSgtcfc"
  },
  "title" : "init(recordZoneIDs:configurationsByRecordZoneID:)"
}
-->

# init(recordZoneIDs:configurationsByRecordZoneID:)

Creates an operation for fetching record zone changes.

```
convenience init(recordZoneIDs: [CKRecordZone.ID]? = nil, configurationsByRecordZoneID: [CKRecordZone.ID : CKFetchRecordZoneChangesOperation.ZoneConfiguration]? = nil)
```

## Parameters

`recordZoneIDs`

The IDs of the record zones that you want to query for changes. You can specify `nil` for this parameter.

`configurationsByRecordZoneID`

A dictionary that maps record zone IDs to their corresponding configurations. You can specify `nil` for this parameter.

## Discussion

CloudKit configures the operation for retrieving all of the record zones that you specify. If you want to reduce the amount of data that CloudKit returns, provide zone configurations for each record zone.

---

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)