Adicionar um mapeamento de zona personalizado a um cluster global Obsoleto(a)

POSTAR /api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/customZoneMapping

Cria um mapeamento de zona personalizado para o cluster global especificado. Um mapeamento de zona personalizado corresponde a um código de localização ISO 3166-2 para uma zona em seu cluster global. Por padrão, o MongoDB Cloud mapeia cada código de localização para a zona geográfica mais próxima. Para usar esse recurso, a conta de serviço ou a chave de API solicitante deve ter a role de proprietário do projeto. Versões obsoletas: v2-{2023-01-01}

Global Clusters

parâmetros de caminho

  • groupId string Obrigatório

    Sequência única de 24dígitos hexadecimais que identifica seu projeto. Use o endpoint /groups para extrair todos os projetos aos quais o usuário autenticado tem acesso.

    AVISO: grupos e projetos são termos sinônimos. O ID do seu grupo é igual ao ID do seu projeto. Para grupos existentes, o ID do grupo/projeto permanece o mesmo. O recurso e os endpoints correspondentes usam o termo grupos.

    O formato deve corresponder ao seguinte padrão: ^([a-f0-9]{24})$.

  • clusterName string Obrigatório

    Etiqueta legível para humanos que identifica este cluster.

    O formato deve corresponder ao seguinte padrão: ^[a-zA-Z0-9][a-zA-Z0-9-]*$.

parâmetros de query

  • envelope booleano

    Sinalizador que indica se o aplicativo empacota a resposta em um objeto JSON envelope. Alguns clientes de API não podem acessar os cabeçalhos de resposta HTTP ou o código de status. Para corrigir isso, defina envelope=true na consulta. Os endpoints que retornam uma lista de resultados usam o objeto de resultados como um envelope. O aplicativo adiciona o parâmetro de status ao corpo da resposta.

    O valor padrão é false.

  • pretty booleano

    Sinalizador que indica se o corpo da resposta deve estar no formato prettyprint.

    O valor padrão é false.

    Prettyprint
application/vnd.atlas.2023-02-01+json

corpo, corpo Obrigatório

Mapeamento de zona personalizado para adicionar ao cluster global especificado.

  • customZoneMappings array[objeto]

    Lista que contém pares de valores-chave separados por vírgula para mapear zonas de regiões geográficas. Esses pares mapeiam um código de localização ISO 3166-1a2, com um código de subdivisão ISO 3166-2 quando possível, para a etiqueta legível para humanos para a zona personalizada desejada. O MongoDB Cloud mapeia o código ISO 3166-1a2 para a zona geográfica mais próxima por padrão. Inclua este parâmetro para substituir mapeamentos padrão.

    Este parâmetro retorna um objeto vazio se não existirem zonas personalizadas.

    Rótulo legível por humanos que identifica o subconjunto de um cluster global.

    Ocultar atributos customZoneMappings Mostrar atributos de customZoneMappings objeto
    • localização string Obrigatório

      Código que representa um local mapeado para uma zona em seu cluster global. O MongoDB Cloud representa este local com um local ISO 3166-2 códigos de localização e subdivisão quando possível.

    • zona string Obrigatório

      Rótulo legível por humanos que identifica a zona em seu cluster global. Esta zona mapeia para um código de localização.

