---
title: "init(recordZoneIDs:optionsByRecordZoneID:)"
framework: cloudkit
role: symbol
role_heading: Initializer
path: "cloudkit/ckfetchrecordzonechangesoperation/init(recordzoneids:optionsbyrecordzoneid:)"
---

# init(recordZoneIDs:optionsByRecordZoneID:)

Creates an operation for fetching record zone changes.

## Declaration

```swift
convenience init(recordZoneIDs: [CKRecordZone.ID], optionsByRecordZoneID: [CKRecordZone.ID : CKFetchRecordZoneChangesOperation.ZoneOptions]? = nil)
```

## Parameters

- `recordZoneIDs`: The IDs of the record zones that you want to query for changes.
- `optionsByRecordZoneID`: A dictionary that maps record zone IDs to their corresponding options. You can specify nil for this parameter.

## Discussion

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 options for each record zone.

## See Also

### Deprecated Methods

- [CKFetchRecordZoneChangesOperation.ZoneOptions](cloudkit/ckfetchrecordzonechangesoperation/zoneoptions.md)
