One Logo Pool Ball
CloudKit · IOS API REFERENCE

CKSyncEngine.RecordZoneChangeBatch

struct · iOS 17.0+ · SDK 27.1

struct RecordZoneChangeBatch

A type that contains the record changes for a single send operation.

Members (8)

get · iOS 17.0+

atomicByZone

TypeScript
get atomicByZone(): boolean
Swift declaration
var atomicByZone: Bool

A Boolean value that determines whether CloudKit modifies records atomically by record zone. When <doc://com.apple.documentation/documentation/swift/true>, CloudKit processes record changes atomically by record zone, and if any individual change fails, all other changes in that record's record zone fail and return an error of type ``CKError/Code/batchRequestFailed``. The default value is <doc://com.apple.documentation/documentation/swift/false>.

set · iOS 17.0+

atomicByZone

TypeScript
set atomicByZone(value: boolean)
Swift declaration
var atomicByZone: Bool

A Boolean value that determines whether CloudKit modifies records atomically by record zone. When <doc://com.apple.documentation/documentation/swift/true>, CloudKit processes record changes atomically by record zone, and if any individual change fails, all other changes in that record's record zone fail and return an error of type ``CKError/Code/batchRequestFailed``. The default value is <doc://com.apple.documentation/documentation/swift/false>.

get · iOS 17.0+

description

TypeScript
get description(): string
Swift declaration
var description: String { get }

The textual description of the batch that's suitable for logging.

init · iOS 17.0+

init

TypeScript
static init(recordsToSave?: Array<CKRecord>, recordIDsToDelete?: Array<CKRecord_ID>, atomicByZone?: boolean): CKSyncEngine_RecordZoneChangeBatch
Swift declaration
init(recordsToSave: [CKRecord] = [], recordIDsToDelete: [CKRecord.ID] = [], atomicByZone: Bool = false)

Creates a batch of records to modify. - Parameters: - recordsToSave: The records to save. - recordIDsToDelete: The identifiers of the records to delete. - atomicByZone: A Boolean value that determines whether CloudKit modifies the specified records atomically by record zone. - Important: When using this initializer to create batches, consider the number of records you specify and their combined size. If you specify too many records, or their combined size is too large, the send operation may fail with an error of type ``CKError/Code/limitExceeded``.

get · iOS 17.0+

recordsToSave

TypeScript
get recordsToSave(): Array<CKRecord>
Swift declaration
var recordsToSave: [CKRecord]

The records to save.

set · iOS 17.0+

recordsToSave

TypeScript
set recordsToSave(value: Array<CKRecord>)
Swift declaration
var recordsToSave: [CKRecord]

The records to save.

get · iOS 17.0+

recordIDsToDelete

TypeScript
get recordIDsToDelete(): Array<CKRecord_ID>
Swift declaration
var recordIDsToDelete: [CKRecord.ID]

The record identifiers of the records to delete.

set · iOS 17.0+

recordIDsToDelete

TypeScript
set recordIDsToDelete(value: Array<CKRecord_ID>)
Swift declaration
var recordIDsToDelete: [CKRecord.ID]

The record identifiers of the records to delete.

Skipped declarations

1 declarations were excluded from these bindings. Each reason comes from the generator or the iOS SDK compiler.

CKSyncEngine.RecordZoneChangeBatch.init(pendingChanges:recordProvider:)

This Swift callback must itself suspend asynchronously. (nonthrowing, so a rejected promise cannot reach swift)

All CloudKit types →