Documentation Archive

Developer

CloudKit Web Services Reference

On This Page

Modifying Zones (zones/modify)

You can apply multiple operations—such as create and delete zones—to different zones in a single request.

Path

POST [path]/database/[version]/[container]/[environment]/[database]/zones/modify

Parameters

path

The URL to the CloudKit web service, which is https://api.apple-cloudkit.com.

version

The protocol version—currently, 1.

container

A unique identifier for the app’s container. The container ID begins with iCloud..

environment

The version of the app’s container. Pass development to use the environment that is not accessible by apps available on the store. Pass production to use the environment that is accessible by development apps and apps available on the store.

database

The database to store the data within the container. Pass public to use the database that is accessible to all users of the app. Pass private to use the database that is visible only to the currently signed-in user.

Request

The POST request is a JSON dictionary containing the following keys:

Key

Description

operations

Array of dictionaries defining the operations to apply to zones in the database. The dictionary keys are described in Zone Operation Dictionary. This key is required.

Zone Operation Dictionary

The dictionary keys for an operation are:

Key

Description

operationType

The type of operation. Possible values are either create or delete. This key is required.

zone

A dictionary representing the zone to modify. It has a single zoneID key, described in Zone ID Dictionary. This key is required.

Response

The response is a dictionary containing the results per operation with the following key:

Key

Description

zones

An array containing a result dictionary for each zone in the zones request array. If successful, the result dictionary contains the keys described in Zone Dictionary. If unsuccessful, the result dictionary contains the keys described in Zone Fetch Error Dictionary.

Discussion

All operations are attempted and performed in the order they appear in the operations array in the request. Check the zones array in the response for which operations are successful. Only one operation is permitted per zone in the request.

Related Framework API

This request is similar to using the CKModifyRecordZonesOperation class in the CloudKit framework.