Criar um bucket de exportação de snapshot
Obsoleto(a)
Cria um bucket de exportação de snapshot para um bucket S3 do Amazon Web Services, um container de armazenamento de blobs do Azure ou um bucket de armazenamento do Google Cloud Platform. Depois de criado, um snapshot pode ser exportado para o Bucket de Exportação e seu bucket S3 do Amazon Web Services referenciado, o container de armazenamento do Azure Blob ou o bucket de armazenamento da Google Cloud Platform. Para usar esse recurso, a conta de serviço ou a chave de API solicitante deve ter a role de proprietário do projeto.
parâmetros de caminho
-
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})$
.
parâmetros de query
-
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
. -
Sinalizador que indica se o corpo da resposta deve estar no formato prettyprint.
O valor padrão é
false
.Prettyprint
corpo, corpo
Obrigatório
Especifica a função e o bucket AWS S3, o contêiner de armazenamento de blobs do Azure ou o bucket do Google Cloud Storage aos quais o bucket de exportação deve fazer referência.
-
Etiqueta legível por humanos que identifica o provedor de nuvem para o qual os snapshots são exportados.
-
Etiqueta legível por humanos que identifica o bucket AWS S3 para o qual a função está autorizada a exportar.
O comprimento mínimo é
3
, o comprimento máximo é63
. -
String de caracteres 24-hexadecimais exclusiva que identifica o ID da função de acesso unificado da AWS que o MongoDB Cloud usa para acessar o bucket AWS S3.
O formato deve corresponder ao seguinte padrão:
^([a-f0-9]{24})$
.ID da função de acesso AWS unificado -
Indica se as exportações devem ser feitas por PrivateLink em vez de IPs públicos. O padrão é falso.
atlas api cloudBackups createGroupBackupExportBucket --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.CreateGroupBackupExportBucketApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
CreateGroupBackupExportBucketWithParams(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}/backup/exportBuckets" \
-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}/backup/exportBuckets" \
-d '{ <Payload> }'
{
"iamRoleId": "668c5f0ed436263134491592",
"bucketName": "export-bucket",
"cloudProvider": "AWS",
"requirePrivateNetworking": false
}
{
"_id": "32b6e34b3d91647abb20e7b8",
"links": [
{
"rel": "self",
"href": "https://cloud.mongodb.com/api/atlas"
}
],
"region": "us-east-1",
"iamRoleId": "668c5f0ed436263134491592",
"bucketName": "export-bucket",
"cloudProvider": "AWS",
"requirePrivateNetworking": true
}
{
"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"
}
{
"error": 401,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Unauthorized",
"errorCode": "NOT_ORG_GROUP_CREATOR"
}
{
"error": 403,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Forbidden",
"errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
{
"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"
}
{
"error": 500,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Internal Server Error",
"errorCode": "UNEXPECTED_ERROR"
}