Respostas

  • 200 application/vnd.atlas.2023-02-01+json

    OK

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • customZoneMapping objeto

      Lista que contém pares de valores-chave separados por vírgula para mapear zonas de regiões geográficas. Esses pares mapeiam um código de localização ISO 3166-1a2, com um código de subdivisão ISO 3166-2 quando possível, para uma string 24-hexadecimal exclusiva que identifica a zona personalizada.

      A string hexadecimal 24corresponde a uma propriedade Replication Specifications id.

      Este parâmetro retorna um objeto vazio se não existirem zonas personalizadas.

      Ocultar atributo customZoneMapping Mostrar atributo customZoneMapping objeto
      • * string Propriedades adicionais

        Lista que contém pares de valores-chave separados por vírgula para mapear zonas de regiões geográficas. Esses pares mapeiam um código de localização ISO 3166-1a2, com um código de subdivisão ISO 3166-2 quando possível, para uma string 24-hexadecimal exclusiva que identifica a zona personalizada.

        A string hexadecimal 24corresponde a uma propriedade Replication Specifications id.

        Este parâmetro retorna um objeto vazio se não existirem zonas personalizadas.

        O formato deve corresponder ao seguinte padrão: ^([a-f0-9]{24})$.

    • managedNamespaces array[objeto]

      Lista que contém um namespace para um cluster global. O MongoDB Cloud gerencia este cluster.

      Ocultar atributos managedNamespaces Mostrar atributos managedNamespaces objeto
      • collection string Obrigatório

        Rótulo legível por humanos da coleção a ser gerenciada para esse cluster global.

      • customShardKey string Obrigatório

        Parâmetro do banco de dados utilizado para dividir a coleção em fragmentos. Clusters globais exigem uma chave de shard composta. Essa chave de shard composta combina o parâmetro de localização e a chave personalizada selecionada pelo usuário.

      • db string Obrigatório

        Etiqueta legível para humanos do banco de dados a ser gerenciado para este cluster global.

      • isCustomShardKeyHashed booleano

        Sinalizador que indica se alguém fez hash da chave de shard personalizada para a collection especificada. Se você definir esse valor como false, o MongoDB cloud usará fragmentação à distância.

        O valor padrão é false.

        Hashed shard keys
      • isShardKeyUnique booleano

        Sinalizador que indica se alguém fez hash da chave de shard personalizada. Se esse parâmetro false retornar, esse cluster usará fragmentação à distância.

        O valor padrão é false.

      • numInitialChunks integer(int64)

        Número mínimo de chunks a serem criados inicialmente ao fragmentar uma coleção vazia com uma chave de fragmento com hash .

        O valor máximo é 8192.

        Fragmentação de cluster global
      • presplitHashedZones booleano

        Sinalizador que indica se o MongoDB Cloud deve criar e distribuir chunks iniciais para uma collection vazia ou inexistente. O MongoDB Cloud distribui dados com base nas zonas e faixas de zonas definidos para a collection.

        O valor padrão é false.

        Chave de fragmento com hash
    • selfManagedSharding booleano

      Booleano que controla em qual modo de gerenciamento o cluster global está operando. Se este parâmetro for verdadeiro, a fragmentação autogerenciada estará habilitada e os usuários estiverem no controle da fragmentação da zona dentro do cluster global. Se este parâmetro for falso, a fragmentação gerenciada pelo Atlas estará habilitada e o Atlas controlará a fragmentação da zona dentro do cluster global.

  • 400 aplicação/json

    Solicitação inválida.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

  • 401 aplicação/json

    Não autorizado.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

  • 403 aplicação/json

    Forbidden.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

  • 404 aplicação/json

    Não encontrado.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

  • 500 aplicação/json

    Erro interno do servidor.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

POST /api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/customZoneMapping
atlas api globalClusters createGroupClusterGlobalWriteCustomZoneMapping --help
import (
	"os"
	"context"
	"log"
	sdk "go.mongodb.org/atlas-sdk/v20231115001/admin"
)

func main() {
	ctx := context.Background()
	clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
	clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")

	// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
	client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))

	if err != nil {
		log.Fatalf("Error: %v", err)
	}

	params = &sdk.CreateGroupClusterGlobalWriteCustomZoneMappingApiParams{}
	sdkResp, httpResp, err := client.GlobalClustersApi.
		CreateGroupClusterGlobalWriteCustomZoneMappingWithParams(ctx, params).
		Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
  --header "Accept: application/vnd.atlas.2023-11-15+json" \
  --header "Content-Type: application/json" \
  -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/customZoneMapping" \
  -d '{ <Payload> }'
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
  --digest --include \
  --header "Accept: application/vnd.atlas.2023-11-15+json" \
  --header "Content-Type: application/json" \
  -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/customZoneMapping" \
  -d '{ <Payload> }'
Exemplos de solicitação
{
  "customZoneMappings": [
    {
      "location": "string",
      "zone": "string"
    }
  ]
}
Exemplos de resposta (200)
{
  "customZoneMapping": {
    "additionalProperty1": "32b6e34b3d91647abb20e7b8",
    "additionalProperty2": "32b6e34b3d91647abb20e7b8"
  },
  "managedNamespaces": [
    {
      "collection": "string",
      "customShardKey": "string",
      "db": "string",
      "isCustomShardKeyHashed": false,
      "isShardKeyUnique": false,
      "numInitialChunks": 42,
      "presplitHashedZones": false
    }
  ],
  "selfManagedSharding": true
}
Exemplos de resposta (400)
{
  "error": 400,
  "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  "reason": "Bad Request",
  "errorCode": "VALIDATION_ERROR"
}
Exemplos de resposta (401)
{
  "error": 401,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Unauthorized",
  "errorCode": "NOT_ORG_GROUP_CREATOR"
}
Exemplos de resposta (403)
{
  "error": 403,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Forbidden",
  "errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
Exemplos de resposta (404)
{
  "error": 404,
  "detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
  "reason": "Not Found",
  "errorCode": "RESOURCE_NOT_FOUND"
}
Exemplos de resposta (500)
{
  "error": 500,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Internal Server Error",
  "errorCode": "UNEXPECTED_ERROR"
}