Navigation

Add Custom Zone Mappings

Note

Groups and projects are synonymous terms. Your {GROUP-ID} is the same as your project ID. For existing groups, your group/project ID remains the same. The resource and corresponding endpoints use the term groups.

The Atlas API uses HTTP Digest Authentication. Provide your Atlas username and API key as the username and password when constructing the HTTP request.

For complete documentation on configuring API access for an Atlas project, see Configure Atlas API Access.

Base URL: https://cloud.mongodb.com/api/atlas/v1.0

Add an entry to the list of custom zone mappings for the specified Global Cluster.

Syntax

POST /groups/{GROUP-ID}/clusters/{CLUSTER-NAME}/globalWrites/customZoneMapping

Request Path Parameters

Path Element Required/Optional Description
GROUP-ID Required. The unique identifier for the project that contains the Global Cluster.
CLUSTER-NAME Required. The name of the Global Cluster.

Request Query Parameters

This endpoint may use any of the HTTP request query parameters available to all Atlas API resources. These are all optional.

Name Type Description Default
pretty boolean Displays response in a prettyprint format. false
envelope boolean Specifies whether or not to wrap the response in an envelope. false

Request Body Parameters

The request body for this endpoint requires a document with at least one custom zone mapping, as shown in the following example:

{ "customZoneMappings": [ { "location": <code>, "zone": <zone>}, ... ] }
Name Type Description
customZoneMappings document array Each document in the array maps one ISO location code to a zone in your Global Cluster.
customZoneMappings[n].location string Required The ISO location code to which you want to map a zone in your Global Cluster. You can find a list of all supported location codes here.
customZoneMappings[n].zone string Required The name of the zone in your Global Cluster that you want to map to location.

HTTP Response Elements

Name Type Description
customZoneMapping document A comma-separated list of all custom zone mappings defined for the Global Cluster. By default, Atlas maps each location code to the closest geographical zone. Custom zone mappings allow administrators to override these automatic mappings.
managedNamespaces array of documents Each document specifies a namespace for a Global Cluster managed by Atlas. For more information, see Global Clusters.
managedNamespaces[n].collection string The name of the collection associated with the managed namespace.
managedNamespaces[n].customShardKey string The custom shard key for the collection. Global Clusters require a compound shard key consisting of a location field and a user-selected second key, the custom shard key.
managedNamespaces[n].db string The name of the database containing the collection.

Example

Request

curl -X POST -i -u "{username}:{apiKey}" --digest -H "Content-Type: application/json" \
 "https://cloud.mongodb.com/api/atlas/v1.0/groups/6c391af480eef519ea5ceeb1/clusters/GlobalCluster1/globalWrites/customZoneMapping?pretty=true" \
 --data '{
   "customZoneMappings" : [{
      "location":"CA",
      "zone": "Zone 1"
      }]
   }'

Response

{
   "customZoneMapping" : {
      "CA" : "5b50bf4180eef547653df4d0"
   },
   "managedNamespaces" : [ {
      "collection" : "publishers",
      "customShardKey" : "city",
      "db" : "myData"
   } ]
}