From b817832fa7f54f52e2ef151e29f5526a454e5285 Mon Sep 17 00:00:00 2001 From: Yeliz Henden Date: Tue, 16 Jun 2026 10:27:41 +0100 Subject: [PATCH] chore: move breakingchanges, changelog, openapi, pointer to foas module Extract the remaining reusable packages from tools/cli into the standalone tools/foas library module (step 3 of the cli/foas split): - Move breakingchanges, changelog, openapi, pointer (and their subpackages) from tools/cli/internal/ to tools/foas/ - Delete tools/cli/pkg/ entirely (thin wrappers superseded by foas) - Rewrite all importers and go:generate directives to tools/foas/* - Copy the minimal test fixtures the moved tests need into foas/test/data - go mod tidy to pull in the foas dependencies Dependency stays one-way (cli -> foas). Both modules build, vet, and pass their unit suites. --- tools/cli/go.mod | 8 +- tools/cli/go.sum | 6 +- .../cli/breakingchanges/exemptions/parse.go | 2 +- .../internal/cli/changelog/convert/slack.go | 2 +- tools/cli/internal/cli/changelog/create.go | 4 +- .../internal/cli/changelog/metadata/create.go | 4 +- tools/cli/internal/cli/filter/filter.go | 4 +- tools/cli/internal/cli/filter/filter_test.go | 2 +- tools/cli/internal/cli/merge/merge.go | 2 +- tools/cli/internal/cli/merge/merge_test.go | 2 +- tools/cli/internal/cli/slice/slice.go | 4 +- tools/cli/internal/cli/split/split.go | 2 +- tools/cli/internal/cli/split/split_test.go | 2 +- tools/cli/internal/cli/sunset/diff.go | 4 +- tools/cli/internal/cli/sunset/diff_test.go | 2 +- tools/cli/internal/cli/sunset/list.go | 4 +- tools/cli/internal/cli/sunset/list_test.go | 2 +- tools/cli/internal/cli/versions/versions.go | 2 +- tools/cli/pkg/openapi/openapi.go | 66 - tools/cli/test/e2e/cli/changelog_test.go | 2 +- tools/cli/test/e2e/cli/cli.go | 2 +- .../breakingchanges/exemptions.go | 0 .../breakingchanges/exemptions_test.go | 2 +- .../internal => foas}/changelog/changelog.go | 2 +- .../changelog/changelog_test.go | 0 .../changelog/manual_entry.go | 2 +- .../changelog/manual_entry_test.go | 2 +- .../{cli/internal => foas}/changelog/merge.go | 2 +- .../internal => foas}/changelog/merge_test.go | 14 +- .../changelog/outputfilter/enum.go | 0 .../changelog/outputfilter/enum_test.go | 0 .../changelog/outputfilter/field.go | 0 .../changelog/outputfilter/field_test.go | 0 .../changelog/outputfilter/hide.go | 2 +- .../changelog/outputfilter/hide_test.go | 2 +- .../changelog/outputfilter/message.go | 0 .../changelog/outputfilter/message_test.go | 0 .../changelog/outputfilter/operationconfig.go | 0 .../outputfilter/operationconfig_test.go | 4 +- .../changelog/outputfilter/outputfilter.go | 0 .../changelog/outputfilter/squash.go | 0 .../changelog/outputfilter/squash_test.go | 0 .../internal => foas}/changelog/sunset.go | 2 +- .../changelog/sunset_test.go | 2 +- tools/foas/go.mod | 22 +- tools/foas/go.sum | 44 +- .../openapi/errors/merge_conflict_error.go | 2 +- tools/{cli/internal => foas}/openapi/file.go | 0 .../internal => foas}/openapi/file_test.go | 0 .../openapi/filter/README.md | 0 .../internal => foas}/openapi/filter/bump.go | 0 .../openapi/filter/bump_test.go | 0 .../openapi/filter/code_sample.go | 0 .../openapi/filter/code_sample_test.go | 0 .../openapi/filter/extension.go | 0 .../openapi/filter/extension_test.go | 0 .../openapi/filter/filter.go | 2 +- .../openapi/filter/filter_test.go | 0 .../openapi/filter/hidden_envs.go | 0 .../openapi/filter/hidden_envs_test.go | 2 +- .../internal => foas}/openapi/filter/info.go | 0 .../openapi/filter/info_test.go | 0 .../openapi/filter/mock_filter.go | 4 +- .../openapi/filter/operations.go | 0 .../openapi/filter/operations_test.go | 0 .../openapi/filter/parameters.go | 0 .../openapi/filter/parameters_test.go | 2 +- .../openapi/filter/response.go | 0 .../openapi/filter/response_test.go | 2 +- .../openapi/filter/schemas.go | 0 .../openapi/filter/schemas_test.go | 0 .../openapi/filter/sunset.go | 0 .../openapi/filter/sunset_test.go | 0 .../internal => foas}/openapi/filter/tags.go | 0 .../openapi/filter/tags_test.go | 0 .../template/go_sdk_code_sample.go.tmpl | 0 .../openapi/filter/versioning.go | 0 .../openapi/filter/versioning_extension.go | 0 .../filter/versioning_extension_test.go | 0 .../openapi/filter/versioning_test.go | 0 .../openapi/mock_oasdiff_result.go | 4 +- .../internal => foas}/openapi/mock_openapi.go | 4 +- .../{cli/internal => foas}/openapi/oasdiff.go | 2 +- .../openapi/oasdiff_result.go | 2 +- .../openapi/oasdiff_result_test.go | 0 .../internal => foas}/openapi/oasdiff_test.go | 4 +- .../{cli/internal => foas}/openapi/openapi.go | 2 +- .../internal => foas}/openapi/openapi3.go | 0 .../openapi/openapi3_test.go | 0 .../internal => foas}/openapi/openapi_test.go | 0 tools/{cli/internal => foas}/openapi/paths.go | 0 .../internal => foas}/openapi/paths_test.go | 0 .../internal => foas}/openapi/slice/slice.go | 2 +- .../openapi/slice/slice_test.go | 0 .../openapi/sunset/sunset.go | 0 .../openapi/sunset/sunset_test.go | 0 .../internal => foas}/openapi/versions.go | 2 +- .../openapi/versions_test.go | 0 .../{cli/internal => foas}/pointer/pointer.go | 0 tools/foas/test/data/changelog/changelog.json | 420 + .../changelog/manual_generated_test_spec.json | 38030 ++++++++++++++++ .../data/exemptions/invalid_exemptions.yaml | 11 + .../exemptions/test_exemptions_expired.yaml | 6 + .../exemptions/test_exemptions_schema.yaml | 3 + .../test_exemptions_v2_duplication.yaml | 10 + .../data/exemptions/valid_exemptions.yaml | 14 + tools/go.work.sum | 10 + 107 files changed, 38626 insertions(+), 144 deletions(-) delete mode 100644 tools/cli/pkg/openapi/openapi.go rename tools/{cli/internal => foas}/breakingchanges/exemptions.go (100%) rename tools/{cli/internal => foas}/breakingchanges/exemptions_test.go (99%) rename tools/{cli/internal => foas}/changelog/changelog.go (99%) rename tools/{cli/internal => foas}/changelog/changelog_test.go (100%) rename tools/{cli/internal => foas}/changelog/manual_entry.go (97%) rename tools/{cli/internal => foas}/changelog/manual_entry_test.go (97%) rename tools/{cli/internal => foas}/changelog/merge.go (99%) rename tools/{cli/internal => foas}/changelog/merge_test.go (98%) rename tools/{cli/internal => foas}/changelog/outputfilter/enum.go (100%) rename tools/{cli/internal => foas}/changelog/outputfilter/enum_test.go (100%) rename tools/{cli/internal => foas}/changelog/outputfilter/field.go (100%) rename tools/{cli/internal => foas}/changelog/outputfilter/field_test.go (100%) rename tools/{cli/internal => foas}/changelog/outputfilter/hide.go (98%) rename tools/{cli/internal => foas}/changelog/outputfilter/hide_test.go (98%) rename tools/{cli/internal => foas}/changelog/outputfilter/message.go (100%) rename tools/{cli/internal => foas}/changelog/outputfilter/message_test.go (100%) rename tools/{cli/internal => foas}/changelog/outputfilter/operationconfig.go (100%) rename tools/{cli/internal => foas}/changelog/outputfilter/operationconfig_test.go (98%) rename tools/{cli/internal => foas}/changelog/outputfilter/outputfilter.go (100%) rename tools/{cli/internal => foas}/changelog/outputfilter/squash.go (100%) rename tools/{cli/internal => foas}/changelog/outputfilter/squash_test.go (100%) rename tools/{cli/internal => foas}/changelog/sunset.go (98%) rename tools/{cli/internal => foas}/changelog/sunset_test.go (98%) rename tools/{cli/internal => foas}/openapi/errors/merge_conflict_error.go (96%) rename tools/{cli/internal => foas}/openapi/file.go (100%) rename tools/{cli/internal => foas}/openapi/file_test.go (100%) rename tools/{cli/internal => foas}/openapi/filter/README.md (100%) rename tools/{cli/internal => foas}/openapi/filter/bump.go (100%) rename tools/{cli/internal => foas}/openapi/filter/bump_test.go (100%) rename tools/{cli/internal => foas}/openapi/filter/code_sample.go (100%) rename tools/{cli/internal => foas}/openapi/filter/code_sample_test.go (100%) rename tools/{cli/internal => foas}/openapi/filter/extension.go (100%) rename tools/{cli/internal => foas}/openapi/filter/extension_test.go (100%) rename tools/{cli/internal => foas}/openapi/filter/filter.go (99%) rename tools/{cli/internal => foas}/openapi/filter/filter_test.go (100%) rename tools/{cli/internal => foas}/openapi/filter/hidden_envs.go (100%) rename tools/{cli/internal => foas}/openapi/filter/hidden_envs_test.go (99%) rename tools/{cli/internal => foas}/openapi/filter/info.go (100%) rename tools/{cli/internal => foas}/openapi/filter/info_test.go (100%) rename tools/{cli/internal => foas}/openapi/filter/mock_filter.go (88%) rename tools/{cli/internal => foas}/openapi/filter/operations.go (100%) rename tools/{cli/internal => foas}/openapi/filter/operations_test.go (100%) rename tools/{cli/internal => foas}/openapi/filter/parameters.go (100%) rename tools/{cli/internal => foas}/openapi/filter/parameters_test.go (99%) rename tools/{cli/internal => foas}/openapi/filter/response.go (100%) rename tools/{cli/internal => foas}/openapi/filter/response_test.go (99%) rename tools/{cli/internal => foas}/openapi/filter/schemas.go (100%) rename tools/{cli/internal => foas}/openapi/filter/schemas_test.go (100%) rename tools/{cli/internal => foas}/openapi/filter/sunset.go (100%) rename tools/{cli/internal => foas}/openapi/filter/sunset_test.go (100%) rename tools/{cli/internal => foas}/openapi/filter/tags.go (100%) rename tools/{cli/internal => foas}/openapi/filter/tags_test.go (100%) rename tools/{cli/internal => foas}/openapi/filter/template/go_sdk_code_sample.go.tmpl (100%) rename tools/{cli/internal => foas}/openapi/filter/versioning.go (100%) rename tools/{cli/internal => foas}/openapi/filter/versioning_extension.go (100%) rename tools/{cli/internal => foas}/openapi/filter/versioning_extension_test.go (100%) rename tools/{cli/internal => foas}/openapi/filter/versioning_test.go (100%) rename tools/{cli/internal => foas}/openapi/mock_oasdiff_result.go (93%) rename tools/{cli/internal => foas}/openapi/mock_openapi.go (94%) rename tools/{cli/internal => foas}/openapi/oasdiff.go (99%) rename tools/{cli/internal => foas}/openapi/oasdiff_result.go (97%) rename tools/{cli/internal => foas}/openapi/oasdiff_result_test.go (100%) rename tools/{cli/internal => foas}/openapi/oasdiff_test.go (99%) rename tools/{cli/internal => foas}/openapi/openapi.go (98%) rename tools/{cli/internal => foas}/openapi/openapi3.go (100%) rename tools/{cli/internal => foas}/openapi/openapi3_test.go (100%) rename tools/{cli/internal => foas}/openapi/openapi_test.go (100%) rename tools/{cli/internal => foas}/openapi/paths.go (100%) rename tools/{cli/internal => foas}/openapi/paths_test.go (100%) rename tools/{cli/internal => foas}/openapi/slice/slice.go (97%) rename tools/{cli/internal => foas}/openapi/slice/slice_test.go (100%) rename tools/{cli/internal => foas}/openapi/sunset/sunset.go (100%) rename tools/{cli/internal => foas}/openapi/sunset/sunset_test.go (100%) rename tools/{cli/internal => foas}/openapi/versions.go (98%) rename tools/{cli/internal => foas}/openapi/versions_test.go (100%) rename tools/{cli/internal => foas}/pointer/pointer.go (100%) create mode 100644 tools/foas/test/data/changelog/changelog.json create mode 100644 tools/foas/test/data/changelog/manual_generated_test_spec.json create mode 100644 tools/foas/test/data/exemptions/invalid_exemptions.yaml create mode 100644 tools/foas/test/data/exemptions/test_exemptions_expired.yaml create mode 100644 tools/foas/test/data/exemptions/test_exemptions_schema.yaml create mode 100644 tools/foas/test/data/exemptions/test_exemptions_v2_duplication.yaml create mode 100644 tools/foas/test/data/exemptions/valid_exemptions.yaml diff --git a/tools/cli/go.mod b/tools/cli/go.mod index 81f4c6ddd3..a8b343c9c0 100644 --- a/tools/cli/go.mod +++ b/tools/cli/go.mod @@ -6,13 +6,13 @@ toolchain go1.26.0 require ( github.com/getkin/kin-openapi v0.140.0 - github.com/iancoleman/strcase v0.3.0 - github.com/oasdiff/oasdiff v1.18.6 + github.com/iancoleman/strcase v0.3.0 // indirect + github.com/oasdiff/oasdiff v1.19.1 github.com/spf13/afero v1.15.0 github.com/spf13/cobra v1.10.2 github.com/stretchr/testify v1.11.1 go.uber.org/mock v0.6.0 - golang.org/x/text v0.38.0 + golang.org/x/text v0.38.0 // indirect gopkg.in/yaml.v3 v3.0.1 ) @@ -29,10 +29,10 @@ require ( github.com/go-openapi/jsonpointer v0.22.5 // indirect github.com/go-openapi/swag/jsonname v0.25.5 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect - github.com/kr/pretty v0.3.1 // indirect github.com/oasdiff/yaml v0.1.0 // indirect github.com/oasdiff/yaml3 v0.0.13 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect + github.com/rogpeppe/go-internal v1.9.0 // indirect github.com/santhosh-tekuri/jsonschema/v6 v6.0.2 // indirect github.com/spf13/pflag v1.0.10 // indirect github.com/tidwall/gjson v1.18.0 // indirect diff --git a/tools/cli/go.sum b/tools/cli/go.sum index 05a195f55d..7e3f6d06fb 100644 --- a/tools/cli/go.sum +++ b/tools/cli/go.sum @@ -3,7 +3,6 @@ cloud.google.com/go v0.123.0/go.mod h1:xBoMV08QcqUGuPW65Qfm1o9Y4zKZBpGS+7bImXLTA github.com/TwiN/go-color v1.4.1 h1:mqG0P/KBgHKVqmtL5ye7K0/Gr4l6hTksPgTgMk3mUzc= github.com/TwiN/go-color v1.4.1/go.mod h1:WcPf/jtiW95WBIsEeY1Lc/b8aaWoiqQpu5cf8WFxu+s= github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= -github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/dlclark/regexp2 v1.11.0 h1:G/nrcoOa7ZXlpoa/91N3X7mM3r8eIlMBBJZvsz/mxKI= @@ -26,13 +25,12 @@ github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/oasdiff/oasdiff v1.18.6 h1:Zc9YxkAhJiHQaftDXFKRNS1iwPZz/lkLXX6Fs3Hdqm8= -github.com/oasdiff/oasdiff v1.18.6/go.mod h1:eColoNHeEiWTsztKtZ+39xTEz+sHl/OSW4EbjYP8A1Y= +github.com/oasdiff/oasdiff v1.19.1 h1:JzeFKqUZYIAydr43E8C7Y5CoVQtMEwOUu0cu5uEiBjI= +github.com/oasdiff/oasdiff v1.19.1/go.mod h1:eColoNHeEiWTsztKtZ+39xTEz+sHl/OSW4EbjYP8A1Y= github.com/oasdiff/yaml v0.1.0 h1:0bqZjfKc/8S9urj4JuwepX41WX9EoA6ifhU3SV06cXg= github.com/oasdiff/yaml v0.1.0/go.mod h1:kOlRmMdL2X3vucLCEQO5u61SU22RysnfXvcttrZA1O0= github.com/oasdiff/yaml3 v0.0.13 h1:06svmvOHOVBqF81+sY2EUScvUI/iS/vl2VIeUUxZQwg= github.com/oasdiff/yaml3 v0.0.13/go.mod h1:y5+oSEHCPT/DGrS++Wc/479ERge0zTFxaF8PbGKcg2o= -github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8= diff --git a/tools/cli/internal/cli/breakingchanges/exemptions/parse.go b/tools/cli/internal/cli/breakingchanges/exemptions/parse.go index 19b7d98ec7..fb865fe549 100644 --- a/tools/cli/internal/cli/breakingchanges/exemptions/parse.go +++ b/tools/cli/internal/cli/breakingchanges/exemptions/parse.go @@ -17,9 +17,9 @@ package exemptions import ( "errors" - "github.com/mongodb/openapi/tools/cli/internal/breakingchanges" "github.com/mongodb/openapi/tools/cli/internal/cli/flag" "github.com/mongodb/openapi/tools/cli/internal/cli/usage" + "github.com/mongodb/openapi/tools/foas/breakingchanges" "github.com/spf13/afero" "github.com/spf13/cobra" ) diff --git a/tools/cli/internal/cli/changelog/convert/slack.go b/tools/cli/internal/cli/changelog/convert/slack.go index 5e40255b3b..7cec433ee7 100644 --- a/tools/cli/internal/cli/changelog/convert/slack.go +++ b/tools/cli/internal/cli/changelog/convert/slack.go @@ -20,9 +20,9 @@ import ( "sort" "strconv" - "github.com/mongodb/openapi/tools/cli/internal/changelog" "github.com/mongodb/openapi/tools/cli/internal/cli/flag" "github.com/mongodb/openapi/tools/cli/internal/cli/usage" + "github.com/mongodb/openapi/tools/foas/changelog" "github.com/spf13/cobra" ) diff --git a/tools/cli/internal/cli/changelog/create.go b/tools/cli/internal/cli/changelog/create.go index 495cfffbff..153e479e4a 100644 --- a/tools/cli/internal/cli/changelog/create.go +++ b/tools/cli/internal/cli/changelog/create.go @@ -19,10 +19,10 @@ import ( "log" "time" - "github.com/mongodb/openapi/tools/cli/internal/changelog" "github.com/mongodb/openapi/tools/cli/internal/cli/flag" "github.com/mongodb/openapi/tools/cli/internal/cli/usage" - "github.com/mongodb/openapi/tools/cli/internal/openapi" + "github.com/mongodb/openapi/tools/foas/changelog" + "github.com/mongodb/openapi/tools/foas/openapi" "github.com/spf13/afero" "github.com/spf13/cobra" ) diff --git a/tools/cli/internal/cli/changelog/metadata/create.go b/tools/cli/internal/cli/changelog/metadata/create.go index 99392b9f4c..70a4158651 100644 --- a/tools/cli/internal/cli/changelog/metadata/create.go +++ b/tools/cli/internal/cli/changelog/metadata/create.go @@ -19,11 +19,11 @@ import ( "fmt" "time" - "github.com/mongodb/openapi/tools/cli/internal/changelog" "github.com/mongodb/openapi/tools/cli/internal/cli/flag" "github.com/mongodb/openapi/tools/cli/internal/cli/usage" - "github.com/mongodb/openapi/tools/cli/internal/openapi" "github.com/mongodb/openapi/tools/foas/apiversion" + "github.com/mongodb/openapi/tools/foas/changelog" + "github.com/mongodb/openapi/tools/foas/openapi" "github.com/spf13/afero" "github.com/spf13/cobra" ) diff --git a/tools/cli/internal/cli/filter/filter.go b/tools/cli/internal/cli/filter/filter.go index d13a8bde0f..e9af6a71cf 100644 --- a/tools/cli/internal/cli/filter/filter.go +++ b/tools/cli/internal/cli/filter/filter.go @@ -21,9 +21,9 @@ import ( "github.com/getkin/kin-openapi/openapi3" "github.com/mongodb/openapi/tools/cli/internal/cli/flag" "github.com/mongodb/openapi/tools/cli/internal/cli/usage" - "github.com/mongodb/openapi/tools/cli/internal/openapi" - "github.com/mongodb/openapi/tools/cli/internal/openapi/filter" "github.com/mongodb/openapi/tools/foas/apiversion" + "github.com/mongodb/openapi/tools/foas/openapi" + "github.com/mongodb/openapi/tools/foas/openapi/filter" "github.com/spf13/afero" "github.com/spf13/cobra" ) diff --git a/tools/cli/internal/cli/filter/filter_test.go b/tools/cli/internal/cli/filter/filter_test.go index 0f4235f374..6e5ef41d18 100644 --- a/tools/cli/internal/cli/filter/filter_test.go +++ b/tools/cli/internal/cli/filter/filter_test.go @@ -19,7 +19,7 @@ import ( "testing" "github.com/getkin/kin-openapi/openapi3" - "github.com/mongodb/openapi/tools/cli/internal/openapi" + "github.com/mongodb/openapi/tools/foas/openapi" "github.com/oasdiff/oasdiff/load" "github.com/spf13/afero" "github.com/stretchr/testify/require" diff --git a/tools/cli/internal/cli/merge/merge.go b/tools/cli/internal/cli/merge/merge.go index af57072216..ca97240d10 100644 --- a/tools/cli/internal/cli/merge/merge.go +++ b/tools/cli/internal/cli/merge/merge.go @@ -20,7 +20,7 @@ import ( "github.com/mongodb/openapi/tools/cli/internal/cli/flag" "github.com/mongodb/openapi/tools/cli/internal/cli/usage" - "github.com/mongodb/openapi/tools/cli/internal/openapi" + "github.com/mongodb/openapi/tools/foas/openapi" "github.com/spf13/afero" "github.com/spf13/cobra" ) diff --git a/tools/cli/internal/cli/merge/merge_test.go b/tools/cli/internal/cli/merge/merge_test.go index d94f63e11c..f996831737 100644 --- a/tools/cli/internal/cli/merge/merge_test.go +++ b/tools/cli/internal/cli/merge/merge_test.go @@ -20,7 +20,7 @@ import ( "github.com/getkin/kin-openapi/openapi3" "github.com/mongodb/openapi/tools/cli/internal/cli/flag" - "github.com/mongodb/openapi/tools/cli/internal/openapi" + "github.com/mongodb/openapi/tools/foas/openapi" "github.com/spf13/afero" "github.com/stretchr/testify/require" "go.uber.org/mock/gomock" diff --git a/tools/cli/internal/cli/slice/slice.go b/tools/cli/internal/cli/slice/slice.go index 2ec3b48190..1a93fa99b3 100644 --- a/tools/cli/internal/cli/slice/slice.go +++ b/tools/cli/internal/cli/slice/slice.go @@ -21,8 +21,8 @@ import ( "github.com/mongodb/openapi/tools/cli/internal/cli/flag" "github.com/mongodb/openapi/tools/cli/internal/cli/usage" - "github.com/mongodb/openapi/tools/cli/internal/openapi" - "github.com/mongodb/openapi/tools/cli/internal/openapi/slice" + "github.com/mongodb/openapi/tools/foas/openapi" + "github.com/mongodb/openapi/tools/foas/openapi/slice" "github.com/spf13/afero" "github.com/spf13/cobra" ) diff --git a/tools/cli/internal/cli/split/split.go b/tools/cli/internal/cli/split/split.go index f7b30dab79..bef26c1710 100644 --- a/tools/cli/internal/cli/split/split.go +++ b/tools/cli/internal/cli/split/split.go @@ -23,7 +23,7 @@ import ( "github.com/mongodb/openapi/tools/cli/internal/cli/filter" "github.com/mongodb/openapi/tools/cli/internal/cli/flag" "github.com/mongodb/openapi/tools/cli/internal/cli/usage" - "github.com/mongodb/openapi/tools/cli/internal/openapi" + "github.com/mongodb/openapi/tools/foas/openapi" "github.com/spf13/afero" "github.com/spf13/cobra" ) diff --git a/tools/cli/internal/cli/split/split_test.go b/tools/cli/internal/cli/split/split_test.go index 983b71e095..85a8d7a8bc 100644 --- a/tools/cli/internal/cli/split/split_test.go +++ b/tools/cli/internal/cli/split/split_test.go @@ -19,7 +19,7 @@ import ( "testing" "github.com/getkin/kin-openapi/openapi3" - "github.com/mongodb/openapi/tools/cli/internal/openapi" + "github.com/mongodb/openapi/tools/foas/openapi" "github.com/oasdiff/oasdiff/load" "github.com/spf13/afero" "github.com/stretchr/testify/require" diff --git a/tools/cli/internal/cli/sunset/diff.go b/tools/cli/internal/cli/sunset/diff.go index f9eb49f73a..adac1203cb 100644 --- a/tools/cli/internal/cli/sunset/diff.go +++ b/tools/cli/internal/cli/sunset/diff.go @@ -23,8 +23,8 @@ import ( "github.com/mongodb/openapi/tools/cli/internal/cli/flag" "github.com/mongodb/openapi/tools/cli/internal/cli/usage" - "github.com/mongodb/openapi/tools/cli/internal/openapi" - "github.com/mongodb/openapi/tools/cli/internal/openapi/sunset" + "github.com/mongodb/openapi/tools/foas/openapi" + "github.com/mongodb/openapi/tools/foas/openapi/sunset" "github.com/spf13/afero" "github.com/spf13/cobra" "gopkg.in/yaml.v3" diff --git a/tools/cli/internal/cli/sunset/diff_test.go b/tools/cli/internal/cli/sunset/diff_test.go index 95b968683a..7add60410e 100644 --- a/tools/cli/internal/cli/sunset/diff_test.go +++ b/tools/cli/internal/cli/sunset/diff_test.go @@ -18,7 +18,7 @@ import ( "testing" "time" - "github.com/mongodb/openapi/tools/cli/internal/openapi/sunset" + "github.com/mongodb/openapi/tools/foas/openapi/sunset" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/tools/cli/internal/cli/sunset/list.go b/tools/cli/internal/cli/sunset/list.go index fb59fb186d..ee6c15e136 100644 --- a/tools/cli/internal/cli/sunset/list.go +++ b/tools/cli/internal/cli/sunset/list.go @@ -23,8 +23,8 @@ import ( "github.com/mongodb/openapi/tools/cli/internal/cli/flag" "github.com/mongodb/openapi/tools/cli/internal/cli/usage" - "github.com/mongodb/openapi/tools/cli/internal/openapi" - "github.com/mongodb/openapi/tools/cli/internal/openapi/sunset" + "github.com/mongodb/openapi/tools/foas/openapi" + "github.com/mongodb/openapi/tools/foas/openapi/sunset" "github.com/spf13/afero" "github.com/spf13/cobra" "gopkg.in/yaml.v3" diff --git a/tools/cli/internal/cli/sunset/list_test.go b/tools/cli/internal/cli/sunset/list_test.go index 42fe58188f..ed23c37495 100644 --- a/tools/cli/internal/cli/sunset/list_test.go +++ b/tools/cli/internal/cli/sunset/list_test.go @@ -19,7 +19,7 @@ import ( "reflect" "testing" - "github.com/mongodb/openapi/tools/cli/internal/openapi/sunset" + "github.com/mongodb/openapi/tools/foas/openapi/sunset" "github.com/spf13/afero" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" diff --git a/tools/cli/internal/cli/versions/versions.go b/tools/cli/internal/cli/versions/versions.go index da8463bfa5..9991240530 100644 --- a/tools/cli/internal/cli/versions/versions.go +++ b/tools/cli/internal/cli/versions/versions.go @@ -22,8 +22,8 @@ import ( "github.com/mongodb/openapi/tools/cli/internal/cli/flag" "github.com/mongodb/openapi/tools/cli/internal/cli/usage" - "github.com/mongodb/openapi/tools/cli/internal/openapi" "github.com/mongodb/openapi/tools/foas/apiversion" + "github.com/mongodb/openapi/tools/foas/openapi" "github.com/spf13/afero" "github.com/spf13/cobra" "gopkg.in/yaml.v3" diff --git a/tools/cli/pkg/openapi/openapi.go b/tools/cli/pkg/openapi/openapi.go deleted file mode 100644 index 4cc971fc85..0000000000 --- a/tools/cli/pkg/openapi/openapi.go +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2026 MongoDB Inc -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Package openapi provides public interfaces for loading and saving OpenAPI specifications. -// This package wraps the internal openapi package to provide a stable public API. -package openapi - -import ( - "github.com/getkin/kin-openapi/openapi3" - "github.com/mongodb/openapi/tools/cli/internal/openapi" - "github.com/mongodb/openapi/tools/cli/internal/openapi/slice" - "github.com/oasdiff/oasdiff/load" - "github.com/spf13/afero" -) - -// ExtractVersions returns all API version strings present in the spec, -// including stable date versions (e.g. "2024-01-01"), preview names -// (e.g. "preview", "public-preview"), and upcoming versions -// (e.g. "2024-01-01.upcoming") when no stable counterpart exists. -// The returned slice is sorted. -func ExtractVersions(spec *openapi3.T) ([]string, error) { - return openapi.ExtractVersionsWithEnv(spec, "") -} - -// SliceCriteria defines the selection criteria for slicing an OpenAPI spec. -// Operations matching ANY of the specified criteria will be included (OR logic). -type SliceCriteria = slice.Criteria - -// Slice filters an OpenAPI spec to keep only operations matching the criteria. -func Slice(spec *openapi3.T, criteria *SliceCriteria) error { - return slice.Slice(spec, criteria) -} - -// Loader provides methods for loading OpenAPI specifications from files. -type Loader struct { - impl *openapi.OpenAPI3 -} - -// NewLoader creates a new OpenAPI loader. -func NewLoader() *Loader { - return &Loader{ - impl: openapi.NewOpenAPI3(), - } -} - -// LoadFromPath loads an OpenAPI spec from the given file path. -func (l *Loader) LoadFromPath(path string) (*load.SpecInfo, error) { - return l.impl.CreateOpenAPISpecFromPath(path) -} - -// SaveToFile saves an OpenAPI spec to a file in the specified format. -// Format can be "json", "yaml", or "all". -func SaveToFile(path, format string, spec *openapi3.T, fs afero.Fs) error { - return openapi.Save(path, spec, format, fs) -} diff --git a/tools/cli/test/e2e/cli/changelog_test.go b/tools/cli/test/e2e/cli/changelog_test.go index 4cfcfe7e18..921216b91e 100644 --- a/tools/cli/test/e2e/cli/changelog_test.go +++ b/tools/cli/test/e2e/cli/changelog_test.go @@ -12,7 +12,7 @@ import ( "strings" "testing" - "github.com/mongodb/openapi/tools/cli/internal/changelog" + "github.com/mongodb/openapi/tools/foas/changelog" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/tools/cli/test/e2e/cli/cli.go b/tools/cli/test/e2e/cli/cli.go index 139af98bf3..b1cdeb1e7d 100644 --- a/tools/cli/test/e2e/cli/cli.go +++ b/tools/cli/test/e2e/cli/cli.go @@ -7,7 +7,7 @@ import ( "testing" "github.com/getkin/kin-openapi/openapi3" - "github.com/mongodb/openapi/tools/cli/internal/openapi" + "github.com/mongodb/openapi/tools/foas/openapi" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/tools/cli/internal/breakingchanges/exemptions.go b/tools/foas/breakingchanges/exemptions.go similarity index 100% rename from tools/cli/internal/breakingchanges/exemptions.go rename to tools/foas/breakingchanges/exemptions.go diff --git a/tools/cli/internal/breakingchanges/exemptions_test.go b/tools/foas/breakingchanges/exemptions_test.go similarity index 99% rename from tools/cli/internal/breakingchanges/exemptions_test.go rename to tools/foas/breakingchanges/exemptions_test.go index ce6ccbd279..e45c786670 100644 --- a/tools/cli/internal/breakingchanges/exemptions_test.go +++ b/tools/foas/breakingchanges/exemptions_test.go @@ -24,7 +24,7 @@ import ( ) func TestGenerateExemptionsFileWithFs(t *testing.T) { - exemptionsFolder, err := filepath.Abs("../../test/data/exemptions") + exemptionsFolder, err := filepath.Abs("../test/data/exemptions") require.NoError(t, err) fs := afero.NewOsFs() diff --git a/tools/cli/internal/changelog/changelog.go b/tools/foas/changelog/changelog.go similarity index 99% rename from tools/cli/internal/changelog/changelog.go rename to tools/foas/changelog/changelog.go index 2a729c5996..fac0ebb6fe 100644 --- a/tools/cli/internal/changelog/changelog.go +++ b/tools/foas/changelog/changelog.go @@ -22,8 +22,8 @@ import ( "strings" "time" - "github.com/mongodb/openapi/tools/cli/internal/openapi" "github.com/mongodb/openapi/tools/foas/apiversion" + "github.com/mongodb/openapi/tools/foas/openapi" "github.com/oasdiff/oasdiff/checker" "github.com/oasdiff/oasdiff/diff" "github.com/oasdiff/oasdiff/load" diff --git a/tools/cli/internal/changelog/changelog_test.go b/tools/foas/changelog/changelog_test.go similarity index 100% rename from tools/cli/internal/changelog/changelog_test.go rename to tools/foas/changelog/changelog_test.go diff --git a/tools/cli/internal/changelog/manual_entry.go b/tools/foas/changelog/manual_entry.go similarity index 97% rename from tools/cli/internal/changelog/manual_entry.go rename to tools/foas/changelog/manual_entry.go index 301509bc79..7a27355e4f 100644 --- a/tools/cli/internal/changelog/manual_entry.go +++ b/tools/foas/changelog/manual_entry.go @@ -19,7 +19,7 @@ import ( "log" "strings" - "github.com/mongodb/openapi/tools/cli/internal/changelog/outputfilter" + "github.com/mongodb/openapi/tools/foas/changelog/outputfilter" "github.com/oasdiff/oasdiff/checker" ) diff --git a/tools/cli/internal/changelog/manual_entry_test.go b/tools/foas/changelog/manual_entry_test.go similarity index 97% rename from tools/cli/internal/changelog/manual_entry_test.go rename to tools/foas/changelog/manual_entry_test.go index 76bd5db2f5..4c5d654d3f 100644 --- a/tools/cli/internal/changelog/manual_entry_test.go +++ b/tools/foas/changelog/manual_entry_test.go @@ -17,7 +17,7 @@ package changelog import ( "testing" - "github.com/mongodb/openapi/tools/cli/internal/changelog/outputfilter" + "github.com/mongodb/openapi/tools/foas/changelog/outputfilter" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/tools/cli/internal/changelog/merge.go b/tools/foas/changelog/merge.go similarity index 99% rename from tools/cli/internal/changelog/merge.go rename to tools/foas/changelog/merge.go index bf87ab072f..5513f57d04 100644 --- a/tools/cli/internal/changelog/merge.go +++ b/tools/foas/changelog/merge.go @@ -20,7 +20,7 @@ import ( "log" "sort" - "github.com/mongodb/openapi/tools/cli/internal/changelog/outputfilter" + "github.com/mongodb/openapi/tools/foas/changelog/outputfilter" "github.com/oasdiff/oasdiff/checker" ) diff --git a/tools/cli/internal/changelog/merge_test.go b/tools/foas/changelog/merge_test.go similarity index 98% rename from tools/cli/internal/changelog/merge_test.go rename to tools/foas/changelog/merge_test.go index c8e09c7524..9aefc75cd4 100644 --- a/tools/cli/internal/changelog/merge_test.go +++ b/tools/foas/changelog/merge_test.go @@ -17,13 +17,13 @@ package changelog import ( "testing" - "github.com/mongodb/openapi/tools/cli/internal/changelog/outputfilter" + "github.com/mongodb/openapi/tools/foas/changelog/outputfilter" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) func TestMergeChangelogOneChange(t *testing.T) { - baseChangelog, err := NewEntriesFromPath("../../test/data/changelog/changelog.json") + baseChangelog, err := NewEntriesFromPath("../test/data/changelog/changelog.json") require.NoError(t, err) lastChangelogRunDate := baseChangelog[0].Date @@ -98,7 +98,7 @@ func TestMergeChangelogOneChange(t *testing.T) { func TestMergeChangelogTwoVersionsNoDeprecations(t *testing.T) { // arrange - baseChangelog, err := NewEntriesFromPath("../../test/data/changelog/changelog.json") + baseChangelog, err := NewEntriesFromPath("../test/data/changelog/changelog.json") require.NoError(t, err) lastChangelogRunDate := baseChangelog[0].Date @@ -214,7 +214,7 @@ func TestMergeChangelogTwoVersionsNoDeprecations(t *testing.T) { } func TestMergeChangelogAddTwoEndpoints(t *testing.T) { - originalChangelog, err := NewEntriesFromPath("../../test/data/changelog/changelog.json") + originalChangelog, err := NewEntriesFromPath("../test/data/changelog/changelog.json") require.NoError(t, err) lastChangelogRunDate := originalChangelog[0].Date @@ -467,7 +467,7 @@ func TestSortChangelog(t *testing.T) { func TestMergeChangelogTwoVersionsWithDeprecations(t *testing.T) { // arrange - baseChangelog, err := NewEntriesFromPath("../../test/data/changelog/changelog.json") + baseChangelog, err := NewEntriesFromPath("../test/data/changelog/changelog.json") require.NoError(t, err) lastChangelogRunDate := baseChangelog[0].Date @@ -595,7 +595,7 @@ func TestMergeChangelogTwoVersionsWithDeprecations(t *testing.T) { } func TestMergeChangelogWithDeprecations(t *testing.T) { - baseChangelog, err := NewEntriesFromPath("../../test/data/changelog/changelog.json") + baseChangelog, err := NewEntriesFromPath("../test/data/changelog/changelog.json") require.NoError(t, err) firstVersion := "2023-02-01" @@ -717,7 +717,7 @@ func TestMergeChangelogWithDeprecations(t *testing.T) { } func TestMergeChangelogCompare(t *testing.T) { - baseChangelog, err := NewEntriesFromPath("../../test/data/changelog/changelog.json") + baseChangelog, err := NewEntriesFromPath("../test/data/changelog/changelog.json") require.NoError(t, err) firstVersion := "2023-01-01" diff --git a/tools/cli/internal/changelog/outputfilter/enum.go b/tools/foas/changelog/outputfilter/enum.go similarity index 100% rename from tools/cli/internal/changelog/outputfilter/enum.go rename to tools/foas/changelog/outputfilter/enum.go diff --git a/tools/cli/internal/changelog/outputfilter/enum_test.go b/tools/foas/changelog/outputfilter/enum_test.go similarity index 100% rename from tools/cli/internal/changelog/outputfilter/enum_test.go rename to tools/foas/changelog/outputfilter/enum_test.go diff --git a/tools/cli/internal/changelog/outputfilter/field.go b/tools/foas/changelog/outputfilter/field.go similarity index 100% rename from tools/cli/internal/changelog/outputfilter/field.go rename to tools/foas/changelog/outputfilter/field.go diff --git a/tools/cli/internal/changelog/outputfilter/field_test.go b/tools/foas/changelog/outputfilter/field_test.go similarity index 100% rename from tools/cli/internal/changelog/outputfilter/field_test.go rename to tools/foas/changelog/outputfilter/field_test.go diff --git a/tools/cli/internal/changelog/outputfilter/hide.go b/tools/foas/changelog/outputfilter/hide.go similarity index 98% rename from tools/cli/internal/changelog/outputfilter/hide.go rename to tools/foas/changelog/outputfilter/hide.go index e85f689667..5b23883540 100644 --- a/tools/cli/internal/changelog/outputfilter/hide.go +++ b/tools/foas/changelog/outputfilter/hide.go @@ -5,7 +5,7 @@ import ( "slices" "strings" - "github.com/mongodb/openapi/tools/cli/internal/breakingchanges" + "github.com/mongodb/openapi/tools/foas/breakingchanges" "github.com/spf13/afero" ) diff --git a/tools/cli/internal/changelog/outputfilter/hide_test.go b/tools/foas/changelog/outputfilter/hide_test.go similarity index 98% rename from tools/cli/internal/changelog/outputfilter/hide_test.go rename to tools/foas/changelog/outputfilter/hide_test.go index a7968be203..8112dd9a8c 100644 --- a/tools/cli/internal/changelog/outputfilter/hide_test.go +++ b/tools/foas/changelog/outputfilter/hide_test.go @@ -4,7 +4,7 @@ import ( "fmt" "testing" - "github.com/mongodb/openapi/tools/cli/internal/breakingchanges" + "github.com/mongodb/openapi/tools/foas/breakingchanges" "github.com/spf13/afero" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" diff --git a/tools/cli/internal/changelog/outputfilter/message.go b/tools/foas/changelog/outputfilter/message.go similarity index 100% rename from tools/cli/internal/changelog/outputfilter/message.go rename to tools/foas/changelog/outputfilter/message.go diff --git a/tools/cli/internal/changelog/outputfilter/message_test.go b/tools/foas/changelog/outputfilter/message_test.go similarity index 100% rename from tools/cli/internal/changelog/outputfilter/message_test.go rename to tools/foas/changelog/outputfilter/message_test.go diff --git a/tools/cli/internal/changelog/outputfilter/operationconfig.go b/tools/foas/changelog/outputfilter/operationconfig.go similarity index 100% rename from tools/cli/internal/changelog/outputfilter/operationconfig.go rename to tools/foas/changelog/outputfilter/operationconfig.go diff --git a/tools/cli/internal/changelog/outputfilter/operationconfig_test.go b/tools/foas/changelog/outputfilter/operationconfig_test.go similarity index 98% rename from tools/cli/internal/changelog/outputfilter/operationconfig_test.go rename to tools/foas/changelog/outputfilter/operationconfig_test.go index dc725ec466..5bc4fd3b51 100644 --- a/tools/cli/internal/changelog/outputfilter/operationconfig_test.go +++ b/tools/foas/changelog/outputfilter/operationconfig_test.go @@ -5,14 +5,14 @@ import ( "testing" "github.com/getkin/kin-openapi/openapi3" - "github.com/mongodb/openapi/tools/cli/internal/openapi" + "github.com/mongodb/openapi/tools/foas/openapi" "github.com/oasdiff/oasdiff/load" "github.com/stretchr/testify/require" ) func TestOpenApiSpecMethods(t *testing.T) { loader := openapi.NewOpenAPI3().WithExcludedPrivatePaths() - spec, err := loader.CreateOpenAPISpecFromPath("../../../test/data/changelog/manual_generated_test_spec.json") + spec, err := loader.CreateOpenAPISpecFromPath("../../test/data/changelog/manual_generated_test_spec.json") require.NoError(t, err) expectedConfig := map[string]*OperationConfig{ diff --git a/tools/cli/internal/changelog/outputfilter/outputfilter.go b/tools/foas/changelog/outputfilter/outputfilter.go similarity index 100% rename from tools/cli/internal/changelog/outputfilter/outputfilter.go rename to tools/foas/changelog/outputfilter/outputfilter.go diff --git a/tools/cli/internal/changelog/outputfilter/squash.go b/tools/foas/changelog/outputfilter/squash.go similarity index 100% rename from tools/cli/internal/changelog/outputfilter/squash.go rename to tools/foas/changelog/outputfilter/squash.go diff --git a/tools/cli/internal/changelog/outputfilter/squash_test.go b/tools/foas/changelog/outputfilter/squash_test.go similarity index 100% rename from tools/cli/internal/changelog/outputfilter/squash_test.go rename to tools/foas/changelog/outputfilter/squash_test.go diff --git a/tools/cli/internal/changelog/sunset.go b/tools/foas/changelog/sunset.go similarity index 98% rename from tools/cli/internal/changelog/sunset.go rename to tools/foas/changelog/sunset.go index e2f2cefdc9..6b4eccf3e7 100644 --- a/tools/cli/internal/changelog/sunset.go +++ b/tools/foas/changelog/sunset.go @@ -20,7 +20,7 @@ import ( "strings" "time" - "github.com/mongodb/openapi/tools/cli/internal/changelog/outputfilter" + "github.com/mongodb/openapi/tools/foas/changelog/outputfilter" "github.com/oasdiff/oasdiff/checker" ) diff --git a/tools/cli/internal/changelog/sunset_test.go b/tools/foas/changelog/sunset_test.go similarity index 98% rename from tools/cli/internal/changelog/sunset_test.go rename to tools/foas/changelog/sunset_test.go index 1d455ad37a..4ec661245c 100644 --- a/tools/cli/internal/changelog/sunset_test.go +++ b/tools/foas/changelog/sunset_test.go @@ -17,7 +17,7 @@ package changelog import ( "testing" - "github.com/mongodb/openapi/tools/cli/internal/changelog/outputfilter" + "github.com/mongodb/openapi/tools/foas/changelog/outputfilter" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/tools/foas/go.mod b/tools/foas/go.mod index 79048ace26..8987d16b05 100644 --- a/tools/foas/go.mod +++ b/tools/foas/go.mod @@ -6,18 +6,32 @@ toolchain go1.26.0 require ( github.com/getkin/kin-openapi v0.140.0 + github.com/iancoleman/strcase v0.3.0 + github.com/oasdiff/oasdiff v1.19.1 + github.com/spf13/afero v1.15.0 github.com/stretchr/testify v1.11.1 + go.uber.org/mock v0.6.0 + golang.org/x/text v0.38.0 + gopkg.in/yaml.v3 v3.0.1 ) require ( - github.com/davecgh/go-spew v1.1.1 // indirect + cloud.google.com/go v0.123.0 // indirect + github.com/TwiN/go-color v1.4.1 // indirect + github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/go-openapi/jsonpointer v0.22.5 // indirect github.com/go-openapi/swag/jsonname v0.25.5 // indirect github.com/kr/pretty v0.3.1 // indirect github.com/oasdiff/yaml v0.1.0 // indirect github.com/oasdiff/yaml3 v0.0.13 // indirect - github.com/pmezard/go-difflib v1.0.0 // indirect + github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect github.com/santhosh-tekuri/jsonschema/v6 v6.0.2 // indirect - golang.org/x/text v0.14.0 // indirect - gopkg.in/yaml.v3 v3.0.1 // indirect + github.com/tidwall/gjson v1.18.0 // indirect + github.com/tidwall/match v1.2.0 // indirect + github.com/tidwall/pretty v1.2.1 // indirect + github.com/tidwall/sjson v1.2.5 // indirect + github.com/wI2L/jsondiff v0.7.1 // indirect + github.com/yargevad/filepathx v1.0.0 // indirect + github.com/yuin/goldmark v1.8.2 // indirect + go.yaml.in/yaml/v3 v3.0.4 // indirect ) diff --git a/tools/foas/go.sum b/tools/foas/go.sum index 477f43bfef..861f93b6ab 100644 --- a/tools/foas/go.sum +++ b/tools/foas/go.sum @@ -1,6 +1,10 @@ +cloud.google.com/go v0.123.0 h1:2NAUJwPR47q+E35uaJeYoNhuNEM9kM8SjgRgdeOJUSE= +cloud.google.com/go v0.123.0/go.mod h1:xBoMV08QcqUGuPW65Qfm1o9Y4zKZBpGS+7bImXLTAZU= +github.com/TwiN/go-color v1.4.1 h1:mqG0P/KBgHKVqmtL5ye7K0/Gr4l6hTksPgTgMk3mUzc= +github.com/TwiN/go-color v1.4.1/go.mod h1:WcPf/jtiW95WBIsEeY1Lc/b8aaWoiqQpu5cf8WFxu+s= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= -github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= -github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= +github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/dlclark/regexp2 v1.11.0 h1:G/nrcoOa7ZXlpoa/91N3X7mM3r8eIlMBBJZvsz/mxKI= github.com/dlclark/regexp2 v1.11.0/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8= github.com/getkin/kin-openapi v0.140.0 h1:JFn675aXRFjyiZKa/BFWploGldQlI0gobp4J5k0EZ2g= @@ -11,25 +15,53 @@ github.com/go-openapi/swag/jsonname v0.25.5 h1:8p150i44rv/Drip4vWI3kGi9+4W9TdI3U github.com/go-openapi/swag/jsonname v0.25.5/go.mod h1:jNqqikyiAK56uS7n8sLkdaNY/uq6+D2m2LANat09pKU= github.com/go-openapi/testify/v2 v2.4.0 h1:8nsPrHVCWkQ4p8h1EsRVymA2XABB4OT40gcvAu+voFM= github.com/go-openapi/testify/v2 v2.4.0/go.mod h1:HCPmvFFnheKK2BuwSA0TbbdxJ3I16pjwMkYkP4Ywn54= +github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= +github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= +github.com/iancoleman/strcase v0.3.0 h1:nTXanmYxhfFAMjZL34Ov6gkzEsSJZ5DbhxWjvSASxEI= +github.com/iancoleman/strcase v0.3.0/go.mod h1:iwCmte+B7n89clKwxIoIXy/HfoL7AsD47ZCWhYzw7ho= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/oasdiff/oasdiff v1.19.1 h1:JzeFKqUZYIAydr43E8C7Y5CoVQtMEwOUu0cu5uEiBjI= +github.com/oasdiff/oasdiff v1.19.1/go.mod h1:eColoNHeEiWTsztKtZ+39xTEz+sHl/OSW4EbjYP8A1Y= github.com/oasdiff/yaml v0.1.0 h1:0bqZjfKc/8S9urj4JuwepX41WX9EoA6ifhU3SV06cXg= github.com/oasdiff/yaml v0.1.0/go.mod h1:kOlRmMdL2X3vucLCEQO5u61SU22RysnfXvcttrZA1O0= github.com/oasdiff/yaml3 v0.0.13 h1:06svmvOHOVBqF81+sY2EUScvUI/iS/vl2VIeUUxZQwg= github.com/oasdiff/yaml3 v0.0.13/go.mod h1:y5+oSEHCPT/DGrS++Wc/479ERge0zTFxaF8PbGKcg2o= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= -github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= +github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8= github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= github.com/santhosh-tekuri/jsonschema/v6 v6.0.2 h1:KRzFb2m7YtdldCEkzs6KqmJw4nqEVZGK7IN2kJkjTuQ= github.com/santhosh-tekuri/jsonschema/v6 v6.0.2/go.mod h1:JXeL+ps8p7/KNMjDQk3TCwPpBy0wYklyWTfbkIzdIFU= +github.com/spf13/afero v1.15.0 h1:b/YBCLWAJdFWJTN9cLhiXXcD7mzKn9Dm86dNnfyQw1I= +github.com/spf13/afero v1.15.0/go.mod h1:NC2ByUVxtQs4b3sIUphxK0NioZnmxgyCrfzeuq8lxMg= github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= -golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= -golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +github.com/tidwall/gjson v1.14.2/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= +github.com/tidwall/gjson v1.18.0 h1:FIDeeyB800efLX89e5a8Y0BNH+LOngJyGrIWxG2FKQY= +github.com/tidwall/gjson v1.18.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= +github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= +github.com/tidwall/match v1.2.0 h1:0pt8FlkOwjN2fPt4bIl4BoNxb98gGHN2ObFEDkrfZnM= +github.com/tidwall/match v1.2.0/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= +github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/pretty v1.2.1 h1:qjsOFOWWQl+N3RsoF5/ssm1pHmJJwhjlSbZ51I6wMl4= +github.com/tidwall/pretty v1.2.1/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/sjson v1.2.5 h1:kLy8mja+1c9jlljvWTlSazM7cKDRfJuR/bOJhcY5NcY= +github.com/tidwall/sjson v1.2.5/go.mod h1:Fvgq9kS/6ociJEDnK0Fk1cpYF4FIW6ZF7LAe+6jwd28= +github.com/wI2L/jsondiff v0.7.1 h1:Fg9+yj+1/x3UtPBJhR91TKEzRkrEEWcAcLbg9dzEaNM= +github.com/wI2L/jsondiff v0.7.1/go.mod h1:yAt2W7U6Jd4HK0RA8DGSGk0zDtfEtOUUJVnH/xICpjo= +github.com/yargevad/filepathx v1.0.0 h1:SYcT+N3tYGi+NvazubCNlvgIPbzAk7i7y2dwg3I5FYc= +github.com/yargevad/filepathx v1.0.0/go.mod h1:BprfX/gpYNJHJfc35GjRRpVcwWXS89gGulUIU5tK3tA= +github.com/yuin/goldmark v1.8.2 h1:kEGpgqJXdgbkhcOgBxkC0X0PmoPG1ZyoZ117rDVp4zE= +github.com/yuin/goldmark v1.8.2/go.mod h1:ip/1k0VRfGynBgxOz0yCqHrbZXhcjxyuS66Brc7iBKg= +go.uber.org/mock v0.6.0 h1:hyF9dfmbgIX5EfOdasqLsWD6xqpNZlXblLB/Dbnwv3Y= +go.uber.org/mock v0.6.0/go.mod h1:KiVJ4BqZJaMj4svdfmHM0AUx4NJYO8ZNpPnZn1Z+BBU= +go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc= +go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg= +golang.org/x/text v0.38.0 h1:sXmwo9DwP3OK9EZ7PqAdaooSGozfl/3a6/xJcbzPRhE= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= diff --git a/tools/cli/internal/openapi/errors/merge_conflict_error.go b/tools/foas/openapi/errors/merge_conflict_error.go similarity index 96% rename from tools/cli/internal/openapi/errors/merge_conflict_error.go rename to tools/foas/openapi/errors/merge_conflict_error.go index 7e87ccea07..a7b3d242bf 100644 --- a/tools/cli/internal/openapi/errors/merge_conflict_error.go +++ b/tools/foas/openapi/errors/merge_conflict_error.go @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package errors //nolint:revive // internal package, no conflict with standard library +package errors //nolint:revive // package name "errors" is intentional; callers use a qualified import alias import ( "encoding/json" diff --git a/tools/cli/internal/openapi/file.go b/tools/foas/openapi/file.go similarity index 100% rename from tools/cli/internal/openapi/file.go rename to tools/foas/openapi/file.go diff --git a/tools/cli/internal/openapi/file_test.go b/tools/foas/openapi/file_test.go similarity index 100% rename from tools/cli/internal/openapi/file_test.go rename to tools/foas/openapi/file_test.go diff --git a/tools/cli/internal/openapi/filter/README.md b/tools/foas/openapi/filter/README.md similarity index 100% rename from tools/cli/internal/openapi/filter/README.md rename to tools/foas/openapi/filter/README.md diff --git a/tools/cli/internal/openapi/filter/bump.go b/tools/foas/openapi/filter/bump.go similarity index 100% rename from tools/cli/internal/openapi/filter/bump.go rename to tools/foas/openapi/filter/bump.go diff --git a/tools/cli/internal/openapi/filter/bump_test.go b/tools/foas/openapi/filter/bump_test.go similarity index 100% rename from tools/cli/internal/openapi/filter/bump_test.go rename to tools/foas/openapi/filter/bump_test.go diff --git a/tools/cli/internal/openapi/filter/code_sample.go b/tools/foas/openapi/filter/code_sample.go similarity index 100% rename from tools/cli/internal/openapi/filter/code_sample.go rename to tools/foas/openapi/filter/code_sample.go diff --git a/tools/cli/internal/openapi/filter/code_sample_test.go b/tools/foas/openapi/filter/code_sample_test.go similarity index 100% rename from tools/cli/internal/openapi/filter/code_sample_test.go rename to tools/foas/openapi/filter/code_sample_test.go diff --git a/tools/cli/internal/openapi/filter/extension.go b/tools/foas/openapi/filter/extension.go similarity index 100% rename from tools/cli/internal/openapi/filter/extension.go rename to tools/foas/openapi/filter/extension.go diff --git a/tools/cli/internal/openapi/filter/extension_test.go b/tools/foas/openapi/filter/extension_test.go similarity index 100% rename from tools/cli/internal/openapi/filter/extension_test.go rename to tools/foas/openapi/filter/extension_test.go diff --git a/tools/cli/internal/openapi/filter/filter.go b/tools/foas/openapi/filter/filter.go similarity index 99% rename from tools/cli/internal/openapi/filter/filter.go rename to tools/foas/openapi/filter/filter.go index 2d2ae2a3f1..74f4d37376 100644 --- a/tools/cli/internal/openapi/filter/filter.go +++ b/tools/foas/openapi/filter/filter.go @@ -25,7 +25,7 @@ import ( "github.com/mongodb/openapi/tools/foas/apiversion" ) -//go:generate mockgen -destination=../filter/mock_filter.go -package=filter github.com/mongodb/openapi/tools/cli/internal/openapi/filter Filter +//go:generate mockgen -destination=../filter/mock_filter.go -package=filter github.com/mongodb/openapi/tools/foas/openapi/filter Filter type Filter interface { Apply() error ValidateMetadata() error diff --git a/tools/cli/internal/openapi/filter/filter_test.go b/tools/foas/openapi/filter/filter_test.go similarity index 100% rename from tools/cli/internal/openapi/filter/filter_test.go rename to tools/foas/openapi/filter/filter_test.go diff --git a/tools/cli/internal/openapi/filter/hidden_envs.go b/tools/foas/openapi/filter/hidden_envs.go similarity index 100% rename from tools/cli/internal/openapi/filter/hidden_envs.go rename to tools/foas/openapi/filter/hidden_envs.go diff --git a/tools/cli/internal/openapi/filter/hidden_envs_test.go b/tools/foas/openapi/filter/hidden_envs_test.go similarity index 99% rename from tools/cli/internal/openapi/filter/hidden_envs_test.go rename to tools/foas/openapi/filter/hidden_envs_test.go index 6db536d1a7..253bab1333 100644 --- a/tools/cli/internal/openapi/filter/hidden_envs_test.go +++ b/tools/foas/openapi/filter/hidden_envs_test.go @@ -19,8 +19,8 @@ import ( "testing" "github.com/getkin/kin-openapi/openapi3" - "github.com/mongodb/openapi/tools/cli/internal/pointer" "github.com/mongodb/openapi/tools/foas/apiversion" + "github.com/mongodb/openapi/tools/foas/pointer" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/tools/cli/internal/openapi/filter/info.go b/tools/foas/openapi/filter/info.go similarity index 100% rename from tools/cli/internal/openapi/filter/info.go rename to tools/foas/openapi/filter/info.go diff --git a/tools/cli/internal/openapi/filter/info_test.go b/tools/foas/openapi/filter/info_test.go similarity index 100% rename from tools/cli/internal/openapi/filter/info_test.go rename to tools/foas/openapi/filter/info_test.go diff --git a/tools/cli/internal/openapi/filter/mock_filter.go b/tools/foas/openapi/filter/mock_filter.go similarity index 88% rename from tools/cli/internal/openapi/filter/mock_filter.go rename to tools/foas/openapi/filter/mock_filter.go index 30d17193b6..71df6d27fb 100644 --- a/tools/cli/internal/openapi/filter/mock_filter.go +++ b/tools/foas/openapi/filter/mock_filter.go @@ -1,9 +1,9 @@ // Code generated by MockGen. DO NOT EDIT. -// Source: github.com/mongodb/openapi/tools/cli/internal/openapi/filter (interfaces: Filter) +// Source: github.com/mongodb/openapi/tools/foas/openapi/filter (interfaces: Filter) // // Generated by this command: // -// mockgen -destination=../filter/mock_filter.go -package=filter github.com/mongodb/openapi/tools/cli/internal/openapi/filter Filter +// mockgen -destination=../filter/mock_filter.go -package=filter github.com/mongodb/openapi/tools/foas/openapi/filter Filter // // Package filter is a generated GoMock package. diff --git a/tools/cli/internal/openapi/filter/operations.go b/tools/foas/openapi/filter/operations.go similarity index 100% rename from tools/cli/internal/openapi/filter/operations.go rename to tools/foas/openapi/filter/operations.go diff --git a/tools/cli/internal/openapi/filter/operations_test.go b/tools/foas/openapi/filter/operations_test.go similarity index 100% rename from tools/cli/internal/openapi/filter/operations_test.go rename to tools/foas/openapi/filter/operations_test.go diff --git a/tools/cli/internal/openapi/filter/parameters.go b/tools/foas/openapi/filter/parameters.go similarity index 100% rename from tools/cli/internal/openapi/filter/parameters.go rename to tools/foas/openapi/filter/parameters.go diff --git a/tools/cli/internal/openapi/filter/parameters_test.go b/tools/foas/openapi/filter/parameters_test.go similarity index 99% rename from tools/cli/internal/openapi/filter/parameters_test.go rename to tools/foas/openapi/filter/parameters_test.go index 4aa99a37b2..fb0ff4a5cb 100644 --- a/tools/cli/internal/openapi/filter/parameters_test.go +++ b/tools/foas/openapi/filter/parameters_test.go @@ -18,7 +18,7 @@ import ( "testing" "github.com/getkin/kin-openapi/openapi3" - "github.com/mongodb/openapi/tools/cli/internal/pointer" + "github.com/mongodb/openapi/tools/foas/pointer" "github.com/stretchr/testify/require" ) diff --git a/tools/cli/internal/openapi/filter/response.go b/tools/foas/openapi/filter/response.go similarity index 100% rename from tools/cli/internal/openapi/filter/response.go rename to tools/foas/openapi/filter/response.go diff --git a/tools/cli/internal/openapi/filter/response_test.go b/tools/foas/openapi/filter/response_test.go similarity index 99% rename from tools/cli/internal/openapi/filter/response_test.go rename to tools/foas/openapi/filter/response_test.go index 5efcd5d6db..f6faaf719f 100644 --- a/tools/cli/internal/openapi/filter/response_test.go +++ b/tools/foas/openapi/filter/response_test.go @@ -18,7 +18,7 @@ import ( "testing" "github.com/getkin/kin-openapi/openapi3" - "github.com/mongodb/openapi/tools/cli/internal/pointer" + "github.com/mongodb/openapi/tools/foas/pointer" "github.com/stretchr/testify/require" ) diff --git a/tools/cli/internal/openapi/filter/schemas.go b/tools/foas/openapi/filter/schemas.go similarity index 100% rename from tools/cli/internal/openapi/filter/schemas.go rename to tools/foas/openapi/filter/schemas.go diff --git a/tools/cli/internal/openapi/filter/schemas_test.go b/tools/foas/openapi/filter/schemas_test.go similarity index 100% rename from tools/cli/internal/openapi/filter/schemas_test.go rename to tools/foas/openapi/filter/schemas_test.go diff --git a/tools/cli/internal/openapi/filter/sunset.go b/tools/foas/openapi/filter/sunset.go similarity index 100% rename from tools/cli/internal/openapi/filter/sunset.go rename to tools/foas/openapi/filter/sunset.go diff --git a/tools/cli/internal/openapi/filter/sunset_test.go b/tools/foas/openapi/filter/sunset_test.go similarity index 100% rename from tools/cli/internal/openapi/filter/sunset_test.go rename to tools/foas/openapi/filter/sunset_test.go diff --git a/tools/cli/internal/openapi/filter/tags.go b/tools/foas/openapi/filter/tags.go similarity index 100% rename from tools/cli/internal/openapi/filter/tags.go rename to tools/foas/openapi/filter/tags.go diff --git a/tools/cli/internal/openapi/filter/tags_test.go b/tools/foas/openapi/filter/tags_test.go similarity index 100% rename from tools/cli/internal/openapi/filter/tags_test.go rename to tools/foas/openapi/filter/tags_test.go diff --git a/tools/cli/internal/openapi/filter/template/go_sdk_code_sample.go.tmpl b/tools/foas/openapi/filter/template/go_sdk_code_sample.go.tmpl similarity index 100% rename from tools/cli/internal/openapi/filter/template/go_sdk_code_sample.go.tmpl rename to tools/foas/openapi/filter/template/go_sdk_code_sample.go.tmpl diff --git a/tools/cli/internal/openapi/filter/versioning.go b/tools/foas/openapi/filter/versioning.go similarity index 100% rename from tools/cli/internal/openapi/filter/versioning.go rename to tools/foas/openapi/filter/versioning.go diff --git a/tools/cli/internal/openapi/filter/versioning_extension.go b/tools/foas/openapi/filter/versioning_extension.go similarity index 100% rename from tools/cli/internal/openapi/filter/versioning_extension.go rename to tools/foas/openapi/filter/versioning_extension.go diff --git a/tools/cli/internal/openapi/filter/versioning_extension_test.go b/tools/foas/openapi/filter/versioning_extension_test.go similarity index 100% rename from tools/cli/internal/openapi/filter/versioning_extension_test.go rename to tools/foas/openapi/filter/versioning_extension_test.go diff --git a/tools/cli/internal/openapi/filter/versioning_test.go b/tools/foas/openapi/filter/versioning_test.go similarity index 100% rename from tools/cli/internal/openapi/filter/versioning_test.go rename to tools/foas/openapi/filter/versioning_test.go diff --git a/tools/cli/internal/openapi/mock_oasdiff_result.go b/tools/foas/openapi/mock_oasdiff_result.go similarity index 93% rename from tools/cli/internal/openapi/mock_oasdiff_result.go rename to tools/foas/openapi/mock_oasdiff_result.go index 825b8f1d1b..b971ce3170 100644 --- a/tools/cli/internal/openapi/mock_oasdiff_result.go +++ b/tools/foas/openapi/mock_oasdiff_result.go @@ -1,9 +1,9 @@ // Code generated by MockGen. DO NOT EDIT. -// Source: github.com/mongodb/openapi/tools/cli/internal/openapi (interfaces: DiffGetter) +// Source: github.com/mongodb/openapi/tools/foas/openapi (interfaces: DiffGetter) // // Generated by this command: // -// mockgen -destination=../openapi/mock_oasdiff_result.go -package=openapi github.com/mongodb/openapi/tools/cli/internal/openapi DiffGetter +// mockgen -destination=../openapi/mock_oasdiff_result.go -package=openapi github.com/mongodb/openapi/tools/foas/openapi DiffGetter // // Package openapi is a generated GoMock package. diff --git a/tools/cli/internal/openapi/mock_openapi.go b/tools/foas/openapi/mock_openapi.go similarity index 94% rename from tools/cli/internal/openapi/mock_openapi.go rename to tools/foas/openapi/mock_openapi.go index f41622cd46..70dddcb737 100644 --- a/tools/cli/internal/openapi/mock_openapi.go +++ b/tools/foas/openapi/mock_openapi.go @@ -1,9 +1,9 @@ // Code generated by MockGen. DO NOT EDIT. -// Source: github.com/mongodb/openapi/tools/cli/internal/openapi (interfaces: Parser,Merger) +// Source: github.com/mongodb/openapi/tools/foas/openapi (interfaces: Parser,Merger) // // Generated by this command: // -// mockgen -destination=../openapi/mock_openapi.go -package=openapi github.com/mongodb/openapi/tools/cli/internal/openapi Parser,Merger +// mockgen -destination=../openapi/mock_openapi.go -package=openapi github.com/mongodb/openapi/tools/foas/openapi Parser,Merger // // Package openapi is a generated GoMock package. diff --git a/tools/cli/internal/openapi/oasdiff.go b/tools/foas/openapi/oasdiff.go similarity index 99% rename from tools/cli/internal/openapi/oasdiff.go rename to tools/foas/openapi/oasdiff.go index 2c6f8b4475..9f607639ff 100644 --- a/tools/cli/internal/openapi/oasdiff.go +++ b/tools/foas/openapi/oasdiff.go @@ -20,7 +20,7 @@ import ( "strings" "github.com/getkin/kin-openapi/openapi3" - "github.com/mongodb/openapi/tools/cli/internal/openapi/errors" + "github.com/mongodb/openapi/tools/foas/openapi/errors" "github.com/oasdiff/oasdiff/diff" "github.com/oasdiff/oasdiff/load" ) diff --git a/tools/cli/internal/openapi/oasdiff_result.go b/tools/foas/openapi/oasdiff_result.go similarity index 97% rename from tools/cli/internal/openapi/oasdiff_result.go rename to tools/foas/openapi/oasdiff_result.go index c3b7d029a4..e6249b9927 100644 --- a/tools/cli/internal/openapi/oasdiff_result.go +++ b/tools/foas/openapi/oasdiff_result.go @@ -14,7 +14,7 @@ package openapi -//go:generate mockgen -destination=../openapi/mock_oasdiff_result.go -package=openapi github.com/mongodb/openapi/tools/cli/internal/openapi DiffGetter +//go:generate mockgen -destination=../openapi/mock_oasdiff_result.go -package=openapi github.com/mongodb/openapi/tools/foas/openapi DiffGetter import ( "github.com/getkin/kin-openapi/openapi3" "github.com/oasdiff/oasdiff/diff" diff --git a/tools/cli/internal/openapi/oasdiff_result_test.go b/tools/foas/openapi/oasdiff_result_test.go similarity index 100% rename from tools/cli/internal/openapi/oasdiff_result_test.go rename to tools/foas/openapi/oasdiff_result_test.go diff --git a/tools/cli/internal/openapi/oasdiff_test.go b/tools/foas/openapi/oasdiff_test.go similarity index 99% rename from tools/cli/internal/openapi/oasdiff_test.go rename to tools/foas/openapi/oasdiff_test.go index 76d3226699..15405e6a6e 100644 --- a/tools/cli/internal/openapi/oasdiff_test.go +++ b/tools/foas/openapi/oasdiff_test.go @@ -19,8 +19,8 @@ import ( "testing" "github.com/getkin/kin-openapi/openapi3" - "github.com/mongodb/openapi/tools/cli/internal/openapi/errors" - "github.com/mongodb/openapi/tools/cli/internal/pointer" + "github.com/mongodb/openapi/tools/foas/openapi/errors" + "github.com/mongodb/openapi/tools/foas/pointer" "github.com/oasdiff/oasdiff/diff" "github.com/oasdiff/oasdiff/load" "github.com/stretchr/testify/assert" diff --git a/tools/cli/internal/openapi/openapi.go b/tools/foas/openapi/openapi.go similarity index 98% rename from tools/cli/internal/openapi/openapi.go rename to tools/foas/openapi/openapi.go index 6c5e4b7576..ef6147d05d 100644 --- a/tools/cli/internal/openapi/openapi.go +++ b/tools/foas/openapi/openapi.go @@ -14,7 +14,7 @@ package openapi -//go:generate mockgen -destination=../openapi/mock_openapi.go -package=openapi github.com/mongodb/openapi/tools/cli/internal/openapi Parser,Merger +//go:generate mockgen -destination=../openapi/mock_openapi.go -package=openapi github.com/mongodb/openapi/tools/foas/openapi Parser,Merger import ( "encoding/json" "log" diff --git a/tools/cli/internal/openapi/openapi3.go b/tools/foas/openapi/openapi3.go similarity index 100% rename from tools/cli/internal/openapi/openapi3.go rename to tools/foas/openapi/openapi3.go diff --git a/tools/cli/internal/openapi/openapi3_test.go b/tools/foas/openapi/openapi3_test.go similarity index 100% rename from tools/cli/internal/openapi/openapi3_test.go rename to tools/foas/openapi/openapi3_test.go diff --git a/tools/cli/internal/openapi/openapi_test.go b/tools/foas/openapi/openapi_test.go similarity index 100% rename from tools/cli/internal/openapi/openapi_test.go rename to tools/foas/openapi/openapi_test.go diff --git a/tools/cli/internal/openapi/paths.go b/tools/foas/openapi/paths.go similarity index 100% rename from tools/cli/internal/openapi/paths.go rename to tools/foas/openapi/paths.go diff --git a/tools/cli/internal/openapi/paths_test.go b/tools/foas/openapi/paths_test.go similarity index 100% rename from tools/cli/internal/openapi/paths_test.go rename to tools/foas/openapi/paths_test.go diff --git a/tools/cli/internal/openapi/slice/slice.go b/tools/foas/openapi/slice/slice.go similarity index 97% rename from tools/cli/internal/openapi/slice/slice.go rename to tools/foas/openapi/slice/slice.go index 99056473d4..759742deb1 100644 --- a/tools/cli/internal/openapi/slice/slice.go +++ b/tools/foas/openapi/slice/slice.go @@ -20,7 +20,7 @@ import ( "slices" "github.com/getkin/kin-openapi/openapi3" - "github.com/mongodb/openapi/tools/cli/internal/openapi/filter" + "github.com/mongodb/openapi/tools/foas/openapi/filter" ) // Criteria defines the selection criteria for slicing an OpenAPI spec. diff --git a/tools/cli/internal/openapi/slice/slice_test.go b/tools/foas/openapi/slice/slice_test.go similarity index 100% rename from tools/cli/internal/openapi/slice/slice_test.go rename to tools/foas/openapi/slice/slice_test.go diff --git a/tools/cli/internal/openapi/sunset/sunset.go b/tools/foas/openapi/sunset/sunset.go similarity index 100% rename from tools/cli/internal/openapi/sunset/sunset.go rename to tools/foas/openapi/sunset/sunset.go diff --git a/tools/cli/internal/openapi/sunset/sunset_test.go b/tools/foas/openapi/sunset/sunset_test.go similarity index 100% rename from tools/cli/internal/openapi/sunset/sunset_test.go rename to tools/foas/openapi/sunset/sunset_test.go diff --git a/tools/cli/internal/openapi/versions.go b/tools/foas/openapi/versions.go similarity index 98% rename from tools/cli/internal/openapi/versions.go rename to tools/foas/openapi/versions.go index 8abe487d67..368c88eb13 100644 --- a/tools/cli/internal/openapi/versions.go +++ b/tools/foas/openapi/versions.go @@ -21,8 +21,8 @@ import ( "strings" "github.com/getkin/kin-openapi/openapi3" - "github.com/mongodb/openapi/tools/cli/internal/openapi/filter" "github.com/mongodb/openapi/tools/foas/apiversion" + "github.com/mongodb/openapi/tools/foas/openapi/filter" ) // ExtractVersionsWithEnv extracts API version Content Type strings from the given OpenAPI specification and environment. diff --git a/tools/cli/internal/openapi/versions_test.go b/tools/foas/openapi/versions_test.go similarity index 100% rename from tools/cli/internal/openapi/versions_test.go rename to tools/foas/openapi/versions_test.go diff --git a/tools/cli/internal/pointer/pointer.go b/tools/foas/pointer/pointer.go similarity index 100% rename from tools/cli/internal/pointer/pointer.go rename to tools/foas/pointer/pointer.go diff --git a/tools/foas/test/data/changelog/changelog.json b/tools/foas/test/data/changelog/changelog.json new file mode 100644 index 0000000000..da9fa3d05b --- /dev/null +++ b/tools/foas/test/data/changelog/changelog.json @@ -0,0 +1,420 @@ +[ + { + "date": "2023-02-01", + "paths": [ + { + "path": "/api/atlas/v2/groups/{groupId}/clusters", + "httpMethod": "GET", + "operationId": "listClusters", + "tag": "Multi-Cloud Clusters", + "versions": [ + { + "version": "2023-02-01", + "stabilityLevel": "stable", + "changeType": "release", + "changes": [ + { + "change": "removed the optional properties from the response: 'results.items.mongoURIWithOptions', 'results.items.providerBackupEnabled', 'results.items.mongoURIUpdated', 'results.items.srvAddress', 'results.items.replicationSpec', 'results.items.mongoURI', 'results.items.numShards', 'results.items.autoScaling', 'results.items.providerSettings', 'results.items.replicationFactor', 'results.items.replicationSpecs.regionsConfig'", + "changeCode": "response-optional-property-removed", + "backwardCompatible": false + }, + { + "change": "added response property 'results.items.replicationSpecs.regionConfigs'", + "changeCode": "response-optional-property-added", + "backwardCompatible": true + } + ] + }, + { + "version": "2023-01-01", + "stabilityLevel": "stable", + "changeType": "deprecate", + "changes": [ + { + "change": "new resource added 2023-02-01. Resource version 2023-01-01 deprecated and marked for removal on 2025-06-01", + "changeCode": "resource-version-deprecated", + "backwardCompatible": true + } + ] + } + ] + }, + { + "path": "/api/atlas/v2/groups/{groupId}/clusters", + "httpMethod": "POST", + "operationId": "createCluster", + "tag": "Multi-Cloud Clusters", + "versions": [ + { + "version": "2023-02-01", + "stabilityLevel": "stable", + "changeType": "release", + "changes": [ + { + "change": "removed the request properties: 'mongoURIWithOptions', 'providerBackupEnabled', 'mongoURIUpdated', 'srvAddress', 'replicationSpec', 'mongoURI', 'numShards', 'autoScaling', 'providerSettings', 'replicationFactor', 'replicationSpecs.regionsConfig'", + "changeCode": "request-property-removed", + "backwardCompatible": false + }, + { + "change": "added 'replicationSpecs.regionConfigs' request property", + "changeCode": "request-property-added", + "backwardCompatible": true + }, + { + "change": "removed the optional properties from the response: 'mongoURIWithOptions', 'providerBackupEnabled', 'mongoURIUpdated', 'srvAddress', 'replicationSpec', 'mongoURI','numShards', 'autoScaling', 'providerSettings', 'replicationFactor', 'replicationSpecs.regionsConfig'", + "changeCode": "response-optional-property-removed", + "backwardCompatible": false + }, + { + "change": "added response property 'replicationSpecs.regionConfigs'", + "changeCode": "response-optional-property-added", + "backwardCompatible": true + } + ] + }, + { + "version": "2023-01-01", + "stabilityLevel": "stable", + "changeType": "deprecate", + "changes": [ + { + "change": "new resource added 2023-02-01. Resource version 2023-01-01 deprecated and marked for removal on 2025-06-01", + "changeCode": "resource-version-deprecated", + "backwardCompatible": true + } + ] + } + ] + }, + { + "path": "/api/atlas/v2/groups/{groupId}/clusters/{clusterName}", + "httpMethod": "DELETE", + "operationId": "deleteCluster", + "tag": "Multi-Cloud Clusters", + "versions": [ + { + "version": "2023-02-01", + "stabilityLevel": "stable", + "changeType": "release", + "changes": null + }, + { + "version": "2023-01-01", + "stabilityLevel": "stable", + "changeType": "deprecate", + "changes": [ + { + "change": "new resource added 2023-02-01. Resource version 2023-01-01 deprecated and marked for removal on 2025-06-01", + "changeCode": "resource-version-deprecated", + "backwardCompatible": true + } + ] + } + ] + }, + { + "path": "/api/atlas/v2/groups/{groupId}/clusters/{clusterName}", + "httpMethod": "GET", + "operationId": "getCluster", + "tag": "Multi-Cloud Clusters", + "versions": [ + { + "version": "2023-02-01", + "stabilityLevel": "stable", + "changeType": "release", + "changes": [ + { + "change": "removed the optional properties from the response: 'mongoURIWithOptions', 'providerBackupEnabled', 'mongoURIUpdated', 'srvAddress', 'replicationSpec', 'mongoURI','numShards', 'autoScaling', 'providerSettings', 'replicationFactor', 'replicationSpecs.regionsConfig'", + "changeCode": "response-optional-property-removed", + "backwardCompatible": false + }, + { + "change": "added response property 'replicationSpecs.regionConfigs'", + "changeCode": "response-optional-property-added", + "backwardCompatible": true + } + ] + }, + { + "version": "2023-01-01", + "stabilityLevel": "stable", + "changeType": "deprecate", + "changes": [ + { + "change": "new resource added 2023-02-01. Resource version 2023-01-01 deprecated and marked for removal on 2025-06-01", + "changeCode": "resource-version-deprecated", + "backwardCompatible": true + } + ] + } + ] + }, + { + "path": "/api/atlas/v2/groups/{groupId}/clusters/{clusterName}", + "httpMethod": "PATCH", + "operationId": "updateCluster", + "tag": "Multi-Cloud Clusters", + "versions": [ + { + "version": "2023-02-01", + "stabilityLevel": "stable", + "changeType": "release", + "changes": [ + { + "change": "removed the request properties: 'mongoURIWithOptions', 'providerBackupEnabled', 'mongoURIUpdated', 'srvAddress', 'replicationSpec', 'mongoURI', 'numShards', 'autoScaling', 'providerSettings', 'replicationFactor', 'replicationSpecs.regionsConfig'", + "changeCode": "request-property-removed", + "backwardCompatible": false + }, + { + "change": "added 'replicationSpecs.regionConfigs' request property", + "changeCode": "request-property-added", + "backwardCompatible": true + }, + { + "change": "removed the optional properties from the response: 'mongoURIWithOptions', 'providerBackupEnabled', 'mongoURIUpdated', 'srvAddress', 'replicationSpec', 'mongoURI','numShards', 'autoScaling', 'providerSettings', 'replicationFactor', 'replicationSpecs.regionsConfig'", + "changeCode": "response-optional-property-removed", + "backwardCompatible": false + }, + { + "change": "added response property 'replicationSpecs.regionConfigs'", + "changeCode": "response-optional-property-added", + "backwardCompatible": true + } + ] + }, + { + "version": "2023-01-01", + "stabilityLevel": "stable", + "changeType": "deprecate", + "changes": [ + { + "change": "new resource added 2023-02-01. Resource version 2023-01-01 deprecated and marked for removal on 2025-06-01", + "changeCode": "resource-version-deprecated", + "backwardCompatible": true + } + ] + } + ] + }, + { + "path": "/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites", + "httpMethod": "GET", + "operationId": "getManagedNamespace", + "tag": "Global Clusters", + "versions": [ + { + "version": "2023-02-01", + "stabilityLevel": "stable", + "changeType": "release", + "changes": null + }, + { + "version": "2023-01-01", + "stabilityLevel": "stable", + "changeType": "deprecate", + "changes": [ + { + "change": "new resource added 2023-02-01. Resource version 2023-01-01 deprecated and marked for removal on 2025-06-01", + "changeCode": "resource-version-deprecated", + "backwardCompatible": true + } + ] + } + ] + }, + { + "path": "/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/customZoneMapping", + "httpMethod": "DELETE", + "operationId": "deleteAllCustomZoneMappings", + "tag": "Global Clusters", + "versions": [ + { + "version": "2023-02-01", + "stabilityLevel": "stable", + "changeType": "release", + "changes": null + }, + { + "version": "2023-01-01", + "stabilityLevel": "stable", + "changeType": "deprecate", + "changes": [ + { + "change": "new resource added 2023-02-01. Resource version 2023-01-01 deprecated and marked for removal on 2025-06-01", + "changeCode": "resource-version-deprecated", + "backwardCompatible": true + } + ] + } + ] + }, + { + "path": "/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/customZoneMapping", + "httpMethod": "POST", + "operationId": "createCustomZoneMapping", + "tag": "Global Clusters", + "versions": [ + { + "version": "2023-02-01", + "stabilityLevel": "stable", + "changeType": "release", + "changes": [ + { + "change": "removed the request property 'customZoneMappings'", + "changeCode": "request-property-removed", + "backwardCompatible": false + }, + { + "change": "added the request property 'customZoneMapping'", + "changeCode": "request-property-added", + "backwardCompatible": true + }, + { + "change": "added the request property 'managedNamespaces'", + "changeCode": "request-property-added", + "backwardCompatible": true + } + ] + }, + { + "version": "2023-01-01", + "stabilityLevel": "stable", + "changeType": "deprecate", + "changes": [ + { + "change": "new resource added 2023-02-01. Resource version 2023-01-01 deprecated and marked for removal on 2025-06-01", + "changeCode": "resource-version-deprecated", + "backwardCompatible": true + } + ] + } + ] + }, + { + "path": "/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/managedNamespaces", + "httpMethod": "DELETE", + "operationId": "deleteManagedNamespace", + "tag": "Global Clusters", + "versions": [ + { + "version": "2023-02-01", + "stabilityLevel": "stable", + "changeType": "release", + "changes": null + }, + { + "version": "2023-01-01", + "stabilityLevel": "stable", + "changeType": "deprecate", + "changes": [ + { + "change": "new resource added 2023-02-01. Resource version 2023-01-01 deprecated and marked for removal on 2025-06-01", + "changeCode": "resource-version-deprecated", + "backwardCompatible": true + } + ] + } + ] + }, + { + "path": "/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/managedNamespaces", + "httpMethod": "POST", + "operationId": "createManagedNamespace", + "tag": "Global Clusters", + "versions": [ + { + "version": "2023-02-01", + "stabilityLevel": "stable", + "changeType": "release", + "changes": [ + { + "change": "the request property 'db' became optional", + "changeCode": "request-property-became-optional", + "backwardCompatible": true + }, + { + "change": "the request property 'collection' became optional", + "changeCode": "request-property-became-optional", + "backwardCompatible": true + }, + { + "change": "the request property 'customShardKey' became optional", + "changeCode": "request-property-became-optional", + "backwardCompatible": true + }, + { + "change": "the 'numInitialChunks' request property's max was removed (from 8192)", + "changeCode": "request-property-max-removed", + "backwardCompatible": true + } + ] + }, + { + "version": "2023-01-01", + "stabilityLevel": "stable", + "changeType": "deprecate", + "changes": [ + { + "change": "new resource added 2023-02-01. Resource version 2023-01-01 deprecated and marked for removal on 2025-06-01", + "changeCode": "resource-version-deprecated", + "backwardCompatible": true + } + ] + } + ] + }, + { + "path": "/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/restartPrimaries", + "httpMethod": "POST", + "operationId": "testFailover", + "tag": "Multi-Cloud Clusters", + "versions": [ + { + "version": "2023-02-01", + "stabilityLevel": "stable", + "changeType": "release", + "changes": null + }, + { + "version": "2023-01-01", + "stabilityLevel": "stable", + "changeType": "deprecate", + "changes": [ + { + "change": "new resource added 2023-02-01. Resource version 2023-01-01 deprecated and marked for removal on 2025-06-01", + "changeCode": "resource-version-deprecated", + "backwardCompatible": true + } + ] + } + ] + }, + { + "path": "/api/atlas/v2/groups/{groupId}/clusters/{hostName}/logs/{logName}.gz", + "httpMethod": "GET", + "operationId": "getHostLogs", + "tag": "Monitoring and Logs", + "versions": [ + { + "version": "2023-02-01", + "stabilityLevel": "stable", + "changeType": "release", + "changes": null + }, + { + "version": "2023-01-01", + "stabilityLevel": "stable", + "changeType": "deprecate", + "changes": [ + { + "change": "new resource added 2023-02-01. Resource version 2023-01-01 deprecated and marked for removal on 2025-06-01", + "changeCode": "resource-version-deprecated", + "backwardCompatible": true + } + ] + } + ] + } + ] + } +] diff --git a/tools/foas/test/data/changelog/manual_generated_test_spec.json b/tools/foas/test/data/changelog/manual_generated_test_spec.json new file mode 100644 index 0000000000..e090334b8e --- /dev/null +++ b/tools/foas/test/data/changelog/manual_generated_test_spec.json @@ -0,0 +1,38030 @@ +{ + "openapi": "3.0.1", + "info": { + "description": "The MongoDB Atlas Administration API allows developers to manage all components in MongoDB Atlas.\n\nThe Atlas Administration API uses HTTP Digest Authentication to authenticate requests. Provide a programmatic API public key and corresponding private key as the username and password when constructing the HTTP request. For example, to [return database access history](#tag/Access-Tracking/operation/listAccessLogsByClusterName) with [cURL](https://en.wikipedia.org/wiki/CURL), run the following command in the terminal:\n\n```\ncurl --user \"{PUBLIC-KEY}:{PRIVATE-KEY}\" \\\n --digest \\\n --header \"Accept: application/vnd.atlas.2023-02-01+json\" \\\n GET \"https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dbAccessHistory/clusters/{clusterName}?pretty=true\"\n```\n\nTo learn more, see [Get Started with the Atlas Administration API](https://www.mongodb.com/docs/atlas/configure-api-access/). For support, see [MongoDB Support](https://www.mongodb.com/support/get-started).", + "license": { + "name": "CC BY-NC-SA 3.0 US", + "url": "https://creativecommons.org/licenses/by-nc-sa/3.0/us/" + }, + "termsOfService": "https://www.mongodb.com/mongodb-management-service-terms-and-conditions", + "title": "MongoDB Atlas Administration API", + "version": "2.0~5e3f225464", + "x-xgen-sha": "5e3f22546423e70c583b6db6a47c82fca5cdc512" + }, + "servers": [ + { + "url": "https://cloud.mongodb.com" + } + ], + "tags": [ + { + "description": "Returns, adds, edits, or removes multi-cloud clusters. Changes to cluster configurations can affect costs.\n\nThe total number of nodes in clusters spanning across regions has a specific constraint on a per-project basis. MongoDB Cloud limits the total number of nodes in other regions in one project to a total of 40. This total excludes Google Cloud regions communicating with each other, shared-tier clusters, or serverless clusters. The total number of nodes between any two regions must meet this constraint. For example, if a project has nodes in clusters spread across three regions: 30 nodes in Region A, 10 nodes in Region B, and 5 nodes in Region C, you can add only 5 more nodes to Region C because if you exclude Region C, Region A + Region B = 40. If you exclude Region B, Region A + Region C = 35, <= 40. If you exclude Region A, Region B + Region C = 15, <= 40. Each combination of regions with the added 5 nodes still meets the per-project constraint. Region A + B = 40. Region A + C = 40. Region B + C = 20. You can't create a multi-region cluster in a project if it has one or more clusters spanning 40 or more nodes in other regions. Each project supports up to 25 database deployments.\n\nIf your MongoDB Cloud project contains a custom role that uses actions introduced in a specific MongoDB version, you must delete that role before you create clusters with an earlier MongoDB version. MongoDB Cloud clusters created after July 2020 use TLS version 1.2 by default. When you create a cluster, MongoDB Cloud creates a network container in the project for the cloud provider to which you deploy the cluster if one doesn't already exist.", + "name": "Multi-Cloud Clusters" + } + ], + "paths": { + "/api/atlas/v2/groups/{groupId}/clusters": { + "get": { + "deprecated": true, + "description": "Returns the details for all clusters in the specific project to which you have access. Clusters contain a group of hosts that maintain the same data set. The response includes multi-cloud clusters. To use this resource, the requesting API Key must have the Project Read Only role. This feature is not available for serverless clusters.", + "operationId": "listClusters", + "parameters": [ + { + "$ref": "#/components/parameters/envelope" + }, + { + "$ref": "#/components/parameters/groupId" + }, + { + "$ref": "#/components/parameters/includeCount" + }, + { + "$ref": "#/components/parameters/itemsPerPage" + }, + { + "$ref": "#/components/parameters/pageNum" + }, + { + "$ref": "#/components/parameters/pretty" + } + ], + "responses": { + "200": { + "content": { + "application/vnd.atlas.2023-01-01+json": { + "schema": { + "$ref": "#/components/schemas/PaginatedLegacyClusterView" + }, + "x-xgen-version": "2023-01-01" + } + }, + "description": "OK" + }, + "401": { + "$ref": "#/components/responses/unauthorized" + }, + "500": { + "$ref": "#/components/responses/internalServerError" + } + }, + "security": [ + { + "DigestAuth": [] + } + ], + "summary": "Return All Clusters in One Project", + "tags": ["Multi-Cloud Clusters"], + "x-sunset": "2025-06-01" + }, + "post": { + "deprecated": true, + "description": "Creates one cluster in the specified project. Clusters contain a group of hosts that maintain the same data set. This resource can create multi-cloud clusters. Each project supports up to 25 database deployments. To use this resource, the requesting API Key must have the Project Owner role. This feature is not available for serverless clusters.", + "operationId": "createCluster", + "parameters": [ + { + "$ref": "#/components/parameters/envelope" + }, + { + "$ref": "#/components/parameters/groupId" + }, + { + "$ref": "#/components/parameters/pretty" + } + ], + "requestBody": { + "content": { + "application/vnd.atlas.2023-01-01+json": { + "schema": { + "$ref": "#/components/schemas/LegacyAtlasCluster" + } + } + }, + "description": "Cluster to create in the specific project.", + "required": true + }, + "responses": { + "201": { + "content": { + "application/vnd.atlas.2023-01-01+json": { + "schema": { + "$ref": "#/components/schemas/LegacyAtlasCluster" + }, + "x-xgen-version": "2023-01-01" + } + }, + "description": "Created" + }, + "400": { + "$ref": "#/components/responses/badRequest" + }, + "401": { + "$ref": "#/components/responses/unauthorized" + }, + "402": { + "$ref": "#/components/responses/paymentRequired" + }, + "403": { + "$ref": "#/components/responses/forbidden" + }, + "409": { + "$ref": "#/components/responses/conflict" + }, + "500": { + "$ref": "#/components/responses/internalServerError" + } + }, + "security": [ + { + "DigestAuth": [] + } + ], + "summary": "Create One Multi-Cloud Cluster from One Project", + "tags": ["Multi-Cloud Clusters"], + "x-sunset": "2025-06-01" + } + }, + "/api/atlas/v2/groups/{groupId}/clusters/{clusterName}": { + "delete": { + "deprecated": true, + "description": "Removes one cluster with advanced features from the specified project. The cluster must have termination protection disabled in order to be deleted. To use this resource, the requesting API Key must have the Project Owner role. This feature is not available for serverless clusters.", + "operationId": "deleteCluster", + "parameters": [ + { + "$ref": "#/components/parameters/envelope" + }, + { + "$ref": "#/components/parameters/pretty" + }, + { + "$ref": "#/components/parameters/groupId" + }, + { + "description": "Human-readable label that identifies the cluster.", + "in": "path", + "name": "clusterName", + "required": true, + "schema": { + "type": "string", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$" + } + }, + { + "description": "Flag that indicates whether to retain backup snapshots for the deleted dedicated cluster.", + "in": "query", + "name": "retainBackups", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "202": { + "content": { + "application/vnd.atlas.2023-01-01+json": { + "x-xgen-version": "2023-01-01" + } + }, + "description": "Accepted" + }, + "400": { + "$ref": "#/components/responses/badRequest" + }, + "401": { + "$ref": "#/components/responses/unauthorized" + }, + "404": { + "$ref": "#/components/responses/notFound" + }, + "409": { + "$ref": "#/components/responses/conflict" + }, + "500": { + "$ref": "#/components/responses/internalServerError" + } + }, + "security": [ + { + "DigestAuth": [] + } + ], + "summary": "Remove One Multi-Cloud Cluster from One Project", + "tags": ["Multi-Cloud Clusters"], + "x-sunset": "2025-06-01" + }, + "get": { + "deprecated": true, + "description": "Returns the details for one cluster in the specified project. Clusters contain a group of hosts that maintain the same data set. The response includes multi-cloud clusters. To use this resource, the requesting API Key must have the Project Read Only role. This feature is not available for serverless clusters.", + "operationId": "getCluster", + "parameters": [ + { + "$ref": "#/components/parameters/envelope" + }, + { + "$ref": "#/components/parameters/pretty" + }, + { + "$ref": "#/components/parameters/groupId" + }, + { + "description": "Human-readable label that identifies this advanced cluster.", + "in": "path", + "name": "clusterName", + "required": true, + "schema": { + "type": "string", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$" + } + } + ], + "responses": { + "200": { + "content": { + "application/vnd.atlas.2023-01-01+json": { + "schema": { + "$ref": "#/components/schemas/LegacyAtlasCluster" + }, + "x-xgen-version": "2023-01-01" + } + }, + "description": "OK" + }, + "401": { + "$ref": "#/components/responses/unauthorized" + }, + "404": { + "$ref": "#/components/responses/notFound" + }, + "409": { + "$ref": "#/components/responses/conflict" + }, + "500": { + "$ref": "#/components/responses/internalServerError" + } + }, + "security": [ + { + "DigestAuth": [] + } + ], + "summary": "Return One Multi-Cloud Cluster from One Project", + "tags": ["Multi-Cloud Clusters"], + "x-sunset": "2025-06-01", + "x-xgen-changelog": { + "2023-07-07": "July 7th changelog entry", + "2023-08-08": "August announcement for /api/atlas/v2/clusters" + } + }, + "patch": { + "deprecated": true, + "description": "Updates the details for one cluster in the specified project. Clusters contain a group of hosts that maintain the same data set. This resource can update multi-cloud clusters. To update a cluster's termination protection, the requesting API Key must have the Project Owner role. For all other updates, the requesting API Key must have the Project Cluster Manager role. You can't modify a paused cluster (`paused : true`). You must call this endpoint to set `paused : false`. After this endpoint responds with `paused : false`, you can call it again with the changes you want to make to the cluster. This feature is not available for serverless clusters.", + "operationId": "updateCluster", + "parameters": [ + { + "$ref": "#/components/parameters/envelope" + }, + { + "$ref": "#/components/parameters/groupId" + }, + { + "$ref": "#/components/parameters/pretty" + }, + { + "description": "Human-readable label that identifies the cluster.", + "in": "path", + "name": "clusterName", + "required": true, + "schema": { + "type": "string", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$" + } + } + ], + "requestBody": { + "content": { + "application/vnd.atlas.2023-01-01+json": { + "schema": { + "$ref": "#/components/schemas/LegacyAtlasCluster" + } + } + }, + "description": "Cluster to update in the specified project.", + "required": true + }, + "responses": { + "200": { + "content": { + "application/vnd.atlas.2023-01-01+json": { + "schema": { + "$ref": "#/components/schemas/LegacyAtlasCluster" + }, + "x-xgen-version": "2023-01-01" + } + }, + "description": "OK" + }, + "400": { + "$ref": "#/components/responses/badRequest" + }, + "401": { + "$ref": "#/components/responses/unauthorized" + }, + "404": { + "$ref": "#/components/responses/notFound" + }, + "409": { + "$ref": "#/components/responses/conflict" + }, + "500": { + "$ref": "#/components/responses/internalServerError" + } + }, + "security": [ + { + "DigestAuth": [] + } + ], + "summary": "Modify One Multi-Cloud Cluster from One Project", + "tags": ["Multi-Cloud Clusters"], + "x-sunset": "2025-06-01" + } + } + }, + "components": { + "parameters": { + "collectionName": { + "description": "Human-readable label that identifies the collection.", + "in": "path", + "name": "collectionName", + "required": true, + "schema": { + "example": "mycoll", + "type": "string" + } + }, + "databaseName": { + "description": "Human-readable label that identifies the database.", + "in": "path", + "name": "databaseName", + "required": true, + "schema": { + "example": "mydb", + "type": "string" + } + }, + "end": { + "description": "Date and time when MongoDB Cloud stops reporting the metrics. This parameter expresses its value in the ISO 8601 timestamp format in UTC. Include this parameter when you do not set **period**.", + "in": "query", + "name": "end", + "schema": { + "format": "date-time", + "type": "string" + } + }, + "envelope": { + "description": "Flag that indicates whether Application wraps the response in an `envelope` JSON object. Some API clients cannot access the HTTP response headers or status code. To remediate this, set envelope=true in the query. Endpoints that return a list of results use the results object as an envelope. Application adds the status parameter to the response body.", + "in": "query", + "name": "envelope", + "schema": { + "default": false, + "example": false, + "type": "boolean" + } + }, + "federationSettingsId": { + "description": "Unique 24-hexadecimal digit string that identifies your federation.", + "in": "path", + "name": "federationSettingsId", + "required": true, + "schema": { + "example": "55fa922fb343282757d9554e", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + } + }, + "granularity": { + "description": "Duration that specifies the interval at which Atlas reports the metrics. This parameter expresses its value in the ISO 8601 duration format in UTC.", + "in": "query", + "name": "granularity", + "required": true, + "schema": { + "example": "PT1M", + "type": "string" + } + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies your project. Use the [/groups](#tag/Projects/operation/listProjects) endpoint to retrieve all projects to which the authenticated user has access.\n\n**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.", + "in": "path", + "name": "groupId", + "required": true, + "schema": { + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + } + }, + "identityProviderId": { + "description": "Legacy 20-hexadecimal digit string that identifies the identity provider. This id can be found within the Federation Management Console \u003e Identity Providers tab by clicking the info icon in the IdP ID row of a configured identity provider.", + "in": "path", + "name": "identityProviderId", + "required": true, + "schema": { + "example": "c2777a9eca931f29fc2f", + "maxLength": 20, + "minLength": 20, + "pattern": "^([a-f0-9]{20})$", + "type": "string" + } + }, + "includeCount": { + "description": "Flag that indicates whether the response returns the total number of items (**totalCount**) in the response.", + "in": "query", + "name": "includeCount", + "schema": { + "default": true, + "example": true, + "type": "boolean" + } + }, + "indexName": { + "description": "Human-readable label that identifies the index.", + "in": "path", + "name": "indexName", + "required": true, + "schema": { + "example": "myindex", + "type": "string" + } + }, + "itemsPerPage": { + "description": "Number of items that the response returns per page.", + "in": "query", + "name": "itemsPerPage", + "schema": { + "default": 100, + "example": 100, + "maximum": 500, + "minimum": 1, + "type": "integer" + } + }, + "liveMigrationId": { + "description": "Unique 24-hexadecimal digit string that identifies the migration.", + "in": "path", + "name": "liveMigrationId", + "required": true, + "schema": { + "example": "6296fb4c7c7aa997cf94e9a8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + } + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization that contains your projects. Use the [/orgs](#tag/Organizations/operation/listOrganizations) endpoint to retrieve all organizations to which the authenticated user has access.", + "in": "path", + "name": "orgId", + "required": true, + "schema": { + "example": "4888442a3354817a7320eb61", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + } + }, + "pageNum": { + "description": "Number of the page that displays the current set of the total objects that the response returns.", + "in": "query", + "name": "pageNum", + "schema": { + "default": 1, + "example": 1, + "minimum": 1, + "type": "integer" + } + }, + "period": { + "description": "Duration over which Atlas reports the metrics. This parameter expresses its value in the ISO 8601 duration format in UTC. Include this parameter when you do not set **start** and **end**.", + "in": "query", + "name": "period", + "schema": { + "example": "PT10H", + "type": "string" + } + }, + "pretty": { + "description": "Flag that indicates whether the response body should be in the \u003ca href=\"https://en.wikipedia.org/wiki/Prettyprint\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eprettyprint\u003c/a\u003e format.", + "in": "query", + "name": "pretty", + "schema": { + "default": false, + "example": false, + "type": "boolean" + } + }, + "processId": { + "description": "Combination of hostname and IANA port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (mongod or mongos). The port must be the IANA port on which the MongoDB process listens for requests.", + "in": "path", + "name": "processId", + "required": true, + "schema": { + "example": "my.host.name.com:27017", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?(\\:[0-9]{4,5})$", + "type": "string" + } + }, + "start": { + "description": "Date and time when MongoDB Cloud begins reporting the metrics. This parameter expresses its value in the ISO 8601 timestamp format in UTC. Include this parameter when you do not set **period**.", + "in": "query", + "name": "start", + "schema": { + "format": "date-time", + "type": "string" + } + } + }, + "responses": { + "accepted": { + "description": "Accepted." + }, + "badRequest": { + "content": { + "application/json": { + "example": { + "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.", + "error": 400, + "errorCode": "VALIDATION_ERROR", + "reason": "Bad Request" + }, + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + }, + "description": "Bad Request." + }, + "conflict": { + "content": { + "application/json": { + "example": { + "detail": "(This is just an example, the exception may not be related to this endpoint) Cannot delete organization link while there is active migration in following project ids: 60c4fd418ebe251047c50554", + "error": 409, + "errorCode": "CANNOT_DELETE_ORG_ACTIVE_LIVE_MIGRATION_ATLAS_ORG_LINK", + "reason": "Conflict" + }, + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + }, + "description": "Conflict." + }, + "forbidden": { + "content": { + "application/json": { + "example": { + "detail": "(This is just an example, the exception may not be related to this endpoint)", + "error": 403, + "errorCode": "CANNOT_CHANGE_GROUP_NAME", + "reason": "Forbidden" + }, + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + }, + "description": "Forbidden." + }, + "gone": { + "content": { + "application/json": { + "example": { + "detail": "This happens when a resource is marked for sunset and the sunset date is in the past.", + "error": 410, + "errorCode": "VERSION_GONE", + "reason": "Gone" + }, + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + }, + "description": "Gone." + }, + "internalServerError": { + "content": { + "application/json": { + "example": { + "detail": "(This is just an example, the exception may not be related to this endpoint)", + "error": 500, + "errorCode": "UNEXPECTED_ERROR", + "reason": "Internal Server Error" + }, + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + }, + "description": "Internal Server Error." + }, + "methodNotAllowed": { + "content": { + "application/json": { + "example": { + "detail": "(This is just an example, the exception may not be related to this endpoint)", + "error": 405, + "errorCode": "ATLAS_BACKUP_CANCEL_SHARD_RESTORE_JOB_NOT_ALLOWED", + "reason": "Method Not Allowed" + }, + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + }, + "description": "Method Not Allowed." + }, + "noBody": { + "description": "This endpoint does not return a response body." + }, + "notFound": { + "content": { + "application/json": { + "example": { + "detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS", + "error": 404, + "errorCode": "RESOURCE_NOT_FOUND", + "reason": "Not Found" + }, + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + }, + "description": "Not Found." + }, + "paymentRequired": { + "content": { + "application/json": { + "example": { + "detail": "(This is just an example, the exception may not be related to this endpoint)", + "error": 402, + "errorCode": "NO_PAYMENT_INFORMATION_FOUND", + "reason": "Payment Required" + }, + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + }, + "description": "Payment Required." + }, + "unauthorized": { + "content": { + "application/json": { + "example": { + "detail": "(This is just an example, the exception may not be related to this endpoint)", + "error": 401, + "errorCode": "NOT_ORG_GROUP_CREATOR", + "reason": "Unauthorized" + }, + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + }, + "description": "Unauthorized." + } + }, + "schemas": { + "AWSCloudProviderContainer": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudProviderContainer" + }, + { + "properties": { + "atlasCidrBlock": { + "description": "IP addresses expressed in Classless Inter-Domain Routing (CIDR) notation that MongoDB Cloud uses for the network peering containers in your project. MongoDB Cloud assigns all of the project's clusters deployed to this cloud provider an IP address from this range. MongoDB Cloud locks this value if an M10 or greater cluster or a network peering connection exists in this project.\n\nThese CIDR blocks must fall within the ranges reserved per RFC 1918. AWS and Azure further limit the block to between the `/24` and `/21` ranges.\n\nTo modify the CIDR block, the target project cannot have:\n\n- Any M10 or greater clusters\n- Any other VPC peering connections\n\n You can also create a new project and create a network peering connection to set the desired MongoDB Cloud network peering container CIDR block for that project. MongoDB Cloud limits the number of MongoDB nodes per network peering connection based on the CIDR block and the region selected for the project.\n\n **Example:** A project in an Amazon Web Services (AWS) region supporting three availability zones and an MongoDB CIDR network peering container block of limit of `/24` equals 27 three-node replica sets.", + "pattern": "^((([0-9]{1,3}\\.){3}[0-9]{1,3})|(:{0,2}([0-9a-f]{1,4}:){0,7}[0-9a-f]{1,4}[:]{0,2}))((%2[fF]|/)[0-9]{1,3})+$", + "type": "string" + }, + "regionName": { + "description": "Geographic area that Amazon Web Services (AWS) defines to which MongoDB Cloud deployed this network peering container.", + "enum": [ + "US_EAST_1", + "US_EAST_2", + "US_WEST_1", + "US_WEST_2", + "CA_CENTRAL_1", + "EU_NORTH_1", + "EU_WEST_1", + "EU_WEST_2", + "EU_WEST_3", + "EU_CENTRAL_1", + "EU_CENTRAL_2", + "SA_EAST_1", + "AP_EAST_1", + "AP_SOUTHEAST_2", + "AP_SOUTHEAST_3", + "AP_SOUTHEAST_4", + "AP_NORTHEAST_1", + "AP_NORTHEAST_2", + "AP_NORTHEAST_3", + "AP_SOUTHEAST_1", + "AP_SOUTH_1", + "AP_SOUTH_2", + "CN_NORTH_1", + "CN_NORTHWEST_1", + "ME_CENTRAL_1", + "ME_SOUTH_1", + "AF_SOUTH_1", + "EU_SOUTH_1", + "EU_SOUTH_2", + "IL_CENTRAL_1", + "CA_WEST_1", + "GLOBAL", + "US_GOV_WEST_1", + "US_GOV_EAST_1" + ], + "type": "string" + }, + "vpcId": { + "description": "Unique string that identifies the MongoDB Cloud VPC on AWS.", + "example": "vpc-b555d3b0d9cb783b0", + "minLength": 5, + "pattern": "^vpc-[0-9a-f]{17}$", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + } + ], + "description": "Collection of settings that configures the network container for a virtual private connection on Amazon Web Services.", + "required": [ + "regionName" + ], + "title": "AWS", + "type": "object" + }, + "AWSCloudProviderSettings": { + "allOf": [ + { + "$ref": "#/components/schemas/ClusterProviderSettings" + }, + { + "properties": { + "autoScaling": { + "$ref": "#/components/schemas/CloudProviderAWSAutoScaling" + }, + "diskIOPS": { + "description": "Maximum Disk Input/Output Operations per Second (IOPS) that the database host can perform.", + "format": "int32", + "type": "integer" + }, + "encryptEBSVolume": { + "default": true, + "deprecated": true, + "description": "Flag that indicates whether the Amazon Elastic Block Store (EBS) encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Clusters always have this setting enabled.", + "type": "boolean" + }, + "instanceSizeName": { + "description": "Cluster tier, with a default storage and memory capacity, that applies to all the data-bearing hosts in your cluster.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M100", + "M140", + "M200", + "M300", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "R700", + "M40_NVME", + "M50_NVME", + "M60_NVME", + "M80_NVME", + "M200_NVME", + "M400_NVME" + ], + "title": "AWS Instance Sizes", + "type": "string" + }, + "regionName": { + "description": "Physical location where MongoDB Cloud deploys your AWS-hosted MongoDB cluster nodes. The region you choose can affect network latency for clients accessing your databases. When MongoDB Cloud deploys a dedicated cluster, it checks if a VPC or VPC connection exists for that provider and region. If not, MongoDB Cloud creates them as part of the deployment. MongoDB Cloud assigns the VPC a CIDR block. To limit a new VPC peering connection to one CIDR block and region, create the connection first. Deploy the cluster after the connection starts.", + "enum": [ + "US_GOV_WEST_1", + "US_GOV_EAST_1", + "US_EAST_1", + "US_EAST_2", + "US_WEST_1", + "US_WEST_2", + "CA_CENTRAL_1", + "EU_NORTH_1", + "EU_WEST_1", + "EU_WEST_2", + "EU_WEST_3", + "EU_CENTRAL_1", + "EU_CENTRAL_2", + "AP_EAST_1", + "AP_NORTHEAST_1", + "AP_NORTHEAST_2", + "AP_NORTHEAST_3", + "AP_SOUTHEAST_1", + "AP_SOUTHEAST_2", + "AP_SOUTHEAST_3", + "AP_SOUTHEAST_4", + "AP_SOUTH_1", + "AP_SOUTH_2", + "SA_EAST_1", + "CN_NORTH_1", + "CN_NORTHWEST_1", + "ME_SOUTH_1", + "ME_CENTRAL_1", + "AF_SOUTH_1", + "EU_SOUTH_1", + "EU_SOUTH_2", + "IL_CENTRAL_1", + "CA_WEST_1", + "GLOBAL" + ], + "externalDocs": { + "description": "AWS", + "url": "https://docs.atlas.mongodb.com/reference/amazon-aws/#std-label-amazon-aws" + }, + "title": "AWS Regions", + "type": "string" + }, + "volumeType": { + "description": "Disk Input/Output Operations per Second (IOPS) setting for Amazon Web Services (AWS) storage that you configure only for abbr title=\"Amazon Web Services\"\u003eAWS\u003c/abbr\u003e. Specify whether Disk Input/Output Operations per Second (IOPS) must not exceed the default Input/Output Operations per Second (IOPS) rate for the selected volume size (`STANDARD`), or must fall within the allowable Input/Output Operations per Second (IOPS) range for the selected volume size (`PROVISIONED`). You must set this value to (`PROVISIONED`) for NVMe clusters.", + "enum": [ + "STANDARD", + "PROVISIONED" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "AWSComputeAutoScaling": { + "description": "Collection of settings that configures how a cluster might scale its cluster tier and whether the cluster can scale down. Cluster tier auto-scaling is unavailable for clusters using Low CPU or NVME storage classes.", + "properties": { + "maxInstanceSize": { + "description": "Maximum instance size to which your cluster can automatically scale.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M100", + "M140", + "M200", + "M300", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "R700", + "M40_NVME", + "M50_NVME", + "M60_NVME", + "M80_NVME", + "M200_NVME", + "M400_NVME" + ], + "title": "AWS Instance Sizes", + "type": "string" + }, + "minInstanceSize": { + "description": "Minimum instance size to which your cluster can automatically scale.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M100", + "M140", + "M200", + "M300", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "R700", + "M40_NVME", + "M50_NVME", + "M60_NVME", + "M80_NVME", + "M200_NVME", + "M400_NVME" + ], + "title": "AWS Instance Sizes", + "type": "string" + } + }, + "title": "AWS", + "type": "object" + }, + "AWSCreateDataProcessRegionView": { + "allOf": [ + { + "$ref": "#/components/schemas/CreateDataProcessRegionView" + }, + { + "properties": { + "region": { + "description": "Human-readable label that identifies the geographic location of the region where you wish to store your archived data.", + "enum": [ + "US_EAST_1", + "US_WEST_2", + "SA_EAST_1", + "EU_WEST_1", + "EU_WEST_2", + "EU_CENTRAL_1", + "AP_SOUTH_1", + "AP_SOUTHEAST_1", + "AP_SOUTHEAST_2" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "AWSCustomDNSEnabledView": { + "properties": { + "enabled": { + "description": "Flag that indicates whether the project's clusters deployed to Amazon Web Services (AWS) use a custom Domain Name System (DNS).\nWhen `\"enabled\": true`, connect to your cluster using Private IP for Peering connection strings.", + "externalDocs": { + "description": "To learn more, see FAQ: Connection String Options in the MongoDB Atlas documentation.", + "url": "https://www.mongodb.com/docs/atlas/reference/faq/connection-changes/#how-does-this-affect-aws-vpc-peering-when-i-use-custom-dns-" + }, + "type": "boolean" + } + }, + "required": [ + "enabled" + ], + "type": "object" + }, + "AWSDataProcessRegionView": { + "allOf": [ + { + "$ref": "#/components/schemas/DataProcessRegionView" + }, + { + "properties": { + "region": { + "description": "Human-readable label that identifies the geographic location of the region where you store your archived data.", + "enum": [ + "US_EAST_1", + "US_WEST_2", + "SA_EAST_1", + "EU_WEST_1", + "EU_WEST_2", + "EU_CENTRAL_1", + "AP_SOUTH_1", + "AP_SOUTHEAST_1", + "AP_SOUTHEAST_2" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "AWSHardwareSpec": { + "description": "Hardware specifications for nodes deployed in the region.", + "properties": { + "diskIOPS": { + "description": "Target throughput desired for storage attached to your AWS-provisioned cluster. Change this parameter only if you:\n\n- set `\"replicationSpecs[n].regionConfigs[m].providerName\" : \"AWS\"`.\n- set `\"replicationSpecs[n].regionConfigs[m].electableSpecs.instanceSize\" : \"M30\"` or greater not including `Mxx_NVME` tiers.\n\nThe maximum input/output operations per second (IOPS) depend on the selected **.instanceSize** and **.diskSizeGB**.\nThis parameter defaults to the cluster tier's standard IOPS value.\nChanging this value impacts cluster cost.\nMongoDB Cloud enforces minimum ratios of storage capacity to system memory for given cluster tiers. This keeps cluster performance consistent with large datasets.\n\n- Instance sizes `M10` to `M40` have a ratio of disk capacity to system memory of 60:1.\n- Instance sizes greater than `M40` have a ratio of 120:1.", + "format": "int32", + "type": "integer" + }, + "ebsVolumeType": { + "default": "STANDARD", + "description": "Type of storage you want to attach to your AWS-provisioned cluster.\n\n- `STANDARD` volume types can't exceed the default input/output operations per second (IOPS) rate for the selected volume size. \n\n- `PROVISIONED` volume types must fall within the allowable IOPS range for the selected volume size. You must set this value to (`PROVISIONED`) for NVMe clusters.", + "enum": [ + "STANDARD", + "PROVISIONED" + ], + "type": "string" + }, + "instanceSize": { + "description": "Hardware specification for the instance sizes in this region. Each instance size has a default storage and memory capacity. The instance size you select applies to all the data-bearing hosts in your instance size.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M100", + "M140", + "M200", + "M300", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "R700", + "M40_NVME", + "M50_NVME", + "M60_NVME", + "M80_NVME", + "M200_NVME", + "M400_NVME" + ], + "title": "AWS Instance Sizes", + "type": "string" + }, + "nodeCount": { + "description": "Number of nodes of the given type for MongoDB Cloud to deploy to the region.", + "format": "int32", + "type": "integer" + } + }, + "title": "AWS Cluster Hardware Settings", + "type": "object" + }, + "AWSHardwareSpec20250101": { + "description": "Hardware specifications for nodes deployed in the region.", + "properties": { + "diskIOPS": { + "description": "Target throughput desired for storage attached to your AWS-provisioned cluster. Change this parameter only if you:\n\n- set `\"replicationSpecs[n].regionConfigs[m].providerName\" : \"AWS\"`.\n- set `\"replicationSpecs[n].regionConfigs[m].electableSpecs.instanceSize\" : \"M30\"` or greater not including `Mxx_NVME` tiers.\n\nThe maximum input/output operations per second (IOPS) depend on the selected **.instanceSize** and **.diskSizeGB**.\nThis parameter defaults to the cluster tier's standard IOPS value.\nChanging this value impacts cluster cost.\nMongoDB Cloud enforces minimum ratios of storage capacity to system memory for given cluster tiers. This keeps cluster performance consistent with large datasets.\n\n- Instance sizes `M10` to `M40` have a ratio of disk capacity to system memory of 60:1.\n- Instance sizes greater than `M40` have a ratio of 120:1.", + "format": "int32", + "type": "integer" + }, + "diskSizeGB": { + "description": "Storage capacity that the host's root volume possesses expressed in gigabytes. Increase this number to add capacity. MongoDB Cloud requires this parameter if you set **replicationSpecs**. If you specify a disk size below the minimum (10 GB), this parameter defaults to the minimum disk size value. Storage charge calculations depend on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier.", + "format": "double", + "maximum": 4096, + "minimum": 10, + "type": "number" + }, + "ebsVolumeType": { + "default": "STANDARD", + "description": "Type of storage you want to attach to your AWS-provisioned cluster.\n\n- `STANDARD` volume types can't exceed the default input/output operations per second (IOPS) rate for the selected volume size. \n\n- `PROVISIONED` volume types must fall within the allowable IOPS range for the selected volume size. You must set this value to (`PROVISIONED`) for NVMe clusters.", + "enum": [ + "STANDARD", + "PROVISIONED" + ], + "type": "string" + }, + "instanceSize": { + "description": "Hardware specification for the instance sizes in this region. Each instance size has a default storage and memory capacity. The instance size you select applies to all the data-bearing hosts in your instance size.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M100", + "M140", + "M200", + "M300", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "R700", + "M40_NVME", + "M50_NVME", + "M60_NVME", + "M80_NVME", + "M200_NVME", + "M400_NVME" + ], + "title": "AWS Instance Sizes", + "type": "string" + }, + "nodeCount": { + "description": "Number of nodes of the given type for MongoDB Cloud to deploy to the region.", + "format": "int32", + "type": "integer" + } + }, + "title": "AWS Cluster Hardware Settings", + "type": "object" + }, + "AWSInterfaceEndpoint": { + "description": "Group of Private Endpoint settings.", + "properties": { + "cloudProvider": { + "description": "Cloud service provider that serves the requested endpoint.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "readOnly": true, + "type": "string" + }, + "connectionStatus": { + "description": "State of the Amazon Web Service PrivateLink connection when MongoDB Cloud received this request.", + "enum": [ + "PENDING_ACCEPTANCE", + "PENDING", + "AVAILABLE", + "REJECTED", + "DELETING" + ], + "readOnly": true, + "type": "string" + }, + "deleteRequested": { + "description": "Flag that indicates whether MongoDB Cloud received a request to remove the specified private endpoint from the private endpoint service.", + "readOnly": true, + "type": "boolean" + }, + "errorMessage": { + "description": "Error message returned when requesting private connection resource. The resource returns `null` if the request succeeded.", + "readOnly": true, + "type": "string" + }, + "interfaceEndpointId": { + "description": "Unique 24-hexadecimal digit string that identifies the interface endpoint.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "cloudProvider" + ], + "title": "AWS", + "type": "object" + }, + "AWSKMSConfiguration": { + "description": "Amazon Web Services (AWS) KMS configuration details and encryption at rest configuration set for the specified project.", + "externalDocs": { + "description": "Amazon Web Services Key Management Service", + "url": "https://www.mongodb.com/docs/atlas/security-aws-kms/" + }, + "properties": { + "accessKeyID": { + "description": "Unique alphanumeric string that identifies an Identity and Access Management (IAM) access key with permissions required to access your Amazon Web Services (AWS) Customer Master Key (CMK).", + "example": "019dd98d94b4bb778e7552e4", + "maxLength": 128, + "minLength": 16, + "type": "string" + }, + "customerMasterKeyID": { + "description": "Unique alphanumeric string that identifies the Amazon Web Services (AWS) Customer Master Key (CMK) you used to encrypt and decrypt the MongoDB master keys.", + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "enabled": { + "description": "Flag that indicates whether someone enabled encryption at rest for the specified project through Amazon Web Services (AWS) Key Management Service (KMS). To disable encryption at rest using customer key management and remove the configuration details, pass only this parameter with a value of `false`.", + "type": "boolean" + }, + "region": { + "description": "Physical location where MongoDB Cloud deploys your AWS-hosted MongoDB cluster nodes. The region you choose can affect network latency for clients accessing your databases. When MongoDB Cloud deploys a dedicated cluster, it checks if a VPC or VPC connection exists for that provider and region. If not, MongoDB Cloud creates them as part of the deployment. MongoDB Cloud assigns the VPC a CIDR block. To limit a new VPC peering connection to one CIDR block and region, create the connection first. Deploy the cluster after the connection starts.", + "enum": [ + "US_GOV_WEST_1", + "US_GOV_EAST_1", + "US_EAST_1", + "US_EAST_2", + "US_WEST_1", + "US_WEST_2", + "CA_CENTRAL_1", + "EU_NORTH_1", + "EU_WEST_1", + "EU_WEST_2", + "EU_WEST_3", + "EU_CENTRAL_1", + "EU_CENTRAL_2", + "AP_EAST_1", + "AP_NORTHEAST_1", + "AP_NORTHEAST_2", + "AP_NORTHEAST_3", + "AP_SOUTHEAST_1", + "AP_SOUTHEAST_2", + "AP_SOUTHEAST_3", + "AP_SOUTHEAST_4", + "AP_SOUTH_1", + "AP_SOUTH_2", + "SA_EAST_1", + "CN_NORTH_1", + "CN_NORTHWEST_1", + "ME_SOUTH_1", + "ME_CENTRAL_1", + "AF_SOUTH_1", + "EU_SOUTH_1", + "EU_SOUTH_2", + "IL_CENTRAL_1", + "CA_WEST_1", + "GLOBAL" + ], + "title": "AWS Regions", + "type": "string" + }, + "roleId": { + "description": "Unique 24-hexadecimal digit string that identifies an Amazon Web Services (AWS) Identity and Access Management (IAM) role. This IAM role has the permissions required to manage your AWS customer master key.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string", + "writeOnly": true + }, + "secretAccessKey": { + "description": "Human-readable label of the Identity and Access Management (IAM) secret access key with permissions required to access your Amazon Web Services (AWS) customer master key.", + "type": "string", + "writeOnly": true + }, + "valid": { + "description": "Flag that indicates whether the Amazon Web Services (AWS) Key Management Service (KMS) encryption key can encrypt and decrypt data.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, + "AWSPrivateLinkConnection": { + "description": "Group of Private Endpoint Service settings.", + "properties": { + "cloudProvider": { + "description": "Cloud service provider that serves the requested endpoint service.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "readOnly": true, + "type": "string" + }, + "endpointServiceName": { + "description": "Unique string that identifies the Amazon Web Services (AWS) PrivateLink endpoint service. MongoDB Cloud returns null while it creates the endpoint service.", + "pattern": "^com\\.amazonaws\\.vpce\\.[a-z-0-9]+\\.vpce-svc-[0-9a-f]{17}", + "readOnly": true, + "type": "string" + }, + "errorMessage": { + "description": "Error message returned when requesting private connection resource. The resource returns `null` if the request succeeded.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the Private Endpoint Service.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "interfaceEndpoints": { + "description": "List of strings that identify private endpoint interfaces applied to the specified project.", + "items": { + "description": "Unique 24-hexadecimal digit string that identifies the interface endpoint.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "regionName": { + "description": "Cloud provider region that manages this Private Endpoint Service.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of the Private Endpoint Service connection when MongoDB Cloud received this request.", + "enum": [ + "INITIATING", + "AVAILABLE", + "WAITING_FOR_USER", + "FAILED", + "DELETING" + ], + "readOnly": true, + "type": "string" + } + }, + "required": [ + "cloudProvider" + ], + "title": "AWS", + "type": "object" + }, + "AWSRegionConfig": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudRegionConfig" + }, + { + "properties": { + "analyticsAutoScaling": { + "$ref": "#/components/schemas/AdvancedAutoScalingSettings" + }, + "analyticsSpecs": { + "$ref": "#/components/schemas/DedicatedHardwareSpec" + }, + "autoScaling": { + "$ref": "#/components/schemas/AdvancedAutoScalingSettings" + }, + "readOnlySpecs": { + "$ref": "#/components/schemas/DedicatedHardwareSpec" + } + }, + "type": "object" + } + ], + "description": "Details that explain how MongoDB Cloud replicates data in one region on the specified MongoDB database.", + "title": "AWS Regional Replication Specifications", + "type": "object" + }, + "AWSRegionConfig20250101": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudRegionConfig20250101" + }, + { + "properties": { + "analyticsAutoScaling": { + "$ref": "#/components/schemas/AdvancedAutoScalingSettings" + }, + "analyticsSpecs": { + "$ref": "#/components/schemas/DedicatedHardwareSpec20250101" + }, + "autoScaling": { + "$ref": "#/components/schemas/AdvancedAutoScalingSettings" + }, + "readOnlySpecs": { + "$ref": "#/components/schemas/DedicatedHardwareSpec20250101" + } + }, + "type": "object" + } + ], + "description": "Details that explain how MongoDB Cloud replicates data in one region on the specified MongoDB database.", + "title": "AWS Regional Replication Specifications", + "type": "object" + }, + "AccessListItemView": { + "properties": { + "cidrBlock": { + "description": "Range of IP addresses in Classless Inter-Domain Routing (CIDR) notation that found in this project's access list.", + "pattern": "^((([0-9]{1,3}\\.){3}[0-9]{1,3})|(:{0,2}([0-9a-f]{1,4}:){0,7}[0-9a-f]{1,4}[:]{0,2}))((%2[fF]|/)[0-9]{1,3})+$", + "readOnly": true, + "type": "string" + }, + "ipAddress": { + "description": "IP address included in the API access list.", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "ipAddress" + ], + "type": "object" + }, + "AcknowledgeAlert": { + "description": "Acknowledging an alert prevents successive notifications. Specify the acknowledgeUntil date and optional comment or unacknowledgeAlert boolean.", + "properties": { + "acknowledgedUntil": { + "description": "Date and time until which this alert has been acknowledged. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.", + "format": "date-time", + "type": "string" + }, + "acknowledgementComment": { + "description": "Comment that a MongoDB Cloud user submitted when acknowledging the alert.", + "example": "Expiration on 3/19. Silencing for 7days.", + "maxLength": 200, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "unacknowledgeAlert": { + "description": "Flag that indicates to unacknowledge a previously acknowledged alert. By default this value is set to false. If set to true, it will override the acknowledgedUntil parameter.", + "type": "boolean" + } + }, + "title": "Acknowledge Alert", + "type": "object" + }, + "AddUserToTeam": { + "properties": { + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + } + }, + "required": [ + "id" + ], + "type": "object" + }, + "AdvancedAutoScalingSettings": { + "description": "Options that determine how this cluster handles resource scaling.", + "properties": { + "compute": { + "$ref": "#/components/schemas/AdvancedComputeAutoScaling" + }, + "diskGB": { + "$ref": "#/components/schemas/DiskGBAutoScaling" + } + }, + "title": "Automatic Scaling Settings", + "type": "object" + }, + "AdvancedClusterDescription": { + "properties": { + "acceptDataRisksAndForceReplicaSetReconfig": { + "description": "If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set **acceptDataRisksAndForceReplicaSetReconfig** to the current date.", + "externalDocs": { + "description": "Reconfiguring a Replica Set during a regional outage", + "url": "https://dochub.mongodb.org/core/regional-outage-reconfigure-replica-set" + }, + "format": "date-time", + "type": "string" + }, + "backupEnabled": { + "default": false, + "description": "Flag that indicates whether the cluster can perform backups. If set to `true`, the cluster can perform backups. You must set this value to `true` for NVMe clusters. Backup uses [Cloud Backups](https://docs.atlas.mongodb.com/backup/cloud-backup/overview/) for dedicated clusters and [Shared Cluster Backups](https://docs.atlas.mongodb.com/backup/shared-tier/overview/) for tenant clusters. If set to `false`, the cluster doesn't use backups.", + "type": "boolean" + }, + "biConnector": { + "$ref": "#/components/schemas/BiConnector" + }, + "clusterType": { + "description": "Configuration of nodes that comprise the cluster.", + "enum": [ + "REPLICASET", + "SHARDED", + "GEOSHARDED" + ], + "type": "string" + }, + "connectionStrings": { + "$ref": "#/components/schemas/ClusterConnectionStrings" + }, + "createDate": { + "description": "Date and time when MongoDB Cloud created this cluster. This parameter expresses its value in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "diskSizeGB": { + "description": "Storage capacity that the host's root volume possesses expressed in gigabytes. Increase this number to add capacity. MongoDB Cloud requires this parameter if you set **replicationSpecs**. If you specify a disk size below the minimum (10 GB), this parameter defaults to the minimum disk size value. Storage charge calculations depend on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier.", + "format": "double", + "maximum": 4096, + "minimum": 10, + "type": "number" + }, + "diskWarmingMode": { + "default": "FULLY_WARMED", + "description": "Disk warming mode selection.", + "enum": [ + "FULLY_WARMED", + "VISIBLE_EARLIER" + ], + "externalDocs": { + "description": "Reduce Secondary Disk Warming Impact", + "url": "https://docs.atlas.mongodb.com/reference/replica-set-tags/#reduce-secondary-disk-warming-impact" + }, + "type": "string" + }, + "encryptionAtRestProvider": { + "description": "Cloud service provider that manages your customer keys to provide an additional layer of encryption at rest for the cluster. To enable customer key management for encryption at rest, the cluster **replicationSpecs[n].regionConfigs[m].{type}Specs.instanceSize** setting must be `M10` or higher and `\"backupEnabled\" : false` or omitted entirely.", + "enum": [ + "NONE", + "AWS", + "AZURE", + "GCP" + ], + "externalDocs": { + "description": "Encryption at Rest using Customer Key Management", + "url": "https://www.mongodb.com/docs/atlas/security-kms-encryption/" + }, + "type": "string" + }, + "globalClusterSelfManagedSharding": { + "description": "Set this field to configure the Sharding Management Mode when creating a new Global Cluster.\n\nWhen set to false, the management mode is set to Atlas-Managed Sharding. This mode fully manages the sharding of your Global Cluster and is built to provide a seamless deployment experience.\n\nWhen set to true, the management mode is set to Self-Managed Sharding. This mode leaves the management of shards in your hands and is built to provide an advanced and flexible deployment experience.\n\nThis setting cannot be changed once the cluster is deployed.", + "externalDocs": { + "description": "Creating a Global Cluster", + "url": "https://dochub.mongodb.org/core/global-cluster-management" + }, + "type": "boolean" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the cluster.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "labels": { + "deprecated": true, + "description": "Collection of key-value pairs between 1 to 255 characters in length that tag and categorize the cluster. The MongoDB Cloud console doesn't display your labels.\n\nCluster labels are deprecated and will be removed in a future release. We strongly recommend that you use [resource tags](https://dochub.mongodb.org/core/add-cluster-tag-atlas) instead.", + "items": { + "$ref": "#/components/schemas/ComponentLabel" + }, + "type": "array" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "mongoDBMajorVersion": { + "description": "MongoDB major version of the cluster.\n\nOn creation: Choose from the available versions of MongoDB, or leave unspecified for the current recommended default in the MongoDB Cloud platform. The recommended version is a recent Long Term Support version. The default is not guaranteed to be the most recently released version throughout the entire release cycle. For versions available in a specific project, see the linked documentation or use the API endpoint for [project LTS versions endpoint](#tag/Projects/operation/getProjectLTSVersions).\n\n On update: Increase version only by 1 major version at a time. If the cluster is pinned to a MongoDB feature compatibility version exactly one major version below the current MongoDB version, the MongoDB version can be downgraded to the previous major version.", + "externalDocs": { + "description": "Available MongoDB Versions in Atlas", + "url": "https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-" + }, + "type": "string" + }, + "mongoDBVersion": { + "description": "Version of MongoDB that the cluster runs.", + "pattern": "([\\d]+\\.[\\d]+\\.[\\d]+)", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Human-readable label that identifies the advanced cluster.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "type": "string" + }, + "paused": { + "description": "Flag that indicates whether the cluster is paused.", + "type": "boolean" + }, + "pitEnabled": { + "description": "Flag that indicates whether the cluster uses continuous cloud backups.", + "externalDocs": { + "description": "Continuous Cloud Backups", + "url": "https://docs.atlas.mongodb.com/backup/cloud-backup/overview/" + }, + "type": "boolean" + }, + "replicationSpecs": { + "description": "List of settings that configure your cluster regions. For Global Clusters, each object in the array represents a zone where your clusters nodes deploy. For non-Global sharded clusters and replica sets, this array has one object representing where your clusters nodes deploy.", + "items": { + "$ref": "#/components/schemas/ReplicationSpec" + }, + "type": "array" + }, + "rootCertType": { + "default": "ISRGROOTX1", + "description": "Root Certificate Authority that MongoDB Cloud cluster uses. MongoDB Cloud supports Internet Security Research Group.", + "enum": [ + "ISRGROOTX1" + ], + "type": "string" + }, + "stateName": { + "description": "Human-readable label that indicates the current operating condition of this cluster.", + "enum": [ + "IDLE", + "CREATING", + "UPDATING", + "DELETING", + "REPAIRING" + ], + "readOnly": true, + "type": "string" + }, + "tags": { + "description": "List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster.", + "externalDocs": { + "description": "Resource Tags", + "url": "https://dochub.mongodb.org/core/add-cluster-tag-atlas" + }, + "items": { + "$ref": "#/components/schemas/ResourceTag" + }, + "type": "array" + }, + "terminationProtectionEnabled": { + "default": false, + "description": "Flag that indicates whether termination protection is enabled on the cluster. If set to `true`, MongoDB Cloud won't delete the cluster. If set to `false`, MongoDB Cloud will delete the cluster.", + "type": "boolean" + }, + "versionReleaseSystem": { + "default": "LTS", + "description": "Method by which the cluster maintains the MongoDB versions. If value is `CONTINUOUS`, you must not specify **mongoDBMajorVersion**.", + "enum": [ + "LTS", + "CONTINUOUS" + ], + "type": "string" + } + }, + "type": "object" + }, + "AdvancedComputeAutoScaling": { + "description": "Options that determine how this cluster handles CPU scaling.", + "properties": { + "enabled": { + "description": "Flag that indicates whether someone enabled instance size auto-scaling.\n\n- Set to `true` to enable instance size auto-scaling. If enabled, you must specify a value for **replicationSpecs[n].regionConfigs[m].autoScaling.compute.maxInstanceSize**.\n- Set to `false` to disable instance size automatic scaling.", + "type": "boolean" + }, + "maxInstanceSize": { + "$ref": "#/components/schemas/BaseCloudProviderInstanceSize" + }, + "minInstanceSize": { + "$ref": "#/components/schemas/BaseCloudProviderInstanceSize" + }, + "scaleDownEnabled": { + "description": "Flag that indicates whether the instance size may scale down. MongoDB Cloud requires this parameter if `\"replicationSpecs[n].regionConfigs[m].autoScaling.compute.enabled\" : true`. If you enable this option, specify a value for **replicationSpecs[n].regionConfigs[m].autoScaling.compute.minInstanceSize**.", + "type": "boolean" + } + }, + "title": "Automatic Compute Scaling Settings", + "type": "object" + }, + "AdvancedDiskBackupSnapshotSchedulePolicy": { + "description": "List that contains a document for each backup policy item in the desired backup policy.", + "properties": { + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this backup policy.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "policyItems": { + "description": "List that contains the specifications for one policy.", + "items": { + "$ref": "#/components/schemas/DiskBackupApiPolicyItem" + }, + "type": "array" + } + }, + "type": "object" + }, + "AlertAudit": { + "description": "Alert audit indicates acknowledgement status of an alert.", + "properties": { + "alertId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert associated with the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/AlertAuditTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Alert Audits", + "type": "object" + }, + "AlertAuditTypeView": { + "description": "Unique identifier of event type.", + "enum": [ + "ALERT_ACKNOWLEDGED_AUDIT", + "ALERT_UNACKNOWLEDGED_AUDIT" + ], + "example": "ALERT_ACKNOWLEDGED_AUDIT", + "title": "Alert Audit Types", + "type": "string" + }, + "AlertConfigAudit": { + "description": "Alert config audit indicates any activities around alert settings.", + "properties": { + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration associated with the **alertId**.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/AlertConfigAuditTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Alert Config Audits", + "type": "object" + }, + "AlertConfigAuditTypeView": { + "description": "Unique identifier of event type.", + "enum": [ + "ALERT_CONFIG_DISABLED_AUDIT", + "ALERT_CONFIG_ENABLED_AUDIT", + "ALERT_CONFIG_ADDED_AUDIT", + "ALERT_CONFIG_DELETED_AUDIT", + "ALERT_CONFIG_CHANGED_AUDIT" + ], + "example": "ALERT_CONFIG_ADDED_AUDIT", + "title": "Alert Audit Types", + "type": "string" + }, + "AlertConfigView": { + "description": "Alert settings allows to select which conditions trigger alerts and how users are notified.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "description": "Event type name.", + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "Matching conditions for target resources.", + "items": { + "$ref": "#/components/schemas/AlertMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationBase" + }, + "type": "array" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "notifications" + ], + "title": "Alert Configuration", + "type": "object" + }, + "AlertMatcher": { + "description": "Rules to apply when comparing an target instance against this alert configuration.", + "properties": { + "fieldName": { + "description": "Name of the parameter in the target object that MongoDB Cloud checks. The parameter must match all rules for MongoDB Cloud to check for alert configurations.", + "type": "string" + }, + "operator": { + "description": "Comparison operator to apply when checking the current metric value against **matcher[n].value**.", + "enum": [ + "EQUALS", + "CONTAINS", + "STARTS_WITH", + "ENDS_WITH", + "NOT_EQUALS", + "NOT_CONTAINS", + "REGEX" + ], + "type": "string" + }, + "value": { + "description": "Value to match or exceed using the specified **matchers.operator**.", + "example": "event-replica-set", + "type": "string" + } + }, + "required": [ + "fieldName", + "operator", + "value" + ], + "title": "Matchers", + "type": "object" + }, + "AlertView": { + "description": "Alert represents a notice of warning, a threat or a problem in the system. It can reflect a certain event or condition in the system. An Alert can be acknowledged by the user, but stays open until alert condition is resolved in the system.", + "properties": { + "acknowledgedUntil": { + "description": "Date and time until which this alert has been acknowledged. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.\n\n- To acknowledge this alert forever, set the parameter value to 100 years in the future.\n\n- To unacknowledge a previously acknowledged alert, do not set this parameter value.", + "format": "date-time", + "type": "string" + }, + "acknowledgementComment": { + "description": "Comment that a MongoDB Cloud user submitted when acknowledging the alert.", + "example": "Expiration on 3/19. Silencing for 7days.", + "maxLength": 200, + "type": "string" + }, + "acknowledgingUsername": { + "description": "MongoDB Cloud username of the person who acknowledged the alert. The response returns this parameter if a MongoDB Cloud user previously acknowledged this alert.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration that sets this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastNotified": { + "description": "Date and time that any notifications were last sent for this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if MongoDB Cloud has sent notifications for this alert.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal character string that identifies the organization that owns the project to which this alert applies.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "resolved": { + "description": "Date and time that this alert changed to `\"status\" : \"CLOSED\"`. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter once `\"status\" : \"CLOSED\"`.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of this alert at the time you requested its details.", + "enum": [ + "CANCELLED", + "CLOSED", + "OPEN", + "TRACKING" + ], + "example": "OPEN", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Date and time when someone last updated this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "alertConfigId", + "created", + "id", + "status", + "updated" + ], + "title": "Alert", + "type": "object" + }, + "AlertViewForNdsGroup": { + "oneOf": [ + { + "$ref": "#/components/schemas/AppServiceAlertView" + }, + { + "$ref": "#/components/schemas/ClusterAlertView" + }, + { + "$ref": "#/components/schemas/HostAlertViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/HostMetricAlert" + }, + { + "$ref": "#/components/schemas/ReplicaSetAlertViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/StreamProcessorAlertViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/DefaultAlertViewForNdsGroup" + } + ], + "type": "object" + }, + "AlertsNotificationBase": { + "description": "One target that MongoDB Cloud sends notifications when an alert triggers.", + "oneOf": [ + { + "$ref": "#/components/schemas/DatadogNotification" + }, + { + "$ref": "#/components/schemas/EmailNotification" + }, + { + "$ref": "#/components/schemas/GroupNotification" + }, + { + "$ref": "#/components/schemas/HipChatNotification" + }, + { + "$ref": "#/components/schemas/MicrosoftTeamsNotification" + }, + { + "$ref": "#/components/schemas/NDSNotificationView" + }, + { + "$ref": "#/components/schemas/OpsGenieNotification" + }, + { + "$ref": "#/components/schemas/OrgNotification" + }, + { + "$ref": "#/components/schemas/PagerDutyNotification" + }, + { + "$ref": "#/components/schemas/SlackNotification" + }, + { + "$ref": "#/components/schemas/SMSNotification" + }, + { + "$ref": "#/components/schemas/SummaryNotification" + }, + { + "$ref": "#/components/schemas/TeamNotification" + }, + { + "$ref": "#/components/schemas/UserNotification" + }, + { + "$ref": "#/components/schemas/VictorOpsNotification" + }, + { + "$ref": "#/components/schemas/WebhookNotification" + } + ], + "type": "object" + }, + "AlertsNotificationRootForGroup": { + "description": "One target that MongoDB Cloud sends notifications when an alert triggers.", + "oneOf": [ + { + "$ref": "#/components/schemas/DatadogNotification" + }, + { + "$ref": "#/components/schemas/EmailNotification" + }, + { + "$ref": "#/components/schemas/GroupNotification" + }, + { + "$ref": "#/components/schemas/HipChatNotification" + }, + { + "$ref": "#/components/schemas/MicrosoftTeamsNotification" + }, + { + "$ref": "#/components/schemas/OpsGenieNotification" + }, + { + "$ref": "#/components/schemas/OrgNotification" + }, + { + "$ref": "#/components/schemas/PagerDutyNotification" + }, + { + "$ref": "#/components/schemas/SlackNotification" + }, + { + "$ref": "#/components/schemas/SMSNotification" + }, + { + "$ref": "#/components/schemas/TeamNotification" + }, + { + "$ref": "#/components/schemas/UserNotification" + }, + { + "$ref": "#/components/schemas/VictorOpsNotification" + }, + { + "$ref": "#/components/schemas/WebhookNotification" + } + ], + "type": "object" + }, + "AlertsThresholdInteger": { + "description": "A Limit that triggers an alert when exceeded. The resource returns this parameter when **eventTypeName** has not been set to `OUTSIDE_METRIC_THRESHOLD`.", + "properties": { + "operator": { + "$ref": "#/components/schemas/Operator" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "int32", + "type": "integer" + }, + "units": { + "description": "Element used to express the quantity. This can be an element of time, storage capacity, and the like.", + "enum": [ + "bits", + "Kbits", + "Mbits", + "Gbits", + "bytes", + "KB", + "MB", + "GB", + "TB", + "PB", + "nsec", + "msec", + "sec", + "min", + "hours", + "million minutes", + "days", + "requests", + "1000 requests", + "GB seconds", + "GB hours", + "GB days", + "RPU", + "thousand RPU", + "million RPU", + "WPU", + "thousand WPU", + "million WPU", + "count", + "thousand", + "million", + "billion", + "", + "", + "" + ], + "type": "string" + } + }, + "title": "Threshold", + "type": "object" + }, + "AlertsToggle": { + "description": "Enables or disables the specified alert configuration in the specified project.", + "properties": { + "enabled": { + "description": "Flag that indicates whether to enable or disable the specified alert configuration in the specified project.", + "type": "boolean" + } + }, + "title": "Toggle Request", + "type": "object" + }, + "ApiAtlasCheckpointView": { + "properties": { + "clusterId": { + "description": "Unique 24-hexadecimal digit string that identifies the cluster that contains the checkpoint.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "completed": { + "description": "Date and time when the checkpoint completed and the balancer restarted. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns the checkpoints.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies checkpoint.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "parts": { + "description": "Metadata that describes the complete snapshot.\n\n- For a replica set, this array contains a single document.\n- For a sharded cluster, this array contains one document for each shard plus one document for the config host.", + "items": { + "$ref": "#/components/schemas/ApiCheckpointPartView" + }, + "readOnly": true, + "type": "array" + }, + "restorable": { + "description": "Flag that indicates whether MongoDB Cloud can use the checkpoint for a restore.", + "readOnly": true, + "type": "boolean" + }, + "started": { + "description": "Date and time when the balancer stopped and began the checkpoint. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "timestamp": { + "description": "Date and time to which the checkpoint restores. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ApiAtlasCloudProviderAccessFeatureUsageFeatureIdView": { + "description": "Object that contains the identifying characteristics of the Amazon Web Services (AWS) Key Management Service (KMS). This field always returns a null value.", + "nullable": true, + "type": "object" + }, + "ApiAtlasDataLakeAWSRegionView": { + "description": "Atlas Data Federation AWS Regions.", + "enum": [ + "SYDNEY_AUS", + "MUMBAI_IND", + "FRANKFURT_DEU", + "DUBLIN_IRL", + "LONDON_GBR", + "VIRGINIA_USA", + "OREGON_USA", + "SAOPAULO_BRA", + "MONTREAL_CAN", + "TOKYO_JPN", + "SINGAPORE_SGP" + ], + "type": "string" + }, + "ApiAtlasDataLakeStorageView": { + "$ref": "#/components/schemas/DataLakeStorage" + }, + "ApiAtlasFTSAnalyzersViewManual": { + "description": "Settings that describe one Atlas Search custom analyzer.", + "properties": { + "charFilters": { + "description": "Filters that examine text one character at a time and perform filtering operations.", + "items": { + "oneOf": [ + { + "$ref": "#/components/schemas/charFilterhtmlStrip" + }, + { + "$ref": "#/components/schemas/charFiltericuNormalize" + }, + { + "$ref": "#/components/schemas/charFiltermapping" + }, + { + "$ref": "#/components/schemas/charFilterpersian" + } + ], + "type": "object" + }, + "type": "array" + }, + "name": { + "description": "Human-readable name that identifies the custom analyzer. Names must be unique within an index, and must not start with any of the following strings:\n- `lucene.`\n- `builtin.`\n- `mongodb.`", + "type": "string" + }, + "tokenFilters": { + "description": "Filter that performs operations such as:\n\n- Stemming, which reduces related words, such as \"talking\", \"talked\", and \"talks\" to their root word \"talk\".\n\n- Redaction, the removal of sensitive information from public documents.", + "items": { + "anyOf": [ + { + "$ref": "#/components/schemas/tokenFilterasciiFolding" + }, + { + "$ref": "#/components/schemas/tokenFilterdaitchMokotoffSoundex" + }, + { + "$ref": "#/components/schemas/tokenFilteredgeGram" + }, + { + "$ref": "#/components/schemas/TokenFilterEnglishPossessive" + }, + { + "$ref": "#/components/schemas/TokenFilterFlattenGraph" + }, + { + "$ref": "#/components/schemas/tokenFiltericuFolding" + }, + { + "$ref": "#/components/schemas/tokenFiltericuNormalizer" + }, + { + "$ref": "#/components/schemas/TokenFilterkStemming" + }, + { + "$ref": "#/components/schemas/tokenFilterlength" + }, + { + "$ref": "#/components/schemas/tokenFilterlowercase" + }, + { + "$ref": "#/components/schemas/tokenFilternGram" + }, + { + "$ref": "#/components/schemas/TokenFilterPorterStemming" + }, + { + "$ref": "#/components/schemas/tokenFilterregex" + }, + { + "$ref": "#/components/schemas/tokenFilterreverse" + }, + { + "$ref": "#/components/schemas/tokenFiltershingle" + }, + { + "$ref": "#/components/schemas/tokenFiltersnowballStemming" + }, + { + "$ref": "#/components/schemas/TokenFilterSpanishPluralStemming" + }, + { + "$ref": "#/components/schemas/TokenFilterStempel" + }, + { + "$ref": "#/components/schemas/tokenFilterstopword" + }, + { + "$ref": "#/components/schemas/tokenFiltertrim" + }, + { + "$ref": "#/components/schemas/TokenFilterWordDelimiterGraph" + } + ] + }, + "type": "array" + }, + "tokenizer": { + "description": "Tokenizer that you want to use to create tokens. Tokens determine how Atlas Search splits up text into discrete chunks for indexing.", + "discriminator": { + "mapping": { + "edgeGram": "#/components/schemas/tokenizeredgeGram", + "keyword": "#/components/schemas/tokenizerkeyword", + "nGram": "#/components/schemas/tokenizernGram", + "regexCaptureGroup": "#/components/schemas/tokenizerregexCaptureGroup", + "regexSplit": "#/components/schemas/tokenizerregexSplit", + "standard": "#/components/schemas/tokenizerstandard", + "uaxUrlEmail": "#/components/schemas/tokenizeruaxUrlEmail", + "whitespace": "#/components/schemas/tokenizerwhitespace" + }, + "propertyName": "type" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/tokenizeredgeGram" + }, + { + "$ref": "#/components/schemas/tokenizerkeyword" + }, + { + "$ref": "#/components/schemas/tokenizernGram" + }, + { + "$ref": "#/components/schemas/tokenizerregexCaptureGroup" + }, + { + "$ref": "#/components/schemas/tokenizerregexSplit" + }, + { + "$ref": "#/components/schemas/tokenizerstandard" + }, + { + "$ref": "#/components/schemas/tokenizeruaxUrlEmail" + }, + { + "$ref": "#/components/schemas/tokenizerwhitespace" + } + ], + "type": "object" + } + }, + "required": [ + "name", + "tokenizer" + ], + "title": "analyzers", + "type": "object" + }, + "ApiAtlasFTSMappingsViewManual": { + "description": "Index specifications for the collection's fields.", + "properties": { + "dynamic": { + "default": false, + "description": "Flag that indicates whether the index uses dynamic or static mappings. Required if **mappings.fields** is omitted.", + "externalDocs": { + "description": "Dynamic or Static Mappings", + "url": "https://dochub.mongodb.org/core/index-definitions-fts#field-mapping-examples" + }, + "type": "boolean" + }, + "fields": { + "additionalProperties": { + "externalDocs": { + "description": "Atlas Search Field Mappings", + "url": "https://dochub.mongodb.org/core/field-mapping-definition-fts#define-field-mappings" + }, + "type": "object" + }, + "description": "One or more field specifications for the Atlas Search index. Required if **mappings.dynamic** is omitted or set to **false**.", + "externalDocs": { + "description": "Atlas Search Index", + "url": "https://dochub.mongodb.org/core/index-definitions-fts" + }, + "type": "object" + } + }, + "title": "mappings", + "type": "object" + }, + "ApiAtlasSnapshotScheduleView": { + "properties": { + "clusterCheckpointIntervalMin": { + "description": "Quantity of time expressed in minutes between successive cluster checkpoints. This parameter applies only to sharded clusters. This number determines the granularity of continuous cloud backups for sharded clusters.", + "enum": [ + 15, + 30, + 60 + ], + "format": "int32", + "type": "integer" + }, + "clusterId": { + "description": "Unique 24-hexadecimal digit string that identifies the cluster with the snapshot you want to return.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "dailySnapshotRetentionDays": { + "description": "Quantity of time to keep daily snapshots. MongoDB Cloud expresses this value in days. Set this value to `0` to disable daily snapshot retention.", + "enum": [ + 0, + 3, + 4, + 5, + 6, + 7, + 15, + 30, + 60, + 90, + 120, + 180, + 360 + ], + "format": "int32", + "type": "integer" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that contains the cluster.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "monthlySnapshotRetentionMonths": { + "description": "Number of months that MongoDB Cloud must keep monthly snapshots. Set this value to `0` to disable monthly snapshot retention.", + "enum": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 18, + 24, + 36 + ], + "format": "int32", + "type": "integer" + }, + "pointInTimeWindowHours": { + "description": "Number of hours before the current time from which MongoDB Cloud can create a Continuous Cloud Backup snapshot.", + "format": "int32", + "type": "integer" + }, + "snapshotIntervalHours": { + "description": "Number of hours that must elapse before taking another snapshot.", + "enum": [ + 6, + 8, + 12, + 24 + ], + "format": "int32", + "type": "integer" + }, + "snapshotRetentionDays": { + "description": "Number of days that MongoDB Cloud must keep recent snapshots.", + "enum": [ + 2, + 3, + 4, + 5 + ], + "format": "int32", + "type": "integer" + }, + "weeklySnapshotRetentionWeeks": { + "description": "Number of weeks that MongoDB Cloud must keep weekly snapshots. Set this value to `0` to disable weekly snapshot retention.", + "enum": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 12, + 16, + 20, + 24, + 52 + ], + "format": "int32", + "type": "integer" + } + }, + "required": [ + "clusterCheckpointIntervalMin", + "clusterId", + "dailySnapshotRetentionDays", + "groupId", + "monthlySnapshotRetentionMonths", + "pointInTimeWindowHours", + "snapshotIntervalHours", + "snapshotRetentionDays", + "weeklySnapshotRetentionWeeks" + ], + "type": "object" + }, + "ApiBSONTimestampView": { + "description": "BSON timestamp that indicates when the checkpoint token entry in the oplog occurred.", + "properties": { + "date": { + "description": "Date and time when the oplog recorded this database operation. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "increment": { + "description": "Order of the database operation that the oplog recorded at specific date and time.", + "example": 1199145600, + "format": "int32", + "minimum": 1199145600, + "readOnly": true, + "type": "integer" + } + }, + "readOnly": true, + "title": "BSON Timestamp", + "type": "object" + }, + "ApiCheckpointPartView": { + "description": "Metadata contained in one document that describes the complete snapshot taken for this node.", + "properties": { + "replicaSetName": { + "description": "Human-readable label that identifies the replica set to which this checkpoint applies.", + "readOnly": true, + "type": "string" + }, + "shardName": { + "description": "Human-readable label that identifies the shard to which this checkpoint applies.", + "readOnly": true, + "type": "string" + }, + "tokenDiscovered": { + "description": "Flag that indicates whether the token exists.", + "readOnly": true, + "type": "boolean" + }, + "tokenTimestamp": { + "$ref": "#/components/schemas/ApiBSONTimestampView" + }, + "typeName": { + "description": "Human-readable label that identifies the type of host that the part represents.", + "enum": [ + "REPLICA_SET", + "CONFIG_SERVER", + "CONFIG_SERVER_REPLICA_SET" + ], + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "ApiError": { + "properties": { + "detail": { + "description": "Describes the specific conditions or reasons that cause each type of error.", + "type": "string" + }, + "error": { + "description": "HTTP status code returned with this error.", + "externalDocs": { + "url": "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status" + }, + "format": "int32", + "type": "integer" + }, + "errorCode": { + "description": "Application error code returned with this error.", + "type": "string" + }, + "parameters": { + "description": "Parameters used to give more information about the error.", + "items": { + "type": "object" + }, + "type": "array" + }, + "reason": { + "description": "Application error message returned with this error.", + "type": "string" + } + }, + "type": "object" + }, + "ApiHostView_Atlas": { + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created this MongoDB process. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project. The project contains MongoDB processes that you want to return. The MongoDB process can be either the `mongod` or `mongos`.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hostname": { + "description": "Hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`).", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?(\\:[0-9]{4,5})$", + "readOnly": true, + "type": "string" + }, + "lastPing": { + "description": "Date and time when MongoDB Cloud received the last ping for this MongoDB process. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link_Atlas" + }, + "readOnly": true, + "type": "array" + }, + "port": { + "description": "Internet Assigned Numbers Authority (IANA) port on which the MongoDB process listens for requests.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "replicaSetName": { + "description": "Human-readable label that identifies the replica set that contains this process. This resource returns this parameter if this process belongs to a replica set.", + "readOnly": true, + "type": "string" + }, + "shardName": { + "description": "Human-readable label that identifies the shard that contains this process. This resource returns this value only if this process belongs to a sharded cluster.", + "readOnly": true, + "type": "string" + }, + "typeName": { + "description": "Type of MongoDB process that MongoDB Cloud tracks. MongoDB Cloud returns new processes as **NO_DATA** until MongoDB Cloud completes deploying the process.", + "enum": [ + "REPLICA_PRIMARY", + "REPLICA_SECONDARY", + "RECOVERING", + "SHARD_MONGOS", + "SHARD_CONFIG", + "SHARD_STANDALONE", + "SHARD_PRIMARY", + "SHARD_SECONDARY", + "NO_DATA" + ], + "readOnly": true, + "type": "string" + }, + "userAlias": { + "description": "Human-readable label that identifies the cluster node. MongoDB Cloud sets this hostname usually to the standard hostname for the cluster node. It appears in the connection string for a cluster instead of the value of the hostname parameter.", + "readOnly": true, + "type": "string" + }, + "version": { + "description": "Version of MongoDB that this process runs.", + "pattern": "([\\d]+\\.[\\d]+\\.[\\d]+)", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ApiKey": { + "description": "Details contained in one API key.", + "nullable": true, + "properties": { + "accessList": { + "description": "List of network addresses granted access to this API using this API key.", + "items": { + "$ref": "#/components/schemas/AccessListItemView" + }, + "readOnly": true, + "type": "array" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this organization API key.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public API key value set for the specified organization API key.", + "maxLength": 8, + "minLength": 8, + "readOnly": true, + "type": "string" + }, + "roles": { + "description": "List that contains roles that the API key needs to have. All roles you provide must be valid for the specified project or organization. Each request must include a minimum of one valid role. The resource returns all project and organization roles assigned to the Cloud user.", + "items": { + "$ref": "#/components/schemas/CloudAccessRoleAssignment" + }, + "readOnly": true, + "type": "array" + } + }, + "readOnly": true, + "required": [ + "id", + "publicKey" + ], + "type": "object" + }, + "ApiKeyUserDetails": { + "description": "Details of the Programmatic API Keys.", + "properties": { + "desc": { + "description": "Purpose or explanation provided when someone created this organization API key.", + "maxLength": 250, + "minLength": 1, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this organization API key assigned to this project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "privateKey": { + "description": "Redacted private key returned for this organization API key. This key displays unredacted when first created.", + "example": "55c3bbb6-b4bb-0be1-e66d20841f3e", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public API key value set for the specified organization API key.", + "example": "zmmrboas", + "maxLength": 8, + "minLength": 8, + "readOnly": true, + "type": "string" + }, + "roles": { + "description": "List that contains the roles that the API key needs to have. All roles you provide must be valid for the specified project or organization. Each request must include a minimum of one valid role. The resource returns all project and organization roles assigned to the API key.", + "items": { + "$ref": "#/components/schemas/CloudAccessRoleAssignment" + }, + "type": "array" + } + }, + "type": "object" + }, + "ApiMeasurementsGeneralView_Atlas": { + "properties": { + "databaseName": { + "description": "Human-readable label that identifies the database that the specified MongoDB process serves.", + "readOnly": true, + "type": "string" + }, + "end": { + "description": "Date and time that specifies when to stop retrieving measurements. If you set **end**, you must set **start**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "granularity": { + "description": "Duration that specifies the interval between measurement data points. The parameter expresses its value in ISO 8601 timestamp format in UTC. If you set this parameter, you must set either **period** or **start** and **end**.", + "enum": [ + "PT1M", + "PT5M", + "PT1H", + "P1D" + ], + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project. The project contains MongoDB processes that you want to return. The MongoDB process can be either the `mongod` or `mongos`.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hostId": { + "description": "Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.", + "example": "mongodb.example.com:27017", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?(\\:[0-9]{4,5})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link_Atlas" + }, + "readOnly": true, + "type": "array" + }, + "measurements": { + "description": "List that contains measurements and their data points.", + "items": { + "$ref": "#/components/schemas/MetricsMeasurement_Atlas" + }, + "readOnly": true, + "type": "array" + }, + "partitionName": { + "description": "Human-readable label of the disk or partition to which the measurements apply.", + "readOnly": true, + "type": "string" + }, + "processId": { + "description": "Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.", + "example": "mongodb.example.com:27017", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?(\\:[0-9]{4,5})$", + "readOnly": true, + "type": "string" + }, + "start": { + "description": "Date and time that specifies when to start retrieving measurements. If you set **start**, you must set **end**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ApiSearchDeploymentRequestView": { + "properties": { + "specs": { + "description": "List of settings that configure the Search Nodes for your cluster.", + "items": { + "$ref": "#/components/schemas/ApiSearchDeploymentSpecView" + }, + "maxItems": 1, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "specs" + ], + "type": "object" + }, + "ApiSearchDeploymentResponseView": { + "properties": { + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the search deployment.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "specs": { + "description": "List of settings that configure the Search Nodes for your cluster.", + "items": { + "$ref": "#/components/schemas/ApiSearchDeploymentSpecView" + }, + "readOnly": true, + "type": "array" + }, + "stateName": { + "description": "Human-readable label that indicates the current operating condition of this search deployment.", + "enum": [ + "IDLE", + "PAUSED", + "UPDATING" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ApiSearchDeploymentSpecView": { + "properties": { + "instanceSize": { + "description": "Hardware specification for the Search Node instance sizes.", + "enum": [ + "S20_HIGHCPU_NVME", + "S30_HIGHCPU_NVME", + "S40_HIGHCPU_NVME", + "S50_HIGHCPU_NVME", + "S60_HIGHCPU_NVME", + "S70_HIGHCPU_NVME", + "S80_HIGHCPU_NVME", + "S30_LOWCPU_NVME", + "S40_LOWCPU_NVME", + "S50_LOWCPU_NVME", + "S60_LOWCPU_NVME", + "S70_LOWCPU_NVME", + "S80_LOWCPU_NVME", + "S90_LOWCPU_NVME", + "S100_LOWCPU_NVME", + "S110_LOWCPU_NVME", + "S120_LOWCPU_NVME", + "S130_LOWCPU_NVME", + "S135_LOWCPU_NVME", + "S140_LOWCPU_NVME" + ], + "type": "string" + }, + "nodeCount": { + "description": "Number of Search Nodes in the cluster.", + "example": 2, + "format": "int32", + "maximum": 32, + "minimum": 2, + "type": "integer" + } + }, + "required": [ + "instanceSize", + "nodeCount" + ], + "type": "object" + }, + "ApiStreamsAWSRegionView": { + "description": "Atlas Streams AWS Regions.", + "enum": [ + "VIRGINIA_USA" + ], + "type": "string" + }, + "ApiUserEventTypeViewForNdsGroup": { + "description": "Unique identifier of event type.", + "enum": [ + "API_KEY_CREATED", + "API_KEY_DELETED", + "API_KEY_ACCESS_LIST_ENTRY_ADDED", + "API_KEY_ACCESS_LIST_ENTRY_DELETED", + "API_KEY_ROLES_CHANGED", + "API_KEY_DESCRIPTION_CHANGED", + "API_KEY_ADDED_TO_GROUP", + "API_KEY_REMOVED_FROM_GROUP", + "API_KEY_UI_IP_ACCESS_LIST_INHERITANCE_ENABLED", + "API_KEY_UI_IP_ACCESS_LIST_INHERITANCE_DISABLED" + ], + "example": "API_KEY_CREATED", + "title": "API User Event Types", + "type": "string" + }, + "ApiUserEventTypeViewForOrg": { + "description": "Unique identifier of event type.", + "enum": [ + "API_KEY_CREATED", + "API_KEY_DELETED", + "API_KEY_ACCESS_LIST_ENTRY_ADDED", + "API_KEY_ACCESS_LIST_ENTRY_DELETED", + "API_KEY_ROLES_CHANGED", + "API_KEY_DESCRIPTION_CHANGED", + "API_KEY_ADDED_TO_GROUP", + "API_KEY_REMOVED_FROM_GROUP", + "API_KEY_UI_IP_ACCESS_LIST_INHERITANCE_ENABLED", + "API_KEY_UI_IP_ACCESS_LIST_INHERITANCE_DISABLED" + ], + "example": "API_KEY_CREATED", + "title": "API User Event Types", + "type": "string" + }, + "ApiUserEventViewForNdsGroup": { + "description": "API User event identifies different activities around user api keys.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ApiUserEventTypeViewForNdsGroup" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "API User Events", + "type": "object" + }, + "ApiUserEventViewForOrg": { + "description": "API User event identifies different activities around user api keys.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ApiUserEventTypeViewForOrg" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "API User Events", + "type": "object" + }, + "AppServiceAlertConfigViewForNdsGroup": { + "description": "App Services metric alert configuration allows to select which app service conditions and events trigger alerts and how users are notified.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/AppServiceEventTypeViewAlertableNoThreshold" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "List of rules that determine whether MongoDB Cloud checks an object for the alert configuration. You can filter using the matchers array if the **eventTypeName** specifies an event for a host, replica set, or sharded cluster.", + "items": { + "$ref": "#/components/schemas/AppServiceMetricMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "App Services Alert Configuration", + "type": "object" + }, + "AppServiceAlertView": { + "description": "App Services alert notifies different activities about a BAAS application.", + "properties": { + "acknowledgedUntil": { + "description": "Date and time until which this alert has been acknowledged. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.\n\n- To acknowledge this alert forever, set the parameter value to 100 years in the future.\n\n- To unacknowledge a previously acknowledged alert, do not set this parameter value.", + "format": "date-time", + "type": "string" + }, + "acknowledgementComment": { + "description": "Comment that a MongoDB Cloud user submitted when acknowledging the alert.", + "example": "Expiration on 3/19. Silencing for 7days.", + "maxLength": 200, + "type": "string" + }, + "acknowledgingUsername": { + "description": "MongoDB Cloud username of the person who acknowledged the alert. The response returns this parameter if a MongoDB Cloud user previously acknowledged this alert.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration that sets this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/AppServiceEventTypeViewAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastNotified": { + "description": "Date and time that any notifications were last sent for this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if MongoDB Cloud has sent notifications for this alert.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal character string that identifies the organization that owns the project to which this alert applies.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "resolved": { + "description": "Date and time that this alert changed to `\"status\" : \"CLOSED\"`. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter once `\"status\" : \"CLOSED\"`.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of this alert at the time you requested its details.", + "enum": [ + "CANCELLED", + "CLOSED", + "OPEN", + "TRACKING" + ], + "example": "OPEN", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Date and time when someone last updated this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "alertConfigId", + "created", + "eventTypeName", + "id", + "status", + "updated" + ], + "title": "App Services Alerts", + "type": "object" + }, + "AppServiceEventTypeView": { + "description": "Unique identifier of event type.", + "enum": [ + "URL_CONFIRMATION", + "SUCCESSFUL_DEPLOY", + "DEPLOYMENT_FAILURE", + "DEPLOYMENT_MODEL_CHANGE_SUCCESS", + "DEPLOYMENT_MODEL_CHANGE_FAILURE", + "REQUEST_RATE_LIMIT", + "LOG_FORWARDER_FAILURE", + "INSIDE_REALM_METRIC_THRESHOLD", + "OUTSIDE_REALM_METRIC_THRESHOLD", + "SYNC_FAILURE", + "TRIGGER_FAILURE", + "TRIGGER_AUTO_RESUMED" + ], + "example": "DEPLOYMENT_FAILURE", + "title": "App Services Event Types", + "type": "string" + }, + "AppServiceEventTypeViewAlertable": { + "description": "Incident that triggered this alert.", + "enum": [ + "URL_CONFIRMATION", + "SUCCESSFUL_DEPLOY", + "DEPLOYMENT_FAILURE", + "DEPLOYMENT_MODEL_CHANGE_SUCCESS", + "DEPLOYMENT_MODEL_CHANGE_FAILURE", + "REQUEST_RATE_LIMIT", + "LOG_FORWARDER_FAILURE", + "OUTSIDE_REALM_METRIC_THRESHOLD", + "SYNC_FAILURE", + "TRIGGER_FAILURE", + "TRIGGER_AUTO_RESUMED" + ], + "example": "DEPLOYMENT_FAILURE", + "readOnly": true, + "title": "App Services Event Types", + "type": "string" + }, + "AppServiceEventTypeViewAlertableNoThreshold": { + "description": "Event type that triggers an alert.", + "enum": [ + "URL_CONFIRMATION", + "SUCCESSFUL_DEPLOY", + "DEPLOYMENT_FAILURE", + "REQUEST_RATE_LIMIT", + "LOG_FORWARDER_FAILURE", + "SYNC_FAILURE", + "TRIGGER_FAILURE", + "TRIGGER_AUTO_RESUMED", + "DEPLOYMENT_MODEL_CHANGE_SUCCESS", + "DEPLOYMENT_MODEL_CHANGE_FAILURE" + ], + "example": "DEPLOYMENT_FAILURE", + "title": "App Services Event Types", + "type": "string" + }, + "AppServiceEventTypeViewAlertableWithThreshold": { + "description": "Event type that triggers an alert.", + "enum": [ + "OUTSIDE_REALM_METRIC_THRESHOLD" + ], + "example": "OUTSIDE_REALM_METRIC_THRESHOLD", + "title": "App Services Event Types", + "type": "string" + }, + "AppServiceEventView": { + "description": "App Services event identifies different activities about a BAAS application.", + "properties": { + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/AppServiceEventTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "App Services Events", + "type": "object" + }, + "AppServiceMetricAlertConfigViewForNdsGroup": { + "description": "App Services metric alert configuration allows to select which app service metrics trigger alerts and how users are notified.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/AppServiceEventTypeViewAlertableWithThreshold" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "List of rules that determine whether MongoDB Cloud checks an object for the alert configuration. You can filter using the matchers array if the **eventTypeName** specifies an event for a host, replica set, or sharded cluster.", + "items": { + "$ref": "#/components/schemas/AppServiceMetricMatcher" + }, + "type": "array" + }, + "metricThreshold": { + "$ref": "#/components/schemas/AppServiceMetricThreshold" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "App Services Metric Alert Configuration", + "type": "object" + }, + "AppServiceMetricMatcher": { + "description": "Rules to apply when comparing an app service metric against this alert configuration.", + "properties": { + "fieldName": { + "$ref": "#/components/schemas/AppServiceMetricMatcherField" + }, + "operator": { + "description": "Comparison operator to apply when checking the current metric value against **matcher[n].value**.", + "enum": [ + "EQUALS", + "CONTAINS", + "STARTS_WITH", + "ENDS_WITH", + "NOT_EQUALS", + "NOT_CONTAINS", + "REGEX" + ], + "type": "string" + }, + "value": { + "description": "Value to match or exceed using the specified **matchers.operator**.", + "example": "event-replica-set", + "type": "string" + } + }, + "required": [ + "fieldName", + "operator", + "value" + ], + "title": "Matchers", + "type": "object" + }, + "AppServiceMetricMatcherField": { + "description": "Name of the parameter in the target object that MongoDB Cloud checks. The parameter must match all rules for MongoDB Cloud to check for alert configurations.", + "enum": [ + "APPLICATION_ID" + ], + "example": "APPLICATION_ID", + "title": "App Services Metric Matcher Fields", + "type": "string" + }, + "AppServiceMetricThreshold": { + "description": "Threshold for the metric that, when exceeded, triggers an alert. The metric threshold pertains to event types which reflects changes of measurements and metrics in the app services.", + "discriminator": { + "mapping": { + "REALM_AUTH_LOGIN_FAIL": "#/components/schemas/RawMetricThresholdView", + "REALM_ENDPOINTS_COMPUTE_MS": "#/components/schemas/TimeMetricThresholdView", + "REALM_ENDPOINTS_EGRESS_BYTES": "#/components/schemas/DataMetricThresholdView", + "REALM_ENDPOINTS_FAILED_REQUESTS": "#/components/schemas/RawMetricThresholdView", + "REALM_ENDPOINTS_RESPONSE_MS": "#/components/schemas/TimeMetricThresholdView", + "REALM_GQL_COMPUTE_MS": "#/components/schemas/TimeMetricThresholdView", + "REALM_GQL_EGRESS_BYTES": "#/components/schemas/DataMetricThresholdView", + "REALM_GQL_FAILED_REQUESTS": "#/components/schemas/RawMetricThresholdView", + "REALM_GQL_RESPONSE_MS": "#/components/schemas/TimeMetricThresholdView", + "REALM_OVERALL_COMPUTE_MS": "#/components/schemas/TimeMetricThresholdView", + "REALM_OVERALL_EGRESS_BYTES": "#/components/schemas/DataMetricThresholdView", + "REALM_OVERALL_FAILED_REQUESTS": "#/components/schemas/RawMetricThresholdView", + "REALM_SDKFNS_FAILED_REQUESTS": "#/components/schemas/RawMetricThresholdView", + "REALM_SDK_FNS_RESPONSE_MS": "#/components/schemas/TimeMetricThresholdView", + "REALM_SDK_FUNCTIONS_COMPUTE_MS": "#/components/schemas/TimeMetricThresholdView", + "REALM_SDK_FUNCTIONS_EGRESS_BYTES": "#/components/schemas/DataMetricThresholdView", + "REALM_SDK_MQL_COMPUTE_MS": "#/components/schemas/TimeMetricThresholdView", + "REALM_SDK_MQL_EGRESS_BYTES": "#/components/schemas/DataMetricThresholdView", + "REALM_SDK_MQL_RESPONSE_MS": "#/components/schemas/TimeMetricThresholdView", + "REALM_SYNC_CLIENT_BOOTSTRAP_MS": "#/components/schemas/TimeMetricThresholdView", + "REALM_SYNC_CLIENT_CHANGESETS_INVALID": "#/components/schemas/DataMetricThresholdView", + "REALM_SYNC_CLIENT_READS_FAILED": "#/components/schemas/DataMetricThresholdView", + "REALM_SYNC_CLIENT_UPLOADS_FAILED": "#/components/schemas/DataMetricThresholdView", + "REALM_SYNC_CURRENT_OPLOG_LAG_MS_SUM": "#/components/schemas/TimeMetricThresholdView", + "REALM_SYNC_EGRESS_BYTES": "#/components/schemas/DataMetricThresholdView", + "REALM_SYNC_FAILED_REQUESTS": "#/components/schemas/DataMetricThresholdView", + "REALM_SYNC_NUM_UNSYNCABLE_DOCS_PERCENT": "#/components/schemas/RawMetricThresholdView", + "REALM_SYNC_SESSIONS_ENDED": "#/components/schemas/DataMetricThresholdView", + "REALM_TRIGGERS_COMPUTE_MS": "#/components/schemas/TimeMetricThresholdView", + "REALM_TRIGGERS_CURRENT_OPLOG_LAG_MS_SUM": "#/components/schemas/TimeMetricThresholdView", + "REALM_TRIGGERS_EGRESS_BYTES": "#/components/schemas/DataMetricThresholdView", + "REALM_TRIGGERS_FAILED_REQUESTS": "#/components/schemas/RawMetricThresholdView", + "REALM_TRIGGERS_RESPONSE_MS": "#/components/schemas/TimeMetricThresholdView" + }, + "propertyName": "metricName" + }, + "properties": { + "metricName": { + "description": "Human-readable label that identifies the metric against which MongoDB Cloud checks the configured **metricThreshold.threshold**.", + "type": "string" + }, + "mode": { + "description": "MongoDB Cloud computes the current metric value as an average.", + "enum": [ + "AVERAGE" + ], + "type": "string" + }, + "operator": { + "$ref": "#/components/schemas/Operator" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "double", + "type": "number" + }, + "units": { + "description": "Element used to express the quantity. This can be an element of time, storage capacity, and the like.", + "enum": [ + "bits", + "Kbits", + "Mbits", + "Gbits", + "bytes", + "KB", + "MB", + "GB", + "TB", + "PB", + "nsec", + "msec", + "sec", + "min", + "hours", + "million minutes", + "days", + "requests", + "1000 requests", + "GB seconds", + "GB hours", + "GB days", + "RPU", + "thousand RPU", + "million RPU", + "WPU", + "thousand WPU", + "million WPU", + "count", + "thousand", + "million", + "billion", + "", + "", + "" + ], + "type": "string" + } + }, + "required": [ + "metricName" + ], + "title": "App Services Metric Threshold", + "type": "object" + }, + "AtlasClusterOutageSimulationOutageFilter": { + "properties": { + "cloudProvider": { + "description": "The cloud provider of the region that undergoes the outage simulation.", + "enum": [ + "AWS", + "GCP", + "AZURE" + ], + "type": "string" + }, + "regionName": { + "description": "The name of the region to undergo an outage simulation.", + "type": "string" + }, + "type": { + "description": "The type of cluster outage to simulate.\n\n| Type | Description |\n|------------|-------------|\n| `REGION` | Simulates a cluster outage for a region.|", + "enum": [ + "REGION" + ], + "type": "string" + } + }, + "type": "object" + }, + "AtlasDataFederationAzureRegion": { + "description": "Atlas Data Federation Azure Regions.", + "enum": [ + "VIRGINIA_USA", + "AMSTERDAM_NLD" + ], + "type": "string" + }, + "AtlasOrganization": { + "description": "Details that describe the organization.", + "properties": { + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the organization.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isDeleted": { + "description": "Flag that indicates whether this organization has been deleted.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable label that identifies the organization.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.(),:\u0026@+']{1,64}$", + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "AtlasSearchAnalyzer": { + "properties": { + "charFilters": { + "description": "Filters that examine text one character at a time and perform filtering operations.", + "items": { + "$ref": "#/components/schemas/BasicDBObject" + }, + "type": "array" + }, + "name": { + "description": "Name that identifies the custom analyzer. Names must be unique within an index, and must not start with any of the following strings:\n- `lucene.`\n- `builtin.`\n- `mongodb.`", + "type": "string" + }, + "tokenFilters": { + "description": "Filter that performs operations such as:\n\n- Stemming, which reduces related words, such as \"talking\", \"talked\", and \"talks\" to their root word \"talk\".\n\n- Redaction, which is the removal of sensitive information from public documents.", + "items": { + "$ref": "#/components/schemas/BasicDBObject" + }, + "type": "array" + }, + "tokenizer": { + "additionalProperties": { + "description": "Tokenizer that you want to use to create tokens. Tokens determine how Atlas Search splits up text into discrete chunks for indexing.", + "type": "object" + }, + "description": "Tokenizer that you want to use to create tokens. Tokens determine how Atlas Search splits up text into discrete chunks for indexing.", + "type": "object" + } + }, + "required": [ + "name", + "tokenizer" + ], + "title": "Atlas Search Analyzer", + "type": "object" + }, + "AuditLog": { + "properties": { + "auditAuthorizationSuccess": { + "default": false, + "description": "Flag that indicates whether someone set auditing to track successful authentications. This only applies to the `\"atype\" : \"authCheck\"` audit filter. Setting this parameter to `true` degrades cluster performance.", + "externalDocs": { + "description": "System Auditing Messages", + "url": "https://docs.mongodb.com/manual/reference/audit-message/#audit-event-actions-details-and-results" + }, + "type": "boolean" + }, + "auditFilter": { + "description": "JSON document that specifies which events to record. Escape any characters that may prevent parsing, such as single or double quotes, using a backslash (`\\`).", + "externalDocs": { + "description": "Custom Auditing Filter", + "url": "https://docs.atlas.mongodb.com/tutorial/auditing-custom-filter/" + }, + "type": "string" + }, + "configurationType": { + "description": "Human-readable label that displays how to configure the audit filter.", + "enum": [ + "NONE", + "FILTER_BUILDER", + "FILTER_JSON" + ], + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled database auditing for the specified project.", + "type": "boolean" + } + }, + "type": "object" + }, + "AuthFederationRoleMapping": { + "description": "Mapping settings that link one IdP and MongoDB Cloud.", + "properties": { + "externalGroupName": { + "description": "Unique human-readable label that identifies the identity provider group to which this role mapping applies.", + "maxLength": 200, + "minLength": 1, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this role mapping.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "roleAssignments": { + "description": "Atlas roles and the unique identifiers of the groups and organizations associated with each role. The array must include at least one element with an Organization role and its respective **orgId**. Each element in the array can have a value for **orgId** or **groupId**, but not both.", + "items": { + "$ref": "#/components/schemas/RoleAssignment" + }, + "type": "array", + "uniqueItems": true + } + }, + "required": [ + "externalGroupName" + ], + "title": "Federated Authentication Role Mapping", + "type": "object" + }, + "AutoExportPolicyView": { + "description": "Policy for automatically exporting Cloud Backup Snapshots.", + "properties": { + "exportBucketId": { + "description": "Unique 24-hexadecimal character string that identifies the Export Bucket.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "frequencyType": { + "description": "Human-readable label that indicates the rate at which the export policy item occurs.", + "enum": [ + "monthly", + "yearly" + ], + "type": "string" + } + }, + "title": "export", + "type": "object" + }, + "AutomationConfigEventTypeView": { + "description": "Unique identifier of event type.", + "enum": [ + "AUTOMATION_CONFIG_PUBLISHED_AUDIT" + ], + "example": "AUTOMATION_CONFIG_PUBLISHED_AUDIT", + "title": "Automation Config Event Types", + "type": "string" + }, + "AutomationConfigEventView": { + "description": "Automation config event identifies that deployment configuration is published.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/AutomationConfigEventTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Automation Config Events", + "type": "object" + }, + "AvailableCloudProviderRegion": { + "properties": { + "default": { + "description": "Flag that indicates whether the cloud provider sets this region as its default. AWS defaults to US_EAST_1, GCP defaults to CENTRAL_US, and AZURE defaults to US_WEST_2.", + "readOnly": true, + "type": "boolean" + }, + "name": { + "description": "Human-readable label that identifies the supported region.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "AvailableClustersDeployment": { + "description": "Deployments that can be migrated to MongoDB Atlas.", + "properties": { + "agentVersion": { + "description": "Version of MongoDB Agent that monitors/manages the cluster.", + "readOnly": true, + "type": "string" + }, + "clusterId": { + "description": "Unique 24-hexadecimal digit string that identifies the cluster.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "dbSizeBytes": { + "description": "Size of this database on disk at the time of the request expressed in bytes.", + "example": 8192, + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "featureCompatibilityVersion": { + "description": "Version of MongoDB [features](https://docs.mongodb.com/manual/reference/command/setFeatureCompatibilityVersion) that this cluster supports.", + "readOnly": true, + "type": "string" + }, + "managed": { + "description": "Flag that indicates whether Automation manages this cluster.", + "readOnly": true, + "type": "boolean" + }, + "mongoDBVersion": { + "description": "Version of MongoDB that this cluster runs.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Human-readable label that identifies this cluster.", + "example": "Project X sharded cluster", + "readOnly": true, + "type": "string" + }, + "oplogSizeMB": { + "description": "Size of the Oplog on disk at the time of the request expressed in MB.", + "example": 3, + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "sharded": { + "description": "Flag that indicates whether someone configured this cluster as a sharded cluster.\n\n- If `true`, this cluster serves as a sharded cluster.\n- If `false`, this cluster serves as a replica set.", + "readOnly": true, + "type": "boolean" + }, + "shardsSize": { + "description": "Number of shards that comprise this cluster.", + "example": 3, + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "tlsEnabled": { + "description": "Flag that indicates whether someone enabled TLS for this cluster.", + "readOnly": true, + "type": "boolean" + } + }, + "required": [ + "featureCompatibilityVersion", + "managed", + "mongoDBVersion", + "name", + "sharded", + "tlsEnabled" + ], + "title": "Available Clusters", + "type": "object" + }, + "AwsNetworkPeeringConnectionSettings": { + "description": "Group of Network Peering connection settings.", + "properties": { + "accepterRegionName": { + "description": "Amazon Web Services (AWS) region where the Virtual Peering Connection (VPC) that you peered with the MongoDB Cloud VPC resides. The resource returns `null` if your VPC and the MongoDB Cloud VPC reside in the same region.", + "type": "string" + }, + "awsAccountId": { + "description": "Unique twelve-digit string that identifies the Amazon Web Services (AWS) account that owns the VPC that you peered with the MongoDB Cloud VPC.", + "maxLength": 12, + "minLength": 12, + "pattern": "^[0-9]{12}$", + "type": "string" + }, + "connectionId": { + "description": "Unique string that identifies the peering connection on AWS.", + "readOnly": true, + "type": "string" + }, + "containerId": { + "description": "Unique 24-hexadecimal digit string that identifies the MongoDB Cloud network container that contains the specified network peering connection.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "errorStateName": { + "description": "Type of error that can be returned when requesting an Amazon Web Services (AWS) peering connection. The resource returns `null` if the request succeeded.", + "enum": [ + "REJECTED", + "EXPIRED", + "INVALID_ARGUMENT" + ], + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the network peering connection.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "providerName": { + "description": "Cloud service provider that serves the requested network peering connection.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "type": "string" + }, + "routeTableCidrBlock": { + "description": "Internet Protocol (IP) addresses expressed in Classless Inter-Domain Routing (CIDR) notation of the VPC's subnet that you want to peer with the MongoDB Cloud VPC.", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "type": "string" + }, + "statusName": { + "description": "State of the network peering connection at the time you made the request.", + "enum": [ + "INITIATING", + "PENDING_ACCEPTANCE", + "FAILED", + "FINALIZING", + "AVAILABLE", + "TERMINATING" + ], + "readOnly": true, + "type": "string" + }, + "vpcId": { + "description": "Unique string that identifies the VPC on Amazon Web Services (AWS) that you want to peer with the MongoDB Cloud VPC.", + "minLength": 5, + "pattern": "^vpc-[0-9a-f]{17}$", + "type": "string" + } + }, + "required": [ + "accepterRegionName", + "awsAccountId", + "containerId", + "routeTableCidrBlock", + "vpcId" + ], + "title": "AWS", + "type": "object" + }, + "AzureCloudProviderContainer": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudProviderContainer" + }, + { + "properties": { + "atlasCidrBlock": { + "description": "IP addresses expressed in Classless Inter-Domain Routing (CIDR) notation that MongoDB Cloud uses for the network peering containers in your project. MongoDB Cloud assigns all of the project's clusters deployed to this cloud provider an IP address from this range. MongoDB Cloud locks this value if an M10 or greater cluster or a network peering connection exists in this project.\n\nThese CIDR blocks must fall within the ranges reserved per RFC 1918. AWS and Azure further limit the block to between the `/24` and `/21` ranges.\n\nTo modify the CIDR block, the target project cannot have:\n\n- Any M10 or greater clusters\n- Any other VPC peering connections\n\n You can also create a new project and create a network peering connection to set the desired MongoDB Cloud network peering container CIDR block for that project. MongoDB Cloud limits the number of MongoDB nodes per network peering connection based on the CIDR block and the region selected for the project.\n\n **Example:** A project in an Amazon Web Services (AWS) region supporting three availability zones and an MongoDB CIDR network peering container block of limit of `/24` equals 27 three-node replica sets.", + "pattern": "^((([0-9]{1,3}\\.){3}[0-9]{1,3})|(:{0,2}([0-9a-f]{1,4}:){0,7}[0-9a-f]{1,4}[:]{0,2}))((%2[fF]|/)[0-9]{1,3})+$", + "type": "string" + }, + "azureSubscriptionId": { + "description": "Unique string that identifies the Azure subscription in which the MongoDB Cloud VNet resides.", + "example": "32b6e34b3d91647abb20e7b8", + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "region": { + "description": "Azure region to which MongoDB Cloud deployed this network peering container.", + "enum": [ + "US_CENTRAL", + "US_EAST", + "US_EAST_2", + "US_EAST_2_EUAP", + "US_NORTH_CENTRAL", + "US_WEST", + "US_SOUTH_CENTRAL", + "EUROPE_NORTH", + "EUROPE_WEST", + "US_WEST_CENTRAL", + "US_WEST_2", + "US_WEST_3", + "CANADA_EAST", + "CANADA_CENTRAL", + "BRAZIL_SOUTH", + "BRAZIL_SOUTHEAST", + "AUSTRALIA_EAST", + "AUSTRALIA_SOUTH_EAST", + "AUSTRALIA_CENTRAL", + "AUSTRALIA_CENTRAL_2", + "UAE_NORTH", + "GERMANY_CENTRAL", + "GERMANY_NORTH_EAST", + "GERMANY_WEST_CENTRAL", + "GERMANY_NORTH", + "SWITZERLAND_NORTH", + "SWITZERLAND_WEST", + "SWEDEN_CENTRAL", + "SWEDEN_SOUTH", + "UK_SOUTH", + "UK_WEST", + "INDIA_CENTRAL", + "INDIA_WEST", + "INDIA_SOUTH", + "CHINA_EAST", + "CHINA_NORTH", + "ASIA_EAST", + "JAPAN_EAST", + "JAPAN_WEST", + "ASIA_SOUTH_EAST", + "KOREA_CENTRAL", + "KOREA_SOUTH", + "FRANCE_CENTRAL", + "FRANCE_SOUTH", + "SOUTH_AFRICA_NORTH", + "SOUTH_AFRICA_WEST", + "NORWAY_EAST", + "NORWAY_WEST", + "UAE_CENTRAL", + "QATAR_CENTRAL", + "POLAND_CENTRAL", + "ISRAEL_CENTRAL", + "ITALY_NORTH" + ], + "type": "string" + }, + "vnetName": { + "description": "Unique string that identifies the Azure VNet in which MongoDB Cloud clusters in this network peering container exist. The response returns **null** if no clusters exist in this network peering container.", + "maxLength": 38, + "minLength": 38, + "pattern": "^([-\\w._()])+$", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + } + ], + "description": "Collection of settings that configures the network container for a virtual private connection on Amazon Web Services.", + "required": [ + "atlasCidrBlock", + "region" + ], + "title": "AZURE", + "type": "object" + }, + "AzureCloudProviderSettings": { + "allOf": [ + { + "$ref": "#/components/schemas/ClusterProviderSettings" + }, + { + "properties": { + "autoScaling": { + "$ref": "#/components/schemas/CloudProviderAzureAutoScaling" + }, + "diskTypeName": { + "description": "Disk type that corresponds to the host's root volume for Azure instances. If omitted, the default disk type for the selected **providerSettings.instanceSizeName** applies.", + "enum": [ + "P2", + "P3", + "P4", + "P6", + "P10", + "P15", + "P20", + "P30", + "P40", + "P50" + ], + "externalDocs": { + "description": "Disk type", + "url": "https://docs.microsoft.com/en-us/azure/virtual-machines/premium-storage-performance#premium-storage-disk-sizes" + }, + "type": "string" + }, + "instanceSizeName": { + "description": "Cluster tier, with a default storage and memory capacity, that applies to all the data-bearing hosts in your cluster.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M90", + "M200", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "M60_NVME", + "M80_NVME", + "M200_NVME", + "M300_NVME", + "M400_NVME", + "M600_NVME" + ], + "title": "Azure Instance Sizes", + "type": "string" + }, + "regionName": { + "description": "Microsoft Azure Regions.", + "enum": [ + "US_CENTRAL", + "US_EAST", + "US_EAST_2", + "US_NORTH_CENTRAL", + "US_WEST", + "US_SOUTH_CENTRAL", + "EUROPE_NORTH", + "EUROPE_WEST", + "US_WEST_CENTRAL", + "US_WEST_2", + "US_WEST_3", + "CANADA_EAST", + "CANADA_CENTRAL", + "BRAZIL_SOUTH", + "BRAZIL_SOUTHEAST", + "AUSTRALIA_CENTRAL", + "AUSTRALIA_CENTRAL_2", + "AUSTRALIA_EAST", + "AUSTRALIA_SOUTH_EAST", + "GERMANY_CENTRAL", + "GERMANY_NORTH_EAST", + "GERMANY_WEST_CENTRAL", + "GERMANY_NORTH", + "SWEDEN_CENTRAL", + "SWEDEN_SOUTH", + "SWITZERLAND_NORTH", + "SWITZERLAND_WEST", + "UK_SOUTH", + "UK_WEST", + "NORWAY_EAST", + "NORWAY_WEST", + "INDIA_CENTRAL", + "INDIA_SOUTH", + "INDIA_WEST", + "CHINA_EAST", + "CHINA_NORTH", + "ASIA_EAST", + "JAPAN_EAST", + "JAPAN_WEST", + "ASIA_SOUTH_EAST", + "KOREA_CENTRAL", + "KOREA_SOUTH", + "FRANCE_CENTRAL", + "FRANCE_SOUTH", + "SOUTH_AFRICA_NORTH", + "SOUTH_AFRICA_WEST", + "UAE_CENTRAL", + "UAE_NORTH", + "QATAR_CENTRAL" + ], + "externalDocs": { + "description": "Azure", + "url": "https://docs.atlas.mongodb.com/reference/microsoft-azure/" + }, + "title": "Azure Regions", + "type": "string" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "AzureComputeAutoScalingRules": { + "description": "Collection of settings that configures how a cluster might scale its cluster tier and whether the cluster can scale down. Cluster tier auto-scaling is unavailable for clusters using Low CPU or NVME storage classes.", + "properties": { + "maxInstanceSize": { + "description": "Maximum instance size to which your cluster can automatically scale.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M90", + "M200", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "M60_NVME", + "M80_NVME", + "M200_NVME", + "M300_NVME", + "M400_NVME", + "M600_NVME" + ], + "title": "Azure Instance Sizes", + "type": "string" + }, + "minInstanceSize": { + "description": "Minimum instance size to which your cluster can automatically scale.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M90", + "M200", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "M60_NVME", + "M80_NVME", + "M200_NVME", + "M300_NVME", + "M400_NVME", + "M600_NVME" + ], + "title": "Azure Instance Sizes", + "type": "string" + } + }, + "title": "Azure", + "type": "object" + }, + "AzureCreateDataProcessRegionView": { + "allOf": [ + { + "$ref": "#/components/schemas/CreateDataProcessRegionView" + }, + { + "properties": { + "region": { + "description": "Human-readable label that identifies the geographic location of the region where you wish to store your archived data.", + "enum": [ + "US_EAST_2", + "EUROPE_WEST" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "AzureDataProcessRegionView": { + "allOf": [ + { + "$ref": "#/components/schemas/DataProcessRegionView" + }, + { + "properties": { + "region": { + "description": "Human-readable label that identifies the geographic location of the region where you store your archived data.", + "enum": [ + "US_EAST_2", + "EUROPE_WEST" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "AzureHardwareSpec": { + "properties": { + "instanceSize": { + "description": "Hardware specification for the instance sizes in this region. Each instance size has a default storage and memory capacity. The instance size you select applies to all the data-bearing hosts in your instance size.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M90", + "M200", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "M60_NVME", + "M80_NVME", + "M200_NVME", + "M300_NVME", + "M400_NVME", + "M600_NVME" + ], + "title": "Azure Instance Sizes", + "type": "string" + }, + "nodeCount": { + "description": "Number of nodes of the given type for MongoDB Cloud to deploy to the region.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AzureKeyVault": { + "description": "Details that define the configuration of Encryption at Rest using Azure Key Vault (AKV).", + "externalDocs": { + "description": "Azure Key Vault", + "url": "https://www.mongodb.com/docs/atlas/security-azure-kms/" + }, + "properties": { + "azureEnvironment": { + "description": "Azure environment in which your account credentials reside.", + "enum": [ + "AZURE", + "AZURE_CHINA", + "AZURE_GERMANY" + ], + "type": "string" + }, + "clientID": { + "description": "Unique 36-hexadecimal character string that identifies an Azure application associated with your Azure Active Directory tenant.", + "format": "uuid", + "type": "string" + }, + "enabled": { + "description": "Flag that indicates whether someone enabled encryption at rest for the specified project. To disable encryption at rest using customer key management and remove the configuration details, pass only this parameter with a value of `false`.", + "type": "boolean" + }, + "keyIdentifier": { + "description": "Web address with a unique key that identifies for your Azure Key Vault.", + "example": "https://EXAMPLEKeyVault.vault.azure.net/keys/EXAMPLEKey/d891821e3d364e9eb88fbd3d11807b86", + "type": "string" + }, + "keyVaultName": { + "description": "Unique string that identifies the Azure Key Vault that contains your key.", + "type": "string" + }, + "requirePrivateNetworking": { + "description": "Enable connection to your Azure Key Vault over private networking.", + "type": "boolean" + }, + "resourceGroupName": { + "description": "Name of the Azure resource group that contains your Azure Key Vault.", + "type": "string" + }, + "secret": { + "description": "Private data that you need secured and that belongs to the specified Azure Key Vault (AKV) tenant (**azureKeyVault.tenantID**). This data can include any type of sensitive data such as passwords, database connection strings, API keys, and the like. AKV stores this information as encrypted binary data.", + "externalDocs": { + "description": "Azure Key Vault Secrets", + "url": "https://docs.microsoft.com/en-us/azure/key-vault/secrets/about-secrets" + }, + "type": "string", + "writeOnly": true + }, + "subscriptionID": { + "description": "Unique 36-hexadecimal character string that identifies your Azure subscription.", + "format": "uuid", + "type": "string" + }, + "tenantID": { + "description": "Unique 36-hexadecimal character string that identifies the Azure Active Directory tenant within your Azure subscription.", + "format": "uuid", + "type": "string" + }, + "valid": { + "description": "Flag that indicates whether the Azure encryption key can encrypt and decrypt data.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, + "AzureNetworkPeeringConnectionSettings": { + "description": "Group of Network Peering connection settings.", + "properties": { + "azureDirectoryId": { + "description": "Unique string that identifies the Azure AD directory in which the VNet peered with the MongoDB Cloud VNet resides.", + "maxLength": 32, + "minLength": 32, + "pattern": "^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$", + "type": "string" + }, + "azureSubscriptionId": { + "description": "Unique string that identifies the Azure subscription in which the VNet you peered with the MongoDB Cloud VNet resides.", + "maxLength": 32, + "minLength": 32, + "pattern": "^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$", + "type": "string" + }, + "containerId": { + "description": "Unique 24-hexadecimal digit string that identifies the MongoDB Cloud network container that contains the specified network peering connection.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "errorState": { + "description": "Error message returned when a requested Azure network peering resource returns `\"status\" : \"FAILED\"`. The resource returns `null` if the request succeeded.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the network peering connection.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "providerName": { + "description": "Cloud service provider that serves the requested network peering connection.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "type": "string" + }, + "resourceGroupName": { + "description": "Human-readable label that identifies the resource group in which the VNet to peer with the MongoDB Cloud VNet resides.", + "pattern": "^([-\\w._()])+$", + "type": "string" + }, + "status": { + "description": "State of the network peering connection at the time you made the request.", + "enum": [ + "ADDING_PEER", + "AVAILABLE", + "FAILED", + "DELETION_FAILED", + "DELETING" + ], + "readOnly": true, + "type": "string" + }, + "vnetName": { + "description": "Human-readable label that identifies the VNet that you want to peer with the MongoDB Cloud VNet.", + "pattern": "^([-\\w._()])+$", + "type": "string" + } + }, + "required": [ + "azureDirectoryId", + "azureSubscriptionId", + "containerId", + "resourceGroupName", + "vnetName" + ], + "title": "AZURE", + "type": "object" + }, + "AzurePrivateEndpoint": { + "description": "Group of Private Endpoint settings.", + "properties": { + "cloudProvider": { + "description": "Cloud service provider that serves the requested endpoint.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "readOnly": true, + "type": "string" + }, + "deleteRequested": { + "description": "Flag that indicates whether MongoDB Cloud received a request to remove the specified private endpoint from the private endpoint service.", + "readOnly": true, + "type": "boolean" + }, + "errorMessage": { + "description": "Error message returned when requesting private connection resource. The resource returns `null` if the request succeeded.", + "readOnly": true, + "type": "string" + }, + "privateEndpointConnectionName": { + "description": "Human-readable label that MongoDB Cloud generates that identifies the private endpoint connection.", + "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}%2[fF]([-\\w._()]+)%2[fF]([-\\w._()]+)", + "readOnly": true, + "type": "string" + }, + "privateEndpointIPAddress": { + "description": "IPv4 address of the private endpoint in your Azure VNet that someone added to this private endpoint service.", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "type": "string" + }, + "privateEndpointResourceId": { + "description": "Unique string that identifies the Azure private endpoint's network interface that someone added to this private endpoint service.", + "example": "/subscriptions/cba6d9c6-1d3f-3c11-03cb-c705d895e636/resourcegroups/qrRTqi4TSN)7yB5YLRjVDveH3.yLzpNR7Br0D3-SGrU3j0.0/providers/Microsoft.Network/privateEndpoints/pVP(vb(XeckpxtXzP0NaOsDjeWDbOK)DX8A2j2E_vBYL2.GEYIdln", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of the Azure Private Link Service connection when MongoDB Cloud received this request.", + "enum": [ + "INITIATING", + "AVAILABLE", + "FAILED", + "DELETING" + ], + "readOnly": true, + "type": "string" + } + }, + "required": [ + "cloudProvider" + ], + "title": "AZURE", + "type": "object" + }, + "AzurePrivateLinkConnection": { + "description": "Group of Private Endpoint Service settings.", + "properties": { + "cloudProvider": { + "description": "Cloud service provider that serves the requested endpoint service.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "readOnly": true, + "type": "string" + }, + "errorMessage": { + "description": "Error message returned when requesting private connection resource. The resource returns `null` if the request succeeded.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the Private Endpoint Service.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "privateEndpoints": { + "description": "List of private endpoints assigned to this Azure Private Link Service.", + "items": { + "description": "Root-relative path to one private endpoint assigned to this Azure Private Link Service.", + "pattern": "^\\/subscriptions\\/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\/resource[gG]roups\\/([-\\w._()]+)\\/providers\\/Microsoft\\.Network\\/privateEndpoints\\/([-\\w._()]+)", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "privateLinkServiceName": { + "description": "Unique string that identifies the Azure Private Link Service that MongoDB Cloud manages.", + "maxLength": 24, + "minLength": 24, + "pattern": "^pls_[0-9a-f]{24}$", + "readOnly": true, + "type": "string" + }, + "privateLinkServiceResourceId": { + "description": "Root-relative path that identifies of the Azure Private Link Service that MongoDB Cloud manages. Use this value to create a private endpoint connection to an Azure VNet.", + "example": "/subscriptions/ae349d51-d12b-ee3d-2a27-7d53f6479cf0/resourcegroups/KObGGz/providers/Microsoft.Network/privateLinkServices/pls_d1820713f8153388d533e9de", + "readOnly": true, + "type": "string" + }, + "regionName": { + "description": "Cloud provider region that manages this Private Endpoint Service.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of the Private Endpoint Service connection when MongoDB Cloud received this request.", + "enum": [ + "INITIATING", + "AVAILABLE", + "WAITING_FOR_USER", + "FAILED", + "DELETING" + ], + "readOnly": true, + "type": "string" + } + }, + "required": [ + "cloudProvider" + ], + "title": "AZURE", + "type": "object" + }, + "AzureRegionConfig": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudRegionConfig" + }, + { + "properties": { + "analyticsAutoScaling": { + "$ref": "#/components/schemas/AdvancedAutoScalingSettings" + }, + "analyticsSpecs": { + "$ref": "#/components/schemas/DedicatedHardwareSpec" + }, + "autoScaling": { + "$ref": "#/components/schemas/AdvancedAutoScalingSettings" + }, + "readOnlySpecs": { + "$ref": "#/components/schemas/DedicatedHardwareSpec" + } + }, + "type": "object" + } + ], + "description": "Details that explain how MongoDB Cloud replicates data in one region on the specified MongoDB database.", + "title": "Azure Regional Replication Specifications", + "type": "object" + }, + "AzureRegionConfig20250101": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudRegionConfig20250101" + }, + { + "properties": { + "analyticsAutoScaling": { + "$ref": "#/components/schemas/AdvancedAutoScalingSettings" + }, + "analyticsSpecs": { + "$ref": "#/components/schemas/DedicatedHardwareSpec20250101" + }, + "autoScaling": { + "$ref": "#/components/schemas/AdvancedAutoScalingSettings" + }, + "readOnlySpecs": { + "$ref": "#/components/schemas/DedicatedHardwareSpec20250101" + } + }, + "type": "object" + } + ], + "description": "Details that explain how MongoDB Cloud replicates data in one region on the specified MongoDB database.", + "title": "Azure Regional Replication Specifications", + "type": "object" + }, + "BackupComplianceOnDemandPolicyItem": { + "description": "Specifications for on-demand policy.", + "properties": { + "frequencyInterval": { + "description": "Number that indicates the frequency interval for a set of snapshots. MongoDB Cloud ignores this setting for non-hourly policy items in Backup Compliance Policy settings.", + "enum": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 40 + ], + "format": "int32", + "type": "integer" + }, + "frequencyType": { + "description": "Human-readable label that identifies the frequency type associated with the backup policy.", + "enum": [ + "ondemand" + ], + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this backup policy item.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "retentionUnit": { + "description": "Unit of time in which MongoDB Cloud measures snapshot retention.", + "enum": [ + "days", + "weeks", + "months", + "years" + ], + "type": "string" + }, + "retentionValue": { + "description": "Duration in days, weeks, months, or years that MongoDB Cloud retains the snapshot. For less frequent policy items, MongoDB Cloud requires that you specify a value greater than or equal to the value specified for more frequent policy items.\n\nFor example: If the hourly policy item specifies a retention of two days, you must specify two days or greater for the retention of the weekly policy item.", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "frequencyInterval", + "frequencyType", + "retentionUnit", + "retentionValue" + ], + "type": "object" + }, + "BackupComplianceScheduledPolicyItem": { + "description": "Specifications for scheduled policy.", + "properties": { + "frequencyInterval": { + "description": "Number that indicates the frequency interval for a set of Snapshots. A value of `1` specifies the first instance of the corresponding `frequencyType`.\n\n- In a yearly policy item, `1` indicates that the yearly Snapshot occurs on the first day of January and `12` indicates the first day of December.\n\n- In a monthly policy item, `1` indicates that the monthly Snapshot occurs on the first day of the month and `40` indicates the last day of the month.\n\n- In a weekly policy item, `1` indicates that the weekly Snapshot occurs on Monday and `7` indicates Sunday.\n\n- In an hourly policy item, you can set the frequency interval to `1`, `2`, `4`, `6`, `8`, or `12`. For hourly policy items for NVMe clusters, MongoDB Cloud accepts only `12` as the frequency interval value.\n\n MongoDB Cloud ignores this setting for non-hourly policy items in Backup Compliance Policy settings.", + "enum": [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 40 + ], + "format": "int32", + "type": "integer" + }, + "frequencyType": { + "description": "Human-readable label that identifies the frequency type associated with the backup policy.", + "enum": [ + "daily", + "hourly", + "weekly", + "monthly", + "yearly" + ], + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this backup policy item.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "retentionUnit": { + "description": "Unit of time in which MongoDB Cloud measures Snapshot retention.", + "enum": [ + "days", + "weeks", + "months", + "years" + ], + "type": "string" + }, + "retentionValue": { + "description": "Duration in days, weeks, months, or years that MongoDB Cloud retains the Snapshot. For less frequent policy items, MongoDB Cloud requires that you specify a value greater than or equal to the value specified for more frequent policy items.\n\nFor example: If the hourly policy item specifies a retention of two days, you must specify two days or greater for the retention of the weekly policy item.", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "frequencyInterval", + "frequencyType", + "retentionUnit", + "retentionValue" + ], + "type": "object" + }, + "BackupLabel": { + "description": "Collection of key-value pairs that represent custom data to add to the metadata file that MongoDB Cloud uploads to the bucket when the export job finishes.", + "properties": { + "key": { + "description": "Key for the metadata file that MongoDB Cloud uploads to the bucket when the export job finishes.", + "type": "string" + }, + "value": { + "description": "Value for the key to include in file that MongoDB Cloud uploads to the bucket when the export job finishes.", + "type": "string" + } + }, + "type": "object" + }, + "BackupOnlineArchive": { + "properties": { + "_id": { + "description": "Unique 24-hexadecimal digit string that identifies the online archive.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster that contains the collection for which you want to create an online archive.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "collName": { + "description": "Human-readable label that identifies the collection for which you created the online archive.", + "readOnly": true, + "type": "string" + }, + "collectionType": { + "default": "STANDARD", + "description": "Classification of MongoDB database collection that you want to return.\n\nIf you set this parameter to `TIMESERIES`, set `\"criteria.type\" : \"date\"` and `\"criteria.dateFormat\" : \"ISODATE\"`.", + "enum": [ + "TIMESERIES", + "STANDARD" + ], + "readOnly": true, + "type": "string" + }, + "criteria": { + "$ref": "#/components/schemas/CriteriaView" + }, + "dataExpirationRule": { + "$ref": "#/components/schemas/DataExpirationRuleView" + }, + "dataProcessRegion": { + "$ref": "#/components/schemas/DataProcessRegionView" + }, + "dataSetName": { + "description": "Human-readable label that identifies the dataset that Atlas generates for this online archive.", + "readOnly": true, + "type": "string" + }, + "dbName": { + "description": "Human-readable label of the database that contains the collection that contains the online archive.", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that contains the specified cluster. The specified cluster contains the collection for which to create the online archive.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "partitionFields": { + "description": "List that contains document parameters to use to logically divide data within a collection. Partitions provide a coarse level of filtering of the underlying collection data. To divide your data, specify parameters that you frequently query. If you \"specified :criteria.type\": \"DATE\" in the CREATE ONE ONLINE ARCHIVE endpoint, then you can specify up to three parameters by which to query. One of these parameters must be the DATE value, which is required in this case. If you \"specified :criteria.type\": \"CUSTOM\" in the CREATE ONE ONLINE ARCHIVE endpoint, then you can specify up to two parameters by which to query. Queries that don't use \":criteria.type\": \"DATE\" or \":criteria.type\": \"CUSTOM\" parameters cause MongoDB to scan a full collection of all archived documents. This takes more time and increases your costs.", + "items": { + "$ref": "#/components/schemas/PartitionFieldView" + }, + "minItems": 1, + "readOnly": true, + "type": "array" + }, + "paused": { + "description": "Flag that indicates whether this online archive exists in the paused state. A request to resume fails if the collection has another active online archive. To pause an active online archive or resume a paused online archive, you must include this parameter. To pause an active archive, set this to **true**. To resume a paused archive, set this to **false**.", + "type": "boolean" + }, + "schedule": { + "$ref": "#/components/schemas/OnlineArchiveSchedule" + }, + "state": { + "description": "Phase of the process to create this online archive when you made this request.\n\n| State | Indication |\n|-------------|------------|\n| `PENDING` | MongoDB Cloud has queued documents for archive. Archiving hasn't started. |\n| `ARCHIVING` | MongoDB Cloud started archiving documents that meet the archival criteria. |\n| `IDLE` | MongoDB Cloud waits to start the next archival job. |\n| `PAUSING` | Someone chose to stop archiving. MongoDB Cloud finishes the running archival job then changes the state to `PAUSED` when that job completes. |\n| `PAUSED` | MongoDB Cloud has stopped archiving. Archived documents can be queried. The specified archiving operation on the active cluster cannot archive additional documents. You can resume archiving for paused archives at any time. |\n| `ORPHANED` | Someone has deleted the collection associated with an active or paused archive. MongoDB Cloud doesn't delete the archived data. You must manually delete the online archives associated with the deleted collection. |\n| `DELETED` | Someone has deleted the archive was deleted. When someone deletes an online archive, MongoDB Cloud removes all associated archived documents from the cloud object storage. |", + "enum": [ + "PENDING", + "ACTIVE", + "PAUSING", + "PAUSED", + "DELETED", + "ORPHANED" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "BackupOnlineArchiveCreate": { + "properties": { + "_id": { + "description": "Unique 24-hexadecimal digit string that identifies the online archive.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster that contains the collection for which you want to create an online archive.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "collName": { + "description": "Human-readable label that identifies the collection for which you created the online archive.", + "type": "string", + "writeOnly": true + }, + "collectionType": { + "default": "STANDARD", + "description": "Classification of MongoDB database collection that you want to return.\n\nIf you set this parameter to `TIMESERIES`, set `\"criteria.type\" : \"date\"` and `\"criteria.dateFormat\" : \"ISODATE\"`.", + "enum": [ + "TIMESERIES", + "STANDARD" + ], + "type": "string", + "writeOnly": true + }, + "criteria": { + "$ref": "#/components/schemas/CriteriaView" + }, + "dataExpirationRule": { + "$ref": "#/components/schemas/DataExpirationRuleView" + }, + "dataProcessRegion": { + "$ref": "#/components/schemas/CreateDataProcessRegionView" + }, + "dataSetName": { + "description": "Human-readable label that identifies the dataset that Atlas generates for this online archive.", + "readOnly": true, + "type": "string" + }, + "dbName": { + "description": "Human-readable label of the database that contains the collection that contains the online archive.", + "type": "string", + "writeOnly": true + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that contains the specified cluster. The specified cluster contains the collection for which to create the online archive.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "partitionFields": { + "description": "List that contains document parameters to use to logically divide data within a collection. Partitions provide a coarse level of filtering of the underlying collection data. To divide your data, specify parameters that you frequently query. If you \"specified :criteria.type\": \"DATE\" in the CREATE ONE ONLINE ARCHIVE endpoint, then you can specify up to three parameters by which to query. One of these parameters must be the DATE value, which is required in this case. If you \"specified :criteria.type\": \"CUSTOM\" in the CREATE ONE ONLINE ARCHIVE endpoint, then you can specify up to two parameters by which to query. Queries that don't use \":criteria.type\": \"DATE\" or \":criteria.type\": \"CUSTOM\" parameters cause MongoDB to scan a full collection of all archived documents. This takes more time and increases your costs.", + "items": { + "$ref": "#/components/schemas/PartitionFieldView" + }, + "minItems": 1, + "type": "array", + "writeOnly": true + }, + "paused": { + "description": "Flag that indicates whether this online archive exists in the paused state. A request to resume fails if the collection has another active online archive. To pause an active online archive or resume a paused online archive, you must include this parameter. To pause an active archive, set this to **true**. To resume a paused archive, set this to **false**.", + "type": "boolean" + }, + "schedule": { + "$ref": "#/components/schemas/OnlineArchiveSchedule" + }, + "state": { + "description": "Phase of the process to create this online archive when you made this request.\n\n| State | Indication |\n|-------------|------------|\n| `PENDING` | MongoDB Cloud has queued documents for archive. Archiving hasn't started. |\n| `ARCHIVING` | MongoDB Cloud started archiving documents that meet the archival criteria. |\n| `IDLE` | MongoDB Cloud waits to start the next archival job. |\n| `PAUSING` | Someone chose to stop archiving. MongoDB Cloud finishes the running archival job then changes the state to `PAUSED` when that job completes. |\n| `PAUSED` | MongoDB Cloud has stopped archiving. Archived documents can be queried. The specified archiving operation on the active cluster cannot archive additional documents. You can resume archiving for paused archives at any time. |\n| `ORPHANED` | Someone has deleted the collection associated with an active or paused archive. MongoDB Cloud doesn't delete the archived data. You must manually delete the online archives associated with the deleted collection. |\n| `DELETED` | Someone has deleted the archive was deleted. When someone deletes an online archive, MongoDB Cloud removes all associated archived documents from the cloud object storage. |", + "enum": [ + "PENDING", + "ACTIVE", + "PAUSING", + "PAUSED", + "DELETED", + "ORPHANED" + ], + "readOnly": true, + "type": "string" + } + }, + "required": [ + "collName", + "criteria", + "dbName" + ], + "type": "object" + }, + "BackupRestoreJob": { + "properties": { + "batchId": { + "description": "Unique 24-hexadecimal digit string that identifies the batch to which this restore job belongs. This parameter exists only for a sharded cluster restore.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "checkpointId": { + "description": "Unique 24-hexadecimal digit string that identifies the sharded cluster checkpoint. The checkpoint represents the point in time back to which you want to restore you data. This parameter applies when `\"delivery.methodName\" : \"AUTOMATED_RESTORE\"`. Use this parameter with sharded clusters only.\n\n- If you set **checkpointId**, you can't set **oplogInc**, **oplogTs**, **snapshotId**, or **pointInTimeUTCMillis**.\n- If you provide this parameter, this endpoint restores all data up to this checkpoint to the database you specify in the **delivery** object.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string", + "writeOnly": true + }, + "clusterId": { + "description": "Unique 24-hexadecimal digit string that identifies the cluster with the snapshot you want to return. This parameter returns for restore clusters.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster containing the snapshots you want to retrieve.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when someone requested this restore job. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "delivery": { + "$ref": "#/components/schemas/BackupRestoreJobDelivery" + }, + "encryptionEnabled": { + "description": "Flag that indicates whether someone encrypted the data in the restored snapshot.", + "readOnly": true, + "type": "boolean" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns the snapshots.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hashes": { + "description": "List that contains documents mapping each restore file to a hashed checksum. This parameter applies after you download the corresponding **delivery.url**. If `\"methodName\" : \"HTTP\"`, this list contains one object that represents the hash of the **.tar.gz** file.", + "items": { + "$ref": "#/components/schemas/RestoreJobFileHash" + }, + "readOnly": true, + "type": "array" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the restore job.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "masterKeyUUID": { + "description": "Universally Unique Identifier (UUID) that identifies the Key Management Interoperability (KMIP) master key used to encrypt the snapshot data. This parameter applies only when `\"encryptionEnabled\" : \"true\"`.", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "oplogInc": { + "description": "Thirty-two-bit incrementing ordinal that represents operations within a given second. When paired with **oplogTs**, this represents the point in time to which MongoDB Cloud restores your data. This parameter applies when `\"delivery.methodName\" : \"AUTOMATED_RESTORE\"`.\n\n- If you set **oplogInc**, you must set **oplogTs**, and can't set **checkpointId**, **snapshotId**, or **pointInTimeUTCMillis**.\n- If you provide this parameter, this endpoint restores all data up to and including this Oplog timestamp to the database you specified in the **delivery** object.", + "format": "int32", + "minimum": 1, + "type": "integer", + "writeOnly": true + }, + "oplogTs": { + "description": "Date and time from which you want to restore this snapshot. This parameter expresses its value in ISO 8601 format in UTC. This represents the first part of an Oplog timestamp. When paired with **oplogInc**, they represent the last database operation to which you want to restore your data. This parameter applies when `\"delivery.methodName\" : \"AUTOMATED_RESTORE\"`. Run a query against **local.oplog.rs** on your replica set to find the desired timestamp.\n\n- If you set **oplogTs**, you must set **oplogInc**, and you can't set **checkpointId**, **snapshotId**, or **pointInTimeUTCMillis**.\n- If you provide this parameter, this endpoint restores all data up to and including this Oplog timestamp to the database you specified in the **delivery** object.", + "pattern": "^(?:[1-9]\\\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\\\d|2[0-3]):[0-5]\\\\d:[0-5]\\\\d(?:\\\\.\\\\d{1,9})?(?:Z|[+-][01]\\\\d:[0-5]\\\\d)$", + "type": "string", + "writeOnly": true + }, + "pointInTimeUTCMillis": { + "description": "Timestamp from which you want to restore this snapshot. This parameter expresses its value in the number of milliseconds elapsed since the [UNIX epoch](https://en.wikipedia.org/wiki/Unix_time). This timestamp must fall within the last 24 hours of the current time. This parameter applies when `\"delivery.methodName\" : \"AUTOMATED_RESTORE\"`.\n\n- If you provide this parameter, this endpoint restores all data up to this point in time to the database you specified in the **delivery** object.\n- If you set **pointInTimeUTCMillis**, you can't set **oplogInc**, **oplogTs**, **snapshotId**, or **checkpointId**.", + "format": "int64", + "minimum": 1199145600000, + "type": "integer", + "writeOnly": true + }, + "snapshotId": { + "description": "Unique 24-hexadecimal digit string that identifies the snapshot to restore. If you set **snapshotId**, you can't set **oplogInc**, **oplogTs**, **pointInTimeUTCMillis**, or **checkpointId**.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "statusName": { + "description": "Human-readable label that identifies the status of the downloadable file at the time of the request.", + "enum": [ + "IN_PROGRESS", + "BROKEN", + "KILLED", + "FINISHED" + ], + "readOnly": true, + "type": "string" + }, + "timestamp": { + "$ref": "#/components/schemas/ApiBSONTimestampView" + } + }, + "required": [ + "delivery" + ], + "type": "object" + }, + "BackupRestoreJobDelivery": { + "description": "Method and details that indicate how to deliver the restored snapshot data.", + "properties": { + "authHeader": { + "description": "Header name to use when downloading the restore, used with `\"delivery.methodName\" : \"HTTP\"`.", + "readOnly": true, + "type": "string" + }, + "authValue": { + "description": "Header value to use when downloading the restore, used with `\"delivery.methodName\" : \"HTTP\"`.", + "readOnly": true, + "type": "string" + }, + "expirationHours": { + "description": "Number of hours after the restore job completes that indicates when the Uniform Resource Locator (URL) for the snapshot download file expires. The resource returns this parameter when `\"delivery.methodName\" : \"HTTP\"`.", + "format": "int32", + "minimum": 1, + "type": "integer" + }, + "expires": { + "description": "Date and time when the Uniform Resource Locator (URL) for the snapshot download file expires. This parameter expresses its value in the ISO 8601 timestamp format in UTC. The resource returns this parameter when `\"delivery.methodName\" : \"HTTP\"`.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "maxDownloads": { + "description": "Positive integer that indicates how many times you can use the Uniform Resource Locator (URL) for the snapshot download file. The resource returns this parameter when `\"delivery.methodName\" : \"HTTP\"`.", + "format": "int32", + "minimum": 1, + "type": "integer" + }, + "methodName": { + "description": "Human-readable label that identifies the means for delivering the data. If you set `\"delivery.methodName\" : \"AUTOMATED_RESTORE\"`, you must also set: **delivery.targetGroupId** and **delivery.targetClusterName** or **delivery.targetClusterId**. The response returns `\"delivery.methodName\" : \"HTTP\"` as an automated restore uses HyperText Transport Protocol (HTTP) to deliver the restore job to the target host.", + "enum": [ + "CLIENT_PIT_HTTP", + "QUERY", + "AUTOMATED_RESTORE", + "HTTP", + "THIRD_PARTY_COPY", + "CLIENT_PIT_SCP", + "SCP" + ], + "type": "string" + }, + "statusName": { + "description": "State of the downloadable snapshot file when MongoDB Cloud received this request.", + "enum": [ + "NOT_STARTED", + "IN_PROGRESS", + "READY", + "FAILED", + "INTERRUPTED", + "EXPIRED", + "MAX_DOWNLOADS_EXCEEDED", + "PENDING" + ], + "readOnly": true, + "type": "string" + }, + "targetClusterId": { + "description": "Unique 24-hexadecimal digit string that identifies the target cluster. Use the **clusterId** returned in the response body of the **Get All Snapshots** and **Get a Snapshot** endpoints. This parameter applies when `\"delivery.methodName\" : \"AUTOMATED_RESTORE\"`.\n\n If the target cluster doesn't have backup enabled, two resources return parameters with empty values:\n\n- **Get All Snapshots** endpoint returns an empty results array without **clusterId** elements\n- **Get a Snapshot** endpoint doesn't return a **clusterId** parameter.\n\nTo return a response with the **clusterId** parameter, either use the **delivery.targetClusterName** parameter or enable backup on the target cluster.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "targetClusterName": { + "description": "Human-readable label that identifies the target cluster. Use the **clusterName** returned in the response body of the **Get All Snapshots** and **Get a Snapshot** endpoints. This parameter applies when `\"delivery.methodName\" : \"AUTOMATED_RESTORE\"`.\n\nIf the target cluster doesn't have backup enabled, two resources return parameters with empty values:\n\n- **Get All Snapshots** endpoint returns an empty results array without **clusterId** elements\n- **Get a Snapshot** endpoint doesn't return a **clusterId** parameter.\n\nTo return a response with the **clusterId** parameter, either use the **delivery.targetClusterName** parameter or enable backup on the target cluster.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "type": "string" + }, + "targetGroupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that contains the destination cluster for the restore job. The resource returns this parameter when `\"delivery.methodName\" : \"AUTOMATED_RESTORE\"`.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "url": { + "deprecated": true, + "description": "Uniform Resource Locator (URL) from which you can download the restored snapshot data. Url includes the verification key. The resource returns this parameter when `\"delivery.methodName\" : \"HTTP\"`.", + "readOnly": true, + "type": "string" + }, + "urlV2": { + "description": "Uniform Resource Locator (URL) from which you can download the restored snapshot data. This should be preferred over **url**. The verification key must be sent as an HTTP header. The resource returns this parameter when `\"delivery.methodName\" : \"HTTP\"`.", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "methodName" + ], + "title": "Restore Snapshot Delivery Metadata", + "type": "object" + }, + "BackupSnapshot": { + "properties": { + "clusterId": { + "description": "Unique 24-hexadecimal digit string that identifies the cluster with the snapshots you want to return.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "complete": { + "description": "Flag that indicates whether the snapshot exists. This flag returns `false` while MongoDB Cloud creates the snapshot.", + "readOnly": true, + "type": "boolean" + }, + "created": { + "$ref": "#/components/schemas/ApiBSONTimestampView" + }, + "doNotDelete": { + "description": "Flag that indicates whether someone can delete this snapshot. You can't set `\"doNotDelete\" : true` and set a timestamp for **expires** in the same request.", + "type": "boolean" + }, + "expires": { + "description": "Date and time when MongoDB Cloud deletes the snapshot. If `\"doNotDelete\" : true`, MongoDB Cloud removes any value set for this parameter.", + "format": "date-time", + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns the snapshots.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "incremental": { + "description": "Flag indicating if this is an incremental or a full snapshot.", + "readOnly": true, + "type": "boolean" + }, + "lastOplogAppliedTimestamp": { + "$ref": "#/components/schemas/ApiBSONTimestampView" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "parts": { + "description": "Metadata that describes the complete snapshot.\n\n- For a replica set, this array contains a single document.\n- For a sharded cluster, this array contains one document for each shard plus one document for the config host.", + "items": { + "$ref": "#/components/schemas/BackupSnapshotPart" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "BackupSnapshotPart": { + "description": "Characteristics that identify this snapshot.", + "properties": { + "clusterId": { + "description": "Unique 24-hexadecimal digit string that identifies the cluster with the snapshots you want to return.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "compressionSetting": { + "description": "Human-readable label that identifies the method of compression for the snapshot.", + "enum": [ + "NONE", + "GZIP" + ], + "readOnly": true, + "type": "string" + }, + "dataSizeBytes": { + "description": "Total size of the data stored on each node in the cluster. This parameter expresses its value in bytes.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "encryptionEnabled": { + "description": "Flag that indicates whether someone encrypted this snapshot.", + "readOnly": true, + "type": "boolean" + }, + "fileSizeBytes": { + "description": "Number that indicates the total size of the data files in bytes.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "masterKeyUUID": { + "description": "Unique string that identifies the Key Management Interoperability (KMIP) master key used to encrypt the snapshot data. The resource returns this parameter when `\"parts.encryptionEnabled\" : true`.", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "mongodVersion": { + "description": "Number that indicates the version of MongoDB that the replica set primary ran when MongoDB Cloud created the snapshot.", + "pattern": "([\\d]+\\.[\\d]+\\.[\\d]+)", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Human-readable label that identifies the replica set.", + "readOnly": true, + "type": "string" + }, + "storageSizeBytes": { + "description": "Number that indicates the total size of space allocated for document storage.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "typeName": { + "description": "Human-readable label that identifies the type of server from which MongoDB Cloud took this snapshot.", + "enum": [ + "REPLICA_SET", + "CONFIG_SERVER", + "CONFIG_SERVER_REPLICA_SET", + "CONFIG_SHARD_REPLICA_SET" + ], + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "title": "Snapshot Components", + "type": "object" + }, + "BackupSnapshotRetention": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "retentionUnit": { + "description": "Quantity of time in which MongoDB Cloud measures snapshot retention.", + "enum": [ + "DAYS", + "WEEKS", + "MONTHS", + "YEARS" + ], + "type": "string" + }, + "retentionValue": { + "description": "Number that indicates the amount of days, weeks, months, or years that MongoDB Cloud retains the snapshot. For less frequent policy items, MongoDB Cloud requires that you specify a value greater than or equal to the value specified for more frequent policy items. If the hourly policy item specifies a retention of two days, specify two days or greater for the retention of the weekly policy item.", + "example": 5, + "format": "int32", + "type": "integer" + } + }, + "required": [ + "retentionUnit", + "retentionValue" + ], + "type": "object" + }, + "BackupTenantSnapshot": { + "properties": { + "expiration": { + "description": "Date and time when the download link no longer works. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "finishTime": { + "description": "Date and time when MongoDB Cloud completed writing this snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the restore job.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "mongoDBVersion": { + "description": "MongoDB host version that the snapshot runs.", + "readOnly": true, + "type": "string" + }, + "scheduledTime": { + "description": "Date and time when MongoDB Cloud will take the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "startTime": { + "description": "Date and time when MongoDB Cloud began taking the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Phase of the workflow for this snapshot at the time this resource made this request.", + "enum": [ + "PENDING", + "QUEUED", + "RUNNING", + "FAILED", + "COMPLETED" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "BaseAtlasDataLakeRegion": { + "description": "Name of the region to which the data lake routes client connections.", + "oneOf": [ + { + "$ref": "#/components/schemas/ApiAtlasDataLakeAWSRegionView" + }, + { + "$ref": "#/components/schemas/AtlasDataFederationAzureRegion" + } + ], + "type": "object" + }, + "BaseCloudProviderInstanceSize": { + "description": "Minimum instance size to which your cluster can automatically scale. MongoDB Cloud requires this parameter if `\"replicationSpecs[n].regionConfigs[m].autoScaling.compute.scaleDownEnabled\" : true`.", + "oneOf": [ + { + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M100", + "M140", + "M200", + "M300", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "R700", + "M40_NVME", + "M50_NVME", + "M60_NVME", + "M80_NVME", + "M200_NVME", + "M400_NVME" + ], + "title": "AWS Instance Sizes", + "type": "string" + }, + { + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M90", + "M200", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "M60_NVME", + "M80_NVME", + "M200_NVME", + "M300_NVME", + "M400_NVME", + "M600_NVME" + ], + "title": "Azure Instance Sizes", + "type": "string" + }, + { + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M140", + "M200", + "M250", + "M300", + "M400", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "R600" + ], + "title": "GCP Instance Sizes", + "type": "string" + } + ], + "type": "object" + }, + "BaseNetworkPeeringConnectionSettings": { + "discriminator": { + "mapping": { + "AWS": "#/components/schemas/AwsNetworkPeeringConnectionSettings", + "AZURE": "#/components/schemas/AzureNetworkPeeringConnectionSettings", + "GCP": "#/components/schemas/GCPNetworkPeeringConnectionSettings" + }, + "propertyName": "providerName" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/AwsNetworkPeeringConnectionSettings" + }, + { + "$ref": "#/components/schemas/AzureNetworkPeeringConnectionSettings" + }, + { + "$ref": "#/components/schemas/GCPNetworkPeeringConnectionSettings" + } + ], + "properties": { + "containerId": { + "description": "Unique 24-hexadecimal digit string that identifies the MongoDB Cloud network container that contains the specified network peering connection.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the network peering connection.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "providerName": { + "description": "Cloud service provider that serves the requested network peering connection.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "type": "string" + } + }, + "required": [ + "containerId" + ], + "type": "object" + }, + "BaseStreamsRegion": { + "description": "Name of the cloud provider region hosting Atlas Stream Processing.", + "oneOf": [ + { + "$ref": "#/components/schemas/ApiStreamsAWSRegionView" + } + ], + "type": "object" + }, + "BasicBSONList": { + "description": "List that contains the search criteria that the query uses. To use the values in key-value pairs in these predicates requires **Project Data Access Read Only** permissions or greater. Otherwise, MongoDB Cloud redacts these values.", + "items": { + "description": "List that contains the search criteria that the query uses. To use the values in key-value pairs in these predicates requires **Project Data Access Read Only** permissions or greater. Otherwise, MongoDB Cloud redacts these values.", + "readOnly": true, + "type": "object" + }, + "readOnly": true, + "type": "array" + }, + "BasicDBObject": { + "additionalProperties": { + "type": "object" + }, + "type": "object" + }, + "BiConnector": { + "description": "Settings needed to configure the MongoDB Connector for Business Intelligence for this cluster.", + "externalDocs": { + "description": "MongoDB Connector for Business Intelligence", + "url": "https://docs.mongodb.com/bi-connector/current/" + }, + "properties": { + "enabled": { + "description": "Flag that indicates whether MongoDB Connector for Business Intelligence is enabled on the specified cluster.", + "type": "boolean" + }, + "readPreference": { + "description": "Data source node designated for the MongoDB Connector for Business Intelligence on MongoDB Cloud. The MongoDB Connector for Business Intelligence on MongoDB Cloud reads data from the primary, secondary, or analytics node based on your read preferences. Defaults to `ANALYTICS` node, or `SECONDARY` if there are no `ANALYTICS` nodes.", + "enum": [ + "PRIMARY", + "SECONDARY", + "ANALYTICS" + ], + "externalDocs": { + "description": "Read preferences for BI Connector", + "url": "https://docs.atlas.mongodb.com/cluster-config/enable-bic/#std-label-bic-read-preferences" + }, + "type": "string" + } + }, + "title": "MongoDB Connector for Business Intelligence Settings", + "type": "object" + }, + "BillingEventTypeViewAlertableWithThreshold": { + "description": "Event type that triggers an alert.", + "enum": [ + "PENDING_INVOICE_OVER_THRESHOLD", + "DAILY_BILL_OVER_THRESHOLD" + ], + "example": "PENDING_INVOICE_OVER_THRESHOLD", + "title": "Billing Event Type", + "type": "string" + }, + "BillingEventTypeViewForNdsGroup": { + "description": "Unique identifier of event type.", + "enum": [ + "CREDIT_CARD_CURRENT", + "CREDIT_CARD_ABOUT_TO_EXPIRE", + "PENDING_INVOICE_UNDER_THRESHOLD", + "PENDING_INVOICE_OVER_THRESHOLD", + "DAILY_BILL_UNDER_THRESHOLD", + "DAILY_BILL_OVER_THRESHOLD" + ], + "example": "CREDIT_CARD_CURRENT", + "title": "Billing Event Types", + "type": "string" + }, + "BillingEventTypeViewForOrg": { + "description": "Unique identifier of event type.", + "enum": [ + "CHARGE_SUCCEEDED", + "CHARGE_FAILED", + "CHARGE_PROCESSING", + "CHARGE_PENDING_REVERSAL", + "BRAINTREE_CHARGE_FAILED", + "INVOICE_CLOSED", + "CHECK_PAYMENT_RECEIVED", + "WIRE_TRANSFER_PAYMENT_RECEIVED", + "DISCOUNT_APPLIED", + "CREDIT_ISSUED", + "CREDIT_PULLED_FWD", + "CREDIT_END_DATE_MODIFIED", + "PROMO_CODE_APPLIED", + "PAYMENT_FORGIVEN", + "REFUND_ISSUED", + "ACCOUNT_DOWNGRADED", + "ACCOUNT_UPGRADED", + "ACCOUNT_MODIFIED", + "SUPPORT_PLAN_ACTIVATED", + "SUPPORT_PLAN_CANCELLED", + "SUPPORT_PLAN_CANCELLATION_SCHEDULED", + "INITIATE_SALESFORCE_SERVICE_CLOUD_SYNC", + "INVOICE_ADDRESS_CHANGED", + "INVOICE_ADDRESS_ADDED", + "PREPAID_PLAN_ACTIVATED", + "ELASTIC_INVOICING_MODE_ACTIVATED", + "ELASTIC_INVOICING_MODE_DEACTIVATED", + "TERMINATE_PAID_SERVICES", + "BILLING_EMAIL_ADDRESS_ADDED", + "BILLING_EMAIL_ADDRESS_CHANGED", + "BILLING_EMAIL_ADDRESS_REMOVED", + "AWS_BILLING_ACCOUNT_CREDIT_ISSUED", + "GCP_BILLING_ACCOUNT_CREDIT_ISSUED", + "CREDIT_SFOLID_MODIFIED", + "PREPAID_PLAN_MODIFIED", + "AWS_USAGE_REPORTED", + "AZURE_USAGE_REPORTED", + "GCP_USAGE_REPORTED", + "BECAME_PAYING_ORG", + "NEW_LINKED_ORG", + "UNLINKED_ORG", + "ORG_LINKED_TO_PAYING_ORG", + "ORG_UNLINKED_FROM_PAYING_ORG", + "ORG_UNLINK_REQUESTED", + "ORG_UNLINK_CANCELLED", + "PAYMENT_UPDATED_THROUGH_API", + "AZURE_BILLING_ACCOUNT_CREDIT_ISSUED", + "CREDIT_START_DATE_MODIFIED", + "CREDIT_ELASTIC_INVOICING_MODIFIED", + "CREDIT_TYPE_MODIFIED", + "CREDIT_AMOUNT_CENTS_MODIFIED", + "CREDIT_AMOUNT_REMAINING_CENTS_MODIFIED", + "CREDIT_TOTAL_BILLED_CENTS_MODIFIED", + "CREDIT_AWS_CUSTOMER_ID_MODIFIED", + "CREDIT_AWS_PRODUCT_CODE_MODIFIED", + "CREDIT_GCP_MARKETPLACE_ENTITLEMENT_ID_MODIFIED", + "CREDIT_AZURE_SUBSCRIPTION_ID_MODIFIED", + "CREDIT_AZURE_PRIVATE_PLAN_ID_MODIFIED", + "TARGETED_REBILL_EXECUTED", + "LEGACY_REBILL_EXECUTED", + "EVERGREEN_DEAL_CANCELLED", + "GRACE_PERIOD_ACTIVATED", + "GRACE_PERIOD_NO_LONGER_IN_EFFECT", + "PENDING_DEAL_ACTIVATION_ADDED", + "PENDING_DEAL_ACTIVATION_CANCELED", + "PENDING_DEAL_APPLIED", + "PENDING_DEAL_ACTIVATION_FAILED", + "EVERGREEN_PRIORITY_MODIFIED" + ], + "example": "CHARGE_SUCCEEDED", + "title": "Billing Event Types", + "type": "string" + }, + "BillingEventViewForNdsGroup": { + "description": "Billing event identifies different activities related to billing, payment or financial status change of an organization.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/BillingEventTypeViewForNdsGroup" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "invoiceId": { + "description": "Unique 24-hexadecimal digit string that identifies of the invoice associated with the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "paymentId": { + "description": "Unique 24-hexadecimal digit string that identifies the invoice payment associated with this event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Billing Events", + "type": "object" + }, + "BillingEventViewForOrg": { + "description": "Billing event identifies different activities related to billing, payment or financial status change of an organization.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/BillingEventTypeViewForOrg" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "invoiceId": { + "description": "Unique 24-hexadecimal digit string that identifies of the invoice associated with the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "paymentId": { + "description": "Unique 24-hexadecimal digit string that identifies the invoice payment associated with this event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Billing Events", + "type": "object" + }, + "BillingInvoice": { + "properties": { + "amountBilledCents": { + "description": "Sum of services that the specified organization consumed in the period covered in this invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "amountPaidCents": { + "description": "Sum that the specified organization paid toward this invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this invoice. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "creditsCents": { + "description": "Sum that MongoDB credited the specified organization toward this invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "endDate": { + "description": "Date and time when MongoDB Cloud finished the billing period that this invoice covers. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the invoice submitted to the specified organization. Charges typically post the next day.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lineItems": { + "description": "List that contains individual services included in this invoice.", + "items": { + "$ref": "#/components/schemas/InvoiceLineItem" + }, + "readOnly": true, + "type": "array" + }, + "linkedInvoices": { + "description": "List that contains the invoices for organizations linked to the paying organization.", + "items": { + "$ref": "#/components/schemas/BillingInvoice" + }, + "readOnly": true, + "type": "array" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization charged for services consumed from MongoDB Cloud.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "payments": { + "description": "List that contains funds transferred to MongoDB to cover the specified service noted in this invoice.", + "items": { + "$ref": "#/components/schemas/BillingPayment" + }, + "readOnly": true, + "type": "array" + }, + "refunds": { + "description": "List that contains payments that MongoDB returned to the organization for this invoice.", + "items": { + "$ref": "#/components/schemas/BillingRefund" + }, + "readOnly": true, + "type": "array" + }, + "salesTaxCents": { + "description": "Sum of sales tax applied to this invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "startDate": { + "description": "Date and time when MongoDB Cloud began the billing period that this invoice covers. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "startingBalanceCents": { + "description": "Sum that the specified organization owed to MongoDB when MongoDB issued this invoice. This parameter expresses its value in US Dollars.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "statusName": { + "description": "Phase of payment processing in which this invoice exists when you made this request. Accepted phases include:\n\n| Phase Value | Reason |\n|---|---|\n| CLOSED | MongoDB finalized all charges in the billing cycle but has yet to charge the customer. |\n| FAILED | MongoDB attempted to charge the provided credit card but charge for that amount failed. |\n| FORGIVEN | Customer initiated payment which MongoDB later forgave. |\n| FREE | All charges totalled zero so the customer won't be charged. |\n| INVOICED | MongoDB handled these charges using elastic invoicing. |\n| PAID | MongoDB succeeded in charging the provided credit card. |\n| PENDING | Invoice includes charges for the current billing cycle. |\n| PREPAID | Customer has a pre-paid plan so they won't be charged. |\n", + "enum": [ + "PENDING", + "CLOSED", + "FORGIVEN", + "FAILED", + "PAID", + "FREE", + "PREPAID", + "INVOICED" + ], + "type": "string" + }, + "subtotalCents": { + "description": "Sum of all positive invoice line items contained in this invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "updated": { + "description": "Date and time when MongoDB Cloud last updated the value of this payment. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "BillingInvoiceMetadata": { + "properties": { + "amountBilledCents": { + "description": "Sum of services that the specified organization consumed in the period covered in this invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "amountPaidCents": { + "description": "Sum that the specified organization paid toward this invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this invoice. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "creditsCents": { + "description": "Sum that MongoDB credited the specified organization toward this invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "endDate": { + "description": "Date and time when MongoDB Cloud finished the billing period that this invoice covers. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the invoice submitted to the specified organization. Charges typically post the next day.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "linkedInvoices": { + "description": "List that contains the invoices for organizations linked to the paying organization.", + "items": { + "$ref": "#/components/schemas/BillingInvoiceMetadata" + }, + "readOnly": true, + "type": "array" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization charged for services consumed from MongoDB Cloud.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "salesTaxCents": { + "description": "Sum of sales tax applied to this invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "startDate": { + "description": "Date and time when MongoDB Cloud began the billing period that this invoice covers. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "startingBalanceCents": { + "description": "Sum that the specified organization owed to MongoDB when MongoDB issued this invoice. This parameter expresses its value in US Dollars.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "statusName": { + "description": "Phase of payment processing in which this invoice exists when you made this request. Accepted phases include:\n\n| Phase Value | Reason |\n|---|---|\n| CLOSED | MongoDB finalized all charges in the billing cycle but has yet to charge the customer. |\n| FAILED | MongoDB attempted to charge the provided credit card but charge for that amount failed. |\n| FORGIVEN | Customer initiated payment which MongoDB later forgave. |\n| FREE | All charges totalled zero so the customer won't be charged. |\n| INVOICED | MongoDB handled these charges using elastic invoicing. |\n| PAID | MongoDB succeeded in charging the provided credit card. |\n| PENDING | Invoice includes charges for the current billing cycle. |\n| PREPAID | Customer has a pre-paid plan so they won't be charged. |\n", + "enum": [ + "PENDING", + "CLOSED", + "FORGIVEN", + "FAILED", + "PAID", + "FREE", + "PREPAID", + "INVOICED" + ], + "type": "string" + }, + "subtotalCents": { + "description": "Sum of all positive invoice line items contained in this invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "updated": { + "description": "Date and time when MongoDB Cloud last updated the value of this payment. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "BillingPayment": { + "description": "Funds transferred to MongoDB to cover the specified service in this invoice.", + "properties": { + "amountBilledCents": { + "description": "Sum of services that the specified organization consumed in the period covered in this invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "amountPaidCents": { + "description": "Sum that the specified organization paid toward the associated invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "created": { + "description": "Date and time when the customer made this payment attempt. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "currency": { + "description": "The currency in which payment was paid. This parameter expresses its value in 3-letter ISO 4217 currency code.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this payment toward the associated invoice.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "salesTaxCents": { + "description": "Sum of sales tax applied to this invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "statusName": { + "description": "Phase of payment processing for the associated invoice when you made this request.\n\nThese phases include:\n\n| Phase Value | Reason |\n|---|---|\n| `CANCELLED` | Customer or MongoDB cancelled the payment. |\n| `ERROR` | Issue arose when attempting to complete payment. |\n| `FAILED` | MongoDB tried to charge the credit card without success. |\n| `FAILED_AUTHENTICATION` | Strong Customer Authentication has failed. Confirm that your payment method is authenticated. |\n| `FORGIVEN` | Customer initiated payment which MongoDB later forgave. |\n| `INVOICED` | MongoDB issued an invoice that included this line item. |\n| `NEW` | Customer provided a method of payment, but MongoDB hasn't tried to charge the credit card. |\n| `PAID` | Customer submitted a successful payment. |\n| `PARTIAL_PAID` | Customer paid for part of this line item. |\n", + "enum": [ + "NEW", + "FORGIVEN", + "FAILED", + "PAID", + "PARTIAL_PAID", + "CANCELLED", + "INVOICED", + "ERROR", + "FAILED_AUTHENTICATION", + "PROCESSING", + "PENDING_REVERSAL", + "REFUNDED" + ], + "type": "string" + }, + "subtotalCents": { + "description": "Sum of all positive invoice line items contained in this invoice. This parameter expresses its value in cents (100ths of one US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "unitPrice": { + "description": "The unit price applied to amountBilledCents to compute total payment amount. This value is represented as a decimal string.", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Date and time when the customer made an update to this payment attempt. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "title": "Payment", + "type": "object" + }, + "BillingRefund": { + "description": "One payment that MongoDB returned to the organization for this invoice.", + "properties": { + "amountCents": { + "description": "Sum of the funds returned to the specified organization expressed in cents (100th of US Dollar).", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this refund. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "paymentId": { + "description": "Unique 24-hexadecimal digit string that identifies the payment that the organization had made.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "reason": { + "description": "Justification that MongoDB accepted to return funds to the organization.", + "readOnly": true, + "type": "string" + } + }, + "title": "Refund", + "type": "object" + }, + "BillingThresholdAlertConfigViewForNdsGroup": { + "description": "Billing threshold alert configuration allows to select thresholds for bills and invoices which trigger alerts and how users are notified.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/BillingEventTypeViewAlertableWithThreshold" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "Matching conditions for target resources.", + "items": { + "$ref": "#/components/schemas/AlertMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "threshold": { + "$ref": "#/components/schemas/GreaterThanRawThreshold" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "Billing Threshold Alert Configuration", + "type": "object" + }, + "CloudAccessRoleAssignment": { + "description": "MongoDB Cloud user's roles and the corresponding organization or project to which that role applies. Each role can apply to one organization or one project but not both.", + "properties": { + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project to which this role belongs. You can set a value for this parameter or **orgId** but not both in the same request.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which this role belongs. You can set a value for this parameter or **groupId** but not both in the same request.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "roleName": { + "description": "Human-readable label that identifies the collection of privileges that MongoDB Cloud grants a specific API key, MongoDB Cloud user, or MongoDB Cloud team. These roles include organization- and project-level roles.\n\nOrganization Roles\n\n* ORG_OWNER\n* ORG_MEMBER\n* ORG_GROUP_CREATOR\n* ORG_BILLING_ADMIN\n* ORG_READ_ONLY\n\nProject Roles\n\n* GROUP_CLUSTER_MANAGER\n* GROUP_DATA_ACCESS_ADMIN\n* GROUP_DATA_ACCESS_READ_ONLY\n* GROUP_DATA_ACCESS_READ_WRITE\n* GROUP_OWNER\n* GROUP_READ_ONLY\n* GROUP_SEARCH_INDEX_EDITOR\n* GROUP_STREAM_PROCESSING_OWNER\n\n", + "enum": [ + "ORG_OWNER", + "ORG_MEMBER", + "ORG_GROUP_CREATOR", + "ORG_BILLING_ADMIN", + "ORG_READ_ONLY", + "GROUP_CLUSTER_MANAGER", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_OWNER", + "GROUP_READ_ONLY", + "GROUP_SEARCH_INDEX_EDITOR", + "GROUP_STREAM_PROCESSING_OWNER" + ], + "type": "string" + } + }, + "title": "Role Assignment", + "type": "object" + }, + "CloudAppUser": { + "properties": { + "country": { + "description": "Two alphabet characters that identifies MongoDB Cloud user's geographic location. This parameter uses the ISO 3166-1a2 code format.", + "pattern": "^([A-Z]{2})$", + "type": "string" + }, + "createdAt": { + "description": "Date and time when the current account is created. This value is in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "emailAddress": { + "deprecated": true, + "description": "Email address that belongs to the MongoDB Cloud user.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "firstName": { + "description": "First or given name that belongs to the MongoDB Cloud user.", + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastAuth": { + "description": "Date and time when the current account last authenticated. This value is in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "lastName": { + "description": "Last name, family name, or surname that belongs to the MongoDB Cloud user.", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "mobileNumber": { + "description": "Mobile phone number that belongs to the MongoDB Cloud user.", + "pattern": "(?:(?:\\\\+?1\\\\s*(?:[.-]\\\\s*)?)?(?:(\\\\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\\\\s*)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\\\\s*(?:[.-]\\\\s*)?)([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\\\\s*(?:[.-]\\\\s*)?([0-9]{4})$", + "type": "string" + }, + "password": { + "description": "Password applied with the username to log in to MongoDB Cloud. MongoDB Cloud does not return this parameter except in response to creating a new MongoDB Cloud user. Only the MongoDB Cloud user can update their password after it has been set from the MongoDB Cloud console.", + "minLength": 8, + "type": "string" + }, + "roles": { + "description": "List of objects that display the MongoDB Cloud user's roles and the corresponding organization or project to which that role applies. A role can apply to one organization or one project but not both.", + "items": { + "$ref": "#/components/schemas/CloudAccessRoleAssignment" + }, + "type": "array" + }, + "teamIds": { + "description": "List of unique 24-hexadecimal digit strings that identifies the teams to which this MongoDB Cloud user belongs.", + "items": { + "description": "Unique 24-hexadecimal digit string that identifies the team to which this MongoDB Cloud user belongs.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "readOnly": true, + "type": "array", + "uniqueItems": true + }, + "username": { + "description": "Email address that represents the username of the MongoDB Cloud user.", + "format": "email", + "type": "string" + } + }, + "required": [ + "country", + "emailAddress", + "firstName", + "lastName", + "mobileNumber", + "password", + "username" + ], + "type": "object" + }, + "CloudCluster": { + "description": "Settings that describe the clusters in each project that the API key is authorized to view.", + "properties": { + "alertCount": { + "description": "Whole number that indicates the quantity of alerts open on the cluster.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "authEnabled": { + "description": "Flag that indicates whether authentication is required to access the nodes in this cluster.", + "readOnly": true, + "type": "boolean" + }, + "availability": { + "description": "Term that expresses how many nodes of the cluster can be accessed when MongoDB Cloud receives this request. This parameter returns `available` when all nodes are accessible, `warning` only when some nodes in the cluster can be accessed, `unavailable` when the cluster can't be accessed, or `dead` when the cluster has been deactivated.", + "enum": [ + "available", + "dead", + "unavailable", + "warning" + ], + "readOnly": true, + "type": "string" + }, + "backupEnabled": { + "description": "Flag that indicates whether the cluster can perform backups. If set to `true`, the cluster can perform backups. You must set this value to `true` for NVMe clusters. Backup uses Cloud Backups for dedicated clusters and Shared Cluster Backups for tenant clusters. If set to `false`, the cluster doesn't use MongoDB Cloud backups.", + "readOnly": true, + "type": "boolean" + }, + "clusterId": { + "description": "Unique 24-hexadecimal character string that identifies the cluster. Each ``clusterId`` is used only once across all MongoDB Cloud deployments.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "dataSizeBytes": { + "description": "Total size of the data stored on each node in the cluster. The resource expresses this value in bytes.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "name": { + "description": "Human-readable label that identifies the cluster.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "nodeCount": { + "description": "Whole number that indicates the quantity of nodes that comprise the cluster.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "sslEnabled": { + "description": "Flag that indicates whether TLS authentication is required to access the nodes in this cluster.", + "readOnly": true, + "type": "boolean" + }, + "type": { + "description": "Human-readable label that indicates the cluster type.", + "enum": [ + "REPLICA_SET", + "SHARDED_CLUSTER" + ], + "readOnly": true, + "type": "string" + }, + "versions": { + "description": "List that contains the versions of MongoDB that each node in the cluster runs.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array", + "uniqueItems": true + } + }, + "readOnly": true, + "type": "object" + }, + "CloudDatabaseUser": { + "properties": { + "awsIAMType": { + "default": "NONE", + "description": "Human-readable label that indicates whether the new database user authenticates with the Amazon Web Services (AWS) Identity and Access Management (IAM) credentials associated with the user or the user's role.", + "enum": [ + "NONE", + "USER", + "ROLE" + ], + "type": "string" + }, + "databaseName": { + "default": "admin", + "description": "The database against which the database user authenticates. Database users must provide both a username and authentication database to log into MongoDB. If the user authenticates with AWS IAM, x.509, LDAP, or OIDC Workload this value should be `$external`. If the user authenticates with SCRAM-SHA or OIDC Workforce, this value should be `admin`.", + "enum": [ + "admin", + "$external" + ], + "type": "string" + }, + "deleteAfterDate": { + "description": "Date and time when MongoDB Cloud deletes the user. This parameter expresses its value in the ISO 8601 timestamp format in UTC and can include the time zone designation. You must specify a future date that falls within one week of making the Application Programming Interface (API) request.", + "format": "date-time", + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string", + "writeOnly": true + }, + "labels": { + "description": "List that contains the key-value pairs for tagging and categorizing the MongoDB database user. The labels that you define do not appear in the console.", + "items": { + "$ref": "#/components/schemas/ComponentLabel" + }, + "type": "array" + }, + "ldapAuthType": { + "default": "NONE", + "description": "Part of the Lightweight Directory Access Protocol (LDAP) record that the database uses to authenticate this database user on the LDAP host.", + "enum": [ + "NONE", + "GROUP", + "USER" + ], + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "oidcAuthType": { + "default": "NONE", + "description": "Human-readable label that indicates whether the new database user or group authenticates with OIDC federated authentication. To create a federated authentication user, specify the value of USER in this field. To create a federated authentication group, specify the value of IDP_GROUP in this field.", + "enum": [ + "NONE", + "IDP_GROUP", + "USER" + ], + "type": "string" + }, + "password": { + "description": "Alphanumeric string that authenticates this database user against the database specified in `databaseName`. To authenticate with SCRAM-SHA, you must specify this parameter. This parameter doesn't appear in this response.", + "externalDocs": { + "description": "SCRAM-SHA", + "url": "https://docs.mongodb.com/manual/core/security-scram/" + }, + "minLength": 8, + "type": "string", + "writeOnly": true + }, + "roles": { + "description": "List that provides the pairings of one role with one applicable database.", + "items": { + "$ref": "#/components/schemas/DatabaseUserRole" + }, + "type": "array" + }, + "scopes": { + "description": "List that contains clusters, MongoDB Atlas Data Lakes, and MongoDB Atlas Streams Instances that this database user can access. If omitted, MongoDB Cloud grants the database user access to all the clusters, MongoDB Atlas Data Lakes, and MongoDB Atlas Streams Instances in the project.", + "items": { + "$ref": "#/components/schemas/UserScope" + }, + "type": "array" + }, + "username": { + "description": "Human-readable label that represents the user that authenticates to MongoDB. The format of this label depends on the method of authentication:\n\n| Authentication Method | Parameter Needed | Parameter Value | username Format |\n|---|---|---|---|\n| AWS IAM | awsIAMType | ROLE | \u003cabbr title=\"Amazon Resource Name\"\u003eARN\u003c/abbr\u003e |\n| AWS IAM | awsIAMType | USER | \u003cabbr title=\"Amazon Resource Name\"\u003eARN\u003c/abbr\u003e |\n| x.509 | x509Type | CUSTOMER | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |\n| x.509 | x509Type | MANAGED | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |\n| LDAP | ldapAuthType | USER | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |\n| LDAP | ldapAuthType | GROUP | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |\n| OIDC Workforce | oidcAuthType | IDP_GROUP | Atlas OIDC IdP ID (found in federation settings), followed by a '/', followed by the IdP group name |\n| OIDC Workload | oidcAuthType | USER | Atlas OIDC IdP ID (found in federation settings), followed by a '/', followed by the IdP user name |\n| SCRAM-SHA | awsIAMType, x509Type, ldapAuthType, oidcAuthType | NONE | Alphanumeric string |\n", + "maxLength": 1024, + "type": "string" + }, + "x509Type": { + "default": "NONE", + "description": "X.509 method that MongoDB Cloud uses to authenticate the database user.\n\n- For application-managed X.509, specify `MANAGED`.\n- For self-managed X.509, specify `CUSTOMER`.\n\nUsers created with the `CUSTOMER` method require a Common Name (CN) in the **username** parameter. You must create externally authenticated users on the `$external` database.", + "enum": [ + "NONE", + "CUSTOMER", + "MANAGED" + ], + "type": "string" + } + }, + "required": [ + "databaseName", + "groupId", + "username" + ], + "type": "object" + }, + "CloudGCPProviderSettings": { + "allOf": [ + { + "$ref": "#/components/schemas/ClusterProviderSettings" + }, + { + "properties": { + "autoScaling": { + "$ref": "#/components/schemas/CloudProviderGCPAutoScaling" + }, + "instanceSizeName": { + "description": "Cluster tier, with a default storage and memory capacity, that applies to all the data-bearing hosts in your cluster.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M140", + "M200", + "M250", + "M300", + "M400", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "R600" + ], + "title": "GCP Instance Sizes", + "type": "string" + }, + "regionName": { + "description": "Google Compute Regions.", + "enum": [ + "EASTERN_US", + "GOV_EASTERN_US", + "US_EAST_4", + "GOV_US_EAST_4", + "US_EAST_5", + "GOV_US_EAST_5", + "US_WEST_2", + "GOV_US_WEST_2", + "US_WEST_3", + "GOV_US_WEST_3", + "US_WEST_4", + "GOV_US_WEST_4", + "US_SOUTH_1", + "GOV_US_SOUTH_1", + "CENTRAL_US", + "GOV_CENTRAL_US", + "WESTERN_US", + "GOV_WESTERN_US", + "NORTH_AMERICA_NORTHEAST_1", + "NORTH_AMERICA_NORTHEAST_2", + "SOUTH_AMERICA_EAST_1", + "SOUTH_AMERICA_WEST_1", + "WESTERN_EUROPE", + "EUROPE_NORTH_1", + "EUROPE_WEST_2", + "EUROPE_WEST_3", + "EUROPE_WEST_4", + "EUROPE_WEST_6", + "EUROPE_WEST_8", + "EUROPE_WEST_9", + "EUROPE_WEST_10", + "EUROPE_WEST_12", + "EUROPE_SOUTHWEST_1", + "EUROPE_CENTRAL_2", + "MIDDLE_EAST_CENTRAL_1", + "MIDDLE_EAST_CENTRAL_2", + "MIDDLE_EAST_WEST_1", + "AUSTRALIA_SOUTHEAST_1", + "AUSTRALIA_SOUTHEAST_2", + "EASTERN_ASIA_PACIFIC", + "NORTHEASTERN_ASIA_PACIFIC", + "SOUTHEASTERN_ASIA_PACIFIC", + "ASIA_EAST_2", + "ASIA_NORTHEAST_2", + "ASIA_NORTHEAST_3", + "ASIA_SOUTH_1", + "ASIA_SOUTH_2", + "ASIA_SOUTHEAST_2" + ], + "externalDocs": { + "description": "GCP", + "url": "https://docs.atlas.mongodb.com/reference/google-gcp/" + }, + "title": "GCP Regions", + "type": "string" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "CloudProviderAWSAutoScaling": { + "description": "Range of instance sizes to which your cluster can scale.", + "properties": { + "compute": { + "$ref": "#/components/schemas/AWSComputeAutoScaling" + } + }, + "type": "object" + }, + "CloudProviderAccessAWSIAMRole": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudProviderAccessRole" + }, + { + "properties": { + "atlasAWSAccountArn": { + "description": "Amazon Resource Name that identifies the Amazon Web Services (AWS) user account that MongoDB Cloud uses when it assumes the Identity and Access Management (IAM) role.", + "example": "arn:aws:iam::772401394250:role/my-test-aws-role", + "maxLength": 2048, + "minLength": 20, + "readOnly": true, + "type": "string" + }, + "atlasAssumedRoleExternalId": { + "description": "Unique external ID that MongoDB Cloud uses when it assumes the IAM role in your Amazon Web Services (AWS) account.", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "authorizedDate": { + "description": "Date and time when someone authorized this role for the specified cloud service provider. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "createdDate": { + "description": "Date and time when someone created this role for the specified cloud service provider. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "featureUsages": { + "description": "List that contains application features associated with this Amazon Web Services (AWS) Identity and Access Management (IAM) role.", + "items": { + "$ref": "#/components/schemas/CloudProviderAccessFeatureUsage" + }, + "readOnly": true, + "type": "array" + }, + "iamAssumedRoleArn": { + "description": "Amazon Resource Name (ARN) that identifies the Amazon Web Services (AWS) Identity and Access Management (IAM) role that MongoDB Cloud assumes when it accesses resources in your AWS account.", + "example": "arn:aws:iam::123456789012:root", + "maxLength": 2048, + "minLength": 20, + "type": "string" + }, + "roleId": { + "description": "Unique 24-hexadecimal digit string that identifies the role.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + } + ], + "description": "Details that describe the features linked to the Amazon Web Services (AWS) Identity and Access Management (IAM) role.", + "required": [ + "providerName" + ], + "type": "object" + }, + "CloudProviderAccessAzureServicePrincipal": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudProviderAccessRole" + }, + { + "properties": { + "_id": { + "description": "Unique 24-hexadecimal digit string that identifies the Azure Service Principal in Atlas.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "atlasAzureAppId": { + "description": "Azure Active Directory Application ID of Atlas.", + "maxLength": 36, + "minLength": 32, + "pattern": "^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$", + "type": "string" + }, + "createdDate": { + "description": "Date and time when this Azure Service Principal was created. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "featureUsages": { + "description": "List that contains application features associated with this Azure Service Principal.", + "items": { + "$ref": "#/components/schemas/CloudProviderAccessFeatureUsage" + }, + "readOnly": true, + "type": "array" + }, + "lastUpdatedDate": { + "description": "Date and time when this Azure Service Principal was last updated. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "servicePrincipalId": { + "description": "UUID string that identifies the Azure Service Principal.", + "maxLength": 36, + "minLength": 32, + "pattern": "^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$", + "type": "string" + }, + "tenantId": { + "description": "UUID String that identifies the Azure Active Directory Tenant ID.", + "maxLength": 36, + "minLength": 32, + "pattern": "^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$", + "type": "string" + } + }, + "type": "object" + } + ], + "description": "Details that describe the features linked to the Azure Service Principal.", + "required": [ + "providerName" + ], + "type": "object" + }, + "CloudProviderAccessDataLakeFeatureUsage": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudProviderAccessFeatureUsage" + }, + { + "properties": { + "featureId": { + "$ref": "#/components/schemas/CloudProviderAccessFeatureUsageDataLakeFeatureId" + } + }, + "type": "object" + } + ], + "description": "Details that describe the Atlas Data Lakes linked to this Amazon Web Services (AWS) Identity and Access Management (IAM) role.", + "type": "object" + }, + "CloudProviderAccessEncryptionAtRestFeatureUsage": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudProviderAccessFeatureUsage" + }, + { + "properties": { + "featureId": { + "$ref": "#/components/schemas/ApiAtlasCloudProviderAccessFeatureUsageFeatureIdView" + } + }, + "type": "object" + } + ], + "description": "Details that describe the Key Management Service (KMS) linked to this Amazon Web Services (AWS) Identity and Access Management (IAM) role.", + "type": "object" + }, + "CloudProviderAccessExportSnapshotFeatureUsage": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudProviderAccessFeatureUsage" + }, + { + "properties": { + "featureId": { + "$ref": "#/components/schemas/CloudProviderAccessFeatureUsageExportSnapshotFeatureId" + } + }, + "type": "object" + } + ], + "description": "Details that describe the Amazon Web Services (AWS) Simple Storage Service (S3) export buckets linked to this AWS Identity and Access Management (IAM) role.", + "type": "object" + }, + "CloudProviderAccessFeatureUsage": { + "description": "MongoDB Cloud features associated with this Amazon Web Services (AWS) Identity and Access Management (IAM) role.", + "discriminator": { + "mapping": { + "ATLAS_DATA_LAKE": "#/components/schemas/CloudProviderAccessDataLakeFeatureUsage", + "ENCRYPTION_AT_REST": "#/components/schemas/CloudProviderAccessEncryptionAtRestFeatureUsage", + "EXPORT_SNAPSHOT": "#/components/schemas/CloudProviderAccessExportSnapshotFeatureUsage", + "PUSH_BASED_LOG_EXPORT": "#/components/schemas/CloudProviderAccessPushBasedLogExportFeatureUsage" + }, + "propertyName": "featureType" + }, + "properties": { + "featureType": { + "description": "Human-readable label that describes one MongoDB Cloud feature linked to this Amazon Web Services (AWS) Identity and Access Management (IAM) role.", + "enum": [ + "ATLAS_DATA_LAKE", + "ENCRYPTION_AT_REST", + "EXPORT_SNAPSHOT", + "PUSH_BASED_LOG_EXPORT" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CloudProviderAccessFeatureUsageDataLakeFeatureId": { + "description": "Identifying characteristics about the data lake linked to this Amazon Web Services (AWS) Identity and Access Management (IAM) role.", + "properties": { + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies your project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Human-readable label that identifies the data lake.", + "type": "string" + } + }, + "type": "object" + }, + "CloudProviderAccessFeatureUsageExportSnapshotFeatureId": { + "description": "Identifying characteristics about the Amazon Web Services (AWS) Simple Storage Service (S3) export bucket linked to this AWS Identity and Access Management (IAM) role.", + "properties": { + "exportBucketId": { + "description": "Unique 24-hexadecimal digit string that identifies the AWS S3 bucket to which you export your snapshots.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies your project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CloudProviderAccessFeatureUsagePushBasedLogExportFeatureId": { + "description": "Identifying characteristics about the Amazon Web Services (AWS) Simple Storage Service (S3) export bucket linked to this AWS Identity and Access Management (IAM) role.", + "properties": { + "bucketName": { + "description": "Name of the AWS S3 bucket to which your logs will be exported to.", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies your project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CloudProviderAccessPushBasedLogExportFeatureUsage": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudProviderAccessFeatureUsage" + }, + { + "properties": { + "featureId": { + "$ref": "#/components/schemas/CloudProviderAccessFeatureUsagePushBasedLogExportFeatureId" + } + }, + "type": "object" + } + ], + "description": "Details that describe the Amazon Web Services (AWS) Simple Storage Service (S3) export buckets linked to this AWS Identity and Access Management (IAM) role.", + "type": "object" + }, + "CloudProviderAccessRole": { + "description": "Cloud provider access role.", + "discriminator": { + "mapping": { + "AWS": "#/components/schemas/CloudProviderAccessAWSIAMRole", + "AZURE": "#/components/schemas/CloudProviderAccessAzureServicePrincipal" + }, + "propertyName": "providerName" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/CloudProviderAccessAWSIAMRole" + }, + { + "$ref": "#/components/schemas/CloudProviderAccessAzureServicePrincipal" + } + ], + "properties": { + "providerName": { + "description": "Human-readable label that identifies the cloud provider of the role.", + "enum": [ + "AWS", + "AZURE" + ], + "type": "string" + } + }, + "required": [ + "providerName" + ], + "type": "object" + }, + "CloudProviderAccessRoles": { + "properties": { + "awsIamRoles": { + "description": "List that contains the Amazon Web Services (AWS) IAM roles registered and authorized with MongoDB Cloud.", + "items": { + "$ref": "#/components/schemas/CloudProviderAccessAWSIAMRole" + }, + "type": "array" + } + }, + "type": "object" + }, + "CloudProviderAzureAutoScaling": { + "description": "Range of instance sizes to which your cluster can scale.", + "properties": { + "compute": { + "$ref": "#/components/schemas/AzureComputeAutoScalingRules" + } + }, + "type": "object" + }, + "CloudProviderContainer": { + "description": "Collection of settings that configures the network container for a virtual private connection on Amazon Web Services.", + "discriminator": { + "mapping": { + "AWS": "#/components/schemas/AWSCloudProviderContainer", + "AZURE": "#/components/schemas/AzureCloudProviderContainer", + "GCP": "#/components/schemas/GCPCloudProviderContainer" + }, + "propertyName": "providerName" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/AzureCloudProviderContainer" + }, + { + "$ref": "#/components/schemas/GCPCloudProviderContainer" + }, + { + "$ref": "#/components/schemas/AWSCloudProviderContainer" + } + ], + "properties": { + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the network peering container.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "providerName": { + "description": "Cloud service provider that serves the requested network peering containers.", + "enum": [ + "AWS", + "GCP", + "AZURE", + "TENANT", + "SERVERLESS" + ], + "type": "string" + }, + "provisioned": { + "description": "Flag that indicates whether MongoDB Cloud clusters exist in the specified network peering container.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, + "CloudProviderEndpointServiceRequest": { + "properties": { + "providerName": { + "description": "Human-readable label that identifies the cloud service provider for which you want to create the private endpoint service.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "type": "string", + "writeOnly": true + }, + "region": { + "description": "Cloud provider region in which you want to create the private endpoint service. Regions accepted as values differ for [Amazon Web Services](https://docs.atlas.mongodb.com/reference/amazon-aws/), [Google Cloud Platform](https://docs.atlas.mongodb.com/reference/google-gcp/), and [Microsoft Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).", + "type": "string", + "writeOnly": true + } + }, + "required": [ + "providerName", + "region" + ], + "type": "object" + }, + "CloudProviderGCPAutoScaling": { + "description": "Range of instance sizes to which your cluster can scale.", + "properties": { + "compute": { + "$ref": "#/components/schemas/GCPComputeAutoScaling" + } + }, + "type": "object" + }, + "CloudProviderRegions": { + "properties": { + "instanceSizes": { + "description": "List of instances sizes that this cloud provider supports.", + "items": { + "$ref": "#/components/schemas/ClusterCloudProviderInstanceSize" + }, + "readOnly": true, + "type": "array" + }, + "provider": { + "description": "Human-readable label that identifies the Cloud provider.", + "enum": [ + "AWS", + "GCP", + "AZURE" + ], + "type": "string" + } + }, + "type": "object" + }, + "CloudRegionConfig": { + "description": "Cloud service provider on which MongoDB Cloud provisions the hosts.", + "discriminator": { + "mapping": { + "AWS": "#/components/schemas/AWSRegionConfig", + "AZURE": "#/components/schemas/AzureRegionConfig", + "GCP": "#/components/schemas/GCPRegionConfig", + "TENANT": "#/components/schemas/TenantRegionConfig" + }, + "propertyName": "providerName" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/AWSRegionConfig" + }, + { + "$ref": "#/components/schemas/AzureRegionConfig" + }, + { + "$ref": "#/components/schemas/GCPRegionConfig" + }, + { + "$ref": "#/components/schemas/TenantRegionConfig" + } + ], + "properties": { + "electableSpecs": { + "$ref": "#/components/schemas/HardwareSpec" + }, + "priority": { + "description": "Precedence is given to this region when a primary election occurs. If your **regionConfigs** has only **readOnlySpecs**, **analyticsSpecs**, or both, set this value to `0`. If you have multiple **regionConfigs** objects (your cluster is multi-region or multi-cloud), they must have priorities in descending order. The highest priority is `7`.\n\n**Example:** If you have three regions, their priorities would be `7`, `6`, and `5` respectively. If you added two more regions for supporting electable nodes, the priorities of those regions would be `4` and `3` respectively.", + "format": "int32", + "maximum": 7, + "minimum": 0, + "type": "integer" + }, + "providerName": { + "description": "Cloud service provider on which MongoDB Cloud provisions the hosts. Set dedicated clusters to `AWS`, `GCP`, `AZURE` or `TENANT`.", + "enum": [ + "AWS", + "AZURE", + "GCP", + "TENANT" + ], + "type": "string" + }, + "regionName": { + "description": "Physical location of your MongoDB cluster nodes. The region you choose can affect network latency for clients accessing your databases. The region name is only returned in the response for single-region clusters. When MongoDB Cloud deploys a dedicated cluster, it checks if a VPC or VPC connection exists for that provider and region. If not, MongoDB Cloud creates them as part of the deployment. It assigns the VPC a Classless Inter-Domain Routing (CIDR) block. To limit a new VPC peering connection to one Classless Inter-Domain Routing (CIDR) block and region, create the connection first. Deploy the cluster after the connection starts. GCP Clusters and Multi-region clusters require one VPC peering connection for each region. MongoDB nodes can use only the peering connection that resides in the same region as the nodes to communicate with the peered VPC.", + "oneOf": [ + { + "description": "Physical location where MongoDB Cloud deploys your AWS-hosted MongoDB cluster nodes. The region you choose can affect network latency for clients accessing your databases. When MongoDB Cloud deploys a dedicated cluster, it checks if a VPC or VPC connection exists for that provider and region. If not, MongoDB Cloud creates them as part of the deployment. MongoDB Cloud assigns the VPC a CIDR block. To limit a new VPC peering connection to one CIDR block and region, create the connection first. Deploy the cluster after the connection starts.", + "enum": [ + "US_GOV_WEST_1", + "US_GOV_EAST_1", + "US_EAST_1", + "US_EAST_2", + "US_WEST_1", + "US_WEST_2", + "CA_CENTRAL_1", + "EU_NORTH_1", + "EU_WEST_1", + "EU_WEST_2", + "EU_WEST_3", + "EU_CENTRAL_1", + "EU_CENTRAL_2", + "AP_EAST_1", + "AP_NORTHEAST_1", + "AP_NORTHEAST_2", + "AP_NORTHEAST_3", + "AP_SOUTHEAST_1", + "AP_SOUTHEAST_2", + "AP_SOUTHEAST_3", + "AP_SOUTHEAST_4", + "AP_SOUTH_1", + "AP_SOUTH_2", + "SA_EAST_1", + "CN_NORTH_1", + "CN_NORTHWEST_1", + "ME_SOUTH_1", + "ME_CENTRAL_1", + "AF_SOUTH_1", + "EU_SOUTH_1", + "EU_SOUTH_2", + "IL_CENTRAL_1", + "CA_WEST_1", + "GLOBAL" + ], + "title": "AWS Regions", + "type": "string" + }, + { + "description": "Microsoft Azure Regions.", + "enum": [ + "US_CENTRAL", + "US_EAST", + "US_EAST_2", + "US_NORTH_CENTRAL", + "US_WEST", + "US_SOUTH_CENTRAL", + "EUROPE_NORTH", + "EUROPE_WEST", + "US_WEST_CENTRAL", + "US_WEST_2", + "US_WEST_3", + "CANADA_EAST", + "CANADA_CENTRAL", + "BRAZIL_SOUTH", + "BRAZIL_SOUTHEAST", + "AUSTRALIA_CENTRAL", + "AUSTRALIA_CENTRAL_2", + "AUSTRALIA_EAST", + "AUSTRALIA_SOUTH_EAST", + "GERMANY_CENTRAL", + "GERMANY_NORTH_EAST", + "GERMANY_WEST_CENTRAL", + "GERMANY_NORTH", + "SWEDEN_CENTRAL", + "SWEDEN_SOUTH", + "SWITZERLAND_NORTH", + "SWITZERLAND_WEST", + "UK_SOUTH", + "UK_WEST", + "NORWAY_EAST", + "NORWAY_WEST", + "INDIA_CENTRAL", + "INDIA_SOUTH", + "INDIA_WEST", + "CHINA_EAST", + "CHINA_NORTH", + "ASIA_EAST", + "JAPAN_EAST", + "JAPAN_WEST", + "ASIA_SOUTH_EAST", + "KOREA_CENTRAL", + "KOREA_SOUTH", + "FRANCE_CENTRAL", + "FRANCE_SOUTH", + "SOUTH_AFRICA_NORTH", + "SOUTH_AFRICA_WEST", + "UAE_CENTRAL", + "UAE_NORTH", + "QATAR_CENTRAL" + ], + "title": "Azure Regions", + "type": "string" + }, + { + "description": "Google Compute Regions.", + "enum": [ + "EASTERN_US", + "GOV_EASTERN_US", + "US_EAST_4", + "GOV_US_EAST_4", + "US_EAST_5", + "GOV_US_EAST_5", + "US_WEST_2", + "GOV_US_WEST_2", + "US_WEST_3", + "GOV_US_WEST_3", + "US_WEST_4", + "GOV_US_WEST_4", + "US_SOUTH_1", + "GOV_US_SOUTH_1", + "CENTRAL_US", + "GOV_CENTRAL_US", + "WESTERN_US", + "GOV_WESTERN_US", + "NORTH_AMERICA_NORTHEAST_1", + "NORTH_AMERICA_NORTHEAST_2", + "SOUTH_AMERICA_EAST_1", + "SOUTH_AMERICA_WEST_1", + "WESTERN_EUROPE", + "EUROPE_NORTH_1", + "EUROPE_WEST_2", + "EUROPE_WEST_3", + "EUROPE_WEST_4", + "EUROPE_WEST_6", + "EUROPE_WEST_8", + "EUROPE_WEST_9", + "EUROPE_WEST_10", + "EUROPE_WEST_12", + "EUROPE_SOUTHWEST_1", + "EUROPE_CENTRAL_2", + "MIDDLE_EAST_CENTRAL_1", + "MIDDLE_EAST_CENTRAL_2", + "MIDDLE_EAST_WEST_1", + "AUSTRALIA_SOUTHEAST_1", + "AUSTRALIA_SOUTHEAST_2", + "EASTERN_ASIA_PACIFIC", + "NORTHEASTERN_ASIA_PACIFIC", + "SOUTHEASTERN_ASIA_PACIFIC", + "ASIA_EAST_2", + "ASIA_NORTHEAST_2", + "ASIA_NORTHEAST_3", + "ASIA_SOUTH_1", + "ASIA_SOUTH_2", + "ASIA_SOUTHEAST_2" + ], + "title": "GCP Regions", + "type": "string" + } + ], + "type": "object" + } + }, + "title": "Cloud Service Provider Settings for Multi-Cloud Clusters", + "type": "object" + }, + "CloudRegionConfig20250101": { + "description": "Cloud service provider on which MongoDB Cloud provisions the hosts.", + "discriminator": { + "mapping": { + "AWS": "#/components/schemas/AWSRegionConfig20250101", + "AZURE": "#/components/schemas/AzureRegionConfig20250101", + "GCP": "#/components/schemas/GCPRegionConfig20250101", + "TENANT": "#/components/schemas/TenantRegionConfig20250101" + }, + "propertyName": "providerName" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/AWSRegionConfig20250101" + }, + { + "$ref": "#/components/schemas/AzureRegionConfig20250101" + }, + { + "$ref": "#/components/schemas/GCPRegionConfig20250101" + }, + { + "$ref": "#/components/schemas/TenantRegionConfig20250101" + } + ], + "properties": { + "electableSpecs": { + "$ref": "#/components/schemas/HardwareSpec20250101" + }, + "priority": { + "description": "Precedence is given to this region when a primary election occurs. If your **regionConfigs** has only **readOnlySpecs**, **analyticsSpecs**, or both, set this value to `0`. If you have multiple **regionConfigs** objects (your cluster is multi-region or multi-cloud), they must have priorities in descending order. The highest priority is `7`.\n\n**Example:** If you have three regions, their priorities would be `7`, `6`, and `5` respectively. If you added two more regions for supporting electable nodes, the priorities of those regions would be `4` and `3` respectively.", + "format": "int32", + "maximum": 7, + "minimum": 0, + "type": "integer" + }, + "providerName": { + "description": "Cloud service provider on which MongoDB Cloud provisions the hosts. Set dedicated clusters to `AWS`, `GCP`, `AZURE` or `TENANT`.", + "enum": [ + "AWS", + "AZURE", + "GCP", + "TENANT" + ], + "type": "string" + }, + "regionName": { + "description": "Physical location of your MongoDB cluster nodes. The region you choose can affect network latency for clients accessing your databases. The region name is only returned in the response for single-region clusters. When MongoDB Cloud deploys a dedicated cluster, it checks if a VPC or VPC connection exists for that provider and region. If not, MongoDB Cloud creates them as part of the deployment. It assigns the VPC a Classless Inter-Domain Routing (CIDR) block. To limit a new VPC peering connection to one Classless Inter-Domain Routing (CIDR) block and region, create the connection first. Deploy the cluster after the connection starts. GCP Clusters and Multi-region clusters require one VPC peering connection for each region. MongoDB nodes can use only the peering connection that resides in the same region as the nodes to communicate with the peered VPC.", + "oneOf": [ + { + "description": "Physical location where MongoDB Cloud deploys your AWS-hosted MongoDB cluster nodes. The region you choose can affect network latency for clients accessing your databases. When MongoDB Cloud deploys a dedicated cluster, it checks if a VPC or VPC connection exists for that provider and region. If not, MongoDB Cloud creates them as part of the deployment. MongoDB Cloud assigns the VPC a CIDR block. To limit a new VPC peering connection to one CIDR block and region, create the connection first. Deploy the cluster after the connection starts.", + "enum": [ + "US_GOV_WEST_1", + "US_GOV_EAST_1", + "US_EAST_1", + "US_EAST_2", + "US_WEST_1", + "US_WEST_2", + "CA_CENTRAL_1", + "EU_NORTH_1", + "EU_WEST_1", + "EU_WEST_2", + "EU_WEST_3", + "EU_CENTRAL_1", + "EU_CENTRAL_2", + "AP_EAST_1", + "AP_NORTHEAST_1", + "AP_NORTHEAST_2", + "AP_NORTHEAST_3", + "AP_SOUTHEAST_1", + "AP_SOUTHEAST_2", + "AP_SOUTHEAST_3", + "AP_SOUTHEAST_4", + "AP_SOUTH_1", + "AP_SOUTH_2", + "SA_EAST_1", + "CN_NORTH_1", + "CN_NORTHWEST_1", + "ME_SOUTH_1", + "ME_CENTRAL_1", + "AF_SOUTH_1", + "EU_SOUTH_1", + "EU_SOUTH_2", + "IL_CENTRAL_1", + "CA_WEST_1", + "GLOBAL" + ], + "title": "AWS Regions", + "type": "string" + }, + { + "description": "Microsoft Azure Regions.", + "enum": [ + "US_CENTRAL", + "US_EAST", + "US_EAST_2", + "US_NORTH_CENTRAL", + "US_WEST", + "US_SOUTH_CENTRAL", + "EUROPE_NORTH", + "EUROPE_WEST", + "US_WEST_CENTRAL", + "US_WEST_2", + "US_WEST_3", + "CANADA_EAST", + "CANADA_CENTRAL", + "BRAZIL_SOUTH", + "BRAZIL_SOUTHEAST", + "AUSTRALIA_CENTRAL", + "AUSTRALIA_CENTRAL_2", + "AUSTRALIA_EAST", + "AUSTRALIA_SOUTH_EAST", + "GERMANY_CENTRAL", + "GERMANY_NORTH_EAST", + "GERMANY_WEST_CENTRAL", + "GERMANY_NORTH", + "SWEDEN_CENTRAL", + "SWEDEN_SOUTH", + "SWITZERLAND_NORTH", + "SWITZERLAND_WEST", + "UK_SOUTH", + "UK_WEST", + "NORWAY_EAST", + "NORWAY_WEST", + "INDIA_CENTRAL", + "INDIA_SOUTH", + "INDIA_WEST", + "CHINA_EAST", + "CHINA_NORTH", + "ASIA_EAST", + "JAPAN_EAST", + "JAPAN_WEST", + "ASIA_SOUTH_EAST", + "KOREA_CENTRAL", + "KOREA_SOUTH", + "FRANCE_CENTRAL", + "FRANCE_SOUTH", + "SOUTH_AFRICA_NORTH", + "SOUTH_AFRICA_WEST", + "UAE_CENTRAL", + "UAE_NORTH", + "QATAR_CENTRAL" + ], + "title": "Azure Regions", + "type": "string" + }, + { + "description": "Google Compute Regions.", + "enum": [ + "EASTERN_US", + "GOV_EASTERN_US", + "US_EAST_4", + "GOV_US_EAST_4", + "US_EAST_5", + "GOV_US_EAST_5", + "US_WEST_2", + "GOV_US_WEST_2", + "US_WEST_3", + "GOV_US_WEST_3", + "US_WEST_4", + "GOV_US_WEST_4", + "US_SOUTH_1", + "GOV_US_SOUTH_1", + "CENTRAL_US", + "GOV_CENTRAL_US", + "WESTERN_US", + "GOV_WESTERN_US", + "NORTH_AMERICA_NORTHEAST_1", + "NORTH_AMERICA_NORTHEAST_2", + "SOUTH_AMERICA_EAST_1", + "SOUTH_AMERICA_WEST_1", + "WESTERN_EUROPE", + "EUROPE_NORTH_1", + "EUROPE_WEST_2", + "EUROPE_WEST_3", + "EUROPE_WEST_4", + "EUROPE_WEST_6", + "EUROPE_WEST_8", + "EUROPE_WEST_9", + "EUROPE_WEST_10", + "EUROPE_WEST_12", + "EUROPE_SOUTHWEST_1", + "EUROPE_CENTRAL_2", + "MIDDLE_EAST_CENTRAL_1", + "MIDDLE_EAST_CENTRAL_2", + "MIDDLE_EAST_WEST_1", + "AUSTRALIA_SOUTHEAST_1", + "AUSTRALIA_SOUTHEAST_2", + "EASTERN_ASIA_PACIFIC", + "NORTHEASTERN_ASIA_PACIFIC", + "SOUTHEASTERN_ASIA_PACIFIC", + "ASIA_EAST_2", + "ASIA_NORTHEAST_2", + "ASIA_NORTHEAST_3", + "ASIA_SOUTH_1", + "ASIA_SOUTH_2", + "ASIA_SOUTHEAST_2" + ], + "title": "GCP Regions", + "type": "string" + } + ], + "type": "object" + } + }, + "title": "Cloud Service Provider Settings", + "type": "object" + }, + "CloudSearchMetrics": { + "properties": { + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hardwareMetrics": { + "description": "List that contains all host compute, memory, and storage utilization dedicated to Atlas Search when MongoDB Atlas received this request.", + "items": { + "$ref": "#/components/schemas/FTSMetric" + }, + "readOnly": true, + "type": "array" + }, + "indexMetrics": { + "description": "List that contains all performance and utilization measurements that Atlas Search index performed by the time MongoDB Atlas received this request.", + "items": { + "$ref": "#/components/schemas/FTSMetric" + }, + "readOnly": true, + "type": "array" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "processId": { + "description": "Hostname and port that identifies the process.", + "example": "mongodb.example.com:27017", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?(\\:[0-9]{4,5})$", + "readOnly": true, + "type": "string" + }, + "statusMetrics": { + "description": "List that contains all available Atlas Search status metrics when MongoDB Atlas received this request.", + "items": { + "$ref": "#/components/schemas/FTSMetric" + }, + "readOnly": true, + "type": "array" + } + }, + "required": [ + "groupId", + "processId" + ], + "type": "object" + }, + "ClusterAlertConfigViewForNdsGroup": { + "description": "Cluster alert configuration allows to select which conditions of mongod cluster which trigger alerts and how users are notified.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ClusterEventTypeViewAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "List of rules that determine whether MongoDB Cloud checks an object for the alert configuration. You can filter using the matchers array if the **eventTypeName** specifies an event for a host, replica set, or sharded cluster.", + "items": { + "$ref": "#/components/schemas/ClusterMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "Cluster Alert Configuration", + "type": "object" + }, + "ClusterAlertView": { + "description": "Cluster alert notifies different activities and conditions about cluster of mongod hosts.", + "properties": { + "acknowledgedUntil": { + "description": "Date and time until which this alert has been acknowledged. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.\n\n- To acknowledge this alert forever, set the parameter value to 100 years in the future.\n\n- To unacknowledge a previously acknowledged alert, do not set this parameter value.", + "format": "date-time", + "type": "string" + }, + "acknowledgementComment": { + "description": "Comment that a MongoDB Cloud user submitted when acknowledging the alert.", + "example": "Expiration on 3/19. Silencing for 7days.", + "maxLength": 200, + "type": "string" + }, + "acknowledgingUsername": { + "description": "MongoDB Cloud username of the person who acknowledged the alert. The response returns this parameter if a MongoDB Cloud user previously acknowledged this alert.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration that sets this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster to which this alert applies. This resource returns this parameter for alerts of events impacting backups, replica sets, or sharded clusters.", + "example": "cluster1", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ClusterEventTypeViewAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastNotified": { + "description": "Date and time that any notifications were last sent for this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if MongoDB Cloud has sent notifications for this alert.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal character string that identifies the organization that owns the project to which this alert applies.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "resolved": { + "description": "Date and time that this alert changed to `\"status\" : \"CLOSED\"`. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter once `\"status\" : \"CLOSED\"`.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of this alert at the time you requested its details.", + "enum": [ + "CANCELLED", + "CLOSED", + "OPEN", + "TRACKING" + ], + "example": "OPEN", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Date and time when someone last updated this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "alertConfigId", + "created", + "eventTypeName", + "id", + "status", + "updated" + ], + "title": "Cluster Alerts", + "type": "object" + }, + "ClusterAutoScalingSettings": { + "description": "Range of instance sizes to which your cluster can scale.", + "externalDocs": { + "description": "Cluster Auto-Scaling", + "url": "https://docs.atlas.mongodb.com/cluster-autoscaling/" + }, + "properties": { + "compute": { + "$ref": "#/components/schemas/ClusterComputeAutoScaling" + }, + "diskGBEnabled": { + "description": "Flag that indicates whether someone enabled disk auto-scaling for this cluster.", + "type": "boolean" + } + }, + "title": "Automatic Cluster Scaling Settings", + "type": "object" + }, + "ClusterCloudProviderInstanceSize": { + "properties": { + "availableRegions": { + "description": "List of regions that this cloud provider supports for this instance size.", + "items": { + "$ref": "#/components/schemas/AvailableCloudProviderRegion" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable label that identifies the instance size or cluster tier.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ClusterComputeAutoScaling": { + "description": "Collection of settings that configures how a cluster might scale its cluster tier and whether the cluster can scale down. Cluster tier auto-scaling is unavailable for clusters using Low CPU or NVME storage classes.", + "properties": { + "enabled": { + "description": "Flag that indicates whether cluster tier auto-scaling is enabled. Set to `true` to enable cluster tier auto-scaling. If enabled, you must specify a value for **providerSettings.autoScaling.compute.maxInstanceSize** also. Set to `false` to disable cluster tier auto-scaling.", + "type": "boolean" + }, + "scaleDownEnabled": { + "description": "Flag that indicates whether the cluster tier can scale down. This is required if **autoScaling.compute.enabled** is `true`. If you enable this option, specify a value for **providerSettings.autoScaling.compute.minInstanceSize**.", + "type": "boolean" + } + }, + "type": "object" + }, + "ClusterConnectionStrings": { + "description": "Collection of Uniform Resource Locators that point to the MongoDB database.", + "externalDocs": { + "description": "Connection string URI format.", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "properties": { + "awsPrivateLink": { + "additionalProperties": { + "description": "Private endpoint-aware connection strings that use AWS-hosted clusters with Amazon Web Services (AWS) PrivateLink. Each key identifies an Amazon Web Services (AWS) interface endpoint. Each value identifies the related `mongodb://` connection string that you use to connect to MongoDB Cloud through the interface endpoint that the key names.", + "externalDocs": { + "description": "Network Peering Connection", + "url": "https://docs.atlas.mongodb.com/security-vpc-peering/#std-label-vpc-peering/" + }, + "readOnly": true, + "type": "string" + }, + "description": "Private endpoint-aware connection strings that use AWS-hosted clusters with Amazon Web Services (AWS) PrivateLink. Each key identifies an Amazon Web Services (AWS) interface endpoint. Each value identifies the related `mongodb://` connection string that you use to connect to MongoDB Cloud through the interface endpoint that the key names.", + "externalDocs": { + "description": "Network Peering Connection", + "url": "https://docs.atlas.mongodb.com/security-vpc-peering/#std-label-vpc-peering/" + }, + "readOnly": true, + "type": "object" + }, + "awsPrivateLinkSrv": { + "additionalProperties": { + "description": "Private endpoint-aware connection strings that use AWS-hosted clusters with Amazon Web Services (AWS) PrivateLink. Each key identifies an Amazon Web Services (AWS) interface endpoint. Each value identifies the related `mongodb://` connection string that you use to connect to Atlas through the interface endpoint that the key names.", + "externalDocs": { + "description": "Network Peering Connection", + "url": "https://docs.atlas.mongodb.com/security-vpc-peering/#std-label-vpc-peering/" + }, + "readOnly": true, + "type": "string" + }, + "description": "Private endpoint-aware connection strings that use AWS-hosted clusters with Amazon Web Services (AWS) PrivateLink. Each key identifies an Amazon Web Services (AWS) interface endpoint. Each value identifies the related `mongodb://` connection string that you use to connect to Atlas through the interface endpoint that the key names.", + "externalDocs": { + "description": "Network Peering Connection", + "url": "https://docs.atlas.mongodb.com/security-vpc-peering/#std-label-vpc-peering/" + }, + "readOnly": true, + "type": "object" + }, + "private": { + "description": "Network peering connection strings for each interface Virtual Private Cloud (VPC) endpoint that you configured to connect to this cluster. This connection string uses the `mongodb+srv://` protocol. The resource returns this parameter once someone creates a network peering connection to this cluster. This protocol tells the application to look up the host seed list in the Domain Name System (DNS). This list synchronizes with the nodes in a cluster. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to append the seed list or change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn't, use connectionStrings.private. For Amazon Web Services (AWS) clusters, this resource returns this parameter only if you enable custom DNS.", + "externalDocs": { + "description": "Network Peering Connection", + "url": "https://docs.atlas.mongodb.com/security-vpc-peering/#std-label-vpc-peering/" + }, + "readOnly": true, + "type": "string" + }, + "privateEndpoint": { + "description": "List of private endpoint-aware connection strings that you can use to connect to this cluster through a private endpoint. This parameter returns only if you deployed a private endpoint to all regions to which you deployed this clusters' nodes.", + "items": { + "$ref": "#/components/schemas/ClusterDescriptionConnectionStringsPrivateEndpoint" + }, + "readOnly": true, + "type": "array" + }, + "privateSrv": { + "description": "Network peering connection strings for each interface Virtual Private Cloud (VPC) endpoint that you configured to connect to this cluster. This connection string uses the `mongodb+srv://` protocol. The resource returns this parameter when someone creates a network peering connection to this cluster. This protocol tells the application to look up the host seed list in the Domain Name System (DNS). This list synchronizes with the nodes in a cluster. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to append the seed list or change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your driver supports it. If it doesn't, use `connectionStrings.private`. For Amazon Web Services (AWS) clusters, this parameter returns only if you [enable custom DNS](https://docs.atlas.mongodb.com/reference/api/aws-custom-dns-update/).", + "externalDocs": { + "description": "Network Peering Connection", + "url": "https://docs.atlas.mongodb.com/security-vpc-peering/#std-label-vpc-peering/" + }, + "readOnly": true, + "type": "string" + }, + "standard": { + "description": "Public connection string that you can use to connect to this cluster. This connection string uses the `mongodb://` protocol.", + "externalDocs": { + "description": "Connection String URI Format", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "readOnly": true, + "type": "string" + }, + "standardSrv": { + "description": "Public connection string that you can use to connect to this cluster. This connection string uses the `mongodb+srv://` protocol.", + "externalDocs": { + "description": "Connection String URI Format", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "title": "Cluster Connection Strings", + "type": "object" + }, + "ClusterDescription20250101": { + "properties": { + "acceptDataRisksAndForceReplicaSetReconfig": { + "description": "If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set **acceptDataRisksAndForceReplicaSetReconfig** to the current date.", + "externalDocs": { + "description": "Reconfiguring a Replica Set during a regional outage", + "url": "https://dochub.mongodb.org/core/regional-outage-reconfigure-replica-set" + }, + "format": "date-time", + "type": "string" + }, + "backupEnabled": { + "default": false, + "description": "Flag that indicates whether the cluster can perform backups. If set to `true`, the cluster can perform backups. You must set this value to `true` for NVMe clusters. Backup uses [Cloud Backups](https://docs.atlas.mongodb.com/backup/cloud-backup/overview/) for dedicated clusters and [Shared Cluster Backups](https://docs.atlas.mongodb.com/backup/shared-tier/overview/) for tenant clusters. If set to `false`, the cluster doesn't use backups.", + "type": "boolean" + }, + "biConnector": { + "$ref": "#/components/schemas/BiConnector" + }, + "clusterType": { + "description": "Configuration of nodes that comprise the cluster.", + "enum": [ + "REPLICASET", + "SHARDED", + "GEOSHARDED" + ], + "type": "string" + }, + "connectionStrings": { + "$ref": "#/components/schemas/ClusterConnectionStrings" + }, + "createDate": { + "description": "Date and time when MongoDB Cloud created this cluster. This parameter expresses its value in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "diskWarmingMode": { + "default": "FULLY_WARMED", + "description": "Disk warming mode selection.", + "enum": [ + "FULLY_WARMED", + "VISIBLE_EARLIER" + ], + "externalDocs": { + "description": "Reduce Secondary Disk Warming Impact", + "url": "https://docs.atlas.mongodb.com/reference/replica-set-tags/#reduce-secondary-disk-warming-impact" + }, + "type": "string" + }, + "encryptionAtRestProvider": { + "description": "Cloud service provider that manages your customer keys to provide an additional layer of encryption at rest for the cluster. To enable customer key management for encryption at rest, the cluster **replicationSpecs[n].regionConfigs[m].{type}Specs.instanceSize** setting must be `M10` or higher and `\"backupEnabled\" : false` or omitted entirely.", + "enum": [ + "NONE", + "AWS", + "AZURE", + "GCP" + ], + "externalDocs": { + "description": "Encryption at Rest using Customer Key Management", + "url": "https://www.mongodb.com/docs/atlas/security-kms-encryption/" + }, + "type": "string" + }, + "globalClusterSelfManagedSharding": { + "description": "Set this field to configure the Sharding Management Mode when creating a new Global Cluster.\n\nWhen set to false, the management mode is set to Atlas-Managed Sharding. This mode fully manages the sharding of your Global Cluster and is built to provide a seamless deployment experience.\n\nWhen set to true, the management mode is set to Self-Managed Sharding. This mode leaves the management of shards in your hands and is built to provide an advanced and flexible deployment experience.\n\nThis setting cannot be changed once the cluster is deployed.", + "externalDocs": { + "description": "Creating a Global Cluster", + "url": "https://dochub.mongodb.org/core/global-cluster-management" + }, + "type": "boolean" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the cluster.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "labels": { + "deprecated": true, + "description": "Collection of key-value pairs between 1 to 255 characters in length that tag and categorize the cluster. The MongoDB Cloud console doesn't display your labels.\n\nCluster labels are deprecated and will be removed in a future release. We strongly recommend that you use [resource tags](https://dochub.mongodb.org/core/add-cluster-tag-atlas) instead.", + "items": { + "$ref": "#/components/schemas/ComponentLabel" + }, + "type": "array" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "mongoDBMajorVersion": { + "description": "MongoDB major version of the cluster.\n\nOn creation: Choose from the available versions of MongoDB, or leave unspecified for the current recommended default in the MongoDB Cloud platform. The recommended version is a recent Long Term Support version. The default is not guaranteed to be the most recently released version throughout the entire release cycle. For versions available in a specific project, see the linked documentation or use the API endpoint for [project LTS versions endpoint](#tag/Projects/operation/getProjectLTSVersions).\n\n On update: Increase version only by 1 major version at a time. If the cluster is pinned to a MongoDB feature compatibility version exactly one major version below the current MongoDB version, the MongoDB version can be downgraded to the previous major version.", + "externalDocs": { + "description": "Available MongoDB Versions in Atlas", + "url": "https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-" + }, + "type": "string" + }, + "mongoDBVersion": { + "description": "Version of MongoDB that the cluster runs.", + "pattern": "([\\d]+\\.[\\d]+\\.[\\d]+)", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Human-readable label that identifies the cluster.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "type": "string" + }, + "paused": { + "description": "Flag that indicates whether the cluster is paused.", + "type": "boolean" + }, + "pitEnabled": { + "description": "Flag that indicates whether the cluster uses continuous cloud backups.", + "externalDocs": { + "description": "Continuous Cloud Backups", + "url": "https://docs.atlas.mongodb.com/backup/cloud-backup/overview/" + }, + "type": "boolean" + }, + "replicationSpecs": { + "description": "List of settings that configure your cluster regions. This array has one object per shard representing node configurations in each shard. For replica sets there is only one object representing node configurations.", + "items": { + "$ref": "#/components/schemas/ReplicationSpec20250101" + }, + "type": "array" + }, + "rootCertType": { + "default": "ISRGROOTX1", + "description": "Root Certificate Authority that MongoDB Cloud cluster uses. MongoDB Cloud supports Internet Security Research Group.", + "enum": [ + "ISRGROOTX1" + ], + "type": "string" + }, + "stateName": { + "description": "Human-readable label that indicates the current operating condition of this cluster.", + "enum": [ + "IDLE", + "CREATING", + "UPDATING", + "DELETING", + "REPAIRING" + ], + "readOnly": true, + "type": "string" + }, + "tags": { + "description": "List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster.", + "externalDocs": { + "description": "Resource Tags", + "url": "https://dochub.mongodb.org/core/add-cluster-tag-atlas" + }, + "items": { + "$ref": "#/components/schemas/ResourceTag" + }, + "type": "array" + }, + "terminationProtectionEnabled": { + "default": false, + "description": "Flag that indicates whether termination protection is enabled on the cluster. If set to `true`, MongoDB Cloud won't delete the cluster. If set to `false`, MongoDB Cloud will delete the cluster.", + "type": "boolean" + }, + "versionReleaseSystem": { + "default": "LTS", + "description": "Method by which the cluster maintains the MongoDB versions. If value is `CONTINUOUS`, you must not specify **mongoDBMajorVersion**.", + "enum": [ + "LTS", + "CONTINUOUS" + ], + "type": "string" + } + }, + "type": "object" + }, + "ClusterDescriptionConnectionStringsPrivateEndpoint": { + "description": "Private endpoint-aware connection string that you can use to connect to this cluster through a private endpoint.", + "externalDocs": { + "description": "Private Endpoint for Dedicated Cluster", + "url": "https://docs.atlas.mongodb.com/security-private-endpoint/" + }, + "properties": { + "connectionString": { + "description": "Private endpoint-aware connection string that uses the `mongodb://` protocol to connect to MongoDB Cloud through a private endpoint.", + "readOnly": true, + "type": "string" + }, + "endpoints": { + "description": "List that contains the private endpoints through which you connect to MongoDB Cloud when you use **connectionStrings.privateEndpoint[n].connectionString** or **connectionStrings.privateEndpoint[n].srvConnectionString**.", + "items": { + "$ref": "#/components/schemas/ClusterDescriptionConnectionStringsPrivateEndpointEndpoint" + }, + "readOnly": true, + "type": "array" + }, + "srvConnectionString": { + "description": "Private endpoint-aware connection string that uses the `mongodb+srv://` protocol to connect to MongoDB Cloud through a private endpoint. The `mongodb+srv` protocol tells the driver to look up the seed list of hosts in the Domain Name System (DNS). This list synchronizes with the nodes in a cluster. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to append the seed list or change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your application supports it. If it doesn't, use connectionStrings.privateEndpoint[n].connectionString.", + "readOnly": true, + "type": "string" + }, + "srvShardOptimizedConnectionString": { + "description": "Private endpoint-aware connection string optimized for sharded clusters that uses the `mongodb+srv://` protocol to connect to MongoDB Cloud through a private endpoint. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your application and Atlas cluster supports it. If it doesn't, use and consult the documentation for connectionStrings.privateEndpoint[n].srvConnectionString.", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "MongoDB process type to which your application connects. Use `MONGOD` for replica sets and `MONGOS` for sharded clusters.", + "enum": [ + "MONGOD", + "MONGOS" + ], + "readOnly": true, + "type": "string" + } + }, + "title": "Cluster Private Endpoint Connection String", + "type": "object" + }, + "ClusterDescriptionConnectionStringsPrivateEndpointEndpoint": { + "description": "Details of a private endpoint deployed for this cluster.", + "properties": { + "endpointId": { + "description": "Unique string that the cloud provider uses to identify the private endpoint.", + "readOnly": true, + "type": "string" + }, + "providerName": { + "description": "Cloud provider in which MongoDB Cloud deploys the private endpoint.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "readOnly": true, + "type": "string" + }, + "region": { + "description": "Region where the private endpoint is deployed.", + "readOnly": true, + "type": "string" + } + }, + "title": "Cluster Private Endpoint Connection Strings Endpoint", + "type": "object" + }, + "ClusterDescriptionProcessArgs": { + "properties": { + "chunkMigrationConcurrency": { + "description": "Number of threads on the source shard and the receiving shard for chunk migration. The number of threads should not exceed the half the total number of CPU cores in the sharded cluster.", + "externalDocs": { + "description": "This option corresponds to the `chunkMigrationConcurrency` `mongod` configuration file option.", + "url": "https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.chunkMigrationConcurrency" + }, + "format": "int32", + "type": "integer" + }, + "defaultReadConcern": { + "default": "available", + "description": "Default level of acknowledgment requested from MongoDB for read operations set for this cluster.\n\nMongoDB 4.4 clusters default to `available`. MongoDB 5.0 and later clusters default to `local`.", + "enum": [ + "local", + "available" + ], + "externalDocs": { + "description": "This option corresponds to the global default read concern.", + "url": "https://docs.mongodb.com/manual/reference/read-concern/" + }, + "type": "string" + }, + "defaultWriteConcern": { + "description": "Default level of acknowledgment requested from MongoDB for write operations when none is specified by the driver.", + "externalDocs": { + "description": "This option corresponds to the the implicit default write concern.", + "url": "https://docs.mongodb.com/manual/reference/write-concern/" + }, + "type": "string" + }, + "failIndexKeyTooLong": { + "default": true, + "deprecated": true, + "description": "Flag that indicates whether you can insert or update documents where all indexed entries don't exceed 1024 bytes. If you set this to false, [mongod](https://docs.mongodb.com/upcoming/reference/program/mongod/#mongodb-binary-bin.mongod) writes documents that exceed this limit but doesn't index them. This parameter has been removed as of [MongoDB 4.4](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.failIndexKeyTooLong).", + "externalDocs": { + "description": "This option corresponds to the `failIndexKeyTooLong` `mongod` configuration file option.", + "url": "https://docs.mongodb.com/upcoming/reference/parameters/#mongodb-parameter-param.failIndexKeyTooLong" + }, + "type": "boolean" + }, + "javascriptEnabled": { + "description": "Flag that indicates whether the cluster allows execution of operations that perform server-side executions of JavaScript.", + "externalDocs": { + "description": "This option corresponds to modifying the `security.javascriptEnabled` configuration file option for each `mongod` and `mongos` in the cluster.", + "url": "https://docs.mongodb.com/upcoming/reference/configuration-options/#mongodb-setting-security.javascriptEnabled" + }, + "type": "boolean" + }, + "minimumEnabledTlsProtocol": { + "description": "Minimum Transport Layer Security (TLS) version that the cluster accepts for incoming connections. Clusters using TLS 1.0 or 1.1 should consider setting TLS 1.2 as the minimum TLS protocol version.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2" + ], + "externalDocs": { + "description": "This option corresponds to the `net.ssl.disabledProtocols` `mongod` configuration file option.", + "url": "https://docs.mongodb.com/upcoming/reference/configuration-options/#mongodb-setting-net.ssl.disabledProtocols" + }, + "type": "string" + }, + "noTableScan": { + "description": "Flag that indicates whether the cluster disables executing any query that requires a collection scan to return results.", + "externalDocs": { + "description": "This option corresponds to the `notablescan` `mongod` configuration file option.", + "url": "https://docs.mongodb.com/upcoming/reference/parameters/#mongodb-parameter-param.notablescan" + }, + "type": "boolean" + }, + "oplogMinRetentionHours": { + "description": "Minimum retention window for cluster's oplog expressed in hours. A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.", + "externalDocs": { + "description": "This option corresponds to the `storage.oplogMinRetentionHours` `mongod` configuration file option.", + "url": "https://docs.mongodb.com/upcoming/reference/configuration-options/#mongodb-setting-storage.oplogMinRetentionHours" + }, + "format": "double", + "nullable": true, + "type": "number" + }, + "oplogSizeMB": { + "description": "Storage limit of cluster's oplog expressed in megabytes. A value of null indicates that the cluster uses the default oplog size that MongoDB Cloud calculates.", + "externalDocs": { + "description": "This option corresponds to the `replication.oplogSizeMB` `mongod` configuration file option.", + "url": "https://docs.mongodb.com/upcoming/reference/configuration-options/#mongodb-setting-replication.oplogSizeMB" + }, + "format": "int32", + "nullable": true, + "type": "integer" + }, + "queryStatsLogVerbosity": { + "description": "May be set to 1 (disabled) or 3 (enabled). When set to 3, Atlas will include redacted and anonymized $queryStats output in MongoDB logs. $queryStats output does not contain literals or field values. Enabling this setting might impact the performance of your cluster.", + "externalDocs": { + "description": "This option corresponds to the queryStats component for the logComponentVerbosity server parameter.", + "url": "https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.logComponentVerbosity" + }, + "format": "int32", + "type": "integer" + }, + "sampleRefreshIntervalBIConnector": { + "default": 0, + "description": "Interval in seconds at which the mongosqld process re-samples data to create its relational schema.", + "externalDocs": { + "description": "This option corresponds to the `sampleRefreshIntervalSecs` `mongosqld` option.", + "url": "https://docs.mongodb.com/bi-connector/current/reference/mongosqld/#std-option-mongosqld.--schemaRefreshIntervalSecs" + }, + "format": "int32", + "minimum": 0, + "type": "integer" + }, + "sampleSizeBIConnector": { + "description": "Number of documents per database to sample when gathering schema information.", + "externalDocs": { + "description": "This option corresponds to the `sampleSize` `mongosqld` option.", + "url": "https://docs.mongodb.com/bi-connector/current/reference/mongosqld/#std-option-mongosqld.--sampleSize" + }, + "format": "int32", + "minimum": 0, + "type": "integer" + }, + "transactionLifetimeLimitSeconds": { + "description": "Lifetime, in seconds, of multi-document transactions. Atlas considers the transactions that exceed this limit as expired and so aborts them through a periodic cleanup process.", + "externalDocs": { + "description": "This option corresponds to the `transactionLifetimeLimitSeconds` `mongod` configuration file option.", + "url": "https://www.mongodb.com/docs/upcoming/reference/parameters/#mongodb-parameter-param.transactionLifetimeLimitSeconds" + }, + "format": "int64", + "minimum": 1, + "type": "integer" + } + }, + "type": "object" + }, + "ClusterDescriptionProcessArgs20250101": { + "properties": { + "chunkMigrationConcurrency": { + "description": "Number of threads on the source shard and the receiving shard for chunk migration. The number of threads should not exceed the half the total number of CPU cores in the sharded cluster.", + "externalDocs": { + "description": "This option corresponds to the `chunkMigrationConcurrency` `mongod` configuration file option.", + "url": "https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.chunkMigrationConcurrency" + }, + "format": "int32", + "type": "integer" + }, + "defaultWriteConcern": { + "description": "Default level of acknowledgment requested from MongoDB for write operations when none is specified by the driver.", + "externalDocs": { + "description": "This option corresponds to the the implicit default write concern.", + "url": "https://docs.mongodb.com/manual/reference/write-concern/" + }, + "type": "string" + }, + "javascriptEnabled": { + "description": "Flag that indicates whether the cluster allows execution of operations that perform server-side executions of JavaScript.", + "externalDocs": { + "description": "This option corresponds to modifying the `security.javascriptEnabled` configuration file option for each `mongod` and `mongos` in the cluster.", + "url": "https://docs.mongodb.com/upcoming/reference/configuration-options/#mongodb-setting-security.javascriptEnabled" + }, + "type": "boolean" + }, + "minimumEnabledTlsProtocol": { + "description": "Minimum Transport Layer Security (TLS) version that the cluster accepts for incoming connections. Clusters using TLS 1.0 or 1.1 should consider setting TLS 1.2 as the minimum TLS protocol version.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2" + ], + "externalDocs": { + "description": "This option corresponds to the `net.ssl.disabledProtocols` `mongod` configuration file option.", + "url": "https://docs.mongodb.com/upcoming/reference/configuration-options/#mongodb-setting-net.ssl.disabledProtocols" + }, + "type": "string" + }, + "noTableScan": { + "description": "Flag that indicates whether the cluster disables executing any query that requires a collection scan to return results.", + "externalDocs": { + "description": "This option corresponds to the `notablescan` `mongod` configuration file option.", + "url": "https://docs.mongodb.com/upcoming/reference/parameters/#mongodb-parameter-param.notablescan" + }, + "type": "boolean" + }, + "oplogMinRetentionHours": { + "description": "Minimum retention window for cluster's oplog expressed in hours. A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.", + "externalDocs": { + "description": "This option corresponds to the `storage.oplogMinRetentionHours` `mongod` configuration file option.", + "url": "https://docs.mongodb.com/upcoming/reference/configuration-options/#mongodb-setting-storage.oplogMinRetentionHours" + }, + "format": "double", + "nullable": true, + "type": "number" + }, + "oplogSizeMB": { + "description": "Storage limit of cluster's oplog expressed in megabytes. A value of null indicates that the cluster uses the default oplog size that MongoDB Cloud calculates.", + "externalDocs": { + "description": "This option corresponds to the `replication.oplogSizeMB` `mongod` configuration file option.", + "url": "https://docs.mongodb.com/upcoming/reference/configuration-options/#mongodb-setting-replication.oplogSizeMB" + }, + "format": "int32", + "nullable": true, + "type": "integer" + }, + "queryStatsLogVerbosity": { + "description": "May be set to 1 (disabled) or 3 (enabled). When set to 3, Atlas will include redacted and anonymized $queryStats output in MongoDB logs. $queryStats output does not contain literals or field values. Enabling this setting might impact the performance of your cluster.", + "externalDocs": { + "description": "This option corresponds to the queryStats component for the logComponentVerbosity server parameter.", + "url": "https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.logComponentVerbosity" + }, + "format": "int32", + "type": "integer" + }, + "sampleRefreshIntervalBIConnector": { + "default": 0, + "description": "Interval in seconds at which the mongosqld process re-samples data to create its relational schema.", + "externalDocs": { + "description": "This option corresponds to the `sampleRefreshIntervalSecs` `mongosqld` option.", + "url": "https://docs.mongodb.com/bi-connector/current/reference/mongosqld/#std-option-mongosqld.--schemaRefreshIntervalSecs" + }, + "format": "int32", + "minimum": 0, + "type": "integer" + }, + "sampleSizeBIConnector": { + "description": "Number of documents per database to sample when gathering schema information.", + "externalDocs": { + "description": "This option corresponds to the `sampleSize` `mongosqld` option.", + "url": "https://docs.mongodb.com/bi-connector/current/reference/mongosqld/#std-option-mongosqld.--sampleSize" + }, + "format": "int32", + "minimum": 0, + "type": "integer" + }, + "transactionLifetimeLimitSeconds": { + "description": "Lifetime, in seconds, of multi-document transactions. Atlas considers the transactions that exceed this limit as expired and so aborts them through a periodic cleanup process.", + "externalDocs": { + "description": "This option corresponds to the `transactionLifetimeLimitSeconds` `mongod` configuration file option.", + "url": "https://www.mongodb.com/docs/upcoming/reference/parameters/#mongodb-parameter-param.transactionLifetimeLimitSeconds" + }, + "format": "int64", + "minimum": 1, + "type": "integer" + } + }, + "type": "object" + }, + "ClusterEventTypeViewAlertable": { + "description": "Event type that triggers an alert.", + "enum": [ + "CLUSTER_MONGOS_IS_MISSING" + ], + "example": "CLUSTER_MONGOS_IS_MISSING", + "title": "Cluster Event Types", + "type": "string" + }, + "ClusterEventTypeViewForNdsGroup": { + "description": "Unique identifier of event type.", + "enum": [ + "CLUSTER_MONGOS_IS_PRESENT", + "CLUSTER_MONGOS_IS_MISSING" + ], + "example": "CLUSTER_MONGOS_IS_PRESENT", + "title": "Cluster Event Types", + "type": "string" + }, + "ClusterEventViewForNdsGroup": { + "description": "Cluster event identifies different activities about cluster of mongod hosts.", + "properties": { + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ClusterEventTypeViewForNdsGroup" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "shardName": { + "description": "Human-readable label of the shard associated with the event.", + "example": "event-sh-01", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Cluster Events", + "type": "object" + }, + "ClusterFreeAutoScaling": { + "description": "Range of instance sizes to which your cluster can scale.", + "properties": { + "compute": { + "description": "Collection of settings that configures how a cluster might scale its cluster tier and whether the cluster can scale down.", + "title": "Tenant", + "type": "string" + } + }, + "type": "object" + }, + "ClusterFreeProviderSettings": { + "allOf": [ + { + "$ref": "#/components/schemas/ClusterProviderSettings" + }, + { + "properties": { + "autoScaling": { + "$ref": "#/components/schemas/ClusterFreeAutoScaling" + }, + "backingProviderName": { + "description": "Cloud service provider on which MongoDB Cloud provisioned the multi-tenant host. The resource returns this parameter when **providerSettings.providerName** is `TENANT` and **providerSetting.instanceSizeName** is `M0`, `M2` or `M5`.", + "enum": [ + "AWS", + "GCP", + "AZURE" + ], + "type": "string" + }, + "instanceSizeName": { + "description": "Cluster tier, with a default storage and memory capacity, that applies to all the data-bearing hosts in your cluster. You must set **providerSettings.providerName** to `TENANT` and specify the cloud service provider in **providerSettings.backingProviderName**.", + "enum": [ + "M0", + "M2", + "M5" + ], + "title": "Tenant Instance Sizes", + "type": "string" + }, + "regionName": { + "description": "Human-readable label that identifies the geographic location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. For a complete list of region names, see [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/#std-label-amazon-aws), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), and [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/). For multi-region clusters, see **replicationSpec.{region}**.", + "type": "string" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "ClusterIPAddresses": { + "description": "List of IP addresses in a cluster.", + "properties": { + "clusterName": { + "description": "Human-readable label that identifies the cluster.", + "readOnly": true, + "type": "string" + }, + "inbound": { + "description": "List of inbound IP addresses associated with the cluster. If your network allows outbound HTTP requests only to specific IP addresses, you must allow access to the following IP addresses so that your application can connect to your Atlas cluster.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "outbound": { + "description": "List of outbound IP addresses associated with the cluster. If your network allows inbound HTTP requests only from specific IP addresses, you must allow access from the following IP addresses so that your Atlas cluster can communicate with your webhooks and KMS.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "title": "Cluster IP Addresses", + "type": "object" + }, + "ClusterMatcher": { + "description": "Rules to apply when comparing an cluster against this alert configuration.", + "properties": { + "fieldName": { + "$ref": "#/components/schemas/ClusterMatcherField" + }, + "operator": { + "description": "Comparison operator to apply when checking the current metric value against **matcher[n].value**.", + "enum": [ + "EQUALS", + "CONTAINS", + "STARTS_WITH", + "ENDS_WITH", + "NOT_EQUALS", + "NOT_CONTAINS", + "REGEX" + ], + "type": "string" + }, + "value": { + "description": "Value to match or exceed using the specified **matchers.operator**.", + "example": "event-replica-set", + "type": "string" + } + }, + "required": [ + "fieldName", + "operator", + "value" + ], + "title": "Matchers", + "type": "object" + }, + "ClusterMatcherField": { + "description": "Name of the parameter in the target object that MongoDB Cloud checks. The parameter must match all rules for MongoDB Cloud to check for alert configurations.", + "enum": [ + "CLUSTER_NAME" + ], + "example": "CLUSTER_NAME", + "title": "Cluster Matcher Fields", + "type": "string" + }, + "ClusterOutageSimulation": { + "properties": { + "clusterName": { + "description": "Human-readable label that identifies the cluster that undergoes outage simulation.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project that contains the cluster to undergo outage simulation.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal character string that identifies the outage simulation.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "outageFilters": { + "description": "List of settings that specify the type of cluster outage simulation.", + "items": { + "$ref": "#/components/schemas/AtlasClusterOutageSimulationOutageFilter" + }, + "minItems": 1, + "type": "array" + }, + "startRequestDate": { + "description": "Date and time when MongoDB Cloud started the regional outage simulation.", + "example": "2022-01-01T00:00:00Z", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Phase of the outage simulation.\n\n| State | Indication |\n|-------------|------------|\n| `START_REQUESTED` | User has requested cluster outage simulation.|\n| `STARTING` | MongoDB Cloud is starting cluster outage simulation.|\n| `SIMULATING` | MongoDB Cloud is simulating cluster outage.|\n| `RECOVERY_REQUESTED` | User has requested recovery from the simulated outage.|\n| `RECOVERING` | MongoDB Cloud is recovering the cluster from the simulated outage.|\n| `COMPLETE` | MongoDB Cloud has completed the cluster outage simulation.|", + "enum": [ + "START_REQUESTED", + "STARTING", + "SIMULATING", + "RECOVERY_REQUESTED", + "RECOVERING", + "COMPLETE" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ClusterProviderSettings": { + "description": "Group of cloud provider settings that configure the provisioned MongoDB hosts.", + "discriminator": { + "mapping": { + "AWS": "#/components/schemas/AWSCloudProviderSettings", + "AZURE": "#/components/schemas/AzureCloudProviderSettings", + "GCP": "#/components/schemas/CloudGCPProviderSettings", + "TENANT": "#/components/schemas/ClusterFreeProviderSettings" + }, + "propertyName": "providerName" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/AWSCloudProviderSettings" + }, + { + "$ref": "#/components/schemas/AzureCloudProviderSettings" + }, + { + "$ref": "#/components/schemas/CloudGCPProviderSettings" + }, + { + "$ref": "#/components/schemas/ClusterFreeProviderSettings" + } + ], + "properties": { + "providerName": { + "type": "string" + } + }, + "required": [ + "providerName" + ], + "title": "Cloud Service Provider Settings for a Cluster", + "type": "object" + }, + "ClusterSearchIndex": { + "discriminator": { + "mapping": { + "search": "#/components/schemas/SearchIndex", + "vectorSearch": "#/components/schemas/VectorSearchIndex" + }, + "propertyName": "type" + }, + "properties": { + "collectionName": { + "description": "Human-readable label that identifies the collection that contains one or more Atlas Search indexes.", + "type": "string" + }, + "database": { + "description": "Human-readable label that identifies the database that contains the collection with one or more Atlas Search indexes.", + "type": "string" + }, + "indexID": { + "description": "Unique 24-hexadecimal digit string that identifies this Atlas Search index.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Human-readable label that identifies this index. Within each namespace, names of all indexes in the namespace must be unique.", + "type": "string" + }, + "status": { + "description": "Condition of the search index when you made this request.\n\n| Status | Index Condition |\n |---|---|\n | IN_PROGRESS | Atlas is building or re-building the index after an edit. |\n | STEADY | You can use this search index. |\n | FAILED | Atlas could not build the index. |\n | MIGRATING | Atlas is upgrading the underlying cluster tier and migrating indexes. |\n | PAUSED | The cluster is paused. |\n", + "enum": [ + "IN_PROGRESS", + "STEADY", + "FAILED", + "MIGRATING", + "STALE", + "PAUSED" + ], + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Type of the index. Default type is search.", + "enum": [ + "search", + "vectorSearch" + ], + "type": "string" + } + }, + "required": [ + "collectionName", + "database", + "name" + ], + "type": "object" + }, + "ClusterServerlessBackupOptions": { + "description": "Group of settings that configure serverless backup.", + "properties": { + "serverlessContinuousBackupEnabled": { + "default": true, + "description": "Flag that indicates whether the serverless instance uses **Serverless Continuous Backup**.\n If this parameter is `false`, the serverless instance uses **Basic Backup**.\n\n | Option | Description |\n |---|---|\n | Serverless Continuous Backup | Atlas takes incremental [snapshots](https://www.mongodb.com/docs/atlas/backup/cloud-backup/overview/#std-label-serverless-snapshots) of the data in your serverless instance every six hours and lets you restore the data from a selected point in time within the last 72 hours. Atlas also takes daily snapshots and retains these daily snapshots for 35 days. To learn more, see [Serverless Instance Costs](https://www.mongodb.com/docs/atlas/billing/serverless-instance-costs/#std-label-serverless-instance-costs). |\n | Basic Backup | Atlas takes incremental [snapshots](https://www.mongodb.com/docs/atlas/backup/cloud-backup/overview/#std-label-serverless-snapshots) of the data in your serverless instance every six hours and retains only the two most recent snapshots. You can use this option for free. |", + "type": "boolean" + } + }, + "title": "Serverless Backup Options", + "type": "object" + }, + "ClusterStatus": { + "properties": { + "changeStatus": { + "description": "State of cluster at the time of this request. Atlas returns **Applied** if it completed adding a user to, or removing a user from, your cluster. Atlas returns **Pending** if it's still making the requested user changes. When status is **Pending**, new users can't log in.", + "enum": [ + "PENDING", + "APPLIED" + ], + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "CollStatsRankedNamespacesView": { + "properties": { + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the request project.", + "readOnly": true, + "type": "string" + }, + "identifierId": { + "description": "Unique 24-hexadecimal digit string that identifies the request process.", + "readOnly": true, + "type": "string" + }, + "rankedNamespaces": { + "description": "Ordered list of the hottest namespaces, highest value first.", + "items": { + "description": "A single namespace.", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "Collation": { + "description": "One or more settings that specify language-specific rules to compare strings within this index.", + "externalDocs": { + "description": "Collation Options", + "url": "https://docs.mongodb.com/manual/reference/method/db.collection.createIndex/#options" + }, + "properties": { + "alternate": { + "default": "non-ignorable", + "description": "Method to handle whitespace and punctuation as base characters for purposes of comparison.\n\n| Value | Evaluate Whitespace and Punctuation as Base Characters |\n|---|---|\n| `\"non-ignorable\"` | Yes |\n| `\"shifted\"` | No. MongoDB Cloud distinguishes these characters when `\"strength\" \u003e 3`. |\n", + "enum": [ + "non-ignorable", + "shifted" + ], + "type": "string" + }, + "backwards": { + "default": false, + "description": "Flag that indicates whether strings with diacritics sort from back of the string. Some French dictionary orders strings in this way.\n\n| Value | String Comparison Method |\n |---|---|\n| `true` | Compare from back to front. |\n| `false` | Compare from front to back. |\n", + "type": "boolean" + }, + "caseFirst": { + "default": "off", + "description": "Method to handle sort order of case differences during tertiary level comparisons.\n\n| Value | Sort Order Method |\n |---|---|\n | `\"upper\"` | Uppercase sorts before lowercase. |\n | `\"lower\"` | Lowercase sorts before uppercase. |\n | `\"off\"` | Similar to \"lower\" with slight differences. |\n", + "enum": [ + "lower", + "off", + "upper" + ], + "type": "string" + }, + "caseLevel": { + "default": false, + "description": "Flag that indicates whether to include case comparison when `\"strength\" : 1` or `\"strength\" : 2`.\n\n| Value | Compare case at level 1 or 2? | Strength Level | Comparisons Include |\n |---|---|---|---|\n | true | Yes | 1 | Base characters and case. |\n | | | 2 | Base characters, diacritics (and possible other secondary differences), and case. |\n | false | No | | |\n", + "type": "boolean" + }, + "locale": { + "description": "International Components for Unicode (ICU) code that represents a localized language. To specify simple binary comparison, set `\"locale\" : \"simple\"`.", + "enum": [ + "af", + "sq", + "am", + "ar", + "hy", + "as", + "az", + "bn", + "be", + "bs", + "bs_Cyrl", + "bg", + "my", + "ca", + "chr", + "zh", + "zh_Hant", + "hr", + "cs", + "da", + "nl", + "dz", + "en", + "en_US", + "en_US_POSIX", + "eo", + "et", + "ee", + "fo", + "fil", + "fi_FI", + "fr", + "fr_CA", + "gl", + "ka", + "de", + "de_AT", + "el", + "gu", + "ha", + "haw", + "he", + "hi", + "hu", + "is", + "ig", + "smn", + "id", + "ga", + "it", + "ja", + "kl", + "kn", + "kk", + "km", + "kok", + "ko", + "ky", + "lk", + "lo", + "lv", + "li", + "lt", + "dsb", + "lb", + "mk", + "ms", + "ml", + "mt", + "mr", + "mn", + "ne", + "se", + "nb", + "nn", + "or", + "om", + "ps", + "fa", + "fa_AF", + "pl", + "pt", + "pa", + "ro", + "ru", + "sr", + "sr_Latn", + "si", + "sk", + "sl", + "es", + "sw", + "sv", + "ta", + "te", + "th", + "bo", + "to", + "tr", + "uk", + "hsb", + "ur", + "ug", + "vi", + "wae", + "cy", + "yi", + "yo", + "zu", + "simple" + ], + "type": "string" + }, + "maxVariable": { + "description": "Field that indicates which characters can be ignored when `\"alternate\" : \"shifted\"`. This has no affect if `\"alternate\" : \"non-ignorable\"`.\n\n| Value | Ignore |\n |---|---|\n| `\"punct\"` | Both whitespace and punctuation |\n| `\"space\"` | Whitespace |\n", + "enum": [ + "punct", + "space" + ], + "type": "string" + }, + "normalization": { + "default": false, + "description": "Flag that indicates whether to check if the text requires normalization and then perform it. Most text doesn't require this normalization processing.\n\n| Value | Normalization Method |\n |---|---|\n| `true` | Yes, check if fully normalized and perform normalization to compare text. |\n| `false` | No, don't check. |\n", + "type": "boolean" + }, + "numericOrdering": { + "default": false, + "description": "Flag that indicates whether to compare sequences of digits as numbers or as strings.\n\n| Value | Comparison Method |\n |---|---|\n| `true` | Compare as numbers. This results in `10 \u003e 2`. |\n| `false` | Compare as strings. This results in `\"10\" \u003c \"2\"`. |\n", + "type": "boolean" + }, + "strength": { + "default": 3, + "description": "Degree of comparison to perform when sorting words. MongoDB Cloud accepts the following values:\n\n| Value | Comparison Level | Comparison Method |\n|---|---|---|\n| 1 | Primary | Compares the base characters only, ignoring other differences such as diacritics and case. |\n| 2 | Secondary | Compares base characters (primary) and diacritics (secondary). Primary differences take precedence over secondary differences. |\n| 3 | Tertiary | Compares base characters (primary), diacritics (secondary), and case and variants (tertiary). Differences between base characters takes precedence over secondary differences which take precedence over tertiary differences. |\n| 4 | Quaternary | Compares for the specific use case to consider punctuation when levels 1 through 3 ignore punctuation or for processing Japanese text. |\n| 5 | Identical | Compares for the specific use case of tie breaker. |\n", + "format": "int32", + "maximum": 5, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "locale" + ], + "type": "object", + "writeOnly": true + }, + "ComponentLabel": { + "description": "Human-readable labels applied to this MongoDB Cloud component.", + "properties": { + "key": { + "description": "Key applied to tag and categorize this component.", + "maxLength": 255, + "minLength": 1, + "type": "string" + }, + "value": { + "description": "Value set to the Key applied to tag and categorize this component.", + "maxLength": 255, + "minLength": 1, + "type": "string" + } + }, + "title": "Component Label", + "type": "object" + }, + "ConnectedOrgConfig": { + "properties": { + "dataAccessIdentityProviderIds": { + "description": "The collection of unique ids representing the identity providers that can be used for data access in this organization.", + "items": { + "description": "Unique 24-hexadecimal digit string that represents the id of the identity providers that can be used for data access in this organization.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "domainAllowList": { + "description": "Approved domains that restrict users who can join the organization based on their email address.", + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "domainRestrictionEnabled": { + "description": "Value that indicates whether domain restriction is enabled for this connected org.", + "type": "boolean" + }, + "identityProviderId": { + "description": "Legacy 20-hexadecimal digit string that identifies the UI access identity provider that this connected org config is associated with. This id can be found within the Federation Management Console \u003e Identity Providers tab by clicking the info icon in the IdP ID row of a configured identity provider.", + "maxLength": 20, + "minLength": 20, + "pattern": "^([a-f0-9]{20})$", + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the connected organization configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "postAuthRoleGrants": { + "description": "Atlas roles that are granted to a user in this organization after authenticating. Roles are a human-readable label that identifies the collection of privileges that MongoDB Cloud grants a specific MongoDB Cloud user. These roles can only be organization specific roles.", + "items": { + "enum": [ + "ORG_OWNER", + "ORG_MEMBER", + "ORG_GROUP_CREATOR", + "ORG_BILLING_ADMIN", + "ORG_BILLING_READ_ONLY", + "ORG_READ_ONLY" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "roleMappings": { + "description": "Role mappings that are configured in this organization.", + "items": { + "$ref": "#/components/schemas/AuthFederationRoleMapping" + }, + "type": "array", + "uniqueItems": true + }, + "userConflicts": { + "description": "List that contains the users who have an email address that doesn't match any domain on the allowed list.", + "items": { + "$ref": "#/components/schemas/FederatedUser" + }, + "type": "array" + } + }, + "required": [ + "domainRestrictionEnabled", + "orgId" + ], + "type": "object" + }, + "ControlPlaneIPAddresses": { + "description": "List of IP addresses in the Atlas control plane.", + "properties": { + "inbound": { + "$ref": "#/components/schemas/InboundControlPlaneCloudProviderIPAddresses" + }, + "outbound": { + "$ref": "#/components/schemas/OutboundControlPlaneCloudProviderIPAddresses" + } + }, + "title": "Control Plane IP Addresses", + "type": "object" + }, + "CostExplorerFilterRequestBody": { + "description": "Request body for a cost explorer query.", + "properties": { + "clusters": { + "description": "The list of projects to be included in the Cost Explorer Query.", + "example": [ + "5feeac500000000000000000", + "61cfdfd00000000000000000" + ], + "items": { + "type": "string" + }, + "type": "array" + }, + "endDate": { + "description": "The exclusive ending date for the Cost Explorer query. The date must be the start of a month.", + "example": "2022-02-01", + "format": "date", + "type": "string" + }, + "groupBy": { + "description": "The dimension to group the returned usage results by. At least one filter value needs to be provided for a dimension to be used.", + "enum": [ + "organizations", + "projects", + "clusters", + "services" + ], + "type": "string" + }, + "includePartialMatches": { + "description": "Flag to control whether usage that matches the filter criteria, but does not have values for all filter criteria is included in response. Default is false, which excludes the partially matching data.", + "type": "boolean" + }, + "organizations": { + "description": "The list of organizations to be included in the Cost Explorer Query.", + "example": [ + "5feeac500000000000000000", + "61cfdfd00000000000000000" + ], + "items": { + "type": "string" + }, + "type": "array" + }, + "projects": { + "description": "The list of projects to be included in the Cost Explorer Query.", + "example": [ + "5feeac500000000000000000", + "61cfdfd00000000000000000" + ], + "items": { + "type": "string" + }, + "type": "array" + }, + "services": { + "description": "The list of projects to be included in the Cost Explorer Query.", + "example": [ + "Data Transfer", + "Atlas Data Federation" + ], + "items": { + "enum": [ + "Atlas", + "Clusters", + "Storage", + "Serverless Instances", + "Backup", + "Data Transfer", + "BI Connector", + "Premium Features", + "Atlas Data Federation", + "Atlas Stream Processing", + "App Services", + "Charts", + "Cloud Manager", + "Cloud Manager Standard/Premium", + "Legacy Backup", + "Flex Consulting", + "Support", + "Credits" + ], + "type": "string" + }, + "type": "array" + }, + "startDate": { + "description": "The inclusive starting date for the Cost Explorer query. The date must be the start of a month.", + "example": "2022-02-01", + "format": "date", + "type": "string" + } + }, + "required": [ + "endDate", + "startDate" + ], + "type": "object" + }, + "CostExplorerFilterResponseView": { + "description": "Response object to give information about created query.", + "properties": { + "token": { + "description": "The token used to identify the created Cost Explorer query.", + "example": "d9ab638a801efe182f98ae3e18ea4bb47b9fda808a28a8c7de205bb0e94f7d71", + "maxLength": 64, + "minLength": 64, + "type": "string" + } + }, + "type": "object" + }, + "CostExplorerQueryResult": { + "type": "object" + }, + "CpsBackupEventTypeViewForNdsGroupAlertableWithThreshold": { + "description": "Event type that triggers an alert.", + "enum": [ + "CPS_SNAPSHOT_BEHIND", + "CPS_PREV_SNAPSHOT_OLD", + "CPS_OPLOG_BEHIND" + ], + "example": "CPS_SNAPSHOT_BEHIND", + "title": "Cps Backup Event Type", + "type": "string" + }, + "CpsBackupThresholdAlertConfigViewForNdsGroup": { + "description": "Cps Backup threshold alert configuration allows to select thresholds for conditions of CPS backup or oplogs anomalies which trigger alerts and how users are notified.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/CpsBackupEventTypeViewForNdsGroupAlertableWithThreshold" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "Matching conditions for target resources.", + "items": { + "$ref": "#/components/schemas/AlertMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "threshold": { + "$ref": "#/components/schemas/GreaterThanTimeThreshold" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "Cps Backup Threshold Alert Configuration", + "type": "object" + }, + "CreateAWSEndpointRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/CreateEndpointRequest" + }, + { + "properties": { + "id": { + "description": "Unique string that identifies the private endpoint's network interface that someone added to this private endpoint service.", + "example": "vpce-3bf78b0ddee411ba1", + "pattern": "^vpce-[0-9a-f]{17}$", + "type": "string", + "writeOnly": true + } + }, + "type": "object" + } + ], + "description": "Group of Private Endpoint settings.", + "required": [ + "id" + ], + "title": "AWS", + "type": "object" + }, + "CreateAtlasOrganizationApiKey": { + "description": "Details of the programmatic API key to be created.", + "properties": { + "desc": { + "description": "Purpose or explanation provided when someone created this organization API key.", + "maxLength": 250, + "minLength": 1, + "type": "string" + }, + "roles": { + "description": "List of roles to grant this API key. If you provide this list, provide a minimum of one role and ensure each role applies to this organization.", + "items": { + "enum": [ + "ORG_OWNER", + "ORG_MEMBER", + "ORG_GROUP_CREATOR", + "ORG_BILLING_ADMIN", + "ORG_READ_ONLY", + "ORG_TEAM_MEMBERS_ADMIN" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "desc", + "roles" + ], + "type": "object" + }, + "CreateAtlasProjectApiKey": { + "properties": { + "desc": { + "description": "Purpose or explanation provided when someone created this project API key.", + "maxLength": 250, + "minLength": 1, + "type": "string" + }, + "roles": { + "description": "List of roles to grant this API key. If you provide this list, provide a minimum of one role and ensure each role applies to this project.", + "items": { + "enum": [ + "ORG_OWNER", + "ORG_MEMBER", + "ORG_GROUP_CREATOR", + "ORG_BILLING_ADMIN", + "ORG_READ_ONLY", + "ORG_TEAM_MEMBERS_ADMIN", + "GROUP_ATLAS_ADMIN", + "GROUP_AUTOMATION_ADMIN", + "GROUP_BACKUP_ADMIN", + "GROUP_MONITORING_ADMIN", + "GROUP_OWNER", + "GROUP_READ_ONLY", + "GROUP_USER_ADMIN", + "GROUP_BILLING_ADMIN", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_CHARTS_ADMIN", + "GROUP_CLUSTER_MANAGER", + "GROUP_SEARCH_INDEX_EDITOR", + "GROUP_STREAM_PROCESSING_OWNER" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "desc", + "roles" + ], + "type": "object" + }, + "CreateAzureEndpointRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/CreateEndpointRequest" + }, + { + "properties": { + "id": { + "description": "Unique string that identifies the private endpoint's network interface that someone added to this private endpoint service.", + "example": "/subscriptions/cba6d9c6-1d3f-3c11-03cb-c705d895e636/resourcegroups/qrRTqi4TSN)7yB5YLRjVDveH3.yLzpNR7Br0D3-SGrU3j0.0/providers/Microsoft.Network/privateEndpoints/pVP(vb(XeckpxtXzP0NaOsDjeWDbOK)DX8A2j2E_vBYL2.GEYIdln", + "type": "string", + "writeOnly": true + }, + "privateEndpointIPAddress": { + "description": "IPv4 address of the private endpoint in your Azure VNet that someone added to this private endpoint service.", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "type": "string" + } + }, + "type": "object" + } + ], + "description": "Group of Private Endpoint settings.", + "required": [ + "id", + "privateEndpointIPAddress" + ], + "title": "AZURE", + "type": "object" + }, + "CreateDataProcessRegionView": { + "description": "Settings to configure the region where you wish to store your archived data.", + "discriminator": { + "mapping": { + "AWS": "#/components/schemas/AWSCreateDataProcessRegionView", + "AZURE": "#/components/schemas/AzureCreateDataProcessRegionView" + }, + "propertyName": "cloudProvider" + }, + "properties": { + "cloudProvider": { + "description": "Human-readable label that identifies the Cloud service provider where you wish to store your archived data. **AZURE** may be selected only if **AZURE** is the Cloud service provider for the cluster and no **AWS** online archive has been created for the cluster.", + "enum": [ + "AWS", + "AZURE" + ], + "type": "string" + } + }, + "type": "object", + "writeOnly": true + }, + "CreateEndpointRequest": { + "oneOf": [ + { + "$ref": "#/components/schemas/CreateAWSEndpointRequest" + }, + { + "$ref": "#/components/schemas/CreateAzureEndpointRequest" + }, + { + "$ref": "#/components/schemas/CreateGCPEndpointGroupRequest" + } + ], + "type": "object" + }, + "CreateGCPEndpointGroupRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/CreateEndpointRequest" + }, + { + "properties": { + "endpointGroupName": { + "description": "Human-readable label that identifies a set of endpoints.", + "type": "string", + "writeOnly": true + }, + "endpoints": { + "description": "List of individual private endpoints that comprise this endpoint group.", + "externalDocs": { + "description": "Google Cloud Forwarding Rule Concepts", + "url": "https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts" + }, + "items": { + "$ref": "#/components/schemas/CreateGCPForwardingRuleRequest" + }, + "type": "array" + }, + "gcpProjectId": { + "description": "Unique string that identifies the Google Cloud project in which you created the endpoints.", + "example": "p-fdeeb3e43b8e733e5ab627b1", + "externalDocs": { + "description": "Google Cloud Creating and Managing Projects", + "url": "https://cloud.google.com/resource-manager/docs/creating-managing-projects" + }, + "pattern": "^p-[0-9a-z]{24}$", + "type": "string", + "writeOnly": true + } + }, + "type": "object" + } + ], + "description": "Group of Private Endpoint settings.", + "required": [ + "endpointGroupName", + "gcpProjectId" + ], + "title": "GCP", + "type": "object" + }, + "CreateGCPForwardingRuleRequest": { + "properties": { + "endpointName": { + "description": "Human-readable label that identifies the Google Cloud consumer forwarding rule that you created.", + "externalDocs": { + "description": "Google Cloud Forwarding Rule Concepts", + "url": "https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts" + }, + "type": "string", + "writeOnly": true + }, + "ipAddress": { + "description": "One Private Internet Protocol version 4 (IPv4) address to which this Google Cloud consumer forwarding rule resolves.", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "type": "string", + "writeOnly": true + } + }, + "title": "GCP Forwarding Rules", + "type": "object" + }, + "CreateOrganizationRequest": { + "properties": { + "apiKey": { + "$ref": "#/components/schemas/CreateAtlasOrganizationApiKey" + }, + "federationSettingsId": { + "description": "Unique 24-hexadecimal digit string that identifies the federation to link the newly created organization to. If specified, the proposed Organization Owner of the new organization must have the Organization Owner role in an organization associated with the federation.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "name": { + "description": "Human-readable label that identifies the organization.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.(),:\u0026@+']{1,64}$", + "type": "string" + }, + "orgOwnerId": { + "description": "Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user that you want to assign the Organization Owner role. This user must be a member of the same organization as the calling API key. If you provide `federationSettingsId`, this user must instead have the Organization Owner role on an organization in the specified federation. This parameter is required only when you authenticate with Programmatic API Keys.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "CreateOrganizationResponse": { + "properties": { + "apiKey": { + "$ref": "#/components/schemas/ApiKeyUserDetails" + }, + "federationSettingsId": { + "description": "Unique 24-hexadecimal digit string that identifies the federation that you linked the newly created organization to.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "orgOwnerId": { + "description": "Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user that you assigned the Organization Owner role in the new organization.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "organization": { + "$ref": "#/components/schemas/AtlasOrganization" + } + }, + "type": "object" + }, + "CreatePushBasedLogExportProjectRequest": { + "properties": { + "bucketName": { + "description": "The name of the bucket to which the agent will send the logs to.", + "type": "string" + }, + "iamRoleId": { + "description": "ID of the AWS IAM role that will be used to write to the S3 bucket.", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "prefixPath": { + "description": "S3 directory in which vector will write to in order to store the logs. An empty string denotes the root directory.", + "type": "string" + } + }, + "required": [ + "bucketName", + "iamRoleId", + "prefixPath" + ], + "type": "object" + }, + "CriteriaView": { + "description": "Rules by which MongoDB Cloud archives data.\n\nUse the **criteria.type** field to choose how MongoDB Cloud selects data to archive. Choose data using the age of the data or a MongoDB query.\n**\"criteria.type\": \"DATE\"** selects documents to archive based on a date.\n**\"criteria.type\": \"CUSTOM\"** selects documents to archive based on a custom JSON query. MongoDB Cloud doesn't support **\"criteria.type\": \"CUSTOM\"** when **\"collectionType\": \"TIMESERIES\"**.", + "discriminator": { + "mapping": { + "CUSTOM": "#/components/schemas/CustomCriteriaView", + "DATE": "#/components/schemas/DateCriteriaView" + }, + "propertyName": "type" + }, + "properties": { + "type": { + "description": "Means by which MongoDB Cloud selects data to archive. Data can be chosen using the age of the data or a MongoDB query.\n**DATE** selects documents to archive based on a date.\n**CUSTOM** selects documents to archive based on a custom JSON query. MongoDB Cloud doesn't support **CUSTOM** when `\"collectionType\": \"TIMESERIES\"`.", + "enum": [ + "DATE", + "CUSTOM" + ], + "type": "string" + } + }, + "type": "object" + }, + "CustomCriteriaView": { + "allOf": [ + { + "$ref": "#/components/schemas/CriteriaView" + }, + { + "properties": { + "query": { + "description": "MongoDB find query that selects documents to archive. The specified query follows the syntax of the `db.collection.find(query)` command. This query can't use the empty document (`{}`) to return all documents. Set this parameter when **\"criteria.type\" : \"CUSTOM\"**.", + "type": "string" + } + }, + "type": "object" + } + ], + "description": "**CUSTOM criteria.type**.", + "required": [ + "query" + ], + "title": "Archival Criteria", + "type": "object" + }, + "CustomZoneMappings": { + "properties": { + "customZoneMappings": { + "description": "List that contains comma-separated key value pairs to map zones to geographic regions. These pairs map an ISO 3166-1a2 location code, with an ISO 3166-2 subdivision code when possible, to the human-readable label for the desired custom zone. MongoDB Cloud maps the ISO 3166-1a2 code to the nearest geographical zone by default. Include this parameter to override the default mappings.\n\nThis parameter returns an empty object if no custom zones exist.", + "items": { + "$ref": "#/components/schemas/ZoneMapping" + }, + "type": "array" + } + }, + "type": "object" + }, + "DBRoleToExecute": { + "description": "The name of a Built in or Custom DB Role to connect to an Atlas Cluster.", + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "role": { + "description": "The name of the role to use. Can be a built in role or a custom role.", + "type": "string" + }, + "type": { + "description": "Type of the DB role. Can be either BuiltIn or Custom.", + "enum": [ + "BUILT_IN", + "CUSTOM" + ], + "title": "DB Role Type", + "type": "string" + } + }, + "type": "object" + }, + "DBUserTLSX509Settings": { + "description": "Settings to configure TLS Certificates for database users.", + "properties": { + "cas": { + "description": "Concatenated list of customer certificate authority (CA) certificates needed to authenticate database users. MongoDB Cloud expects this as a PEM-formatted certificate.", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "title": "Database User TLS Certificate Settings", + "type": "object" + }, + "DLSIngestionSink": { + "allOf": [ + { + "$ref": "#/components/schemas/IngestionSink" + }, + { + "properties": { + "metadataProvider": { + "description": "Target cloud provider for this Data Lake Pipeline.", + "enum": [ + "AWS" + ], + "type": "string" + }, + "metadataRegion": { + "description": "Target cloud provider region for this Data Lake Pipeline.", + "externalDocs": { + "description": "Supported cloud provider regions", + "url": "https://www.mongodb.com/docs/datalake/limitations" + }, + "type": "string" + }, + "partitionFields": { + "description": "Ordered fields used to physically organize data in the destination.", + "items": { + "$ref": "#/components/schemas/DataLakePipelinesPartitionField" + }, + "type": "array" + } + }, + "type": "object" + } + ], + "description": "Atlas Data Lake Storage as the destination for a Data Lake Pipeline.", + "title": "DLS Ingestion Destination", + "type": "object" + }, + "DailyScheduleView": { + "allOf": [ + { + "$ref": "#/components/schemas/OnlineArchiveSchedule" + }, + { + "properties": { + "endHour": { + "description": "Hour of the day when the scheduled window to run one online archive ends.", + "format": "int32", + "maximum": 23, + "minimum": 0, + "type": "integer" + }, + "endMinute": { + "description": "Minute of the hour when the scheduled window to run one online archive ends.", + "format": "int32", + "maximum": 59, + "minimum": 0, + "type": "integer" + }, + "startHour": { + "description": "Hour of the day when the when the scheduled window to run one online archive starts.", + "format": "int32", + "maximum": 23, + "minimum": 0, + "type": "integer" + }, + "startMinute": { + "description": "Minute of the hour when the scheduled window to run one online archive starts.", + "format": "int32", + "maximum": 59, + "minimum": 0, + "type": "integer" + } + }, + "type": "object" + } + ], + "required": [ + "type" + ], + "type": "object" + }, + "DataExpirationRuleView": { + "description": "Rule for specifying when data should be deleted from the archive.", + "properties": { + "expireAfterDays": { + "description": "Number of days used in the date criteria for nominating documents for deletion.", + "format": "int32", + "maximum": 9215, + "minimum": 7, + "type": "integer" + } + }, + "type": "object" + }, + "DataExplorerAccessedEventTypeView": { + "description": "Unique identifier of event type.", + "enum": [ + "DATA_EXPLORER", + "DATA_EXPLORER_CRUD_ATTEMPT", + "DATA_EXPLORER_CRUD_ERROR", + "DATA_EXPLORER_CRUD" + ], + "example": "DATA_EXPLORER", + "title": "Data Explorer Accessed Event Types", + "type": "string" + }, + "DataExplorerAccessedEventView": { + "description": "Data Explorer accessed event tracks different data operations via Data Explorer interactions.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "collection": { + "description": "Human-readable label of the collection on which the event occurred. The resource returns this parameter when the **eventTypeName** includes `DATA_EXPLORER`.", + "example": "test_collection", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "database": { + "description": "Human-readable label of the database on which this incident occurred. The resource returns this parameter when `\"eventTypeName\" : \"DATA_EXPLORER\"` or `\"eventTypeName\" : \"DATA_EXPLORER_CRUD\"`.", + "example": "test_db", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/DataExplorerAccessedEventTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "opType": { + "description": "Action that the database attempted to execute when the event triggered. The response returns this parameter when `eventTypeName\" : \"DATA_EXPLORER\"`.", + "example": "insertDocument", + "readOnly": true, + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Data Explorer Accessed Events", + "type": "object" + }, + "DataFederationAzureCloudProviderConfig": { + "description": "Configuration for running Data Federation in Azure.", + "properties": { + "atlasAppId": { + "description": "The App ID generated by Atlas for the Service Principal's access policy.", + "readOnly": true, + "type": "string" + }, + "roleId": { + "description": "Unique identifier of the role that Data Federation can use to access the data stores.Required if specifying cloudProviderConfig.", + "type": "string" + }, + "servicePrincipalId": { + "description": "The ID of the Service Principal for which there is an access policyfor Atlas to access Azure resources.", + "readOnly": true, + "type": "string" + }, + "tenantId": { + "description": "The Azure Active Directory / Entra ID tenant ID associated with the Service Principal.", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "roleId" + ], + "type": "object" + }, + "DataFederationLimit": { + "description": "Details of user managed limits.", + "discriminator": { + "mapping": { + "atlas.project.deployment.clusters": "#/components/schemas/DefaultLimit", + "atlas.project.deployment.nodesPerPrivateLinkRegion": "#/components/schemas/DefaultLimit", + "atlas.project.deployment.serverlessMTMs": "#/components/schemas/DefaultLimit", + "atlas.project.security.databaseAccess.customRoles": "#/components/schemas/DefaultLimit", + "atlas.project.security.databaseAccess.users": "#/components/schemas/DefaultLimit", + "atlas.project.security.networkAccess.crossRegionEntries": "#/components/schemas/DefaultLimit", + "atlas.project.security.networkAccess.entries": "#/components/schemas/DefaultLimit", + "dataFederation.bytesProcessed.daily": "#/components/schemas/DataFederationQueryLimit", + "dataFederation.bytesProcessed.monthly": "#/components/schemas/DataFederationQueryLimit", + "dataFederation.bytesProcessed.query": "#/components/schemas/DataFederationQueryLimit", + "dataFederation.bytesProcessed.weekly": "#/components/schemas/DataFederationQueryLimit" + }, + "propertyName": "name" + }, + "properties": { + "currentUsage": { + "description": "Amount that indicates the current usage of the limit.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "defaultLimit": { + "description": "Default value of the limit.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "maximumLimit": { + "description": "Maximum value of the limit.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "name": { + "description": "Human-readable label that identifies the user-managed limit to modify.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Amount to set the limit to.", + "format": "int64", + "type": "integer" + } + }, + "required": [ + "name", + "value" + ], + "title": "Limits", + "type": "object" + }, + "DataFederationQueryLimit": { + "description": "Details of a query limit for Data Federation. Query limit is the limit on the amount of usage during a time period based on cost.", + "properties": { + "currentUsage": { + "description": "Amount that indicates the current usage of the limit.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "defaultLimit": { + "description": "Default value of the limit.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "lastModifiedDate": { + "description": "Only used for Data Federation limits. Timestamp that indicates when this usage limit was last modified. This field uses the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "maximumLimit": { + "description": "Maximum value of the limit.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "name": { + "description": "Human-readable label that identifies the user-managed limit to modify.", + "readOnly": true, + "type": "string" + }, + "overrunPolicy": { + "description": "Only used for Data Federation limits. Action to take when the usage limit is exceeded. If limit span is set to QUERY, this is ignored because MongoDB Cloud stops the query when it exceeds the usage limit.", + "enum": [ + "BLOCK", + "BLOCK_AND_KILL" + ], + "type": "string" + }, + "value": { + "description": "Amount to set the limit to.", + "format": "int64", + "type": "integer" + } + }, + "required": [ + "name", + "value" + ], + "title": "Data Federation Query Limit", + "type": "object" + }, + "DataFederationTenantQueryLimit": { + "description": "Details of a tenant-level query limit for Data Federation. Query limit is the limit on the amount of usage during a time period based on cost.", + "properties": { + "currentUsage": { + "description": "Amount that indicates the current usage of the limit.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "defaultLimit": { + "description": "Default value of the limit.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "lastModifiedDate": { + "description": "Only used for Data Federation limits. Timestamp that indicates when this usage limit was last modified. This field uses the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "maximumLimit": { + "description": "Maximum value of the limit.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "name": { + "description": "Human-readable label that identifies the user-managed limit to modify.", + "readOnly": true, + "type": "string" + }, + "overrunPolicy": { + "description": "Only used for Data Federation limits. Action to take when the usage limit is exceeded. If limit span is set to QUERY, this is ignored because MongoDB Cloud stops the query when it exceeds the usage limit.", + "enum": [ + "BLOCK", + "BLOCK_AND_KILL" + ], + "type": "string" + }, + "tenantName": { + "description": "Human-readable label that identifies the Federated Database Instance. If specified, the usage limit is for the specified federated database instance only. If omitted, the usage limit is for all federated database instances in the project.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Amount to set the limit to.", + "format": "int64", + "type": "integer" + } + }, + "required": [ + "name", + "value" + ], + "title": "Data Federation Tenant-Level Query Limit", + "type": "object" + }, + "DataLakeAWSCloudProviderConfig": { + "description": "Configuration for running Data Federation in AWS.", + "properties": { + "externalId": { + "description": "Unique identifier associated with the Identity and Access Management (IAM) role that the data lake assumes when accessing the data stores.", + "readOnly": true, + "type": "string" + }, + "iamAssumedRoleARN": { + "description": "Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that the data lake assumes when accessing data stores.", + "example": "arn:aws:iam::123456789012:root", + "maxLength": 2048, + "minLength": 20, + "readOnly": true, + "type": "string" + }, + "iamUserARN": { + "description": "Amazon Resource Name (ARN) of the user that the data lake assumes when accessing data stores.", + "readOnly": true, + "type": "string" + }, + "roleId": { + "description": "Unique identifier of the role that the data lake can use to access the data stores.Required if specifying cloudProviderConfig.", + "type": "string" + }, + "testS3Bucket": { + "description": "Name of the S3 data bucket that the provided role ID is authorized to access.Required if specifying cloudProviderConfig.", + "type": "string", + "writeOnly": true + } + }, + "required": [ + "roleId", + "testS3Bucket" + ], + "type": "object" + }, + "DataLakeApiBase": { + "description": "An aggregation pipeline that applies to the collection.", + "properties": { + "name": { + "description": "Human-readable label that identifies the view, which corresponds to an aggregation pipeline on a collection.", + "type": "string" + }, + "pipeline": { + "description": "Aggregation pipeline stages to apply to the source collection.", + "externalDocs": { + "description": "Aggregation Pipelines", + "url": "https://docs.mongodb.com/manual/core/aggregation-pipeline/" + }, + "type": "string" + }, + "source": { + "description": "Human-readable label that identifies the source collection for the view.", + "type": "string" + } + }, + "type": "object" + }, + "DataLakeAtlasStoreInstance": { + "allOf": [ + { + "$ref": "#/components/schemas/DataLakeStoreSettings" + }, + { + "properties": { + "clusterName": { + "description": "Human-readable label of the MongoDB Cloud cluster on which the store is based.", + "type": "string" + }, + "projectId": { + "description": "Unique 24-hexadecimal digit string that identifies the project.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "readConcern": { + "$ref": "#/components/schemas/DataLakeAtlasStoreReadConcern" + }, + "readPreference": { + "$ref": "#/components/schemas/DataLakeAtlasStoreReadPreference" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "DataLakeAtlasStoreReadConcern": { + "description": "MongoDB Cloud cluster read concern, which determines the consistency and isolation properties of the data read from an Atlas cluster.", + "properties": { + "level": { + "description": "Read Concern level that specifies the consistency and availability of the data read.", + "enum": [ + "LOCAL", + "MAJORITY", + "LINEARIZABLE", + "SNAPSHOT", + "AVAILABLE" + ], + "externalDocs": { + "description": "Read Concern Level", + "url": "https://www.mongodb.com/docs/manual/reference/read-concern/#read-concern-levels" + }, + "type": "string" + } + }, + "type": "object" + }, + "DataLakeAtlasStoreReadPreference": { + "description": "MongoDB Cloud cluster read preference, which describes how to route read requests to the cluster.", + "properties": { + "maxStalenessSeconds": { + "description": "Maximum replication lag, or **staleness**, for reads from secondaries.", + "format": "int32", + "type": "integer" + }, + "mode": { + "description": "Read preference mode that specifies to which replica set member to route the read requests.", + "enum": [ + "primary", + "primaryPreferred", + "secondary", + "secondaryPreferred", + "nearest" + ], + "externalDocs": { + "description": "Read Preference Modes", + "url": "https://docs.mongodb.com/manual/core/read-preference/#read-preference-modes" + }, + "type": "string" + }, + "tagSets": { + "description": "List that contains tag sets or tag specification documents. If specified, Atlas Data Lake routes read requests to replica set member or members that are associated with the specified tags.", + "externalDocs": { + "description": "Read Preference Tag Set Lists", + "url": "https://docs.mongodb.com/manual/core/read-preference-tags/" + }, + "items": { + "items": { + "$ref": "#/components/schemas/DataLakeAtlasStoreReadPreferenceTag" + }, + "type": "array" + }, + "type": "array" + } + }, + "type": "object" + }, + "DataLakeAtlasStoreReadPreferenceTag": { + "properties": { + "name": { + "description": "Human-readable label of the tag.", + "type": "string" + }, + "value": { + "description": "Value of the tag.", + "type": "string" + } + }, + "type": "object" + }, + "DataLakeAzureBlobStore": { + "allOf": [ + { + "$ref": "#/components/schemas/DataLakeStoreSettings" + }, + { + "properties": { + "containerName": { + "description": "Human-readable label that identifies the name of the container.", + "type": "string" + }, + "delimiter": { + "description": "Delimiter.", + "type": "string" + }, + "prefix": { + "description": "Prefix.", + "type": "string" + }, + "public": { + "default": false, + "description": "Flag that indicates whether the blob store is public. If set to `true`, MongoDB Cloud doesn't use the configured Azure service principal to access the blob store. If set to `false`, the configured Azure service principal must include permissions to access the blob store.", + "type": "boolean" + }, + "region": { + "description": "Microsoft Azure Regions.", + "enum": [ + "US_CENTRAL", + "US_EAST", + "US_EAST_2", + "US_NORTH_CENTRAL", + "US_WEST", + "US_SOUTH_CENTRAL", + "EUROPE_NORTH", + "EUROPE_WEST", + "US_WEST_CENTRAL", + "US_WEST_2", + "US_WEST_3", + "CANADA_EAST", + "CANADA_CENTRAL", + "BRAZIL_SOUTH", + "BRAZIL_SOUTHEAST", + "AUSTRALIA_CENTRAL", + "AUSTRALIA_CENTRAL_2", + "AUSTRALIA_EAST", + "AUSTRALIA_SOUTH_EAST", + "GERMANY_CENTRAL", + "GERMANY_NORTH_EAST", + "GERMANY_WEST_CENTRAL", + "GERMANY_NORTH", + "SWEDEN_CENTRAL", + "SWEDEN_SOUTH", + "SWITZERLAND_NORTH", + "SWITZERLAND_WEST", + "UK_SOUTH", + "UK_WEST", + "NORWAY_EAST", + "NORWAY_WEST", + "INDIA_CENTRAL", + "INDIA_SOUTH", + "INDIA_WEST", + "CHINA_EAST", + "CHINA_NORTH", + "ASIA_EAST", + "JAPAN_EAST", + "JAPAN_WEST", + "ASIA_SOUTH_EAST", + "KOREA_CENTRAL", + "KOREA_SOUTH", + "FRANCE_CENTRAL", + "FRANCE_SOUTH", + "SOUTH_AFRICA_NORTH", + "SOUTH_AFRICA_WEST", + "UAE_CENTRAL", + "UAE_NORTH", + "QATAR_CENTRAL" + ], + "title": "Azure Regions", + "type": "string" + }, + "replacementDelimiter": { + "description": "Replacement Delimiter.", + "type": "string" + }, + "serviceURL": { + "description": "Service URL.", + "type": "string" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "DataLakeCloudProviderConfig": { + "description": "Cloud provider where this Federated Database Instance is hosted.", + "properties": { + "aws": { + "$ref": "#/components/schemas/DataLakeAWSCloudProviderConfig" + }, + "azure": { + "$ref": "#/components/schemas/DataFederationAzureCloudProviderConfig" + } + }, + "title": "Data Lake Cloud Provider", + "type": "object" + }, + "DataLakeDLSAWSStore": { + "allOf": [ + { + "$ref": "#/components/schemas/DataLakeStoreSettings" + }, + { + "properties": { + "region": { + "description": "Physical location where MongoDB Cloud deploys your AWS-hosted MongoDB cluster nodes. The region you choose can affect network latency for clients accessing your databases. When MongoDB Cloud deploys a dedicated cluster, it checks if a VPC or VPC connection exists for that provider and region. If not, MongoDB Cloud creates them as part of the deployment. MongoDB Cloud assigns the VPC a CIDR block. To limit a new VPC peering connection to one CIDR block and region, create the connection first. Deploy the cluster after the connection starts.", + "enum": [ + "US_GOV_WEST_1", + "US_GOV_EAST_1", + "US_EAST_1", + "US_EAST_2", + "US_WEST_1", + "US_WEST_2", + "CA_CENTRAL_1", + "EU_NORTH_1", + "EU_WEST_1", + "EU_WEST_2", + "EU_WEST_3", + "EU_CENTRAL_1", + "EU_CENTRAL_2", + "AP_EAST_1", + "AP_NORTHEAST_1", + "AP_NORTHEAST_2", + "AP_NORTHEAST_3", + "AP_SOUTHEAST_1", + "AP_SOUTHEAST_2", + "AP_SOUTHEAST_3", + "AP_SOUTHEAST_4", + "AP_SOUTH_1", + "AP_SOUTH_2", + "SA_EAST_1", + "CN_NORTH_1", + "CN_NORTHWEST_1", + "ME_SOUTH_1", + "ME_CENTRAL_1", + "AF_SOUTH_1", + "EU_SOUTH_1", + "EU_SOUTH_2", + "IL_CENTRAL_1", + "CA_WEST_1", + "GLOBAL" + ], + "title": "AWS Regions", + "type": "string" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "DataLakeDLSAzureStore": { + "allOf": [ + { + "$ref": "#/components/schemas/DataLakeStoreSettings" + }, + { + "properties": { + "region": { + "description": "Microsoft Azure Regions.", + "enum": [ + "US_CENTRAL", + "US_EAST", + "US_EAST_2", + "US_NORTH_CENTRAL", + "US_WEST", + "US_SOUTH_CENTRAL", + "EUROPE_NORTH", + "EUROPE_WEST", + "US_WEST_CENTRAL", + "US_WEST_2", + "US_WEST_3", + "CANADA_EAST", + "CANADA_CENTRAL", + "BRAZIL_SOUTH", + "BRAZIL_SOUTHEAST", + "AUSTRALIA_CENTRAL", + "AUSTRALIA_CENTRAL_2", + "AUSTRALIA_EAST", + "AUSTRALIA_SOUTH_EAST", + "GERMANY_CENTRAL", + "GERMANY_NORTH_EAST", + "GERMANY_WEST_CENTRAL", + "GERMANY_NORTH", + "SWEDEN_CENTRAL", + "SWEDEN_SOUTH", + "SWITZERLAND_NORTH", + "SWITZERLAND_WEST", + "UK_SOUTH", + "UK_WEST", + "NORWAY_EAST", + "NORWAY_WEST", + "INDIA_CENTRAL", + "INDIA_SOUTH", + "INDIA_WEST", + "CHINA_EAST", + "CHINA_NORTH", + "ASIA_EAST", + "JAPAN_EAST", + "JAPAN_WEST", + "ASIA_SOUTH_EAST", + "KOREA_CENTRAL", + "KOREA_SOUTH", + "FRANCE_CENTRAL", + "FRANCE_SOUTH", + "SOUTH_AFRICA_NORTH", + "SOUTH_AFRICA_WEST", + "UAE_CENTRAL", + "UAE_NORTH", + "QATAR_CENTRAL" + ], + "title": "Azure Regions", + "type": "string" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "DataLakeDataProcessRegion": { + "description": "Information about the cloud provider region to which the Federated Database Instance routes client connections.", + "properties": { + "cloudProvider": { + "description": "Name of the cloud service that hosts the Federated Database Instance's infrastructure.", + "enum": [ + "AWS", + "AZURE" + ], + "type": "string" + }, + "region": { + "$ref": "#/components/schemas/BaseAtlasDataLakeRegion" + } + }, + "required": [ + "cloudProvider", + "region" + ], + "type": "object" + }, + "DataLakeDatabaseCollection": { + "description": "A collection and data sources that map to a ``stores`` data store.", + "properties": { + "dataSources": { + "description": "Array that contains the data stores that map to a collection for this data lake.", + "items": { + "$ref": "#/components/schemas/DataLakeDatabaseDataSourceSettings" + }, + "type": "array" + }, + "name": { + "description": "Human-readable label that identifies the collection to which MongoDB Cloud maps the data in the data stores.", + "type": "string" + } + }, + "type": "object" + }, + "DataLakeDatabaseDataSourceSettings": { + "description": "Data store that maps to a collection for this data lake.", + "properties": { + "allowInsecure": { + "default": false, + "description": "Flag that validates the scheme in the specified URLs. If `true`, allows insecure `HTTP` scheme, doesn't verify the server's certificate chain and hostname, and accepts any certificate with any hostname presented by the server. If `false`, allows secure `HTTPS` scheme only.", + "type": "boolean" + }, + "collection": { + "description": "Human-readable label that identifies the collection in the database. For creating a wildcard (`*`) collection, you must omit this parameter.", + "type": "string" + }, + "collectionRegex": { + "description": "Regex pattern to use for creating the wildcard (*) collection. To learn more about the regex syntax, see [Go programming language](https://pkg.go.dev/regexp).", + "type": "string" + }, + "database": { + "description": "Human-readable label that identifies the database, which contains the collection in the cluster. You must omit this parameter to generate wildcard (`*`) collections for dynamically generated databases.", + "type": "string" + }, + "databaseRegex": { + "description": "Regex pattern to use for creating the wildcard (*) database. To learn more about the regex syntax, see [Go programming language](https://pkg.go.dev/regexp).", + "type": "string" + }, + "datasetName": { + "description": "Human-readable label that identifies the dataset that Atlas generates for an ingestion pipeline run or Online Archive.", + "example": "v1$atlas$snapshot$Cluster0$myDatabase$myCollection$19700101T000000Z", + "type": "string" + }, + "datasetPrefix": { + "description": "Human-readable label that matches against the dataset names for ingestion pipeline runs or Online Archives.", + "type": "string" + }, + "defaultFormat": { + "description": "File format that MongoDB Cloud uses if it encounters a file without a file extension while searching **storeName**.", + "enum": [ + ".avro", + ".avro.bz2", + ".avro.gz", + ".bson", + ".bson.bz2", + ".bson.gz", + ".bsonx", + ".csv", + ".csv.bz2", + ".csv.gz", + ".json", + ".json.bz2", + ".json.gz", + ".orc", + ".parquet", + ".tsv", + ".tsv.bz2", + ".tsv.gz" + ], + "type": "string" + }, + "path": { + "description": "File path that controls how MongoDB Cloud searches for and parses files in the **storeName** before mapping them to a collection.Specify ``/`` to capture all files and folders from the ``prefix`` path.", + "type": "string" + }, + "provenanceFieldName": { + "description": "Name for the field that includes the provenance of the documents in the results. MongoDB Cloud returns different fields in the results for each supported provider.", + "type": "string" + }, + "storeName": { + "description": "Human-readable label that identifies the data store that MongoDB Cloud maps to the collection.", + "type": "string" + }, + "trimLevel": { + "description": "Unsigned integer that specifies how many fields of the dataset name to trim from the left of the dataset name before mapping the remaining fields to a wildcard collection name.", + "format": "int32", + "type": "integer" + }, + "urls": { + "description": "URLs of the publicly accessible data files. You can't specify URLs that require authentication. Atlas Data Lake creates a partition for each URL. If empty or omitted, Data Lake uses the URLs from the store specified in the **dataSources.storeName** parameter.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "DataLakeDatabaseInstance": { + "description": "Database associated with this data lake. Databases contain collections and views.", + "properties": { + "collections": { + "description": "Array of collections and data sources that map to a ``stores`` data store.", + "items": { + "$ref": "#/components/schemas/DataLakeDatabaseCollection" + }, + "type": "array" + }, + "maxWildcardCollections": { + "default": 100, + "description": "Maximum number of wildcard collections in the database. This only applies to S3 data sources.", + "format": "int32", + "maximum": 1000, + "minimum": 1, + "type": "integer" + }, + "name": { + "description": "Human-readable label that identifies the database to which the data lake maps data.", + "type": "string" + }, + "views": { + "description": "Array of aggregation pipelines that apply to the collection. This only applies to S3 data sources.", + "items": { + "$ref": "#/components/schemas/DataLakeApiBase" + }, + "type": "array" + } + }, + "type": "object" + }, + "DataLakeHTTPStore": { + "allOf": [ + { + "$ref": "#/components/schemas/DataLakeStoreSettings" + }, + { + "properties": { + "allowInsecure": { + "default": false, + "description": "Flag that validates the scheme in the specified URLs. If `true`, allows insecure `HTTP` scheme, doesn't verify the server's certificate chain and hostname, and accepts any certificate with any hostname presented by the server. If `false`, allows secure `HTTPS` scheme only.", + "type": "boolean" + }, + "defaultFormat": { + "description": "Default format that Data Lake assumes if it encounters a file without an extension while searching the `storeName`. If omitted, Data Lake attempts to detect the file type by processing a few bytes of the file. The specified format only applies to the URLs specified in the **databases.[n].collections.[n].dataSources** object.", + "type": "string" + }, + "urls": { + "description": "Comma-separated list of publicly accessible HTTP URLs where data is stored. You can't specify URLs that require authentication.", + "items": { + "description": "Comma-separated list of publicly accessible HTTP URLs where data is stored. You can't specify URLs that require authentication.", + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "DataLakeIngestionPipeline": { + "description": "Details of a Data Lake Pipeline.", + "properties": { + "_id": { + "description": "Unique 24-hexadecimal digit string that identifies the Data Lake Pipeline.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "createdDate": { + "description": "Timestamp that indicates when the Data Lake Pipeline was created.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "datasetRetentionPolicy": { + "$ref": "#/components/schemas/DatasetRetentionPolicy" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the group.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastUpdatedDate": { + "description": "Timestamp that indicates the last time that the Data Lake Pipeline was updated.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Name of this Data Lake Pipeline.", + "type": "string" + }, + "sink": { + "$ref": "#/components/schemas/IngestionSink" + }, + "source": { + "$ref": "#/components/schemas/IngestionSource" + }, + "state": { + "description": "State of this Data Lake Pipeline.", + "enum": [ + "ACTIVE", + "PAUSED" + ], + "readOnly": true, + "type": "string" + }, + "transformations": { + "description": "Fields to be excluded for this Data Lake Pipeline.", + "items": { + "$ref": "#/components/schemas/FieldTransformation" + }, + "type": "array" + } + }, + "title": "Data Lake Pipeline", + "type": "object" + }, + "DataLakePipelinesPartitionField": { + "description": "Partition Field in the Data Lake Storage provider for a Data Lake Pipeline.", + "properties": { + "fieldName": { + "description": "Human-readable label that identifies the field name used to partition data.", + "maxLength": 700, + "type": "string" + }, + "order": { + "default": 0, + "description": "Sequence in which MongoDB Cloud slices the collection data to create partitions. The resource expresses this sequence starting with zero.", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "fieldName", + "order" + ], + "title": "Partition Field", + "type": "object" + }, + "DataLakeS3StoreSettings": { + "allOf": [ + { + "$ref": "#/components/schemas/DataLakeStoreSettings" + }, + { + "properties": { + "additionalStorageClasses": { + "description": "Collection of AWS S3 [storage classes](https://aws.amazon.com/s3/storage-classes/). Atlas Data Lake includes the files in these storage classes in the query results.", + "items": { + "description": "AWS S3 [storage class](https://aws.amazon.com/s3/storage-classes/) where the files to include in the results are stored.", + "enum": [ + "STANDARD", + "INTELLIGENT_TIERING", + "STANDARD_IA" + ], + "type": "string" + }, + "type": "array" + }, + "bucket": { + "description": "Human-readable label that identifies the AWS S3 bucket. This label must exactly match the name of an S3 bucket that the data lake can access with the configured AWS Identity and Access Management (IAM) credentials.", + "type": "string" + }, + "delimiter": { + "description": "The delimiter that separates **databases.[n].collections.[n].dataSources.[n].path** segments in the data store. MongoDB Cloud uses the delimiter to efficiently traverse S3 buckets with a hierarchical directory structure. You can specify any character supported by the S3 object keys as the delimiter. For example, you can specify an underscore (_) or a plus sign (+) or multiple characters, such as double underscores (__) as the delimiter. If omitted, defaults to `/`.", + "type": "string" + }, + "includeTags": { + "default": false, + "description": "Flag that indicates whether to use S3 tags on the files in the given path as additional partition attributes. If set to `true`, data lake adds the S3 tags as additional partition attributes and adds new top-level BSON elements associating each tag to each document.", + "type": "boolean" + }, + "prefix": { + "description": "Prefix that MongoDB Cloud applies when searching for files in the S3 bucket. The data store prepends the value of prefix to the **databases.[n].collections.[n].dataSources.[n].path** to create the full path for files to ingest. If omitted, MongoDB Cloud searches all files from the root of the S3 bucket.", + "type": "string" + }, + "public": { + "default": false, + "description": "Flag that indicates whether the bucket is public. If set to `true`, MongoDB Cloud doesn't use the configured AWS Identity and Access Management (IAM) role to access the S3 bucket. If set to `false`, the configured AWS IAM role must include permissions to access the S3 bucket.", + "type": "boolean" + }, + "region": { + "description": "Physical location where MongoDB Cloud deploys your AWS-hosted MongoDB cluster nodes. The region you choose can affect network latency for clients accessing your databases. When MongoDB Cloud deploys a dedicated cluster, it checks if a VPC or VPC connection exists for that provider and region. If not, MongoDB Cloud creates them as part of the deployment. MongoDB Cloud assigns the VPC a CIDR block. To limit a new VPC peering connection to one CIDR block and region, create the connection first. Deploy the cluster after the connection starts.", + "enum": [ + "US_GOV_WEST_1", + "US_GOV_EAST_1", + "US_EAST_1", + "US_EAST_2", + "US_WEST_1", + "US_WEST_2", + "CA_CENTRAL_1", + "EU_NORTH_1", + "EU_WEST_1", + "EU_WEST_2", + "EU_WEST_3", + "EU_CENTRAL_1", + "EU_CENTRAL_2", + "AP_EAST_1", + "AP_NORTHEAST_1", + "AP_NORTHEAST_2", + "AP_NORTHEAST_3", + "AP_SOUTHEAST_1", + "AP_SOUTHEAST_2", + "AP_SOUTHEAST_3", + "AP_SOUTHEAST_4", + "AP_SOUTH_1", + "AP_SOUTH_2", + "SA_EAST_1", + "CN_NORTH_1", + "CN_NORTHWEST_1", + "ME_SOUTH_1", + "ME_CENTRAL_1", + "AF_SOUTH_1", + "EU_SOUTH_1", + "EU_SOUTH_2", + "IL_CENTRAL_1", + "CA_WEST_1", + "GLOBAL" + ], + "title": "AWS Regions", + "type": "string" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "DataLakeStorage": { + "description": "Configuration information for each data store and its mapping to MongoDB Cloud databases.", + "properties": { + "databases": { + "description": "Array that contains the queryable databases and collections for this data lake.", + "items": { + "$ref": "#/components/schemas/DataLakeDatabaseInstance" + }, + "type": "array" + }, + "stores": { + "description": "Array that contains the data stores for the data lake.", + "items": { + "$ref": "#/components/schemas/DataLakeStoreSettings" + }, + "type": "array" + } + }, + "type": "object" + }, + "DataLakeStoreSettings": { + "description": "Group of settings that define where the data is stored.", + "discriminator": { + "mapping": { + "atlas": "#/components/schemas/DataLakeAtlasStoreInstance", + "azure": "#/components/schemas/DataLakeAzureBlobStore", + "dls:aws": "#/components/schemas/DataLakeDLSAWSStore", + "dls:azure": "#/components/schemas/DataLakeDLSAzureStore", + "http": "#/components/schemas/DataLakeHTTPStore", + "s3": "#/components/schemas/DataLakeS3StoreSettings" + }, + "propertyName": "provider" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/DataLakeS3StoreSettings" + }, + { + "$ref": "#/components/schemas/DataLakeDLSAWSStore" + }, + { + "$ref": "#/components/schemas/DataLakeDLSAzureStore" + }, + { + "$ref": "#/components/schemas/DataLakeAtlasStoreInstance" + }, + { + "$ref": "#/components/schemas/DataLakeHTTPStore" + }, + { + "$ref": "#/components/schemas/DataLakeAzureBlobStore" + } + ], + "properties": { + "name": { + "description": "Human-readable label that identifies the data store. The **databases.[n].collections.[n].dataSources.[n].storeName** field references this values as part of the mapping configuration. To use MongoDB Cloud as a data store, the data lake requires a serverless instance or an `M10` or higher cluster.", + "type": "string" + }, + "provider": { + "type": "string" + } + }, + "required": [ + "provider" + ], + "type": "object" + }, + "DataLakeTenant": { + "properties": { + "cloudProviderConfig": { + "$ref": "#/components/schemas/DataLakeCloudProviderConfig" + }, + "dataProcessRegion": { + "$ref": "#/components/schemas/DataLakeDataProcessRegion" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hostnames": { + "description": "List that contains the hostnames assigned to the Federated Database Instance.", + "items": { + "description": "Unique hostname assigned to the Federated Database Instance.", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable label that identifies the Federated Database Instance.", + "type": "string" + }, + "privateEndpointHostnames": { + "description": "List that contains the sets of private endpoints and hostnames.", + "items": { + "$ref": "#/components/schemas/PrivateEndpointHostname" + }, + "readOnly": true, + "type": "array" + }, + "state": { + "description": "Label that indicates the status of the Federated Database Instance.", + "enum": [ + "UNVERIFIED", + "ACTIVE", + "DELETED" + ], + "readOnly": true, + "type": "string" + }, + "storage": { + "$ref": "#/components/schemas/DataLakeStorage" + } + }, + "type": "object" + }, + "DataMetricAlertView": { + "properties": { + "acknowledgedUntil": { + "description": "Date and time until which this alert has been acknowledged. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.\n\n- To acknowledge this alert forever, set the parameter value to 100 years in the future.\n\n- To unacknowledge a previously acknowledged alert, do not set this parameter value.", + "format": "date-time", + "type": "string" + }, + "acknowledgementComment": { + "description": "Comment that a MongoDB Cloud user submitted when acknowledging the alert.", + "example": "Expiration on 3/19. Silencing for 7days.", + "maxLength": 200, + "type": "string" + }, + "acknowledgingUsername": { + "description": "MongoDB Cloud username of the person who acknowledged the alert. The response returns this parameter if a MongoDB Cloud user previously acknowledged this alert.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration that sets this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster to which this alert applies. This resource returns this parameter for alerts of events impacting backups, replica sets, or sharded clusters.", + "example": "cluster1", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "currentValue": { + "$ref": "#/components/schemas/DataMetricValueView" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostMetricEventTypeViewAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hostnameAndPort": { + "description": "Hostname and port of the host to which this alert applies. The resource returns this parameter for alerts of events impacting hosts or replica sets.", + "example": "cloud-test.mongodb.com:27017", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastNotified": { + "description": "Date and time that any notifications were last sent for this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if MongoDB Cloud has sent notifications for this alert.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "metricName": { + "description": "Name of the metric against which Atlas checks the configured `metricThreshold.threshold`.\n\nTo learn more about the available metrics, see \u003ca href=\"https://www.mongodb.com/docs/atlas/reference/alert-host-metrics/#std-label-measurement-types\" target=\"_blank\"\u003eHost Metrics\u003c/a\u003e.\n\n**NOTE**: If you set eventTypeName to OUTSIDE_SERVERLESS_METRIC_THRESHOLD, you can specify only metrics available for serverless. To learn more, see \u003ca href=\"https://dochub.mongodb.org/core/alert-config-serverless-measurements\" target=\"_blank\"\u003eServerless Measurements\u003c/a\u003e.", + "example": "ASSERT_USER", + "readOnly": true, + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal character string that identifies the organization that owns the project to which this alert applies.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Name of the replica set to which this alert applies. The response returns this parameter for alerts of events impacting backups, hosts, or replica sets.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "resolved": { + "description": "Date and time that this alert changed to `\"status\" : \"CLOSED\"`. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter once `\"status\" : \"CLOSED\"`.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of this alert at the time you requested its details.", + "enum": [ + "CANCELLED", + "CLOSED", + "OPEN", + "TRACKING" + ], + "example": "OPEN", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Date and time when someone last updated this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "alertConfigId", + "created", + "eventTypeName", + "id", + "status", + "updated" + ], + "type": "object" + }, + "DataMetricEventView": { + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "currentValue": { + "$ref": "#/components/schemas/DataMetricValueView" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostMetricEventTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "metricName": { + "description": "Human-readable label of the metric associated with the **alertId**. This field may change type of **currentValue** field.", + "readOnly": true, + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "port": { + "description": "IANA port on which the MongoDB process listens for requests.", + "example": 27017, + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Human-readable label of the replica set associated with the event.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "shardName": { + "description": "Human-readable label of the shard associated with the event.", + "example": "event-sh-01", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "type": "object" + }, + "DataMetricThresholdView": { + "properties": { + "metricName": { + "description": "Human-readable label that identifies the metric against which MongoDB Cloud checks the configured **metricThreshold.threshold**.", + "type": "string" + }, + "mode": { + "description": "MongoDB Cloud computes the current metric value as an average.", + "enum": [ + "AVERAGE" + ], + "type": "string" + }, + "operator": { + "$ref": "#/components/schemas/Operator" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "double", + "type": "number" + }, + "units": { + "$ref": "#/components/schemas/DataMetricUnits" + } + }, + "required": [ + "metricName" + ], + "type": "object" + }, + "DataMetricUnits": { + "description": "Element used to express the quantity. This can be an element of time, storage capacity, and the like.", + "enum": [ + "BITS", + "KILOBITS", + "MEGABITS", + "GIGABITS", + "BYTES", + "KILOBYTES", + "MEGABYTES", + "GIGABYTES", + "TERABYTES", + "PETABYTES" + ], + "example": "BYTES", + "title": "Data Metric Units", + "type": "string" + }, + "DataMetricValueView": { + "description": "Measurement of the **metricName** recorded at the time of the event.", + "properties": { + "number": { + "description": "Amount of the **metricName** recorded at the time of the event. This value triggered the alert.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "units": { + "$ref": "#/components/schemas/DataMetricUnits" + } + }, + "readOnly": true, + "title": "Data Metric Value", + "type": "object" + }, + "DataProcessRegionView": { + "description": "Settings to configure the region where you wish to store your archived data.", + "discriminator": { + "mapping": { + "AWS": "#/components/schemas/AWSDataProcessRegionView", + "AZURE": "#/components/schemas/AzureDataProcessRegionView" + }, + "propertyName": "cloudProvider" + }, + "properties": { + "cloudProvider": { + "description": "Human-readable label that identifies the Cloud service provider where you store your archived data.", + "enum": [ + "AWS", + "AZURE" + ], + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "DataProtectionSettings": { + "properties": { + "authorizedEmail": { + "description": "Email address of the user who authorized to update the Backup Compliance Policy settings.", + "format": "email", + "type": "string" + }, + "authorizedUserFirstName": { + "description": "First name of the user who authorized to update the Backup Compliance Policy settings.", + "type": "string" + }, + "authorizedUserLastName": { + "description": "Last name of the user who authorized to update the Backup Compliance Policy settings.", + "type": "string" + }, + "copyProtectionEnabled": { + "default": false, + "description": "Flag that indicates whether to prevent cluster users from deleting backups copied to other regions, even if those additional snapshot regions are removed. If unspecified, this value defaults to false.", + "type": "boolean" + }, + "encryptionAtRestEnabled": { + "default": false, + "description": "Flag that indicates whether Encryption at Rest using Customer Key Management is required for all clusters with a Backup Compliance Policy. If unspecified, this value defaults to false.", + "externalDocs": { + "description": "Encryption at Rest using Customer Key Management", + "url": "https://www.mongodb.com/docs/atlas/security-kms-encryption/" + }, + "type": "boolean" + }, + "onDemandPolicyItem": { + "$ref": "#/components/schemas/BackupComplianceOnDemandPolicyItem" + }, + "pitEnabled": { + "default": false, + "description": "Flag that indicates whether the cluster uses Continuous Cloud Backups with a Backup Compliance Policy. If unspecified, this value defaults to false.", + "externalDocs": { + "description": "Continuous Cloud Backups", + "url": "https://docs.atlas.mongodb.com/backup/cloud-backup/overview/" + }, + "type": "boolean" + }, + "projectId": { + "description": "Unique 24-hexadecimal digit string that identifies the project for the Backup Compliance Policy.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "restoreWindowDays": { + "description": "Number of previous days that you can restore back to with Continuous Cloud Backup with a Backup Compliance Policy. You must specify a positive, non-zero integer, and the maximum retention window can't exceed the hourly retention time. This parameter applies only to Continuous Cloud Backups with a Backup Compliance Policy.", + "format": "int32", + "type": "integer" + }, + "scheduledPolicyItems": { + "description": "List that contains the specifications for one scheduled policy.", + "items": { + "$ref": "#/components/schemas/BackupComplianceScheduledPolicyItem" + }, + "type": "array" + }, + "state": { + "description": "Label that indicates the state of the Backup Compliance Policy settings. MongoDB Cloud ignores this setting when you enable or update the Backup Compliance Policy settings.", + "enum": [ + "ACTIVE", + "ENABLING", + "UPDATING", + "DISABLING" + ], + "readOnly": true, + "type": "string" + }, + "updatedDate": { + "description": "ISO 8601 timestamp format in UTC that indicates when the user updated the Data Protection Policy settings. MongoDB Cloud ignores this setting when you enable or update the Backup Compliance Policy settings.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "updatedUser": { + "description": "Email address that identifies the user who updated the Backup Compliance Policy settings. MongoDB Cloud ignores this email setting when you enable or update the Backup Compliance Policy settings.", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "authorizedEmail" + ], + "type": "object" + }, + "DataProtectionSettings20231001": { + "properties": { + "authorizedEmail": { + "description": "Email address of the user who authorized to update the Backup Compliance Policy settings.", + "format": "email", + "type": "string" + }, + "authorizedUserFirstName": { + "description": "First name of the user who authorized to updated the Backup Compliance Policy settings.", + "type": "string" + }, + "authorizedUserLastName": { + "description": "Last name of the user who authorized to updated the Backup Compliance Policy settings.", + "type": "string" + }, + "copyProtectionEnabled": { + "default": false, + "description": "Flag that indicates whether to prevent cluster users from deleting backups copied to other regions, even if those additional snapshot regions are removed. If unspecified, this value defaults to false.", + "type": "boolean" + }, + "encryptionAtRestEnabled": { + "default": false, + "description": "Flag that indicates whether Encryption at Rest using Customer Key Management is required for all clusters with a Backup Compliance Policy. If unspecified, this value defaults to false.", + "externalDocs": { + "description": "Encryption at Rest using Customer Key Management", + "url": "https://www.mongodb.com/docs/atlas/security-kms-encryption/" + }, + "type": "boolean" + }, + "onDemandPolicyItem": { + "$ref": "#/components/schemas/BackupComplianceOnDemandPolicyItem" + }, + "pitEnabled": { + "default": false, + "description": "Flag that indicates whether the cluster uses Continuous Cloud Backups with a Backup Compliance Policy. If unspecified, this value defaults to false.", + "externalDocs": { + "description": "Continuous Cloud Backups", + "url": "https://docs.atlas.mongodb.com/backup/cloud-backup/overview/" + }, + "type": "boolean" + }, + "projectId": { + "description": "Unique 24-hexadecimal digit string that identifies the project for the Backup Compliance Policy.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "restoreWindowDays": { + "description": "Number of previous days that you can restore back to with Continuous Cloud Backup with a Backup Compliance Policy. You must specify a positive, non-zero integer, and the maximum retention window can't exceed the hourly retention time. This parameter applies only to Continuous Cloud Backups with a Backup Compliance Policy.", + "format": "int32", + "type": "integer" + }, + "scheduledPolicyItems": { + "description": "List that contains the specifications for one scheduled policy.", + "items": { + "$ref": "#/components/schemas/BackupComplianceScheduledPolicyItem" + }, + "type": "array" + }, + "state": { + "description": "Label that indicates the state of the Backup Compliance Policy settings. MongoDB Cloud ignores this setting when you enable or update the Backup Compliance Policy settings.", + "enum": [ + "ACTIVE", + "ENABLING", + "UPDATING", + "DISABLING" + ], + "readOnly": true, + "type": "string" + }, + "updatedDate": { + "description": "ISO 8601 timestamp format in UTC that indicates when the user updated the Data Protection Policy settings. MongoDB Cloud ignores this setting when you enable or update the Backup Compliance Policy settings.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "updatedUser": { + "description": "Email address that identifies the user who updated the Backup Compliance Policy settings. MongoDB Cloud ignores this email setting when you enable or update the Backup Compliance Policy settings.", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "authorizedEmail", + "authorizedUserFirstName", + "authorizedUserLastName" + ], + "type": "object" + }, + "DatabaseInheritedRole": { + "description": "Role inherited from another context for this database user.", + "externalDocs": { + "description": "Built-in MongoDB Roles", + "url": "https://docs.mongodb.com/manual/reference/built-in-roles/" + }, + "properties": { + "db": { + "description": "Human-readable label that identifies the database on which someone grants the action to one MongoDB user.", + "type": "string" + }, + "role": { + "description": "Human-readable label that identifies the role inherited. Set this value to `admin` for every role except `read` or `readWrite`.", + "externalDocs": { + "description": "MongoDB Built-In Roles", + "url": "https://docs.mongodb.com/manual/reference/built-in-roles/" + }, + "type": "string" + } + }, + "required": [ + "db", + "role" + ], + "title": "Inherited Role", + "type": "object" + }, + "DatabasePermittedNamespaceResource": { + "description": "Namespace to which this database user has access.", + "externalDocs": { + "description": "Cluster Resources", + "url": "https://docs.mongodb.com/manual/reference/resource-document/#cluster-resource" + }, + "properties": { + "cluster": { + "description": "Flag that indicates whether to grant the action on the cluster resource. If `true`, MongoDB Cloud ignores the **actions.resources.collection** and **actions.resources.db** parameters.", + "type": "boolean" + }, + "collection": { + "description": "Human-readable label that identifies the collection on which you grant the action to one MongoDB user. If you don't set this parameter, you grant the action to all collections in the database specified in the **actions.resources.db** parameter. If you set `\"actions.resources.cluster\" : true`, MongoDB Cloud ignores this parameter.", + "type": "string" + }, + "db": { + "description": "Human-readable label that identifies the database on which you grant the action to one MongoDB user. If you set `\"actions.resources.cluster\" : true`, MongoDB Cloud ignores this parameter.", + "type": "string" + } + }, + "required": [ + "cluster", + "collection", + "db" + ], + "title": "Permitted Namespace", + "type": "object" + }, + "DatabasePrivilegeAction": { + "description": "Privilege action that the role grants.", + "properties": { + "action": { + "description": "Human-readable label that identifies the privilege action.", + "enum": [ + "FIND", + "INSERT", + "REMOVE", + "UPDATE", + "BYPASS_DOCUMENT_VALIDATION", + "USE_UUID", + "KILL_OP", + "CREATE_COLLECTION", + "CREATE_INDEX", + "DROP_COLLECTION", + "ENABLE_PROFILER", + "CHANGE_STREAM", + "COLL_MOD", + "COMPACT", + "CONVERT_TO_CAPPED", + "DROP_DATABASE", + "DROP_INDEX", + "RE_INDEX", + "RENAME_COLLECTION_SAME_DB", + "SET_USER_WRITE_BLOCK", + "BYPASS_USER_WRITE_BLOCK", + "LIST_SESSIONS", + "KILL_ANY_SESSION", + "COLL_STATS", + "CONN_POOL_STATS", + "DB_HASH", + "DB_STATS", + "GET_CMD_LINE_OPTS", + "GET_LOG", + "GET_PARAMETER", + "GET_SHARD_MAP", + "HOST_INFO", + "IN_PROG", + "LIST_DATABASES", + "LIST_COLLECTIONS", + "LIST_INDEXES", + "LIST_SHARDS", + "NET_STAT", + "REPL_SET_GET_CONFIG", + "REPL_SET_GET_STATUS", + "SERVER_STATUS", + "VALIDATE", + "SHARDING_STATE", + "TOP", + "SQL_GET_SCHEMA", + "SQL_SET_SCHEMA", + "VIEW_ALL_HISTORY", + "OUT_TO_S3", + "STORAGE_GET_CONFIG", + "STORAGE_SET_CONFIG", + "FLUSH_ROUTER_CONFIG", + "GET_STREAM_PROCESSOR", + "CREATE_STREAM_PROCESSOR", + "PROCESS_STREAM_PROCESSOR", + "START_STREAM_PROCESSOR", + "STOP_STREAM_PROCESSOR", + "DROP_STREAM_PROCESSOR", + "SAMPLE_STREAM_PROCESSOR", + "LIST_STREAM_PROCESSORS", + "LIST_CONNECTIONS", + "STREAM_PROCESSOR_STATS" + ], + "type": "string" + }, + "resources": { + "description": "List of resources on which you grant the action.", + "items": { + "$ref": "#/components/schemas/DatabasePermittedNamespaceResource" + }, + "type": "array" + } + }, + "required": [ + "action" + ], + "title": "Database Privilege Action", + "type": "object" + }, + "DatabaseRollingIndexRequest": { + "properties": { + "collation": { + "$ref": "#/components/schemas/Collation" + }, + "collection": { + "description": "Human-readable label of the collection for which MongoDB Cloud creates an index.", + "type": "string", + "writeOnly": true + }, + "db": { + "description": "Human-readable label of the database that holds the collection on which MongoDB Cloud creates an index.", + "type": "string", + "writeOnly": true + }, + "keys": { + "description": "List that contains one or more objects that describe the parameters that you want to index.", + "items": { + "additionalProperties": { + "description": "Key-value pair that sets the parameter to index as the key and the type of index as its value. To create a [multikey index](https://docs.mongodb.com/manual/core/index-multikey/), list each parameter in its own object within this array.", + "externalDocs": { + "description": "Index Types", + "url": "https://docs.mongodb.com/manual/indexes/#index-types" + }, + "maxProperties": 1, + "minProperties": 1, + "type": "string", + "writeOnly": true + }, + "description": "Key-value pair that sets the parameter to index as the key and the type of index as its value. To create a [multikey index](https://docs.mongodb.com/manual/core/index-multikey/), list each parameter in its own object within this array.", + "externalDocs": { + "description": "Index Types", + "url": "https://docs.mongodb.com/manual/indexes/#index-types" + }, + "maxProperties": 1, + "minProperties": 1, + "type": "object", + "writeOnly": true + }, + "type": "array", + "writeOnly": true + }, + "options": { + "$ref": "#/components/schemas/IndexOptions" + } + }, + "required": [ + "collection", + "db" + ], + "type": "object" + }, + "DatabaseUserRole": { + "description": "Range of resources available to this database user.", + "properties": { + "collectionName": { + "description": "Collection on which this role applies.", + "type": "string" + }, + "databaseName": { + "description": "Database to which the user is granted access privileges.", + "type": "string" + }, + "roleName": { + "description": "Human-readable label that identifies a group of privileges assigned to a database user. This value can either be a built-in role or a custom role.", + "enum": [ + "atlasAdmin", + "backup", + "clusterMonitor", + "dbAdmin", + "dbAdminAnyDatabase", + "enableSharding", + "read", + "readAnyDatabase", + "readWrite", + "readWriteAnyDatabase", + "\u003ca custom role name\u003e" + ], + "type": "string" + } + }, + "required": [ + "databaseName", + "roleName" + ], + "title": "Database User Role", + "type": "object" + }, + "Datadog": { + "description": "Details to integrate one Datadog account with one MongoDB Cloud project.", + "properties": { + "apiKey": { + "description": "Key that allows MongoDB Cloud to access your Datadog account.\n\n**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:\n\n* View or edit the alert through the Atlas UI.\n\n* Query the alert for the notification through the Atlas Administration API.", + "example": "****************************a23c", + "type": "string" + }, + "id": { + "description": "Integration id.", + "nullable": true, + "type": "string" + }, + "region": { + "description": "Two-letter code that indicates which regional URL MongoDB uses to access the Datadog API.\n\nTo learn more about Datadog's regions, see \u003ca href=\"https://docs.datadoghq.com/getting_started/site/\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eDatadog Sites\u003c/a\u003e.", + "enum": [ + "US", + "EU", + "US3", + "US5", + "AP1" + ], + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud. The value must match the third-party service integration type.", + "enum": [ + "DATADOG" + ], + "type": "string" + } + }, + "required": [ + "apiKey" + ], + "title": "DATADOG", + "type": "object" + }, + "DatadogNotification": { + "description": "Datadog notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "datadogApiKey": { + "description": "Datadog API Key that MongoDB Cloud needs to send alert notifications to Datadog. You can find this API key in the Datadog dashboard. The resource requires this parameter when `\"notifications.[n].typeName\" : \"DATADOG\"`.\n\n**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:\n\n* View or edit the alert through the Atlas UI.\n\n* Query the alert for the notification through the Atlas Administration API.", + "example": "****************************a23c", + "type": "string" + }, + "datadogRegion": { + "default": "US", + "description": "Datadog region that indicates which API Uniform Resource Locator (URL) to use. The resource requires this parameter when `\"notifications.[n].typeName\" : \"DATADOG\"`.\n\nTo learn more about Datadog's regions, see \u003ca href=\"https://docs.datadoghq.com/getting_started/site/\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eDatadog Sites\u003c/a\u003e.", + "enum": [ + "US", + "EU", + "US3", + "US5", + "AP1" + ], + "type": "string" + }, + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "integrationId": { + "description": "The id of the associated integration, the credentials of which to use for requests.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "DATADOG" + ], + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "Datadog Notification", + "type": "object" + }, + "DatasetRetentionPolicy": { + "description": "Dataset Retention Policy for a Scheduled Data Lake Pipeline.", + "properties": { + "lastModifiedDate": { + "description": "Date when retention policy was last modified.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "units": { + "description": "Quantity of time in which the Data Lake Pipeline measures dataset retention.", + "enum": [ + "DAYS", + "WEEKS", + "MONTHS" + ], + "type": "string" + }, + "value": { + "description": "Number that indicates the amount of days, weeks, or months that the Data Lake Pipeline will retain datasets.", + "format": "int32", + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "units", + "value" + ], + "title": "Dataset Retention Policy", + "type": "object" + }, + "DateCriteriaView": { + "allOf": [ + { + "$ref": "#/components/schemas/CriteriaView" + }, + { + "properties": { + "dateField": { + "description": "Indexed database parameter that stores the date that determines when data moves to the online archive. MongoDB Cloud archives the data when the current date exceeds the date in this database parameter plus the number of days specified through the **expireAfterDays** parameter. Set this parameter when you set `\"criteria.type\" : \"DATE\"`.", + "type": "string" + }, + "dateFormat": { + "default": "ISODATE", + "description": "Syntax used to write the date after which data moves to the online archive. Date can be expressed as ISO 8601 or Epoch timestamps. The Epoch timestamp can be expressed as nanoseconds, milliseconds, or seconds. Set this parameter when **\"criteria.type\" : \"DATE\"**.\nYou must set **\"criteria.type\" : \"DATE\"** if **\"collectionType\": \"TIMESERIES\"**.", + "enum": [ + "ISODATE", + "EPOCH_SECONDS", + "EPOCH_MILLIS", + "EPOCH_NANOSECONDS" + ], + "type": "string" + }, + "expireAfterDays": { + "description": "Number of days after the value in the **criteria.dateField** when MongoDB Cloud archives data in the specified cluster. Set this parameter when you set **\"criteria.type\" : \"DATE\"**.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + } + ], + "description": "**DATE criteria.type**.", + "title": "Archival Criteria", + "type": "object" + }, + "DedicatedHardwareSpec": { + "description": "Hardware specifications for read-only nodes in the region. Read-only nodes can never become the primary member, but can enable local reads.If you don't specify this parameter, no read-only nodes are deployed to the region.", + "oneOf": [ + { + "$ref": "#/components/schemas/AWSHardwareSpec" + }, + { + "$ref": "#/components/schemas/AzureHardwareSpec" + }, + { + "$ref": "#/components/schemas/GCPHardwareSpec" + } + ], + "properties": { + "nodeCount": { + "description": "Number of nodes of the given type for MongoDB Cloud to deploy to the region.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DedicatedHardwareSpec20250101": { + "description": "Hardware specifications for read-only nodes in the region. Read-only nodes can never become the primary member, but can enable local reads. If you don't specify this parameter, no read-only nodes are deployed to the region.", + "oneOf": [ + { + "$ref": "#/components/schemas/AWSHardwareSpec20250101" + }, + { + "$ref": "#/components/schemas/AzureHardwareSpec" + }, + { + "$ref": "#/components/schemas/GCPHardwareSpec" + } + ], + "properties": { + "diskSizeGB": { + "description": "Storage capacity that the host's root volume possesses expressed in gigabytes. Increase this number to add capacity. MongoDB Cloud requires this parameter if you set **replicationSpecs**. If you specify a disk size below the minimum (10 GB), this parameter defaults to the minimum disk size value. Storage charge calculations depend on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier.", + "format": "double", + "maximum": 4096, + "minimum": 10, + "type": "number" + }, + "nodeCount": { + "description": "Number of nodes of the given type for MongoDB Cloud to deploy to the region.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DefaultAlertConfigViewForNdsGroup": { + "description": "Other alerts which don't have extra details beside of basic one.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "description": "Incident that triggered this alert.", + "oneOf": [ + { + "enum": [ + "CREDIT_CARD_ABOUT_TO_EXPIRE" + ], + "title": "Billing Event Types", + "type": "string" + }, + { + "enum": [ + "CPS_SNAPSHOT_STARTED", + "CPS_SNAPSHOT_SUCCESSFUL", + "CPS_SNAPSHOT_FAILED", + "CPS_CONCURRENT_SNAPSHOT_FAILED_WILL_RETRY", + "CPS_SNAPSHOT_FALLBACK_SUCCESSFUL", + "CPS_SNAPSHOT_FALLBACK_FAILED", + "CPS_COPY_SNAPSHOT_STARTED", + "CPS_COPY_SNAPSHOT_FAILED", + "CPS_COPY_SNAPSHOT_SUCCESSFUL", + "CPS_RESTORE_SUCCESSFUL", + "CPS_EXPORT_SUCCESSFUL", + "CPS_RESTORE_FAILED", + "CPS_EXPORT_FAILED", + "CPS_AUTO_EXPORT_FAILED", + "CPS_SNAPSHOT_DOWNLOAD_REQUEST_FAILED", + "CPS_OPLOG_CAUGHT_UP" + ], + "title": "Cps Backup Event Types", + "type": "string" + }, + { + "enum": [ + "FTS_INDEX_DELETION_FAILED", + "FTS_INDEX_BUILD_COMPLETE", + "FTS_INDEX_BUILD_FAILED", + "FTS_INDEXES_RESTORE_FAILED" + ], + "title": "FTS Index Audit Types", + "type": "string" + }, + { + "enum": [ + "USERS_WITHOUT_MULTI_FACTOR_AUTH", + "ENCRYPTION_AT_REST_KMS_NETWORK_ACCESS_DENIED" + ], + "title": "Group Event Types", + "type": "string" + }, + { + "enum": [ + "CLUSTER_INSTANCE_STOP_START", + "CLUSTER_INSTANCE_RESYNC_REQUESTED", + "CLUSTER_INSTANCE_UPDATE_REQUESTED", + "SAMPLE_DATASET_LOAD_REQUESTED", + "TENANT_UPGRADE_TO_SERVERLESS_SUCCESSFUL", + "TENANT_UPGRADE_TO_SERVERLESS_FAILED", + "NETWORK_PERMISSION_ENTRY_ADDED", + "NETWORK_PERMISSION_ENTRY_REMOVED", + "NETWORK_PERMISSION_ENTRY_UPDATED" + ], + "title": "NDS Audit Types", + "type": "string" + }, + { + "enum": [ + "MAINTENANCE_IN_ADVANCED", + "MAINTENANCE_AUTO_DEFERRED", + "MAINTENANCE_STARTED", + "MAINTENANCE_NO_LONGER_NEEDED" + ], + "title": "NDS Maintenance Window Audit Types", + "type": "string" + }, + { + "enum": [ + "ONLINE_ARCHIVE_INSUFFICIENT_INDEXES_CHECK", + "ONLINE_ARCHIVE_MAX_CONSECUTIVE_OFFLOAD_WINDOWS_CHECK" + ], + "title": "Online Archive Event Types", + "type": "string" + }, + { + "enum": [ + "JOINED_GROUP", + "REMOVED_FROM_GROUP", + "USER_ROLES_CHANGED_AUDIT" + ], + "title": "User Event Types", + "type": "string" + }, + { + "enum": [ + "TAGS_MODIFIED", + "GROUP_TAGS_MODIFIED" + ], + "title": "Resource Event Types", + "type": "string" + }, + { + "enum": [ + "STREAM_PROCESSOR_STATE_IS_FAILED" + ], + "title": "Stream Processor Event Types", + "type": "string" + }, + { + "enum": [ + "COMPUTE_AUTO_SCALE_INITIATED_BASE", + "COMPUTE_AUTO_SCALE_INITIATED_ANALYTICS", + "COMPUTE_AUTO_SCALE_SCALE_DOWN_FAIL_BASE", + "COMPUTE_AUTO_SCALE_SCALE_DOWN_FAIL_ANALYTICS", + "COMPUTE_AUTO_SCALE_MAX_INSTANCE_SIZE_FAIL_BASE", + "COMPUTE_AUTO_SCALE_MAX_INSTANCE_SIZE_FAIL_ANALYTICS", + "COMPUTE_AUTO_SCALE_OPLOG_FAIL_BASE", + "COMPUTE_AUTO_SCALE_OPLOG_FAIL_ANALYTICS", + "DISK_AUTO_SCALE_INITIATED", + "DISK_AUTO_SCALE_MAX_DISK_SIZE_FAIL", + "DISK_AUTO_SCALE_OPLOG_FAIL" + ], + "title": "NDS Auto Scaling Audit Types", + "type": "string" + } + ], + "type": "object" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "Matching conditions for target resources.", + "items": { + "$ref": "#/components/schemas/AlertMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "Any Other Alert Configurations", + "type": "object" + }, + "DefaultAlertViewForNdsGroup": { + "description": "Other alerts which don't have extra details beside of basic one.", + "properties": { + "acknowledgedUntil": { + "description": "Date and time until which this alert has been acknowledged. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.\n\n- To acknowledge this alert forever, set the parameter value to 100 years in the future.\n\n- To unacknowledge a previously acknowledged alert, do not set this parameter value.", + "format": "date-time", + "type": "string" + }, + "acknowledgementComment": { + "description": "Comment that a MongoDB Cloud user submitted when acknowledging the alert.", + "example": "Expiration on 3/19. Silencing for 7days.", + "maxLength": 200, + "type": "string" + }, + "acknowledgingUsername": { + "description": "MongoDB Cloud username of the person who acknowledged the alert. The response returns this parameter if a MongoDB Cloud user previously acknowledged this alert.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration that sets this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "description": "Incident that triggered this alert.", + "oneOf": [ + { + "enum": [ + "CREDIT_CARD_ABOUT_TO_EXPIRE", + "PENDING_INVOICE_OVER_THRESHOLD", + "DAILY_BILL_OVER_THRESHOLD" + ], + "title": "Billing Event Types", + "type": "string" + }, + { + "enum": [ + "CPS_SNAPSHOT_STARTED", + "CPS_SNAPSHOT_SUCCESSFUL", + "CPS_SNAPSHOT_FAILED", + "CPS_CONCURRENT_SNAPSHOT_FAILED_WILL_RETRY", + "CPS_SNAPSHOT_BEHIND", + "CPS_COPY_SNAPSHOT_STARTED", + "CPS_COPY_SNAPSHOT_FAILED", + "CPS_COPY_SNAPSHOT_SUCCESSFUL", + "CPS_PREV_SNAPSHOT_OLD", + "CPS_SNAPSHOT_FALLBACK_SUCCESSFUL", + "CPS_SNAPSHOT_FALLBACK_FAILED", + "CPS_RESTORE_SUCCESSFUL", + "CPS_EXPORT_SUCCESSFUL", + "CPS_RESTORE_FAILED", + "CPS_EXPORT_FAILED", + "CPS_AUTO_EXPORT_FAILED", + "CPS_SNAPSHOT_DOWNLOAD_REQUEST_FAILED", + "CPS_OPLOG_BEHIND", + "CPS_OPLOG_CAUGHT_UP" + ], + "title": "Cps Backup Event Types", + "type": "string" + }, + { + "enum": [ + "AWS_ENCRYPTION_KEY_NEEDS_ROTATION", + "AZURE_ENCRYPTION_KEY_NEEDS_ROTATION", + "GCP_ENCRYPTION_KEY_NEEDS_ROTATION", + "AWS_ENCRYPTION_KEY_INVALID", + "AZURE_ENCRYPTION_KEY_INVALID", + "GCP_ENCRYPTION_KEY_INVALID" + ], + "title": "Encryption Event Types", + "type": "string" + }, + { + "enum": [ + "FTS_INDEX_DELETION_FAILED", + "FTS_INDEX_BUILD_COMPLETE", + "FTS_INDEX_BUILD_FAILED", + "FTS_INDEXES_RESTORE_FAILED" + ], + "title": "FTS Index Audit Types", + "type": "string" + }, + { + "enum": [ + "USERS_WITHOUT_MULTI_FACTOR_AUTH", + "ENCRYPTION_AT_REST_KMS_NETWORK_ACCESS_DENIED" + ], + "title": "Group Event Types", + "type": "string" + }, + { + "enum": [ + "CLUSTER_INSTANCE_STOP_START", + "CLUSTER_INSTANCE_RESYNC_REQUESTED", + "CLUSTER_INSTANCE_UPDATE_REQUESTED", + "SAMPLE_DATASET_LOAD_REQUESTED", + "TENANT_UPGRADE_TO_SERVERLESS_SUCCESSFUL", + "TENANT_UPGRADE_TO_SERVERLESS_FAILED", + "NETWORK_PERMISSION_ENTRY_ADDED", + "NETWORK_PERMISSION_ENTRY_REMOVED", + "NETWORK_PERMISSION_ENTRY_UPDATED" + ], + "title": "NDS Audit Types", + "type": "string" + }, + { + "enum": [ + "MAINTENANCE_IN_ADVANCED", + "MAINTENANCE_AUTO_DEFERRED", + "MAINTENANCE_STARTED", + "MAINTENANCE_NO_LONGER_NEEDED" + ], + "title": "NDS Maintenance Window Audit Types", + "type": "string" + }, + { + "enum": [ + "NDS_X509_USER_AUTHENTICATION_CUSTOMER_CA_EXPIRATION_CHECK", + "NDS_X509_USER_AUTHENTICATION_CUSTOMER_CRL_EXPIRATION_CHECK", + "NDS_X509_USER_AUTHENTICATION_MANAGED_USER_CERTS_EXPIRATION_CHECK" + ], + "title": "NDS x509 User Auth Event Types", + "type": "string" + }, + { + "enum": [ + "ONLINE_ARCHIVE_INSUFFICIENT_INDEXES_CHECK", + "ONLINE_ARCHIVE_MAX_CONSECUTIVE_OFFLOAD_WINDOWS_CHECK" + ], + "title": "Online Archive Event Types", + "type": "string" + }, + { + "enum": [ + "OUTSIDE_SERVERLESS_METRIC_THRESHOLD" + ], + "title": "Serverless Event Types", + "type": "string" + }, + { + "enum": [ + "JOINED_GROUP", + "REMOVED_FROM_GROUP", + "USER_ROLES_CHANGED_AUDIT" + ], + "title": "User Event Types", + "type": "string" + }, + { + "enum": [ + "TAGS_MODIFIED", + "GROUP_TAGS_MODIFIED" + ], + "title": "Resource Event Types", + "type": "string" + }, + { + "enum": [ + "STREAM_PROCESSOR_STATE_IS_FAILED" + ], + "title": "Stream Processor Event Types", + "type": "string" + }, + { + "enum": [ + "COMPUTE_AUTO_SCALE_INITIATED_BASE", + "COMPUTE_AUTO_SCALE_INITIATED_ANALYTICS", + "COMPUTE_AUTO_SCALE_SCALE_DOWN_FAIL_BASE", + "COMPUTE_AUTO_SCALE_SCALE_DOWN_FAIL_ANALYTICS", + "COMPUTE_AUTO_SCALE_MAX_INSTANCE_SIZE_FAIL_BASE", + "COMPUTE_AUTO_SCALE_MAX_INSTANCE_SIZE_FAIL_ANALYTICS", + "COMPUTE_AUTO_SCALE_OPLOG_FAIL_BASE", + "COMPUTE_AUTO_SCALE_OPLOG_FAIL_ANALYTICS", + "DISK_AUTO_SCALE_INITIATED", + "DISK_AUTO_SCALE_MAX_DISK_SIZE_FAIL", + "DISK_AUTO_SCALE_OPLOG_FAIL" + ], + "title": "NDS Auto Scaling Audit Types", + "type": "string" + } + ], + "readOnly": true, + "type": "object" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastNotified": { + "description": "Date and time that any notifications were last sent for this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if MongoDB Cloud has sent notifications for this alert.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal character string that identifies the organization that owns the project to which this alert applies.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "resolved": { + "description": "Date and time that this alert changed to `\"status\" : \"CLOSED\"`. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter once `\"status\" : \"CLOSED\"`.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of this alert at the time you requested its details.", + "enum": [ + "CANCELLED", + "CLOSED", + "OPEN", + "TRACKING" + ], + "example": "OPEN", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Date and time when someone last updated this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "alertConfigId", + "created", + "eventTypeName", + "id", + "status", + "updated" + ], + "title": "Any Other Alerts", + "type": "object" + }, + "DefaultEventViewForNdsGroup": { + "description": "Other events which don't have extra details beside of basic one.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "description": "Unique identifier of event type.", + "oneOf": [ + { + "enum": [ + "AUTO_INDEXING_ENABLED", + "AUTO_INDEXING_DISABLED", + "AUTO_INDEXING_INDEX_BUILD_SUBMITTED", + "AUTO_INDEXING_SLOW_INDEX_BUILD", + "AUTO_INDEXING_STALLED_INDEX_BUILD", + "AUTO_INDEXING_FAILED_INDEX_BUILD", + "AUTO_INDEXING_COMPLETED_INDEX_BUILD", + "AUTO_INDEXING_STARTED_INDEX_BUILD" + ], + "title": "Auto Indexing Event Types", + "type": "string" + }, + { + "enum": [ + "PEER_CREATED", + "PEER_DELETED", + "PEER_UPDATED" + ], + "title": "AWS Peer Vpc Audit Types", + "type": "string" + }, + { + "enum": [ + "AZURE_PEER_CREATED", + "AZURE_PEER_UPDATED", + "AZURE_PEER_ACTIVE", + "AZURE_PEER_DELETED" + ], + "title": "Azure Peer Network Audit Types", + "type": "string" + }, + { + "enum": [ + "CLUSTER_CONNECTION_GET_DATABASES", + "CLUSTER_CONNECTION_GET_DATABASE_COLLECTIONS", + "CLUSTER_CONNECTION_GET_DATABASE_NAMESPACES", + "CLUSTER_CONNECTION_GET_NAMESPACES_WITH_UUID", + "CLUSTER_CONNECTION_AGGREGATE", + "CLUSTER_CONNECTION_CREATE_COLLECTION", + "CLUSTER_CONNECTION_SAMPLE_COLLECTION_FIELD_NAMES" + ], + "title": "Cluster Connection Audit Types", + "type": "string" + }, + { + "enum": [ + "CPS_SNAPSHOT_STARTED", + "CPS_SNAPSHOT_SUCCESSFUL", + "CPS_SNAPSHOT_FAILED", + "CPS_CONCURRENT_SNAPSHOT_FAILED_WILL_RETRY", + "CPS_SNAPSHOT_FALLBACK_SUCCESSFUL", + "CPS_SNAPSHOT_BEHIND", + "CPS_COPY_SNAPSHOT_STARTED", + "CPS_COPY_SNAPSHOT_FAILED", + "CPS_COPY_SNAPSHOT_SUCCESSFUL", + "CPS_PREV_SNAPSHOT_OLD", + "CPS_SNAPSHOT_FALLBACK_FAILED", + "CPS_RESTORE_SUCCESSFUL", + "CPS_EXPORT_SUCCESSFUL", + "CPS_RESTORE_FAILED", + "CPS_EXPORT_FAILED", + "CPS_AUTO_EXPORT_FAILED", + "CPS_SNAPSHOT_DOWNLOAD_REQUEST_FAILED", + "CPS_OPLOG_BEHIND", + "CPS_OPLOG_CAUGHT_UP" + ], + "title": "Cps Backup Event Types", + "type": "string" + }, + { + "enum": [ + "CPS_DATA_PROTECTION_ENABLE_REQUESTED", + "CPS_DATA_PROTECTION_ENABLED", + "CPS_DATA_PROTECTION_UPDATE_REQUESTED", + "CPS_DATA_PROTECTION_UPDATED", + "CPS_DATA_PROTECTION_DISABLE_REQUESTED", + "CPS_DATA_PROTECTION_DISABLED" + ], + "title": "CPS Backup Compliance Policy Event Types", + "type": "string" + }, + { + "enum": [ + "CPS_RESTORE_REQUESTED_AUDIT", + "CPS_SNAPSHOT_SCHEDULE_UPDATED_AUDIT", + "CPS_SNAPSHOT_FASTER_RESTORES_START_AUDIT", + "CPS_SNAPSHOT_FASTER_RESTORES_SUCCESS_AUDIT", + "CPS_SNAPSHOT_FASTER_RESTORES_FAILED_AUDIT", + "CPS_SNAPSHOT_DELETED_AUDIT", + "CPS_SNAPSHOT_RETENTION_MODIFIED_AUDIT", + "CPS_SNAPSHOT_IN_PROGRESS_AUDIT", + "CPS_SNAPSHOT_COMPLETED_AUDIT", + "CPS_ON_DEMAND_SNAPSHOT_REQUESTED", + "CPS_OPLOG_CAUGHT_UP_AUDIT", + "CPS_OPLOG_BEHIND_AUDIT" + ], + "title": "Disk Backup Event Types", + "type": "string" + }, + { + "enum": [ + "AWS_ENCRYPTION_KEY_ROTATED", + "AWS_ENCRYPTION_KEY_NEEDS_ROTATION", + "AZURE_ENCRYPTION_KEY_ROTATED", + "AZURE_ENCRYPTION_KEY_NEEDS_ROTATION", + "GCP_ENCRYPTION_KEY_ROTATED", + "GCP_ENCRYPTION_KEY_NEEDS_ROTATION", + "AWS_ENCRYPTION_KEY_VALID", + "AWS_ENCRYPTION_KEY_INVALID", + "AZURE_ENCRYPTION_KEY_VALID", + "AZURE_ENCRYPTION_KEY_INVALID", + "GCP_ENCRYPTION_KEY_VALID", + "GCP_ENCRYPTION_KEY_INVALID" + ], + "title": "Encryption Event Types", + "type": "string" + }, + { + "enum": [ + "BUCKET_CREATED_AUDIT", + "BUCKET_DELETED_AUDIT" + ], + "title": "Export Bucket Audit Types", + "type": "string" + }, + { + "enum": [ + "GCP_PEER_CREATED", + "GCP_PEER_DELETED", + "GCP_PEER_UPDATED", + "GCP_PEER_ACTIVE", + "GCP_PEER_INACTIVE" + ], + "title": "GCP Peer Vpc Audit Types", + "type": "string" + }, + { + "enum": [ + "DATA_EXPLORER_ENABLED", + "DATA_EXPLORER_DISABLED", + "CREDIT_CARD_ADDED", + "CREDIT_CARD_UPDATED", + "GROUP_DELETED", + "GROUP_CREATED", + "GROUP_MOVED", + "GROUP_TEMPORARILY_ACTIVATED", + "GROUP_ACTIVATED", + "GROUP_LOCKED", + "GROUP_SUSPENDED", + "GROUP_FLUSHED", + "GROUP_NAME_CHANGED", + "GROUP_CHARTS_ACTIVATION_REQUESTED", + "GROUP_CHARTS_ACTIVATED", + "GROUP_CHARTS_UPGRADED", + "GROUP_CHARTS_RESET" + ], + "title": "Group Audit Types", + "type": "string" + }, + { + "enum": [ + "PAID_IN_FULL", + "DELINQUENT", + "ALL_USERS_HAVE_MULTI_FACTOR_AUTH", + "USERS_WITHOUT_MULTI_FACTOR_AUTH", + "ENCRYPTION_AT_REST_KMS_NETWORK_ACCESS_DENIED", + "ENCRYPTION_AT_REST_KMS_NETWORK_ACCESS_RESTORED" + ], + "title": "Group Event Types", + "type": "string" + }, + { + "enum": [ + "INTEGRATION_CONFIGURED", + "INTEGRATION_REMOVED" + ], + "title": "Group Integration Event Types", + "type": "string" + }, + { + "enum": [ + "ROLLING_INDEX_FAILED_INDEX_BUILD", + "ROLLING_INDEX_SUCCESS_INDEX_BUILD", + "INDEX_FAILED_INDEX_BUILD", + "INDEX_SUCCESS_INDEX_BUILD" + ], + "title": "Index Build Audit Types", + "type": "string" + }, + { + "enum": [ + "DB_CHECK_SUBMITTED", + "DB_CHECK_UPDATED", + "CLUSTER_SAMPLED_FOR_DB_CHECK", + "DB_CHECK_SCHEDULED_FOR_CLUSTER", + "DB_CHECK_DEFERRED_FOR_CLUSTER", + "CLUSTER_OPTED_OUT_OF_DB_CHECK" + ], + "title": "NDS DB Check Audit Types", + "type": "string" + }, + { + "enum": [ + "CLUSTER_SAMPLED_FOR_DATA_VALIDATION", + "DATA_VALIDATION_SUBMITTED_FOR_CLUSTER", + "CLUSTER_OPTED_OUT_OF_DATA_VALIDATION" + ], + "title": "NDS Data Validation Audit Types", + "type": "string" + }, + { + "enum": [ + "MAINTENANCE_IN_ADVANCED", + "MAINTENANCE_AUTO_DEFERRED", + "MAINTENANCE_STARTED", + "MAINTENANCE_NO_LONGER_NEEDED" + ], + "title": "NDS Maintenance Window Audit Types", + "type": "string" + }, + { + "enum": [ + "SERVERLESS_AUTO_SCALING_INITIATED", + "SERVERLESS_VERTICAL_SCALING_INITIATED", + "SERVERLESS_HORIZONTAL_SCALING_INITIATED", + "SERVERLESS_MTM_DRAIN_REQUESTED", + "SERVERLESS_MTM_DRAIN_INITIATED", + "SERVERLESS_MTM_DRAIN_COMPLETED", + "SERVERLESS_MTM_DRAIN_STOPPED" + ], + "title": "NDS Serverless Auto Scaling Audit Types", + "type": "string" + }, + { + "enum": [ + "TENANT_ENDPOINT_SERVICE_DEPLOYMENT_CREATED", + "TENANT_ENDPOINT_SERVICE_CREATED", + "TENANT_ENDPOINT_SERVICE_AVAILABLE", + "TENANT_ENDPOINT_SERVICE_DEPLOYMENT_DELETE_REQUESTED", + "TENANT_ENDPOINT_SERVICE_DELETED", + "TENANT_ENDPOINT_SERVICE_DEPLOYMENT_DELETED", + "TENANT_ENDPOINT_SERVICE_DEPLOYMENT_NUM_DESIRED_ENDPOINT_SERVICES_INCREASED" + ], + "title": "NDS Tenant Endpoint Service Deployment Audit Types", + "type": "string" + }, + { + "enum": [ + "NDS_X509_USER_AUTHENTICATION_CUSTOMER_CA_EXPIRATION_RESOLVED", + "NDS_X509_USER_AUTHENTICATION_CUSTOMER_CA_EXPIRATION_CHECK", + "NDS_X509_USER_AUTHENTICATION_CUSTOMER_CRL_EXPIRATION_RESOLVED", + "NDS_X509_USER_AUTHENTICATION_CUSTOMER_CRL_EXPIRATION_CHECK", + "NDS_X509_USER_AUTHENTICATION_MANAGED_USER_CERTS_EXPIRATION_RESOLVED", + "NDS_X509_USER_AUTHENTICATION_MANAGED_USER_CERTS_EXPIRATION_CHECK" + ], + "title": "NDS x509 User Auth Event Types", + "type": "string" + }, + { + "enum": [ + "ONLINE_ARCHIVE_INSUFFICIENT_INDEXES_CHECK", + "ONLINE_ARCHIVE_INSUFFICIENT_INDEXES_RESOLVED", + "ONLINE_ARCHIVE_UP_TO_DATE", + "ONLINE_ARCHIVE_DATA_EXPIRATION_RESOLVED", + "ONLINE_ARCHIVE_MAX_CONSECUTIVE_OFFLOAD_WINDOWS_CHECK" + ], + "title": "Online Archive Event Types", + "type": "string" + }, + { + "enum": [ + "ENDPOINT_SERVICE_CREATED", + "ENDPOINT_SERVICE_DELETED", + "INTERFACE_ENDPOINT_CREATED", + "INTERFACE_ENDPOINT_DELETED", + "INTERFACE_ENDPOINT_PATCHED" + ], + "title": "Private Link Audit Types", + "type": "string" + }, + { + "enum": [ + "PROACTIVE_OPERATION_EVENT_LOGGED" + ], + "title": "Proactive Operation Event Types", + "type": "string" + }, + { + "enum": [ + "SERVERLESS_DEPLOYMENT_CREATED", + "SERVERLESS_DEPLOYMENT_DELETED", + "SERVERLESS_DEPLOYMENT_UPDATED", + "SERVERLESS_DEPLOYMENT_INSTANCE_REPLACED", + "SERVERLESS_DEPLOYMENT_INSTANCE_REBOOTED", + "SERVERLESS_DEPLOYMENT_ENDPOINT_SERVICE_LINKED", + "SERVERLESS_DEPLOYMENT_ENDPOINT_SERVICE_UNLINKED", + "SERVERLESS_DEPLOYMENT_ENVOY_INSTANCE_UIS_KEYS_ROTATED" + ], + "title": "Serverless Deployment Audit Types", + "type": "string" + }, + { + "enum": [ + "INSIDE_SERVERLESS_METRIC_THRESHOLD", + "OUTSIDE_SERVERLESS_METRIC_THRESHOLD" + ], + "title": "Serverless Event Types", + "type": "string" + }, + { + "enum": [ + "SETUP_SERVERLESS_INITIATED" + ], + "title": "Setup Serverless Audit Types", + "type": "string" + }, + { + "enum": [ + "MAX_PROCESSOR_COUNT_REACHED" + ], + "title": "Streams Event Types", + "type": "string" + }, + { + "enum": [ + "STREAM_PROCESSOR_STATE_IS_FAILED" + ], + "title": "Stream Processor Event Types", + "type": "string" + }, + { + "enum": [ + "CASE_CREATED" + ], + "title": "Support Case Event Types", + "type": "string" + }, + { + "enum": [ + "SUPPORT_EMAILS_SENT_SUCCESSFULLY", + "SUPPORT_EMAILS_SENT_FAILURE" + ], + "title": "Support Event Types", + "type": "string" + }, + { + "enum": [ + "TENANT_SNAPSHOT_STARTED_AUDIT", + "TENANT_SNAPSHOT_COMPLETED_AUDIT", + "TENANT_SNAPSHOT_DELETED_AUDIT", + "TENANT_RESTORE_REQUESTED_AUDIT", + "TENANT_RESTORE_COMPLETED_AUDIT", + "TENANT_SNAPSHOT_DOWNLOAD_REQUESTED_AUDIT" + ], + "title": "Tenant Backup Event Types", + "type": "string" + }, + { + "enum": [ + "CLUSTER_VERSION_FIXED", + "CLUSTER_VERSION_UNFIXED", + "CLUSTER_FCV_FIXED", + "CLUSTER_FCV_UNFIXED", + "AGENT_VERSION_FIXED", + "AGENT_VERSION_UNFIXED", + "FIXED_VERSION_UPDATED", + "FIXED_AGENT_VERSION_UPDATED", + "CLUSTER_FCV_DOWNGRADED" + ], + "title": "Version Audit Types", + "type": "string" + } + ], + "type": "object" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Any Other Events", + "type": "object" + }, + "DefaultEventViewForOrg": { + "description": "Other events which don't have extra details beside of basic one.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "description": "Unique identifier of event type.", + "oneOf": [ + { + "enum": [ + "FEDERATION_SETTINGS_CREATED", + "FEDERATION_SETTINGS_DELETED", + "FEDERATION_SETTINGS_UPDATED", + "IDENTITY_PROVIDER_CREATED", + "IDENTITY_PROVIDER_UPDATED", + "IDENTITY_PROVIDER_DELETED", + "IDENTITY_PROVIDER_ACTIVATED", + "OIDC_IDENTITY_PROVIDER_UPDATED", + "IDENTITY_PROVIDER_DEACTIVATED", + "IDENTITY_PROVIDER_JWKS_REVOKED", + "OIDC_IDENTITY_PROVIDER_ENABLED", + "OIDC_IDENTITY_PROVIDER_DISABLED", + "DOMAINS_ASSOCIATED", + "DOMAIN_CREATED", + "DOMAIN_DELETED", + "DOMAIN_VERIFIED", + "ORG_SETTINGS_CONFIGURED", + "ORG_SETTINGS_UPDATED", + "ORG_SETTINGS_DELETED", + "RESTRICT_ORG_MEMBERSHIP_ENABLED", + "RESTRICT_ORG_MEMBERSHIP_DISABLED", + "ROLE_MAPPING_CREATED", + "ROLE_MAPPING_UPDATED", + "ROLE_MAPPING_DELETED" + ], + "title": "Federation Settings Event Types", + "type": "string" + }, + { + "enum": [ + "GROUP_DELETED", + "GROUP_CREATED", + "GROUP_MOVED" + ], + "title": "Group Audit Types", + "type": "string" + }, + { + "enum": [ + "MLAB_MIGRATION_COMPLETED", + "MLAB_MIGRATION_TARGET_CLUSTER_CREATED", + "MLAB_MIGRATION_DATABASE_USERS_IMPORTED", + "MLAB_MIGRATION_IP_WHITELIST_IMPORTED", + "MLAB_MIGRATION_TARGET_CLUSTER_SET", + "MLAB_MIGRATION_DATABASE_RENAMED", + "MLAB_MIGRATION_LIVE_IMPORT_STARTED", + "MLAB_MIGRATION_LIVE_IMPORT_READY_FOR_CUTOVER", + "MLAB_MIGRATION_LIVE_IMPORT_CUTOVER_COMPLETE", + "MLAB_MIGRATION_LIVE_IMPORT_ERROR", + "MLAB_MIGRATION_LIVE_IMPORT_CANCELLED", + "MLAB_MIGRATION_DUMP_AND_RESTORE_TEST_STARTED", + "MLAB_MIGRATION_DUMP_AND_RESTORE_TEST_SKIPPED", + "MLAB_MIGRATION_DUMP_AND_RESTORE_STARTED", + "MLAB_MIGRATION_SUPPORT_PLAN_SELECTED", + "MLAB_MIGRATION_SUPPORT_PLAN_OPTED_OUT" + ], + "title": "Mlab Migration Audit Types", + "type": "string" + }, + { + "enum": [ + "AWS_SELF_SERVE_ACCOUNT_LINKED", + "AWS_SELF_SERVE_ACCOUNT_LINK_PENDING", + "AWS_SELF_SERVE_ACCOUNT_CANCELLED", + "AWS_SELF_SERVE_ACCOUNT_LINK_FAILED", + "GCP_SELF_SERVE_ACCOUNT_LINK_PENDING", + "GCP_SELF_SERVE_ACCOUNT_LINK_FAILED", + "AZURE_SELF_SERVE_ACCOUNT_LINKED", + "AZURE_SELF_SERVE_ACCOUNT_LINK_PENDING", + "AZURE_SELF_SERVE_ACCOUNT_CANCELLED", + "AZURE_SELF_SERVE_ACCOUNT_LINK_FAILED", + "GCP_SELF_SERVE_ACCOUNT_LINKED", + "GCP_SELF_SERVE_ACCOUNT_CANCELLED" + ], + "title": "Partner Event Types", + "type": "string" + }, + { + "enum": [ + "SUPPORT_EMAILS_SENT_SUCCESSFULLY", + "SUPPORT_EMAILS_SENT_FAILURE" + ], + "title": "Support Event Types", + "type": "string" + } + ], + "type": "object" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Any Other Events", + "type": "object" + }, + "DefaultLimit": { + "description": "Details of user managed limits", + "properties": { + "currentUsage": { + "description": "Amount that indicates the current usage of the limit.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "defaultLimit": { + "description": "Default value of the limit.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "maximumLimit": { + "description": "Maximum value of the limit.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "name": { + "description": "Human-readable label that identifies the user-managed limit to modify.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Amount to set the limit to.", + "format": "int64", + "type": "integer" + } + }, + "required": [ + "name", + "value" + ], + "title": "Default Limit", + "type": "object" + }, + "DefaultScheduleView": { + "allOf": [ + { + "$ref": "#/components/schemas/OnlineArchiveSchedule" + } + ], + "required": [ + "type" + ], + "type": "object" + }, + "DeleteCopiedBackups": { + "description": "Deleted copy setting whose backup copies need to also be deleted.", + "properties": { + "cloudProvider": { + "description": "Human-readable label that identifies the cloud provider for the deleted copy setting whose backup copies you want to delete.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "type": "string", + "writeOnly": true + }, + "regionName": { + "description": "Target region for the deleted copy setting whose backup copies you want to delete. Please supply the 'Atlas Region' which can be found under [Cloud Providers](https://www.mongodb.com/docs/atlas/reference/cloud-providers/) 'regions' link.", + "type": "string", + "writeOnly": true + }, + "replicationSpecId": { + "description": "Unique 24-hexadecimal digit string that identifies the replication object for a zone in a cluster. For global clusters, there can be multiple zones to choose from. For sharded clusters and replica setclusters, there is only one zone in the cluster. To find the Replication Spec Id, do a GET request to Return One Cluster in One Project and consult the replicationSpecs array [Return One Cluster in One Project](#operation/getLegacyCluster).", + "type": "string", + "writeOnly": true + }, + "zoneId": { + "description": "Unique 24-hexadecimal digit string that identifies the zone in a cluster. For global clusters, there can be multiple zones to choose from. For sharded clusters and replica set clusters, there is only one zone in the cluster. To find the Zone Id, do a GET request to Return One Cluster from One Project and consult the replicationSpecs array [Return One Cluster from One Project](#operation/getCluster).", + "type": "string", + "writeOnly": true + } + }, + "type": "object", + "writeOnly": true + }, + "DeleteCopiedBackups20250101": { + "description": "Deleted copy setting whose backup copies need to also be deleted.", + "properties": { + "cloudProvider": { + "description": "Human-readable label that identifies the cloud provider for the deleted copy setting whose backup copies you want to delete.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "type": "string", + "writeOnly": true + }, + "regionName": { + "description": "Target region for the deleted copy setting whose backup copies you want to delete. Please supply the 'Atlas Region' which can be found under [Cloud Providers](https://www.mongodb.com/docs/atlas/reference/cloud-providers/) 'regions' link.", + "type": "string", + "writeOnly": true + }, + "zoneId": { + "description": "Unique 24-hexadecimal digit string that identifies the zone in a cluster. For global clusters, there can be multiple zones to choose from. For sharded clusters and replica set clusters, there is only one zone in the cluster. To find the Zone Id, do a GET request to Return One Cluster from One Project and consult the replicationSpecs array [Return One Cluster from One Project](#operation/getCluster).", + "type": "string", + "writeOnly": true + } + }, + "type": "object", + "writeOnly": true + }, + "Destination": { + "description": "Document that describes the destination of the migration.", + "properties": { + "clusterName": { + "description": "Label that identifies the destination cluster.", + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the destination project.", + "example": "9b43a5b329223c3a1591a678", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "hostnameSchemaType": { + "default": "PUBLIC", + "description": "The network type to use between the migration host and the target cluster.", + "enum": [ + "PUBLIC", + "PRIVATE_LINK", + "VPC_PEERING" + ], + "type": "string" + }, + "privateLinkId": { + "description": "Represents the endpoint to use when the host schema type is `PRIVATE_LINK`.", + "type": "string" + } + }, + "required": [ + "clusterName", + "groupId", + "hostnameSchemaType" + ], + "type": "object" + }, + "DiskBackupApiPolicyItem": { + "description": "Specifications for one policy.", + "properties": { + "frequencyInterval": { + "description": "Number that indicates the frequency interval for a set of Snapshots. A value of `1` specifies the first instance of the corresponding `frequencyType`.\n\n- In a yearly policy item, `1` indicates that the yearly Snapshot occurs on the first day of January and `12` indicates the first day of December.\n\n- In a monthly policy item, `1` indicates that the monthly Snapshot occurs on the first day of the month and `40` indicates the last day of the month.\n\n- In a weekly policy item, `1` indicates that the weekly Snapshot occurs on Monday and `7` indicates Sunday.\n\n- In an hourly policy item, you can set the frequency interval to `1`, `2`, `4`, `6`, `8`, or `12`. For hourly policy items for NVMe clusters, MongoDB Cloud accepts only `12` as the frequency interval value.\n\n MongoDB Cloud ignores this setting for non-hourly policy items in Backup Compliance Policy settings.", + "enum": [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 40 + ], + "format": "int32", + "type": "integer" + }, + "frequencyType": { + "description": "Human-readable label that identifies the frequency type associated with the backup policy.", + "enum": [ + "daily", + "hourly", + "weekly", + "monthly", + "yearly", + "ondemand" + ], + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this backup policy item.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "retentionUnit": { + "description": "Unit of time in which MongoDB Cloud measures Snapshot retention.", + "enum": [ + "days", + "weeks", + "months", + "years" + ], + "type": "string" + }, + "retentionValue": { + "description": "Duration in days, weeks, months, or years that MongoDB Cloud retains the Snapshot. For less frequent policy items, MongoDB Cloud requires that you specify a value greater than or equal to the value specified for more frequent policy items.\n\nFor example: If the hourly policy item specifies a retention of two days, you must specify two days or greater for the retention of the weekly policy item.", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "frequencyInterval", + "frequencyType", + "retentionUnit", + "retentionValue" + ], + "type": "object" + }, + "DiskBackupCopySetting": { + "description": "Copy setting item in the desired backup policy.", + "properties": { + "cloudProvider": { + "description": "Human-readable label that identifies the cloud provider that stores the snapshot copy.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "type": "string" + }, + "frequencies": { + "description": "List that describes which types of snapshots to copy.", + "items": { + "enum": [ + "HOURLY", + "DAILY", + "WEEKLY", + "MONTHLY", + "YEARLY", + "ON_DEMAND" + ], + "type": "string" + }, + "type": "array" + }, + "regionName": { + "description": "Target region to copy snapshots belonging to replicationSpecId to. Please supply the 'Atlas Region' which can be found under [Cloud Providers](https://www.mongodb.com/docs/atlas/reference/cloud-providers/) 'regions' link.", + "type": "string" + }, + "replicationSpecId": { + "description": "Unique 24-hexadecimal digit string that identifies the replication object for a zone in a cluster. For global clusters, there can be multiple zones to choose from. For sharded clusters and replica set clusters, there is only one zone in the cluster. To find the Replication Spec Id, do a GET request to Return One Cluster in One Project and consult the replicationSpecs array [Return One Cluster in One Project](#operation/getLegacyCluster).", + "type": "string" + }, + "shouldCopyOplogs": { + "description": "Flag that indicates whether to copy the oplogs to the target region. You can use the oplogs to perform point-in-time restores.", + "type": "boolean" + } + }, + "type": "object" + }, + "DiskBackupCopySetting20250101": { + "description": "Copy setting item in the desired backup policy.", + "properties": { + "cloudProvider": { + "description": "Human-readable label that identifies the cloud provider that stores the snapshot copy.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "type": "string" + }, + "frequencies": { + "description": "List that describes which types of snapshots to copy.", + "items": { + "enum": [ + "HOURLY", + "DAILY", + "WEEKLY", + "MONTHLY", + "YEARLY", + "ON_DEMAND" + ], + "type": "string" + }, + "type": "array" + }, + "regionName": { + "description": "Target region to copy snapshots belonging to zoneId. Please supply the 'Atlas Region' which can be found under [Cloud Providers](https://www.mongodb.com/docs/atlas/reference/cloud-providers/) 'regions' link.", + "type": "string" + }, + "shouldCopyOplogs": { + "description": "Flag that indicates whether to copy the oplogs to the target region. You can use the oplogs to perform point-in-time restores.", + "type": "boolean" + }, + "zoneId": { + "description": "Unique 24-hexadecimal digit string that identifies the zone in a cluster. For global clusters, there can be multiple zones to choose from. For sharded clusters and replica set clusters, there is only one zone in the cluster. To find the Zone Id, do a GET request to Return One Cluster from One Project and consult the replicationSpecs array [Return One Cluster From One Project](#operation/getCluster).", + "type": "string" + } + }, + "required": [ + "zoneId" + ], + "type": "object" + }, + "DiskBackupExportJob": { + "properties": { + "components": { + "description": "Information on the export job for each replica set in the sharded cluster.", + "items": { + "$ref": "#/components/schemas/DiskBackupExportMember" + }, + "readOnly": true, + "type": "array" + }, + "createdAt": { + "description": "Date and time when someone created this export job. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "customData": { + "description": "Collection of key-value pairs that represent custom data for the metadata file that MongoDB Cloud uploads to the bucket when the export job finishes.", + "items": { + "$ref": "#/components/schemas/BackupLabel" + }, + "type": "array" + }, + "deliveryUrl": { + "description": "One or more Uniform Resource Locators (URLs) that point to the compressed snapshot files for manual download. MongoDB Cloud returns this parameter when `\"deliveryType\" : \"download\"`.", + "items": { + "description": "One Uniform Resource Locator that point to the compressed snapshot files for manual download.", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "exportBucketId": { + "description": "Unique 24-hexadecimal character string that identifies the Export Bucket to export to.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "exportStatus": { + "$ref": "#/components/schemas/ExportStatus" + }, + "finishedAt": { + "description": "Date and time when this export job completed. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal character string that identifies the restore job.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "prefix": { + "description": "Full path on the cloud provider bucket to the folder where the snapshot is exported.", + "pattern": "/exported_snapshots/\\{ORG-NAME\\}/\\{PROJECT-NAME\\}/\\{CLUSTER-NAME\\}/\\{SNAPSHOT-INITIATION-DATE\\}/\\{TIMESTAMP\\}", + "readOnly": true, + "type": "string" + }, + "snapshotId": { + "description": "Unique 24-hexadecimal character string that identifies the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "state": { + "description": "State of the export job.", + "enum": [ + "Cancelled", + "Failed", + "InProgress", + "Queued", + "Successful" + ], + "readOnly": true, + "type": "string" + } + }, + "required": [ + "exportBucketId" + ], + "type": "object" + }, + "DiskBackupExportJobRequest": { + "properties": { + "customData": { + "description": "Collection of key-value pairs that represent custom data to add to the metadata file that MongoDB Cloud uploads to the bucket when the export job finishes.", + "items": { + "$ref": "#/components/schemas/BackupLabel" + }, + "type": "array" + }, + "exportBucketId": { + "description": "Unique 24-hexadecimal character string that identifies the Export Bucket to export to.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string", + "writeOnly": true + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "snapshotId": { + "description": "Unique 24-hexadecimal character string that identifies the Cloud Backup Snapshot to export.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string", + "writeOnly": true + } + }, + "required": [ + "exportBucketId", + "snapshotId" + ], + "type": "object" + }, + "DiskBackupExportMember": { + "properties": { + "exportId": { + "description": "Unique 24-hexadecimal character string that identifies the the Cloud Backup snapshot export job for each shard in a sharded cluster.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Human-readable label that identifies the replica set on the sharded cluster.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "DiskBackupOnDemandSnapshotRequest": { + "properties": { + "description": { + "description": "Human-readable phrase or sentence that explains the purpose of the snapshot. The resource returns this parameter when `\"status\" : \"onDemand\"`.", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "retentionInDays": { + "description": "Number of days that MongoDB Cloud should retain the on-demand snapshot. Must be at least **1**.", + "format": "int32", + "minimum": 1, + "type": "integer" + } + }, + "type": "object" + }, + "DiskBackupReplicaSet": { + "description": "Details of the replica set snapshot that MongoDB Cloud created.", + "properties": { + "cloudProvider": { + "description": "Human-readable label that identifies the cloud provider that stores this snapshot. The resource returns this parameter when `\"type\": \"replicaSet\"`.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "readOnly": true, + "type": "string" + }, + "copyRegions": { + "description": "List that identifies the regions to which MongoDB Cloud copies the snapshot.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "createdAt": { + "description": "Date and time when MongoDB Cloud took the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Human-readable phrase or sentence that explains the purpose of the snapshot. The resource returns this parameter when `\"status\": \"onDemand\"`.", + "readOnly": true, + "type": "string" + }, + "expiresAt": { + "description": "Date and time when MongoDB Cloud deletes the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "frequencyType": { + "description": "Human-readable label that identifies how often this snapshot triggers.", + "enum": [ + "hourly", + "daily", + "weekly", + "monthly", + "yearly" + ], + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "masterKeyUUID": { + "description": "Unique string that identifies the Amazon Web Services (AWS) Key Management Service (KMS) Customer Master Key (CMK) used to encrypt the snapshot. The resource returns this value when `\"encryptionEnabled\" : true`.", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "mongodVersion": { + "description": "Version of the MongoDB host that this snapshot backs up.", + "pattern": "([\\d]+\\.[\\d]+\\.[\\d]+)", + "readOnly": true, + "type": "string" + }, + "policyItems": { + "description": "List that contains unique identifiers for the policy items.", + "items": { + "description": "Unique 24-hexadecimal digit string that identifies one policy item.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "replicaSetName": { + "description": "Human-readable label that identifies the replica set from which MongoDB Cloud took this snapshot. The resource returns this parameter when `\"type\": \"replicaSet\"`.", + "readOnly": true, + "type": "string" + }, + "snapshotType": { + "description": "Human-readable label that identifies when this snapshot triggers.", + "enum": [ + "onDemand", + "scheduled" + ], + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Human-readable label that indicates the stage of the backup process for this snapshot.", + "enum": [ + "queued", + "inProgress", + "completed", + "failed" + ], + "readOnly": true, + "type": "string" + }, + "storageSizeBytes": { + "description": "Number of bytes taken to store the backup at time of snapshot.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "type": { + "description": "Human-readable label that categorizes the cluster as a replica set or sharded cluster.", + "enum": [ + "replicaSet", + "shardedCluster" + ], + "readOnly": true, + "type": "string" + } + }, + "title": "Replica Set Snapshot", + "type": "object" + }, + "DiskBackupRestoreMember": { + "properties": { + "downloadUrl": { + "description": "One Uniform Resource Locator that point to the compressed snapshot files for manual download. MongoDB Cloud returns this parameter when `\"deliveryType\" : \"download\"`.", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Human-readable label that identifies the replica set on the sharded cluster.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "DiskBackupShardedClusterSnapshot": { + "description": "Details of the sharded cluster snapshot that MongoDB Cloud created.", + "properties": { + "configServerType": { + "description": "Human-readable label that identifies the config server type for this snapshot.", + "enum": [ + "EMBEDDED", + "DEDICATED" + ], + "readOnly": true, + "type": "string" + }, + "createdAt": { + "description": "Date and time when MongoDB Cloud took the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Human-readable phrase or sentence that explains the purpose of the snapshot. The resource returns this parameter when `\"status\": \"onDemand\"`.", + "readOnly": true, + "type": "string" + }, + "expiresAt": { + "description": "Date and time when MongoDB Cloud deletes the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "frequencyType": { + "description": "Human-readable label that identifies how often this snapshot triggers.", + "enum": [ + "hourly", + "daily", + "weekly", + "monthly", + "yearly" + ], + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "masterKeyUUID": { + "description": "Unique string that identifies the Amazon Web Services (AWS) Key Management Service (KMS) Customer Master Key (CMK) used to encrypt the snapshot. The resource returns this value when `\"encryptionEnabled\" : true`.", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "members": { + "description": "List that includes the snapshots and the cloud provider that stores the snapshots. The resource returns this parameter when `\"type\" : \"SHARDED_CLUSTER\"`.", + "items": { + "$ref": "#/components/schemas/DiskBackupShardedClusterSnapshotMember" + }, + "readOnly": true, + "type": "array" + }, + "mongodVersion": { + "description": "Version of the MongoDB host that this snapshot backs up.", + "pattern": "([\\d]+\\.[\\d]+\\.[\\d]+)", + "readOnly": true, + "type": "string" + }, + "policyItems": { + "description": "List that contains unique identifiers for the policy items.", + "items": { + "description": "Unique 24-hexadecimal digit string that identifies one policy item.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "snapshotIds": { + "description": "List that contains the unique identifiers of the snapshots created for the shards and config host for a sharded cluster. The resource returns this parameter when `\"type\": \"SHARDED_CLUSTER\"`. These identifiers should match the ones specified in the **members[n].id** parameters. This allows you to map a snapshot to its shard or config host name.", + "items": { + "description": "Unique 24-hexadecimal digit string that identifies the snapshot for part of the sharded cluster.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "snapshotType": { + "description": "Human-readable label that identifies when this snapshot triggers.", + "enum": [ + "onDemand", + "scheduled" + ], + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Human-readable label that indicates the stage of the backup process for this snapshot.", + "enum": [ + "queued", + "inProgress", + "completed", + "failed" + ], + "readOnly": true, + "type": "string" + }, + "storageSizeBytes": { + "description": "Number of bytes taken to store the backup at time of snapshot.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "type": { + "description": "Human-readable label that categorizes the cluster as a replica set or sharded cluster.", + "enum": [ + "replicaSet", + "shardedCluster" + ], + "readOnly": true, + "type": "string" + } + }, + "title": "Sharded Cluster Snapshot", + "type": "object" + }, + "DiskBackupShardedClusterSnapshotMember": { + "properties": { + "cloudProvider": { + "description": "Human-readable label that identifies the cloud provider that stores this snapshot. The resource returns this parameter when `\"type\": \"replicaSet\"`.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Human-readable label that identifies the shard or config host from which MongoDB Cloud took this snapshot.", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "cloudProvider", + "id", + "replicaSetName" + ], + "type": "object" + }, + "DiskBackupSnapshot": { + "discriminator": { + "mapping": { + "replicaSet": "#/components/schemas/DiskBackupReplicaSet", + "shardedCluster": "#/components/schemas/DiskBackupShardedClusterSnapshot" + }, + "propertyName": "type" + }, + "properties": { + "createdAt": { + "description": "Date and time when MongoDB Cloud took the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Human-readable phrase or sentence that explains the purpose of the snapshot. The resource returns this parameter when `\"status\": \"onDemand\"`.", + "readOnly": true, + "type": "string" + }, + "expiresAt": { + "description": "Date and time when MongoDB Cloud deletes the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "frequencyType": { + "description": "Human-readable label that identifies how often this snapshot triggers.", + "enum": [ + "hourly", + "daily", + "weekly", + "monthly", + "yearly" + ], + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "masterKeyUUID": { + "description": "Unique string that identifies the Amazon Web Services (AWS) Key Management Service (KMS) Customer Master Key (CMK) used to encrypt the snapshot. The resource returns this value when `\"encryptionEnabled\" : true`.", + "format": "uuid", + "readOnly": true, + "type": "string" + }, + "mongodVersion": { + "description": "Version of the MongoDB host that this snapshot backs up.", + "pattern": "([\\d]+\\.[\\d]+\\.[\\d]+)", + "readOnly": true, + "type": "string" + }, + "policyItems": { + "description": "List that contains unique identifiers for the policy items.", + "items": { + "description": "Unique 24-hexadecimal digit string that identifies one policy item.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "snapshotType": { + "description": "Human-readable label that identifies when this snapshot triggers.", + "enum": [ + "onDemand", + "scheduled" + ], + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Human-readable label that indicates the stage of the backup process for this snapshot.", + "enum": [ + "queued", + "inProgress", + "completed", + "failed" + ], + "readOnly": true, + "type": "string" + }, + "storageSizeBytes": { + "description": "Number of bytes taken to store the backup at time of snapshot.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "type": { + "description": "Human-readable label that categorizes the cluster as a replica set or sharded cluster.", + "enum": [ + "replicaSet", + "shardedCluster" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "DiskBackupSnapshotAWSExportBucket": { + "properties": { + "_id": { + "description": "Unique 24-hexadecimal character string that identifies the Export Bucket.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "bucketName": { + "description": "Human-readable label that identifies the AWS S3 Bucket or Azure Storage Container that the role is authorized to export to.", + "example": "export-bucket", + "maxLength": 63, + "minLength": 3, + "type": "string" + }, + "cloudProvider": { + "description": "Human-readable label that identifies the cloud provider that Snapshots will be exported to.", + "enum": [ + "AWS", + "AZURE" + ], + "type": "string" + }, + "iamRoleId": { + "description": "Unique 24-hexadecimal character string that identifies the \u003ca href='https://www.mongodb.com/docs/atlas/security/set-up-unified-aws-access/' target='_blank'\u003eUnified AWS Access role ID\u003c/a\u003e that MongoDB Cloud uses to access the AWS S3 bucket.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "required": [ + "bucketName", + "cloudProvider", + "iamRoleId" + ], + "type": "object" + }, + "DiskBackupSnapshotAzureExportBucket": { + "allOf": [ + { + "$ref": "#/components/schemas/DiskBackupSnapshotExportBucket" + }, + { + "properties": { + "roleId": { + "description": "Unique 24-hexadecimal digit string that identifies the Azure Service Principal that MongoDB Cloud uses to access the Azure Blob Storage Container.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "serviceUrl": { + "description": "URL that identifies the blob Endpoint of the Azure Blob Storage Account.", + "example": "https://examplestorageaccount.blob.core.windows.net", + "maxLength": 55, + "minLength": 33, + "type": "string" + }, + "tenantId": { + "description": "UUID that identifies the Azure Active Directory Tenant ID.", + "example": "4297fc77-1592-4de8-a6d5-a8c32401df87", + "maxLength": 36, + "minLength": 36, + "pattern": "^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$", + "type": "string" + } + }, + "type": "object" + } + ], + "required": [ + "bucketName", + "cloudProvider", + "roleId", + "serviceUrl", + "tenantId" + ], + "type": "object" + }, + "DiskBackupSnapshotExportBucket": { + "description": "Disk backup snapshot Export Bucket.", + "discriminator": { + "mapping": { + "AWS": "#/components/schemas/DiskBackupSnapshotAWSExportBucket", + "AZURE": "#/components/schemas/DiskBackupSnapshotAzureExportBucket" + }, + "propertyName": "cloudProvider" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/DiskBackupSnapshotAWSExportBucket" + }, + { + "$ref": "#/components/schemas/DiskBackupSnapshotAzureExportBucket" + } + ], + "properties": { + "_id": { + "description": "Unique 24-hexadecimal character string that identifies the Export Bucket.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "bucketName": { + "description": "Human-readable label that identifies the AWS S3 Bucket or Azure Storage Container that the role is authorized to export to.", + "example": "export-bucket", + "maxLength": 63, + "minLength": 3, + "type": "string" + }, + "cloudProvider": { + "description": "Human-readable label that identifies the cloud provider that Snapshots will be exported to.", + "enum": [ + "AWS", + "AZURE" + ], + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "required": [ + "bucketName", + "cloudProvider" + ], + "type": "object" + }, + "DiskBackupSnapshotRestoreJob": { + "properties": { + "cancelled": { + "description": "Flag that indicates whether someone canceled this restore job.", + "readOnly": true, + "type": "boolean" + }, + "components": { + "description": "Information on the restore job for each replica set in the sharded cluster.", + "items": { + "$ref": "#/components/schemas/DiskBackupRestoreMember" + }, + "readOnly": true, + "type": "array" + }, + "deliveryType": { + "description": "Human-readable label that categorizes the restore job to create.", + "enum": [ + "automated", + "download", + "pointInTime" + ], + "type": "string" + }, + "deliveryUrl": { + "description": "One or more Uniform Resource Locators (URLs) that point to the compressed snapshot files for manual download. MongoDB Cloud returns this parameter when `\"deliveryType\" : \"download\"`.", + "items": { + "description": "One Uniform Resource Locator that point to the compressed snapshot files for manual download.", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "desiredTimestamp": { + "$ref": "#/components/schemas/ApiBSONTimestampView" + }, + "expired": { + "description": "Flag that indicates whether the restore job expired.", + "readOnly": true, + "type": "boolean" + }, + "expiresAt": { + "description": "Date and time when the restore job expires. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "failed": { + "description": "Flag that indicates whether the restore job failed.", + "readOnly": true, + "type": "boolean" + }, + "finishedAt": { + "description": "Date and time when the restore job completed. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal character string that identifies the restore job.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "oplogInc": { + "description": "Oplog operation number from which you want to restore this snapshot. This number represents the second part of an Oplog timestamp. The resource returns this parameter when `\"deliveryType\" : \"pointInTime\"` and **oplogTs** exceeds `0`.", + "example": 1, + "format": "int32", + "minimum": 1, + "type": "integer" + }, + "oplogTs": { + "description": "Date and time from which you want to restore this snapshot. This parameter expresses this timestamp in the number of seconds that have elapsed since the UNIX epoch. This number represents the first part of an Oplog timestamp. The resource returns this parameter when `\"deliveryType\" : \"pointInTime\"` and **oplogTs** exceeds `0`.", + "format": "int32", + "minimum": 1199145600, + "type": "integer" + }, + "pointInTimeUTCSeconds": { + "description": "Date and time from which MongoDB Cloud restored this snapshot. This parameter expresses this timestamp in the number of seconds that have elapsed since the UNIX epoch. The resource returns this parameter when `\"deliveryType\" : \"pointInTime\"` and **pointInTimeUTCSeconds** exceeds `0`.", + "format": "int32", + "minimum": 1199145600, + "type": "integer" + }, + "snapshotId": { + "description": "Unique 24-hexadecimal character string that identifies the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "targetClusterName": { + "description": "Human-readable label that identifies the target cluster to which the restore job restores the snapshot. The resource returns this parameter when `\"deliveryType\":` `\"automated\"`. Required for `automated` and `pointInTime` restore types.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "type": "string" + }, + "targetGroupId": { + "description": "Unique 24-hexadecimal digit string that identifies the target project for the specified **targetClusterName**. Required for `automated` and `pointInTime` restore types.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "timestamp": { + "description": "Date and time when MongoDB Cloud took the snapshot associated with **snapshotId**. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "deliveryType" + ], + "type": "object" + }, + "DiskBackupSnapshotSchedule": { + "properties": { + "autoExportEnabled": { + "description": "Flag that indicates whether MongoDB Cloud automatically exports Cloud Backup Snapshots to the Export Bucket.", + "type": "boolean" + }, + "clusterId": { + "description": "Unique 24-hexadecimal digit string that identifies the cluster with the Snapshot you want to return.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster with the Snapshot you want to return.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "copySettings": { + "description": "List that contains a document for each copy setting item in the desired backup policy.", + "items": { + "$ref": "#/components/schemas/DiskBackupCopySetting" + }, + "type": "array" + }, + "deleteCopiedBackups": { + "description": "List that contains a document for each deleted copy setting whose backup copies you want to delete.", + "items": { + "$ref": "#/components/schemas/DeleteCopiedBackups" + }, + "type": "array", + "writeOnly": true + }, + "export": { + "$ref": "#/components/schemas/AutoExportPolicyView" + }, + "extraRetentionSettings": { + "description": "List that contains a document for each extra retention setting item in the desired backup policy.", + "items": { + "$ref": "#/components/schemas/ExtraRetentionSetting" + }, + "type": "array" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "nextSnapshot": { + "description": "Date and time when MongoDB Cloud takes the next Snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "policies": { + "description": "Rules set for this backup schedule.", + "items": { + "$ref": "#/components/schemas/AdvancedDiskBackupSnapshotSchedulePolicy" + }, + "maxItems": 1, + "type": "array" + }, + "referenceHourOfDay": { + "description": "Hour of day in Coordinated Universal Time (UTC) that represents when MongoDB Cloud takes the Snapshot.", + "format": "int32", + "type": "integer" + }, + "referenceMinuteOfHour": { + "description": "Minute of the **referenceHourOfDay** that represents when MongoDB Cloud takes the Snapshot.", + "format": "int32", + "type": "integer" + }, + "restoreWindowDays": { + "description": "Number of previous days that you can restore back to with Continuous Cloud Backup accuracy. You must specify a positive, non-zero integer. This parameter applies to continuous Cloud Backups only.", + "format": "int32", + "type": "integer" + }, + "updateSnapshots": { + "description": "Flag that indicates whether to apply the retention changes in the updated backup policy to Snapshots that MongoDB Cloud took previously.", + "type": "boolean", + "writeOnly": true + }, + "useOrgAndGroupNamesInExportPrefix": { + "description": "Flag that indicates whether to use organization and project names instead of organization and project UUIDs in the path to the metadata files that MongoDB Cloud uploads to your Export Bucket.", + "type": "boolean" + } + }, + "type": "object" + }, + "DiskBackupSnapshotSchedule20250101": { + "properties": { + "autoExportEnabled": { + "description": "Flag that indicates whether MongoDB Cloud automatically exports Cloud Backup Snapshots to the Export Bucket.", + "type": "boolean" + }, + "clusterId": { + "description": "Unique 24-hexadecimal digit string that identifies the cluster with the Snapshot you want to return.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster with the Snapshot you want to return.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "copySettings": { + "description": "List that contains a document for each copy setting item in the desired backup policy.", + "items": { + "$ref": "#/components/schemas/DiskBackupCopySetting20250101" + }, + "type": "array" + }, + "deleteCopiedBackups": { + "description": "List that contains a document for each deleted copy setting whose backup copies you want to delete.", + "items": { + "$ref": "#/components/schemas/DeleteCopiedBackups20250101" + }, + "type": "array", + "writeOnly": true + }, + "export": { + "$ref": "#/components/schemas/AutoExportPolicyView" + }, + "extraRetentionSettings": { + "description": "List that contains a document for each extra retention setting item in the desired backup policy.", + "items": { + "$ref": "#/components/schemas/ExtraRetentionSetting" + }, + "type": "array" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "nextSnapshot": { + "description": "Date and time when MongoDB Cloud takes the next Snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "policies": { + "description": "Rules set for this backup schedule.", + "items": { + "$ref": "#/components/schemas/AdvancedDiskBackupSnapshotSchedulePolicy" + }, + "maxItems": 1, + "type": "array" + }, + "referenceHourOfDay": { + "description": "Hour of day in Coordinated Universal Time (UTC) that represents when MongoDB Cloud takes the Snapshot.", + "format": "int32", + "type": "integer" + }, + "referenceMinuteOfHour": { + "description": "Minute of the **referenceHourOfDay** that represents when MongoDB Cloud takes the Snapshot.", + "format": "int32", + "type": "integer" + }, + "restoreWindowDays": { + "description": "Number of previous days that you can restore back to with Continuous Cloud Backup accuracy. You must specify a positive, non-zero integer. This parameter applies to continuous Cloud Backups only.", + "format": "int32", + "type": "integer" + }, + "updateSnapshots": { + "description": "Flag that indicates whether to apply the retention changes in the updated backup policy to Snapshots that MongoDB Cloud took previously.", + "type": "boolean", + "writeOnly": true + }, + "useOrgAndGroupNamesInExportPrefix": { + "description": "Flag that indicates whether to use organization and project names instead of organization and project UUIDs in the path to the metadata files that MongoDB Cloud uploads to your Export Bucket.", + "type": "boolean" + } + }, + "type": "object" + }, + "DiskGBAutoScaling": { + "description": "Setting that enables disk auto-scaling.", + "properties": { + "enabled": { + "description": "Flag that indicates whether this cluster enables disk auto-scaling. The maximum memory allowed for the selected cluster tier and the oplog size can limit storage auto-scaling.", + "type": "boolean" + } + }, + "type": "object" + }, + "Document": { + "additionalProperties": { + "description": "The stats associated with the stream processor.", + "readOnly": true, + "type": "object" + }, + "description": "The stats associated with the stream processor.", + "readOnly": true, + "type": "object" + }, + "EmailNotification": { + "description": "Email notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "emailAddress": { + "description": "Email address to which MongoDB Cloud sends alert notifications. The resource requires this parameter when `\"notifications.[n].typeName\" : \"EMAIL\"`. You don't need to set this value to send emails to individual or groups of MongoDB Cloud users including:\n\n- specific MongoDB Cloud users (`\"notifications.[n].typeName\" : \"USER\"`)\n- MongoDB Cloud users with specific project roles (`\"notifications.[n].typeName\" : \"GROUP\"`)\n- MongoDB Cloud users with specific organization roles (`\"notifications.[n].typeName\" : \"ORG\"`)\n- MongoDB Cloud teams (`\"notifications.[n].typeName\" : \"TEAM\"`)\n\nTo send emails to one MongoDB Cloud user or grouping of users, set the `notifications.[n].emailEnabled` parameter.", + "format": "email", + "type": "string" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "EMAIL" + ], + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "Email Notification", + "type": "object" + }, + "EncryptionAtRest": { + "properties": { + "awsKms": { + "$ref": "#/components/schemas/AWSKMSConfiguration" + }, + "azureKeyVault": { + "$ref": "#/components/schemas/AzureKeyVault" + }, + "googleCloudKms": { + "$ref": "#/components/schemas/GoogleCloudKMS" + } + }, + "type": "object" + }, + "EncryptionKeyAlertConfigViewForNdsGroup": { + "description": "Encryption key alert configuration allows to select thresholds which trigger alerts and how users are notified.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/EncryptionKeyEventTypeViewAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "Matching conditions for target resources.", + "items": { + "$ref": "#/components/schemas/AlertMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "threshold": { + "$ref": "#/components/schemas/GreaterThanDaysThresholdView" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "Encryption Key Alert Configuration", + "type": "object" + }, + "EncryptionKeyEventTypeViewAlertable": { + "description": "Event type that triggers an alert.", + "enum": [ + "AWS_ENCRYPTION_KEY_NEEDS_ROTATION", + "AZURE_ENCRYPTION_KEY_NEEDS_ROTATION", + "GCP_ENCRYPTION_KEY_NEEDS_ROTATION", + "AWS_ENCRYPTION_KEY_INVALID", + "AZURE_ENCRYPTION_KEY_INVALID", + "GCP_ENCRYPTION_KEY_INVALID" + ], + "example": "AWS_ENCRYPTION_KEY_NEEDS_ROTATION", + "title": "Encryption Event Types", + "type": "string" + }, + "EndpointService": { + "discriminator": { + "mapping": { + "AWS": "#/components/schemas/AWSPrivateLinkConnection", + "AZURE": "#/components/schemas/AzurePrivateLinkConnection", + "GCP": "#/components/schemas/GCPEndpointService" + }, + "propertyName": "cloudProvider" + }, + "properties": { + "cloudProvider": { + "description": "Cloud service provider that serves the requested endpoint service.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "readOnly": true, + "type": "string" + }, + "errorMessage": { + "description": "Error message returned when requesting private connection resource. The resource returns `null` if the request succeeded.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the Private Endpoint Service.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "regionName": { + "description": "Cloud provider region that manages this Private Endpoint Service.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of the Private Endpoint Service connection when MongoDB Cloud received this request.", + "enum": [ + "INITIATING", + "AVAILABLE", + "WAITING_FOR_USER", + "FAILED", + "DELETING" + ], + "readOnly": true, + "type": "string" + } + }, + "required": [ + "cloudProvider" + ], + "type": "object" + }, + "EventTypeDetails": { + "description": "A singular type of event", + "properties": { + "alertable": { + "description": "Whether or not this event type can be configured as an alert via the API.", + "readOnly": true, + "type": "boolean" + }, + "description": { + "description": "Description of the event type.", + "readOnly": true, + "type": "string" + }, + "eventType": { + "description": "Enum representation of the event type.", + "readOnly": true, + "type": "string" + } + }, + "title": "Event type details", + "type": "object" + }, + "EventTypeForNdsGroup": { + "oneOf": [ + { + "enum": [ + "ALERT_ACKNOWLEDGED_AUDIT", + "ALERT_UNACKNOWLEDGED_AUDIT" + ], + "title": "Alert Audit Types", + "type": "string" + }, + { + "enum": [ + "ALERT_CONFIG_DISABLED_AUDIT", + "ALERT_CONFIG_ENABLED_AUDIT", + "ALERT_CONFIG_ADDED_AUDIT", + "ALERT_CONFIG_DELETED_AUDIT", + "ALERT_CONFIG_CHANGED_AUDIT" + ], + "title": "Alert Audit Types", + "type": "string" + }, + { + "enum": [ + "API_KEY_CREATED", + "API_KEY_DELETED", + "API_KEY_ACCESS_LIST_ENTRY_ADDED", + "API_KEY_ACCESS_LIST_ENTRY_DELETED", + "API_KEY_ROLES_CHANGED", + "API_KEY_DESCRIPTION_CHANGED", + "API_KEY_ADDED_TO_GROUP", + "API_KEY_REMOVED_FROM_GROUP", + "API_KEY_UI_IP_ACCESS_LIST_INHERITANCE_ENABLED", + "API_KEY_UI_IP_ACCESS_LIST_INHERITANCE_DISABLED" + ], + "title": "API User Event Types", + "type": "string" + }, + { + "enum": [ + "SERVICE_ACCOUNT_CREATED", + "SERVICE_ACCOUNT_DELETED", + "SERVICE_ACCOUNT_ROLES_CHANGED", + "SERVICE_ACCOUNT_DETAILS_CHANGED", + "SERVICE_ACCOUNT_ADDED_TO_GROUP", + "SERVICE_ACCOUNT_REMOVED_FROM_GROUP", + "SERVICE_ACCOUNT_ACCESS_LIST_ENTRY_ADDED", + "SERVICE_ACCOUNT_ACCESS_LIST_ENTRY_DELETED", + "SERVICE_ACCOUNT_SECRET_ADDED", + "SERVICE_ACCOUNT_SECRET_DELETED", + "SERVICE_ACCOUNT_UI_IP_ACCESS_LIST_INHERITANCE_ENABLED", + "SERVICE_ACCOUNT_UI_IP_ACCESS_LIST_INHERITANCE_DISABLED" + ], + "title": "Service Account Event Types", + "type": "string" + }, + { + "enum": [ + "URL_CONFIRMATION", + "SUCCESSFUL_DEPLOY", + "DEPLOYMENT_FAILURE", + "DEPLOYMENT_MODEL_CHANGE_SUCCESS", + "DEPLOYMENT_MODEL_CHANGE_FAILURE", + "REQUEST_RATE_LIMIT", + "LOG_FORWARDER_FAILURE", + "INSIDE_REALM_METRIC_THRESHOLD", + "OUTSIDE_REALM_METRIC_THRESHOLD", + "SYNC_FAILURE", + "TRIGGER_FAILURE", + "TRIGGER_AUTO_RESUMED" + ], + "title": "App Services Event Types", + "type": "string" + }, + { + "enum": [ + "AUTO_INDEXING_ENABLED", + "AUTO_INDEXING_DISABLED", + "AUTO_INDEXING_INDEX_BUILD_SUBMITTED", + "AUTO_INDEXING_SLOW_INDEX_BUILD", + "AUTO_INDEXING_STALLED_INDEX_BUILD", + "AUTO_INDEXING_FAILED_INDEX_BUILD", + "AUTO_INDEXING_COMPLETED_INDEX_BUILD", + "AUTO_INDEXING_STARTED_INDEX_BUILD" + ], + "title": "Auto Indexing Event Types", + "type": "string" + }, + { + "enum": [ + "AUTOMATION_CONFIG_PUBLISHED_AUDIT" + ], + "title": "Automation Config Event Types", + "type": "string" + }, + { + "enum": [ + "PEER_CREATED", + "PEER_DELETED", + "PEER_UPDATED" + ], + "title": "AWS Peer Vpc Audit Types", + "type": "string" + }, + { + "enum": [ + "AZURE_PEER_CREATED", + "AZURE_PEER_UPDATED", + "AZURE_PEER_ACTIVE", + "AZURE_PEER_DELETED" + ], + "title": "Azure Peer Network Audit Types", + "type": "string" + }, + { + "enum": [ + "CREDIT_CARD_CURRENT", + "CREDIT_CARD_ABOUT_TO_EXPIRE", + "PENDING_INVOICE_UNDER_THRESHOLD", + "PENDING_INVOICE_OVER_THRESHOLD", + "DAILY_BILL_UNDER_THRESHOLD", + "DAILY_BILL_OVER_THRESHOLD" + ], + "title": "Billing Event Types", + "type": "string" + }, + { + "enum": [ + "CLUSTER_CONNECTION_GET_DATABASES", + "CLUSTER_CONNECTION_GET_DATABASE_COLLECTIONS", + "CLUSTER_CONNECTION_GET_DATABASE_NAMESPACES", + "CLUSTER_CONNECTION_GET_NAMESPACES_WITH_UUID", + "CLUSTER_CONNECTION_AGGREGATE", + "CLUSTER_CONNECTION_CREATE_COLLECTION", + "CLUSTER_CONNECTION_SAMPLE_COLLECTION_FIELD_NAMES" + ], + "title": "Cluster Connection Audit Types", + "type": "string" + }, + { + "enum": [ + "CLUSTER_MONGOS_IS_PRESENT", + "CLUSTER_MONGOS_IS_MISSING" + ], + "title": "Cluster Event Types", + "type": "string" + }, + { + "enum": [ + "CPS_SNAPSHOT_STARTED", + "CPS_SNAPSHOT_SUCCESSFUL", + "CPS_SNAPSHOT_FAILED", + "CPS_CONCURRENT_SNAPSHOT_FAILED_WILL_RETRY", + "CPS_SNAPSHOT_FALLBACK_SUCCESSFUL", + "CPS_SNAPSHOT_BEHIND", + "CPS_COPY_SNAPSHOT_STARTED", + "CPS_COPY_SNAPSHOT_FAILED", + "CPS_COPY_SNAPSHOT_SUCCESSFUL", + "CPS_PREV_SNAPSHOT_OLD", + "CPS_SNAPSHOT_FALLBACK_FAILED", + "CPS_RESTORE_SUCCESSFUL", + "CPS_EXPORT_SUCCESSFUL", + "CPS_RESTORE_FAILED", + "CPS_EXPORT_FAILED", + "CPS_AUTO_EXPORT_FAILED", + "CPS_SNAPSHOT_DOWNLOAD_REQUEST_FAILED", + "CPS_OPLOG_BEHIND", + "CPS_OPLOG_CAUGHT_UP" + ], + "title": "Cps Backup Event Types", + "type": "string" + }, + { + "enum": [ + "DATA_EXPLORER", + "DATA_EXPLORER_CRUD_ATTEMPT", + "DATA_EXPLORER_CRUD_ERROR", + "DATA_EXPLORER_CRUD" + ], + "title": "Data Explorer Accessed Event Types", + "type": "string" + }, + { + "enum": [ + "CPS_DATA_PROTECTION_ENABLE_REQUESTED", + "CPS_DATA_PROTECTION_ENABLED", + "CPS_DATA_PROTECTION_UPDATE_REQUESTED", + "CPS_DATA_PROTECTION_UPDATED", + "CPS_DATA_PROTECTION_DISABLE_REQUESTED", + "CPS_DATA_PROTECTION_DISABLED" + ], + "title": "CPS Backup Compliance Policy Event Types", + "type": "string" + }, + { + "enum": [ + "CPS_RESTORE_REQUESTED_AUDIT", + "CPS_SNAPSHOT_SCHEDULE_UPDATED_AUDIT", + "CPS_SNAPSHOT_FASTER_RESTORES_START_AUDIT", + "CPS_SNAPSHOT_FASTER_RESTORES_SUCCESS_AUDIT", + "CPS_SNAPSHOT_FASTER_RESTORES_FAILED_AUDIT", + "CPS_SNAPSHOT_DELETED_AUDIT", + "CPS_SNAPSHOT_RETENTION_MODIFIED_AUDIT", + "CPS_SNAPSHOT_IN_PROGRESS_AUDIT", + "CPS_SNAPSHOT_COMPLETED_AUDIT", + "CPS_ON_DEMAND_SNAPSHOT_REQUESTED", + "CPS_OPLOG_CAUGHT_UP_AUDIT", + "CPS_OPLOG_BEHIND_AUDIT" + ], + "title": "Disk Backup Event Types", + "type": "string" + }, + { + "enum": [ + "AWS_ENCRYPTION_KEY_ROTATED", + "AWS_ENCRYPTION_KEY_NEEDS_ROTATION", + "AZURE_ENCRYPTION_KEY_ROTATED", + "AZURE_ENCRYPTION_KEY_NEEDS_ROTATION", + "GCP_ENCRYPTION_KEY_ROTATED", + "GCP_ENCRYPTION_KEY_NEEDS_ROTATION", + "AWS_ENCRYPTION_KEY_VALID", + "AWS_ENCRYPTION_KEY_INVALID", + "AZURE_ENCRYPTION_KEY_VALID", + "AZURE_ENCRYPTION_KEY_INVALID", + "GCP_ENCRYPTION_KEY_VALID", + "GCP_ENCRYPTION_KEY_INVALID" + ], + "title": "Encryption Event Types", + "type": "string" + }, + { + "enum": [ + "BUCKET_CREATED_AUDIT", + "BUCKET_DELETED_AUDIT" + ], + "title": "Export Bucket Audit Types", + "type": "string" + }, + { + "enum": [ + "FTS_INDEX_DELETION_FAILED", + "FTS_INDEX_BUILD_COMPLETE", + "FTS_INDEX_BUILD_FAILED", + "FTS_INDEX_CREATED", + "FTS_INDEX_UPDATED", + "FTS_INDEX_DELETED", + "FTS_INDEX_CLEANED_UP", + "FTS_INDEXES_RESTORED", + "FTS_INDEXES_RESTORE_FAILED" + ], + "title": "FTS Index Audit Types", + "type": "string" + }, + { + "enum": [ + "GCP_PEER_CREATED", + "GCP_PEER_DELETED", + "GCP_PEER_UPDATED", + "GCP_PEER_ACTIVE", + "GCP_PEER_INACTIVE" + ], + "title": "GCP Peer Vpc Audit Types", + "type": "string" + }, + { + "enum": [ + "DATA_EXPLORER_ENABLED", + "DATA_EXPLORER_DISABLED", + "CREDIT_CARD_ADDED", + "CREDIT_CARD_UPDATED", + "GROUP_DELETED", + "GROUP_CREATED", + "GROUP_MOVED", + "GROUP_TEMPORARILY_ACTIVATED", + "GROUP_ACTIVATED", + "GROUP_LOCKED", + "GROUP_SUSPENDED", + "GROUP_FLUSHED", + "GROUP_NAME_CHANGED", + "GROUP_CHARTS_ACTIVATION_REQUESTED", + "GROUP_CHARTS_ACTIVATED", + "GROUP_CHARTS_UPGRADED", + "GROUP_CHARTS_RESET" + ], + "title": "Group Audit Types", + "type": "string" + }, + { + "enum": [ + "PAID_IN_FULL", + "DELINQUENT", + "ALL_USERS_HAVE_MULTI_FACTOR_AUTH", + "USERS_WITHOUT_MULTI_FACTOR_AUTH", + "ENCRYPTION_AT_REST_KMS_NETWORK_ACCESS_DENIED", + "ENCRYPTION_AT_REST_KMS_NETWORK_ACCESS_RESTORED" + ], + "title": "Group Event Types", + "type": "string" + }, + { + "enum": [ + "INTEGRATION_CONFIGURED", + "INTEGRATION_REMOVED" + ], + "title": "Group Integration Event Types", + "type": "string" + }, + { + "enum": [ + "AUTO_CREATED_INDEX_AUDIT", + "ATTEMPT_KILLOP_AUDIT", + "ATTEMPT_KILLSESSION_AUDIT", + "HOST_UP", + "HOST_DOWN", + "HOST_HAS_INDEX_SUGGESTIONS", + "HOST_MONGOT_RECOVERED_OOM", + "HOST_MONGOT_CRASHING_OOM", + "HOST_ENOUGH_DISK_SPACE", + "HOST_NOT_ENOUGH_DISK_SPACE" + ], + "title": "Host Event Types", + "type": "string" + }, + { + "enum": [ + "INSIDE_METRIC_THRESHOLD", + "OUTSIDE_METRIC_THRESHOLD" + ], + "title": "Host Metric Event Types", + "type": "string" + }, + { + "enum": [ + "ROLLING_INDEX_FAILED_INDEX_BUILD", + "ROLLING_INDEX_SUCCESS_INDEX_BUILD", + "INDEX_FAILED_INDEX_BUILD", + "INDEX_SUCCESS_INDEX_BUILD" + ], + "title": "Index Build Audit Types", + "type": "string" + }, + { + "enum": [ + "CLUSTER_CREATED", + "CLUSTER_RESURRECTED", + "CLUSTER_READY", + "CLUSTER_UPDATE_SUBMITTED", + "CLUSTER_UPDATE_SUBMITTED_INTERNAL", + "CLUSTER_PROCESS_ARGS_UPDATE_SUBMITTED", + "CLUSTER_MONGOT_PROCESS_ARGS_UPDATE_SUBMITTED", + "CLUSTER_SERVER_PARAMETERS_UPDATE_SUBMITTED", + "CLUSTER_AUTOMATICALLY_PAUSED", + "CLUSTER_UPDATE_STARTED", + "CLUSTER_UPDATE_STARTED_INTERNAL", + "CLUSTER_UPDATE_COMPLETED", + "MATERIAL_CLUSTER_UPDATE_COMPLETED_INTERNAL", + "CLUSTER_DELETE_SUBMITTED", + "CLUSTER_DELETE_SUBMITTED_INTERNAL", + "CLUSTER_DELETED", + "CLUSTER_IMPORT_STARTED", + "CLUSTER_IMPORT_CANCELLED", + "CLUSTER_IMPORT_EXPIRED", + "CLUSTER_IMPORT_CUTOVER", + "CLUSTER_IMPORT_RESTART_REQUESTED", + "PROJECT_LIVE_IMPORT_OVERRIDES_ADDED", + "PROJECT_LIVE_IMPORT_OVERRIDES_UPDATED", + "PROJECT_LIVE_IMPORT_OVERRIDES_DELETED", + "CLUSTER_OPLOG_RESIZED", + "CLUSTER_INSTANCE_RESTARTED", + "CLUSTER_INSTANCE_STOP_START", + "CLUSTER_INSTANCE_RESYNC_REQUESTED", + "CLUSTER_INSTANCE_RESYNC_CLEARED", + "CLUSTER_INSTANCE_UPDATE_REQUESTED", + "CLUSTER_INSTANCE_REPLACED", + "CLUSTER_INSTANCE_REPLACE_CLEARED", + "CLUSTER_INSTANCE_CONFIG_UPDATED", + "CLUSTER_INSTANCE_SSL_ROTATED", + "CLUSTER_INSTANCE_SSL_ROTATED_PER_CLUSTER", + "CLUSTER_INSTANCE_SSL_REVOKED", + "RELOAD_SSL_ON_PROCESSES", + "CLUSTER_INSTANCE_ADMIN_BACKUP_SNAPSHOT_REQUESTED", + "UPDATE_BUMPER_FILES", + "DATA_LAKE_QUERY_LOGS_DOWNLOADED", + "FEDERATED_DATABASE_QUERY_LOGS_DOWNLOADED", + "ONLINE_ARCHIVE_QUERY_LOGS_DOWNLOADED", + "MONGODB_LOGS_DOWNLOADED", + "MONGOSQLD_LOGS_DOWNLOADED", + "MONGODB_USER_ADDED", + "MONGODB_USER_DELETED", + "MONGODB_USER_X509_CERT_CREATED", + "MONGODB_USER_X509_CERT_REVOKED", + "MONGODB_USER_UPDATED", + "MONGODB_ROLE_ADDED", + "MONGODB_ROLE_DELETED", + "MONGODB_ROLE_UPDATED", + "NETWORK_PERMISSION_ENTRY_ADDED", + "NETWORK_PERMISSION_ENTRY_REMOVED", + "NETWORK_PERMISSION_ENTRY_UPDATED", + "PRIVATE_NETWORK_ENDPOINT_ENTRY_ADDED", + "PRIVATE_NETWORK_ENDPOINT_ENTRY_REMOVED", + "PRIVATE_NETWORK_ENDPOINT_ENTRY_UPDATED", + "PLAN_STARTED", + "PLAN_COMPLETED", + "PLAN_ABANDONED", + "PLAN_FAILURE_COUNT_RESET", + "PLAN_ASAP_REQUESTED", + "INDEPENDENT_SHARD_SCALING_AVAILABLE", + "MOVE_SKIPPED", + "PROXY_RESTARTED", + "PROXY_PANICKED", + "ATLAS_MAINTENANCE_WINDOW_ADDED", + "ATLAS_MAINTENANCE_WINDOW_MODIFIED", + "ATLAS_MAINTENANCE_WINDOW_REMOVED", + "ATLAS_MAINTENANCE_START_ASAP", + "ATLAS_MAINTENANCE_SCHEDULED_FOR_NEXT_WINDOW", + "ATLAS_MAINTENANCE_DEFERRED", + "ATLAS_MAINTENANCE_AUTO_DEFER_ENABLED", + "ATLAS_MAINTENANCE_AUTO_DEFER_DISABLED", + "SCHEDULED_MAINTENANCE", + "PROJECT_SCHEDULED_MAINTENANCE", + "PROJECT_LIMIT_UPDATED", + "PROJECT_OPERATIONAL_LIMIT_UPDATED", + "PROJECT_ENABLE_EXTENDED_STORAGE_SIZES_UPDATED", + "OS_MAINTENANCE", + "OS_MAINTENANCE_RESTART", + "OS_MAINTENANCE_REPLACEMENT", + "FREE_UPGRADE_STARTED", + "TEST_FAILOVER_REQUESTED", + "USER_SECURITY_SETTINGS_UPDATED", + "AUDIT_LOG_CONFIGURATION_UPDATED", + "STREAMS_AUDIT_LOG_CONFIGURATION_UPDATED", + "ENCRYPTION_AT_REST_CONFIGURATION_UPDATED", + "ENCRYPTION_AT_REST_CONFIGURATION_VALIDATION_FAILED", + "NDS_SET_IMAGE_OVERRIDES", + "NDS_SET_CHEF_TARBALL_URI", + "RESTRICTED_EMPLOYEE_ACCESS_BYPASS", + "REVOKED_EMPLOYEE_ACCESS_BYPASS", + "DEVICE_SYNC_DEBUG_ACCESS_GRANTED", + "DEVICE_SYNC_DEBUG_ACCESS_REVOKED", + "DEVICE_SYNC_DEBUG_X509_CERT_CREATED", + "QUERY_ENGINE_TENANT_CREATED", + "QUERY_ENGINE_TENANT_UPDATED", + "QUERY_ENGINE_TENANT_REMOVED", + "FEDERATED_DATABASE_CREATED", + "FEDERATED_DATABASE_UPDATED", + "FEDERATED_DATABASE_REMOVED", + "TENANT_CLUSTER_UPGRADE_FROM_MTM", + "TENANT_SNAPSHOT_FAILED", + "TENANT_RESTORE_FAILED", + "SAMPLE_DATASET_LOAD_REQUESTED", + "CUSTOMER_X509_CRL_UPDATED", + "CONTAINER_SUBNETS_UPDATE_REQUESTED", + "CLEAR_UNPROVISIONED_TARGET_GROUPS_REQUESTED", + "ONLINE_ARCHIVE_CREATED", + "ONLINE_ARCHIVE_DELETED", + "ONLINE_ARCHIVE_UPDATED", + "ONLINE_ARCHIVE_PAUSE_REQUESTED", + "ONLINE_ARCHIVE_PAUSED", + "ONLINE_ARCHIVE_ACTIVE", + "ONLINE_ARCHIVE_ORPHANED", + "ONLINE_ARCHIVE_DATA_EXPIRATION_RULE_ENABLED", + "ONLINE_ARCHIVE_DATA_EXPIRATION_RULE_UPDATED", + "ONLINE_ARCHIVE_DATA_EXPIRATION_RULE_DISABLED", + "CLOUD_PROVIDER_ACCESS_AWS_IAM_ROLE_ADDED", + "CLOUD_PROVIDER_ACCESS_AWS_IAM_ROLE_DELETED", + "CLOUD_PROVIDER_ACCESS_AWS_IAM_ROLE_UPDATED", + "CLOUD_PROVIDER_ACCESS_AZURE_SERVICE_PRINCIPAL_ADDED", + "CLOUD_PROVIDER_ACCESS_AZURE_SERVICE_PRINCIPAL_DELETED", + "CLOUD_PROVIDER_ACCESS_AZURE_SERVICE_PRINCIPAL_UPDATED", + "PENDING_INDEXES_DELETED", + "PENDING_INDEXES_CANCELED", + "PROCESS_RESTART_REQUESTED", + "AUTO_HEALING_ACTION", + "EXTRA_MAINTENANCE_DEFERRAL_GRANTED", + "ADMIN_NOTE_UPDATED", + "GROUP_AUTOMATION_CONFIG_PUBLISHED", + "CLUSTER_AUTOMATION_CONFIG_PUBLISHED", + "SET_ENSURE_CLUSTER_CONNECTIVITY_AFTER_FOR_CLUSTER", + "CLUSTER_LINKED_TO_VERCEL", + "CLUSTER_UNLINKED_FROM_VERCEL", + "INGESTION_PIPELINE_DELETED", + "INGESTION_PIPELINE_DESTROYED", + "INGESTION_PIPELINE_CREATED", + "INGESTION_PIPELINE_UPDATED", + "OS_TUNE_FILE_OVERRIDES", + "CLUSTER_PREFERRED_CPU_ARCHITECTURE_MODIFIED", + "CLUSTER_FORCE_PLANNED", + "DATA_PROCESSING_REGION_UPDATED", + "CLUSTER_REGIONAL_OUTAGE_SIMULATION_STARTED", + "CLUSTER_REGIONAL_OUTAGE_SIMULATION_FAILED_TO_START", + "CLUSTER_REGIONAL_OUTAGE_SIMULATION_END_REQUESTED", + "CLUSTER_REGIONAL_OUTAGE_SIMULATION_COMPLETED", + "CLUSTER_REGIONAL_OUTAGE_SIMULATION_CANCELLED_CLUSTER_PAUSE", + "UIS_PANICKED", + "TENANT_UPGRADE_TO_SERVERLESS_SUCCESSFUL", + "TENANT_UPGRADE_TO_SERVERLESS_FAILED", + "CLUSTER_FORCE_RECONFIG_REQUESTED", + "PROJECT_BYPASSED_MAINTENANCE", + "DATA_FEDERATION_QUERY_LIMIT_CONFIGURED", + "DATA_FEDERATION_QUERY_LIMIT_DELETED", + "DATA_API_SETUP_FOR_VERCEL", + "ADMIN_CLUSTER_LOCK_UPDATED", + "CLUSTER_ROLLING_RESYNC_STARTED", + "CLUSTER_ROLLING_RESYNC_COMPLETED", + "CLUSTER_ROLLING_RESYNC_FAILED", + "NODE_ROLLING_RESYNC_SCHEDULED", + "CLUSTER_ROLLING_RESYNC_CANCELED", + "CLUSTER_OS_UPDATED", + "CLUSTER_INSTANCE_FAMILY_UPDATED", + "PUSH_BASED_LOG_EXPORT_ENABLED", + "PUSH_BASED_LOG_EXPORT_CONFIGURATION_UPDATED", + "PUSH_BASED_LOG_EXPORT_DISABLED", + "AZURE_CLUSTER_PREFERRED_STORAGE_TYPE_UPDATED", + "CONTAINER_DELETED", + "REGIONALIZED_PRIVATE_ENDPOINT_MODE_ENABLED", + "REGIONALIZED_PRIVATE_ENDPOINT_MODE_DISABLED", + "STREAM_TENANT_CREATED", + "STREAM_TENANT_UPDATED", + "STREAM_TENANT_DELETED", + "STREAM_TENANT_CONNECTIONS_LISTED", + "STREAM_TENANT_CONNECTION_UPDATED", + "STREAM_TENANT_CONNECTION_DELETED", + "STREAM_TENANT_CONNECTION_CREATED", + "STREAM_TENANT_CONNECTION_VIEWED", + "STREAM_TENANT_AUDIT_LOGS", + "STREAM_TENANT_AUDIT_LOGS_DELETED", + "QUEUED_ADMIN_ACTION_CREATED", + "ATLAS_SQL_SCHEDULED_UPDATE_CREATED", + "ATLAS_SQL_SCHEDULED_UPDATE_MODIFIED", + "ATLAS_SQL_SCHEDULED_UPDATE_REMOVED" + ], + "title": "NDS Audit Types", + "type": "string" + }, + { + "enum": [ + "DB_CHECK_SUBMITTED", + "DB_CHECK_UPDATED", + "CLUSTER_SAMPLED_FOR_DB_CHECK", + "DB_CHECK_SCHEDULED_FOR_CLUSTER", + "DB_CHECK_DEFERRED_FOR_CLUSTER", + "CLUSTER_OPTED_OUT_OF_DB_CHECK" + ], + "title": "NDS DB Check Audit Types", + "type": "string" + }, + { + "enum": [ + "CLUSTER_SAMPLED_FOR_DATA_VALIDATION", + "DATA_VALIDATION_SUBMITTED_FOR_CLUSTER", + "CLUSTER_OPTED_OUT_OF_DATA_VALIDATION" + ], + "title": "NDS Data Validation Audit Types", + "type": "string" + }, + { + "enum": [ + "COMPUTE_AUTO_SCALE_INITIATED", + "DISK_AUTO_SCALE_INITIATED", + "COMPUTE_AUTO_SCALE_INITIATED_BASE", + "COMPUTE_AUTO_SCALE_INITIATED_ANALYTICS", + "COMPUTE_AUTO_SCALE_SCALE_DOWN_FAIL_BASE", + "COMPUTE_AUTO_SCALE_SCALE_DOWN_FAIL_ANALYTICS", + "COMPUTE_AUTO_SCALE_MAX_INSTANCE_SIZE_FAIL_BASE", + "COMPUTE_AUTO_SCALE_MAX_INSTANCE_SIZE_FAIL_ANALYTICS", + "COMPUTE_AUTO_SCALE_OPLOG_FAIL_BASE", + "COMPUTE_AUTO_SCALE_OPLOG_FAIL_ANALYTICS", + "DISK_AUTO_SCALE_MAX_DISK_SIZE_FAIL", + "DISK_AUTO_SCALE_OPLOG_FAIL" + ], + "title": "NDS Auto Scaling Audit Types", + "type": "string" + }, + { + "enum": [ + "MAINTENANCE_IN_ADVANCED", + "MAINTENANCE_AUTO_DEFERRED", + "MAINTENANCE_STARTED", + "MAINTENANCE_NO_LONGER_NEEDED" + ], + "title": "NDS Maintenance Window Audit Types", + "type": "string" + }, + { + "enum": [ + "SERVERLESS_AUTO_SCALING_INITIATED", + "SERVERLESS_VERTICAL_SCALING_INITIATED", + "SERVERLESS_HORIZONTAL_SCALING_INITIATED", + "SERVERLESS_MTM_DRAIN_REQUESTED", + "SERVERLESS_MTM_DRAIN_INITIATED", + "SERVERLESS_MTM_DRAIN_COMPLETED", + "SERVERLESS_MTM_DRAIN_STOPPED" + ], + "title": "NDS Serverless Auto Scaling Audit Types", + "type": "string" + }, + { + "enum": [ + "SERVERLESS_INSTANCE_CREATED", + "SERVERLESS_INSTANCE_READY", + "SERVERLESS_INSTANCE_UPDATE_SUBMITTED", + "SERVERLESS_INSTANCE_UPDATE_STARTED", + "SERVERLESS_INSTANCE_UPDATE_COMPLETED", + "SERVERLESS_INSTANCE_DELETE_SUBMITTED", + "SERVERLESS_INSTANCE_DELETED", + "SERVERLESS_INSTANCE_BLOCKED", + "SERVERLESS_INSTANCE_UNBLOCKED" + ], + "title": "NDS Serverless Instance Audit Types", + "type": "string" + }, + { + "enum": [ + "TENANT_ENDPOINT_CREATED", + "TENANT_ENDPOINT_RESERVED", + "TENANT_ENDPOINT_RESERVATION_FAILED", + "TENANT_ENDPOINT_UPDATED", + "TENANT_ENDPOINT_INITIATING", + "TENANT_ENDPOINT_AVAILABLE", + "TENANT_ENDPOINT_FAILED", + "TENANT_ENDPOINT_DELETING", + "TENANT_ENDPOINT_DELETED", + "TENANT_ENDPOINT_EXPIRED" + ], + "title": "NDS Auto Scaling Audit Types", + "type": "string" + }, + { + "enum": [ + "TENANT_ENDPOINT_SERVICE_DEPLOYMENT_CREATED", + "TENANT_ENDPOINT_SERVICE_CREATED", + "TENANT_ENDPOINT_SERVICE_AVAILABLE", + "TENANT_ENDPOINT_SERVICE_DEPLOYMENT_DELETE_REQUESTED", + "TENANT_ENDPOINT_SERVICE_DELETED", + "TENANT_ENDPOINT_SERVICE_DEPLOYMENT_DELETED", + "TENANT_ENDPOINT_SERVICE_DEPLOYMENT_NUM_DESIRED_ENDPOINT_SERVICES_INCREASED" + ], + "title": "NDS Tenant Endpoint Service Deployment Audit Types", + "type": "string" + }, + { + "enum": [ + "NDS_X509_USER_AUTHENTICATION_CUSTOMER_CA_EXPIRATION_RESOLVED", + "NDS_X509_USER_AUTHENTICATION_CUSTOMER_CA_EXPIRATION_CHECK", + "NDS_X509_USER_AUTHENTICATION_CUSTOMER_CRL_EXPIRATION_RESOLVED", + "NDS_X509_USER_AUTHENTICATION_CUSTOMER_CRL_EXPIRATION_CHECK", + "NDS_X509_USER_AUTHENTICATION_MANAGED_USER_CERTS_EXPIRATION_RESOLVED", + "NDS_X509_USER_AUTHENTICATION_MANAGED_USER_CERTS_EXPIRATION_CHECK" + ], + "title": "NDS x509 User Auth Event Types", + "type": "string" + }, + { + "enum": [ + "ONLINE_ARCHIVE_INSUFFICIENT_INDEXES_CHECK", + "ONLINE_ARCHIVE_INSUFFICIENT_INDEXES_RESOLVED", + "ONLINE_ARCHIVE_UP_TO_DATE", + "ONLINE_ARCHIVE_DATA_EXPIRATION_RESOLVED", + "ONLINE_ARCHIVE_MAX_CONSECUTIVE_OFFLOAD_WINDOWS_CHECK" + ], + "title": "Online Archive Event Types", + "type": "string" + }, + { + "enum": [ + "ENDPOINT_SERVICE_CREATED", + "ENDPOINT_SERVICE_DELETED", + "INTERFACE_ENDPOINT_CREATED", + "INTERFACE_ENDPOINT_DELETED", + "INTERFACE_ENDPOINT_PATCHED" + ], + "title": "Private Link Audit Types", + "type": "string" + }, + { + "enum": [ + "PROACTIVE_OPERATION_EVENT_LOGGED" + ], + "title": "Proactive Operation Event Types", + "type": "string" + }, + { + "enum": [ + "PRIMARY_ELECTED", + "REPLICATION_OPLOG_WINDOW_HEALTHY", + "REPLICATION_OPLOG_WINDOW_RUNNING_OUT", + "ONE_PRIMARY", + "NO_PRIMARY", + "TOO_MANY_ELECTIONS" + ], + "title": "ReplicaSet Event Types", + "type": "string" + }, + { + "enum": [ + "SERVERLESS_DEPLOYMENT_CREATED", + "SERVERLESS_DEPLOYMENT_DELETED", + "SERVERLESS_DEPLOYMENT_UPDATED", + "SERVERLESS_DEPLOYMENT_INSTANCE_REPLACED", + "SERVERLESS_DEPLOYMENT_INSTANCE_REBOOTED", + "SERVERLESS_DEPLOYMENT_ENDPOINT_SERVICE_LINKED", + "SERVERLESS_DEPLOYMENT_ENDPOINT_SERVICE_UNLINKED", + "SERVERLESS_DEPLOYMENT_ENVOY_INSTANCE_UIS_KEYS_ROTATED" + ], + "title": "Serverless Deployment Audit Types", + "type": "string" + }, + { + "enum": [ + "INSIDE_SERVERLESS_METRIC_THRESHOLD", + "OUTSIDE_SERVERLESS_METRIC_THRESHOLD" + ], + "title": "Serverless Event Types", + "type": "string" + }, + { + "enum": [ + "SETUP_SERVERLESS_INITIATED" + ], + "title": "Setup Serverless Audit Types", + "type": "string" + }, + { + "enum": [ + "MAX_PROCESSOR_COUNT_REACHED" + ], + "title": "Streams Event Types", + "type": "string" + }, + { + "enum": [ + "STREAM_PROCESSOR_STATE_IS_FAILED" + ], + "title": "Stream Processor Event Types", + "type": "string" + }, + { + "enum": [ + "CASE_CREATED" + ], + "title": "Support Case Event Types", + "type": "string" + }, + { + "enum": [ + "SUPPORT_EMAILS_SENT_SUCCESSFULLY", + "SUPPORT_EMAILS_SENT_FAILURE" + ], + "title": "Support Event Types", + "type": "string" + }, + { + "enum": [ + "TEAM_ADDED_TO_GROUP", + "TEAM_REMOVED_FROM_GROUP", + "TEAM_ROLES_MODIFIED" + ], + "title": "Team Event Types", + "type": "string" + }, + { + "enum": [ + "TENANT_SNAPSHOT_STARTED_AUDIT", + "TENANT_SNAPSHOT_COMPLETED_AUDIT", + "TENANT_SNAPSHOT_DELETED_AUDIT", + "TENANT_RESTORE_REQUESTED_AUDIT", + "TENANT_RESTORE_COMPLETED_AUDIT", + "TENANT_SNAPSHOT_DOWNLOAD_REQUESTED_AUDIT" + ], + "title": "Tenant Backup Event Types", + "type": "string" + }, + { + "enum": [ + "JOINED_GROUP", + "REMOVED_FROM_GROUP", + "INVITED_TO_GROUP", + "REQUESTED_TO_JOIN_GROUP", + "GROUP_INVITATION_DELETED", + "USER_ROLES_CHANGED_AUDIT", + "JOIN_GROUP_REQUEST_DENIED_AUDIT", + "JOIN_GROUP_REQUEST_APPROVED_AUDIT" + ], + "title": "User Event Types", + "type": "string" + }, + { + "enum": [ + "CLUSTER_VERSION_FIXED", + "CLUSTER_VERSION_UNFIXED", + "CLUSTER_FCV_FIXED", + "CLUSTER_FCV_UNFIXED", + "AGENT_VERSION_FIXED", + "AGENT_VERSION_UNFIXED", + "FIXED_VERSION_UPDATED", + "FIXED_AGENT_VERSION_UPDATED", + "CLUSTER_FCV_DOWNGRADED" + ], + "title": "Version Audit Types", + "type": "string" + }, + { + "enum": [ + "TAGS_MODIFIED", + "GROUP_TAGS_MODIFIED" + ], + "title": "Resource Event Types", + "type": "string" + } + ], + "type": "object" + }, + "EventTypeForOrg": { + "oneOf": [ + { + "enum": [ + "ALERT_ACKNOWLEDGED_AUDIT", + "ALERT_UNACKNOWLEDGED_AUDIT" + ], + "title": "Alert Audit Types", + "type": "string" + }, + { + "enum": [ + "ALERT_CONFIG_DISABLED_AUDIT", + "ALERT_CONFIG_ENABLED_AUDIT", + "ALERT_CONFIG_ADDED_AUDIT", + "ALERT_CONFIG_DELETED_AUDIT", + "ALERT_CONFIG_CHANGED_AUDIT" + ], + "title": "Alert Audit Types", + "type": "string" + }, + { + "enum": [ + "API_KEY_CREATED", + "API_KEY_DELETED", + "API_KEY_ACCESS_LIST_ENTRY_ADDED", + "API_KEY_ACCESS_LIST_ENTRY_DELETED", + "API_KEY_ROLES_CHANGED", + "API_KEY_DESCRIPTION_CHANGED", + "API_KEY_ADDED_TO_GROUP", + "API_KEY_REMOVED_FROM_GROUP", + "API_KEY_UI_IP_ACCESS_LIST_INHERITANCE_ENABLED", + "API_KEY_UI_IP_ACCESS_LIST_INHERITANCE_DISABLED" + ], + "title": "API User Event Types", + "type": "string" + }, + { + "enum": [ + "SERVICE_ACCOUNT_CREATED", + "SERVICE_ACCOUNT_DELETED", + "SERVICE_ACCOUNT_ROLES_CHANGED", + "SERVICE_ACCOUNT_DETAILS_CHANGED", + "SERVICE_ACCOUNT_ADDED_TO_GROUP", + "SERVICE_ACCOUNT_REMOVED_FROM_GROUP", + "SERVICE_ACCOUNT_ACCESS_LIST_ENTRY_ADDED", + "SERVICE_ACCOUNT_ACCESS_LIST_ENTRY_DELETED", + "SERVICE_ACCOUNT_SECRET_ADDED", + "SERVICE_ACCOUNT_SECRET_DELETED", + "SERVICE_ACCOUNT_UI_IP_ACCESS_LIST_INHERITANCE_ENABLED", + "SERVICE_ACCOUNT_UI_IP_ACCESS_LIST_INHERITANCE_DISABLED" + ], + "title": "Service Account Event Types", + "type": "string" + }, + { + "enum": [ + "CHARGE_SUCCEEDED", + "CHARGE_FAILED", + "CHARGE_PROCESSING", + "CHARGE_PENDING_REVERSAL", + "BRAINTREE_CHARGE_FAILED", + "INVOICE_CLOSED", + "CHECK_PAYMENT_RECEIVED", + "WIRE_TRANSFER_PAYMENT_RECEIVED", + "DISCOUNT_APPLIED", + "CREDIT_ISSUED", + "CREDIT_PULLED_FWD", + "CREDIT_END_DATE_MODIFIED", + "PROMO_CODE_APPLIED", + "PAYMENT_FORGIVEN", + "REFUND_ISSUED", + "ACCOUNT_DOWNGRADED", + "ACCOUNT_UPGRADED", + "ACCOUNT_MODIFIED", + "SUPPORT_PLAN_ACTIVATED", + "SUPPORT_PLAN_CANCELLED", + "SUPPORT_PLAN_CANCELLATION_SCHEDULED", + "INITIATE_SALESFORCE_SERVICE_CLOUD_SYNC", + "INVOICE_ADDRESS_CHANGED", + "INVOICE_ADDRESS_ADDED", + "PREPAID_PLAN_ACTIVATED", + "ELASTIC_INVOICING_MODE_ACTIVATED", + "ELASTIC_INVOICING_MODE_DEACTIVATED", + "TERMINATE_PAID_SERVICES", + "BILLING_EMAIL_ADDRESS_ADDED", + "BILLING_EMAIL_ADDRESS_CHANGED", + "BILLING_EMAIL_ADDRESS_REMOVED", + "AWS_BILLING_ACCOUNT_CREDIT_ISSUED", + "GCP_BILLING_ACCOUNT_CREDIT_ISSUED", + "CREDIT_SFOLID_MODIFIED", + "PREPAID_PLAN_MODIFIED", + "AWS_USAGE_REPORTED", + "AZURE_USAGE_REPORTED", + "GCP_USAGE_REPORTED", + "BECAME_PAYING_ORG", + "NEW_LINKED_ORG", + "UNLINKED_ORG", + "ORG_LINKED_TO_PAYING_ORG", + "ORG_UNLINKED_FROM_PAYING_ORG", + "ORG_UNLINK_REQUESTED", + "ORG_UNLINK_CANCELLED", + "PAYMENT_UPDATED_THROUGH_API", + "AZURE_BILLING_ACCOUNT_CREDIT_ISSUED", + "CREDIT_START_DATE_MODIFIED", + "CREDIT_ELASTIC_INVOICING_MODIFIED", + "CREDIT_TYPE_MODIFIED", + "CREDIT_AMOUNT_CENTS_MODIFIED", + "CREDIT_AMOUNT_REMAINING_CENTS_MODIFIED", + "CREDIT_TOTAL_BILLED_CENTS_MODIFIED", + "CREDIT_AWS_CUSTOMER_ID_MODIFIED", + "CREDIT_AWS_PRODUCT_CODE_MODIFIED", + "CREDIT_GCP_MARKETPLACE_ENTITLEMENT_ID_MODIFIED", + "CREDIT_AZURE_SUBSCRIPTION_ID_MODIFIED", + "CREDIT_AZURE_PRIVATE_PLAN_ID_MODIFIED", + "TARGETED_REBILL_EXECUTED", + "LEGACY_REBILL_EXECUTED", + "EVERGREEN_DEAL_CANCELLED", + "GRACE_PERIOD_ACTIVATED", + "GRACE_PERIOD_NO_LONGER_IN_EFFECT", + "PENDING_DEAL_ACTIVATION_ADDED", + "PENDING_DEAL_ACTIVATION_CANCELED", + "PENDING_DEAL_APPLIED", + "PENDING_DEAL_ACTIVATION_FAILED", + "EVERGREEN_PRIORITY_MODIFIED" + ], + "title": "Billing Event Types", + "type": "string" + }, + { + "enum": [ + "FEDERATION_SETTINGS_CREATED", + "FEDERATION_SETTINGS_DELETED", + "FEDERATION_SETTINGS_UPDATED", + "IDENTITY_PROVIDER_CREATED", + "IDENTITY_PROVIDER_UPDATED", + "IDENTITY_PROVIDER_DELETED", + "IDENTITY_PROVIDER_ACTIVATED", + "OIDC_IDENTITY_PROVIDER_UPDATED", + "IDENTITY_PROVIDER_DEACTIVATED", + "IDENTITY_PROVIDER_JWKS_REVOKED", + "OIDC_IDENTITY_PROVIDER_ENABLED", + "OIDC_IDENTITY_PROVIDER_DISABLED", + "DOMAINS_ASSOCIATED", + "DOMAIN_CREATED", + "DOMAIN_DELETED", + "DOMAIN_VERIFIED", + "ORG_SETTINGS_CONFIGURED", + "ORG_SETTINGS_UPDATED", + "ORG_SETTINGS_DELETED", + "RESTRICT_ORG_MEMBERSHIP_ENABLED", + "RESTRICT_ORG_MEMBERSHIP_DISABLED", + "ROLE_MAPPING_CREATED", + "ROLE_MAPPING_UPDATED", + "ROLE_MAPPING_DELETED" + ], + "title": "Federation Settings Event Types", + "type": "string" + }, + { + "enum": [ + "GROUP_DELETED", + "GROUP_CREATED", + "GROUP_MOVED" + ], + "title": "Group Audit Types", + "type": "string" + }, + { + "enum": [ + "MLAB_MIGRATION_COMPLETED", + "MLAB_MIGRATION_TARGET_CLUSTER_CREATED", + "MLAB_MIGRATION_DATABASE_USERS_IMPORTED", + "MLAB_MIGRATION_IP_WHITELIST_IMPORTED", + "MLAB_MIGRATION_TARGET_CLUSTER_SET", + "MLAB_MIGRATION_DATABASE_RENAMED", + "MLAB_MIGRATION_LIVE_IMPORT_STARTED", + "MLAB_MIGRATION_LIVE_IMPORT_READY_FOR_CUTOVER", + "MLAB_MIGRATION_LIVE_IMPORT_CUTOVER_COMPLETE", + "MLAB_MIGRATION_LIVE_IMPORT_ERROR", + "MLAB_MIGRATION_LIVE_IMPORT_CANCELLED", + "MLAB_MIGRATION_DUMP_AND_RESTORE_TEST_STARTED", + "MLAB_MIGRATION_DUMP_AND_RESTORE_TEST_SKIPPED", + "MLAB_MIGRATION_DUMP_AND_RESTORE_STARTED", + "MLAB_MIGRATION_SUPPORT_PLAN_SELECTED", + "MLAB_MIGRATION_SUPPORT_PLAN_OPTED_OUT" + ], + "title": "Mlab Migration Audit Types", + "type": "string" + }, + { + "enum": [ + "ORG_LIMIT_UPDATED" + ], + "title": "NDS Audit Types", + "type": "string" + }, + { + "enum": [ + "ORG_CREATED", + "SECURITY_CONTACT_MODIFIED", + "ORG_CREDIT_CARD_ADDED", + "ORG_CREDIT_CARD_UPDATED", + "ORG_CREDIT_CARD_CURRENT", + "ORG_CREDIT_CARD_ABOUT_TO_EXPIRE", + "ORG_PAYPAL_LINKED", + "ORG_PAYPAL_UPDATED", + "ORG_PAYPAL_CANCELLED", + "ORG_OVERRIDE_PAYMENT_METHOD_ADDED", + "ORG_ACTIVATED", + "ORG_TEMPORARILY_ACTIVATED", + "ORG_SUSPENSION_DATE_CHANGED", + "ORG_SUSPENDED", + "ORG_ADMIN_SUSPENDED", + "ORG_ADMIN_LOCKED", + "ORG_CLUSTERS_DELETED", + "ORG_CLUSTERS_PAUSED", + "ORG_LOCKED", + "ORG_UNDER_FINANCIAL_PROTECTION", + "ORG_NO_FINANCIAL_PROTECTION", + "ORG_RENAMED", + "ALL_ORG_USERS_HAVE_MFA", + "ORG_USERS_WITHOUT_MFA", + "ORG_INVOICE_UNDER_THRESHOLD", + "ORG_INVOICE_OVER_THRESHOLD", + "ORG_DAILY_BILL_UNDER_THRESHOLD", + "ORG_DAILY_BILL_OVER_THRESHOLD", + "ORG_GROUP_CHARGES_UNDER_THRESHOLD", + "ORG_GROUP_CHARGES_OVER_THRESHOLD", + "ORG_TWO_FACTOR_AUTH_REQUIRED", + "ORG_TWO_FACTOR_AUTH_OPTIONAL", + "ORG_PUBLIC_API_ACCESS_LIST_REQUIRED", + "ORG_PUBLIC_API_ACCESS_LIST_NOT_REQUIRED", + "ORG_EMPLOYEE_ACCESS_RESTRICTED", + "ORG_EMPLOYEE_ACCESS_UNRESTRICTED", + "ORG_SFDC_ACCOUNT_ID_CHANGED", + "ORG_CONNECTED_TO_MLAB", + "ORG_DISCONNECTED_FROM_MLAB", + "ORG_IDP_CERTIFICATE_CURRENT", + "ORG_IDP_CERTIFICATE_ABOUT_TO_EXPIRE", + "ORG_CONNECTED_TO_VERCEL", + "ORG_DISCONNECTED_TO_VERCEL", + "ORG_CONNECTION_UNINSTALLED_FROM_VERCEL", + "ORG_UI_IP_ACCESS_LIST_ENABLED", + "ORG_UI_IP_ACCESS_LIST_DISABLED", + "ORG_EDITED_UI_IP_ACCESS_LIST_ENTRIES", + "ORG_SERVICE_ACCOUNT_MAX_SECRET_VALIDITY_EDITED" + ], + "title": "Org Event Types", + "type": "string" + }, + { + "enum": [ + "AWS_SELF_SERVE_ACCOUNT_LINKED", + "AWS_SELF_SERVE_ACCOUNT_LINK_PENDING", + "AWS_SELF_SERVE_ACCOUNT_CANCELLED", + "AWS_SELF_SERVE_ACCOUNT_LINK_FAILED", + "GCP_SELF_SERVE_ACCOUNT_LINK_PENDING", + "GCP_SELF_SERVE_ACCOUNT_LINK_FAILED", + "AZURE_SELF_SERVE_ACCOUNT_LINKED", + "AZURE_SELF_SERVE_ACCOUNT_LINK_PENDING", + "AZURE_SELF_SERVE_ACCOUNT_CANCELLED", + "AZURE_SELF_SERVE_ACCOUNT_LINK_FAILED", + "GCP_SELF_SERVE_ACCOUNT_LINKED", + "GCP_SELF_SERVE_ACCOUNT_CANCELLED" + ], + "title": "Partner Event Types", + "type": "string" + }, + { + "enum": [ + "SUPPORT_EMAILS_SENT_SUCCESSFULLY", + "SUPPORT_EMAILS_SENT_FAILURE" + ], + "title": "Support Event Types", + "type": "string" + }, + { + "enum": [ + "TEAM_CREATED", + "TEAM_DELETED", + "TEAM_UPDATED", + "TEAM_NAME_CHANGED", + "TEAM_ADDED_TO_GROUP", + "TEAM_REMOVED_FROM_GROUP", + "TEAM_ROLES_MODIFIED" + ], + "title": "Team Event Types", + "type": "string" + }, + { + "enum": [ + "JOINED_ORG", + "JOINED_TEAM", + "INVITED_TO_ORG", + "ORG_INVITATION_DELETED", + "REMOVED_FROM_ORG", + "REMOVED_FROM_TEAM", + "USER_ROLES_CHANGED_AUDIT", + "ORG_FLEX_CONSULTING_PURCHASED", + "ORG_FLEX_CONSULTING_PURCHASE_FAILED", + "INVITED_TO_TEAM" + ], + "title": "User Event Types", + "type": "string" + }, + { + "enum": [ + "GROUP_TAGS_MODIFIED" + ], + "title": "Resource Event Types", + "type": "string" + } + ], + "type": "object" + }, + "EventViewForNdsGroup": { + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultEventViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/AlertAudit" + }, + { + "$ref": "#/components/schemas/AlertConfigAudit" + }, + { + "$ref": "#/components/schemas/ApiUserEventViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/ServiceAccountGroupEvents" + }, + { + "$ref": "#/components/schemas/AutomationConfigEventView" + }, + { + "$ref": "#/components/schemas/AppServiceEventView" + }, + { + "$ref": "#/components/schemas/BillingEventViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/ClusterEventViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/DataExplorerAccessedEventView" + }, + { + "$ref": "#/components/schemas/FTSIndexAuditView" + }, + { + "$ref": "#/components/schemas/HostEventViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/HostMetricEvent" + }, + { + "$ref": "#/components/schemas/NDSAuditViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/NDSAutoScalingAuditViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/NDSServerlessInstanceAuditView" + }, + { + "$ref": "#/components/schemas/NDSTenantEndpointAuditView" + }, + { + "$ref": "#/components/schemas/ForNdsGroup" + }, + { + "$ref": "#/components/schemas/TeamEventViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/UserEventViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/ResourceEventViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/StreamsEventViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/StreamProcessorEventViewForNdsGroup" + } + ], + "type": "object" + }, + "EventViewForOrg": { + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultEventViewForOrg" + }, + { + "$ref": "#/components/schemas/AlertAudit" + }, + { + "$ref": "#/components/schemas/AlertConfigAudit" + }, + { + "$ref": "#/components/schemas/ApiUserEventViewForOrg" + }, + { + "$ref": "#/components/schemas/ServiceAccountOrgEvents" + }, + { + "$ref": "#/components/schemas/BillingEventViewForOrg" + }, + { + "$ref": "#/components/schemas/NDSAuditViewForOrg" + }, + { + "$ref": "#/components/schemas/OrgEventViewForOrg" + }, + { + "$ref": "#/components/schemas/TeamEvent" + }, + { + "$ref": "#/components/schemas/UserEventViewForOrg" + }, + { + "$ref": "#/components/schemas/ResourceEventViewForOrg" + } + ], + "type": "object" + }, + "ExampleResourceResponse20230101": { + "properties": { + "data": { + "description": "Dummy data added as response.", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" + }, + "ExampleResourceResponse20230201": { + "properties": { + "additionalInfo": { + "description": "Dummy additional field added to the response.", + "type": "string" + }, + "data": { + "description": "Array that contains the dummy metadata.", + "items": { + "description": "Dummy data added as response.", + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "Dummy description added as response.", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "required": [ + "description" + ], + "type": "object" + }, + "ExportStatus": { + "description": "State of the export job for the collections on the replica set only.", + "properties": { + "exportedCollections": { + "description": "Number of collections on the replica set that MongoDB Cloud exported.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "totalCollections": { + "description": "Total number of collections on the replica set to export.", + "format": "int32", + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "ExtraRetentionSetting": { + "description": "extra retention setting item in the desired backup policy.", + "properties": { + "frequencyType": { + "description": "The frequency type for the extra retention settings for the cluster.", + "enum": [ + "HOURLY", + "DAILY", + "WEEKLY", + "MONTHLY", + "YEARLY", + "ON_DEMAND" + ], + "type": "string" + }, + "retentionDays": { + "description": "The number of extra retention days for the cluster.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "FTSIndexAuditTypeView": { + "description": "Unique identifier of event type.", + "enum": [ + "FTS_INDEX_DELETION_FAILED", + "FTS_INDEX_BUILD_COMPLETE", + "FTS_INDEX_BUILD_FAILED", + "FTS_INDEX_CREATED", + "FTS_INDEX_UPDATED", + "FTS_INDEX_DELETED", + "FTS_INDEX_CLEANED_UP", + "FTS_INDEXES_RESTORED", + "FTS_INDEXES_RESTORE_FAILED" + ], + "example": "FTS_INDEX_CREATED", + "title": "FTS Index Audit Types", + "type": "string" + }, + "FTSIndexAuditView": { + "description": "FTS index audit indicates any activities about search index.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/FTSIndexAuditTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "FTS Index Audits", + "type": "object" + }, + "FTSMetric": { + "description": "Measurement of one Atlas Search status when MongoDB Atlas received this request.", + "properties": { + "metricName": { + "description": "Human-readable label that identifies this Atlas Search hardware, status, or index measurement.", + "enum": [ + "INDEX_SIZE_ON_DISK", + "NUMBER_OF_DELETES", + "NUMBER_OF_ERROR_QUERIES", + "NUMBER_OF_GETMORE_COMMANDS", + "NUMBER_OF_INDEX_FIELDS", + "NUMBER_OF_INSERTS", + "NUMBER_OF_SUCCESS_QUERIES", + "NUMBER_OF_UPDATES", + "REPLICATION_LAG", + "TOTAL_NUMBER_OF_QUERIES", + "FTS_DISK_USAGE", + "FTS_PROCESS_CPU_KERNEL", + "FTS_PROCESS_CPU_USER", + "FTS_PROCESS_NORMALIZED_CPU_KERNEL", + "FTS_PROCESS_NORMALIZED_CPU_USER", + "FTS_PROCESS_RESIDENT_MEMORY", + "FTS_PROCESS_SHARED_MEMORY", + "FTS_PROCESS_VIRTUAL_MEMORY", + "JVM_CURRENT_MEMORY", + "JVM_MAX_MEMORY", + "PAGE_FAULTS" + ], + "readOnly": true, + "type": "string" + }, + "units": { + "description": "Unit of measurement that applies to this Atlas Search metric.", + "enum": [ + "BYTES", + "BYTES_PER_SECOND", + "GIGABYTES", + "GIGABYTES_PER_HOUR", + "KILOBYTES", + "MEGABYTES", + "MEGABYTES_PER_SECOND", + "MILLISECONDS", + "MILLISECONDS_LOGSCALE", + "PERCENT", + "SCALAR", + "SCALAR_PER_SECOND", + "SECONDS" + ], + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "required": [ + "metricName", + "units" + ], + "type": "object" + }, + "FederatedUser": { + "description": "MongoDB Cloud user linked to this federated authentication.", + "properties": { + "emailAddress": { + "description": "Email address of the MongoDB Cloud user linked to the federated organization.", + "format": "email", + "type": "string" + }, + "federationSettingsId": { + "description": "Unique 24-hexadecimal digit string that identifies the federation to which this MongoDB Cloud user belongs.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "firstName": { + "description": "First or given name that belongs to the MongoDB Cloud user.", + "type": "string" + }, + "lastName": { + "description": "Last name, family name, or surname that belongs to the MongoDB Cloud user.", + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies this user.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "emailAddress", + "federationSettingsId", + "firstName", + "lastName" + ], + "title": "Federated User", + "type": "object" + }, + "FederationIdentityProvider": { + "oneOf": [ + { + "$ref": "#/components/schemas/FederationSamlIdentityProvider" + }, + { + "$ref": "#/components/schemas/FederationOidcWorkforceIdentityProvider" + }, + { + "$ref": "#/components/schemas/FederationOidcWorkloadIdentityProvider" + } + ], + "properties": { + "associatedOrgs": { + "description": "List that contains the connected organization configurations associated with the identity provider.", + "items": { + "$ref": "#/components/schemas/ConnectedOrgConfig" + }, + "type": "array", + "uniqueItems": true + }, + "createdAt": { + "description": "Date that the identity provider was created on.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "The description of the identity provider.", + "type": "string" + }, + "displayName": { + "description": "Human-readable label that identifies the identity provider.", + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the identity provider.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "idpType": { + "description": "String enum that indicates the type of the identity provider. Default is WORKFORCE.", + "enum": [ + "WORKFORCE", + "WORKLOAD" + ], + "type": "string" + }, + "issuerUri": { + "description": "Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.", + "type": "string" + }, + "oktaIdpId": { + "description": "Legacy 20-hexadecimal digit string that identifies the identity provider.", + "maxLength": 20, + "minLength": 20, + "pattern": "^([a-f0-9]{20})$", + "type": "string" + }, + "protocol": { + "description": "String enum that indicates the protocol of the identity provider. Either SAML or OIDC.", + "enum": [ + "SAML", + "OIDC" + ], + "type": "string" + }, + "updatedAt": { + "description": "Date that the identity provider was last updated on.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "id", + "oktaIdpId" + ], + "type": "object" + }, + "FederationIdentityProviderUpdate": { + "oneOf": [ + { + "$ref": "#/components/schemas/FederationSamlIdentityProviderUpdate" + }, + { + "$ref": "#/components/schemas/FederationOidcWorkforceIdentityProviderUpdate" + }, + { + "$ref": "#/components/schemas/FederationOidcWorkloadIdentityProviderUpdate" + } + ], + "properties": { + "description": { + "description": "The description of the identity provider.", + "type": "string" + }, + "displayName": { + "description": "Human-readable label that identifies the identity provider.", + "maxLength": 50, + "minLength": 1, + "type": "string" + }, + "idpType": { + "description": "String enum that indicates the type of the identity provider. Default is WORKFORCE.", + "enum": [ + "WORKFORCE", + "WORKLOAD" + ], + "type": "string" + }, + "issuerUri": { + "description": "Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.", + "example": "urn:idp:default", + "type": "string" + }, + "protocol": { + "description": "String enum that indicates the protocol of the identity provider. Either SAML or OIDC.", + "enum": [ + "SAML", + "OIDC" + ], + "type": "string" + } + }, + "type": "object" + }, + "FederationOidcIdentityProvider": { + "oneOf": [ + { + "$ref": "#/components/schemas/FederationOidcWorkforceIdentityProvider" + }, + { + "$ref": "#/components/schemas/FederationOidcWorkloadIdentityProvider" + } + ], + "properties": { + "associatedOrgs": { + "description": "List that contains the connected organization configurations associated with the identity provider.", + "items": { + "$ref": "#/components/schemas/ConnectedOrgConfig" + }, + "type": "array", + "uniqueItems": true + }, + "audience": { + "description": "Identifier of the intended recipient of the token.", + "type": "string" + }, + "authorizationType": { + "description": "Indicates whether authorization is granted based on group membership or user ID.", + "enum": [ + "GROUP", + "USER" + ], + "type": "string" + }, + "createdAt": { + "description": "Date that the identity provider was created on.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "The description of the identity provider.", + "type": "string" + }, + "displayName": { + "description": "Human-readable label that identifies the identity provider.", + "type": "string" + }, + "groupsClaim": { + "description": "Identifier of the claim which contains IdP Group IDs in the token.", + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the identity provider.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "idpType": { + "description": "String enum that indicates the type of the identity provider. Default is WORKFORCE.", + "enum": [ + "WORKFORCE", + "WORKLOAD" + ], + "type": "string" + }, + "issuerUri": { + "description": "Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.", + "type": "string" + }, + "oktaIdpId": { + "description": "Legacy 20-hexadecimal digit string that identifies the identity provider.", + "maxLength": 20, + "minLength": 20, + "pattern": "^([a-f0-9]{20})$", + "type": "string" + }, + "protocol": { + "description": "String enum that indicates the protocol of the identity provider. Either SAML or OIDC.", + "enum": [ + "SAML", + "OIDC" + ], + "type": "string" + }, + "updatedAt": { + "description": "Date that the identity provider was last updated on.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "userClaim": { + "description": "Identifier of the claim which contains the user ID in the token.", + "type": "string" + } + }, + "required": [ + "id", + "oktaIdpId" + ], + "type": "object" + }, + "FederationOidcIdentityProviderUpdate": { + "oneOf": [ + { + "$ref": "#/components/schemas/FederationOidcWorkforceIdentityProviderUpdate" + }, + { + "$ref": "#/components/schemas/FederationOidcWorkloadIdentityProviderUpdate" + } + ], + "properties": { + "audience": { + "description": "Identifier of the intended recipient of the token.", + "type": "string" + }, + "authorizationType": { + "description": "Indicates whether authorization is granted based on group membership or user ID.", + "enum": [ + "GROUP", + "USER" + ], + "type": "string" + }, + "description": { + "description": "The description of the identity provider.", + "type": "string" + }, + "displayName": { + "description": "Human-readable label that identifies the identity provider.", + "maxLength": 50, + "minLength": 1, + "type": "string" + }, + "groupsClaim": { + "description": "Identifier of the claim which contains IdP Group IDs in the token.", + "type": "string" + }, + "idpType": { + "description": "String enum that indicates the type of the identity provider. Default is WORKFORCE.", + "enum": [ + "WORKFORCE", + "WORKLOAD" + ], + "type": "string" + }, + "issuerUri": { + "description": "Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.", + "example": "urn:idp:default", + "type": "string" + }, + "protocol": { + "description": "String enum that indicates the protocol of the identity provider. Either SAML or OIDC.", + "enum": [ + "SAML", + "OIDC" + ], + "type": "string" + }, + "userClaim": { + "description": "Identifier of the claim which contains the user ID in the token.", + "type": "string" + } + }, + "type": "object" + }, + "FederationOidcWorkforceIdentityProvider": { + "properties": { + "associatedDomains": { + "description": "List that contains the domains associated with the identity provider.", + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "associatedOrgs": { + "description": "List that contains the connected organization configurations associated with the identity provider.", + "items": { + "$ref": "#/components/schemas/ConnectedOrgConfig" + }, + "type": "array", + "uniqueItems": true + }, + "audience": { + "description": "Identifier of the intended recipient of the token.", + "type": "string" + }, + "authorizationType": { + "description": "Indicates whether authorization is granted based on group membership or user ID.", + "enum": [ + "GROUP", + "USER" + ], + "type": "string" + }, + "clientId": { + "description": "Client identifier that is assigned to an application by the Identity Provider.", + "type": "string" + }, + "createdAt": { + "description": "Date that the identity provider was created on.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "The description of the identity provider.", + "type": "string" + }, + "displayName": { + "description": "Human-readable label that identifies the identity provider.", + "type": "string" + }, + "groupsClaim": { + "description": "Identifier of the claim which contains IdP Group IDs in the token.", + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the identity provider.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "idpType": { + "description": "String enum that indicates the type of the identity provider. Default is WORKFORCE.", + "enum": [ + "WORKFORCE", + "WORKLOAD" + ], + "type": "string" + }, + "issuerUri": { + "description": "Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.", + "type": "string" + }, + "oktaIdpId": { + "description": "Legacy 20-hexadecimal digit string that identifies the identity provider.", + "maxLength": 20, + "minLength": 20, + "pattern": "^([a-f0-9]{20})$", + "type": "string" + }, + "protocol": { + "description": "String enum that indicates the protocol of the identity provider. Either SAML or OIDC.", + "enum": [ + "SAML", + "OIDC" + ], + "type": "string" + }, + "requestedScopes": { + "description": "Scopes that MongoDB applications will request from the authorization endpoint.", + "items": { + "type": "string" + }, + "type": "array" + }, + "updatedAt": { + "description": "Date that the identity provider was last updated on.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "userClaim": { + "description": "Identifier of the claim which contains the user ID in the token.", + "type": "string" + } + }, + "required": [ + "id", + "oktaIdpId" + ], + "title": "OIDC WORKFORCE", + "type": "object" + }, + "FederationOidcWorkforceIdentityProviderUpdate": { + "properties": { + "associatedDomains": { + "description": "List that contains the domains associated with the identity provider.", + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "audience": { + "description": "Identifier of the intended recipient of the token.", + "type": "string" + }, + "authorizationType": { + "description": "Indicates whether authorization is granted based on group membership or user ID.", + "enum": [ + "GROUP", + "USER" + ], + "type": "string" + }, + "clientId": { + "description": "Client identifier that is assigned to an application by the Identity Provider.", + "type": "string" + }, + "description": { + "description": "The description of the identity provider.", + "type": "string" + }, + "displayName": { + "description": "Human-readable label that identifies the identity provider.", + "maxLength": 50, + "minLength": 1, + "type": "string" + }, + "groupsClaim": { + "description": "Identifier of the claim which contains IdP Group IDs in the token.", + "type": "string" + }, + "idpType": { + "description": "String enum that indicates the type of the identity provider. Default is WORKFORCE.", + "enum": [ + "WORKFORCE", + "WORKLOAD" + ], + "type": "string" + }, + "issuerUri": { + "description": "Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.", + "example": "urn:idp:default", + "type": "string" + }, + "protocol": { + "description": "String enum that indicates the protocol of the identity provider. Either SAML or OIDC.", + "enum": [ + "SAML", + "OIDC" + ], + "type": "string" + }, + "requestedScopes": { + "description": "Scopes that MongoDB applications will request from the authorization endpoint.", + "items": { + "type": "string" + }, + "type": "array" + }, + "userClaim": { + "description": "Identifier of the claim which contains the user ID in the token.", + "type": "string" + } + }, + "title": "OIDC WORKFORCE", + "type": "object" + }, + "FederationOidcWorkloadIdentityProvider": { + "properties": { + "associatedOrgs": { + "description": "List that contains the connected organization configurations associated with the identity provider.", + "items": { + "$ref": "#/components/schemas/ConnectedOrgConfig" + }, + "type": "array", + "uniqueItems": true + }, + "audience": { + "description": "Identifier of the intended recipient of the token.", + "type": "string" + }, + "authorizationType": { + "description": "Indicates whether authorization is granted based on group membership or user ID.", + "enum": [ + "GROUP", + "USER" + ], + "type": "string" + }, + "createdAt": { + "description": "Date that the identity provider was created on.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "The description of the identity provider.", + "type": "string" + }, + "displayName": { + "description": "Human-readable label that identifies the identity provider.", + "type": "string" + }, + "groupsClaim": { + "description": "Identifier of the claim which contains IdP Group IDs in the token.", + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the identity provider.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "idpType": { + "description": "String enum that indicates the type of the identity provider. Default is WORKFORCE.", + "enum": [ + "WORKFORCE", + "WORKLOAD" + ], + "type": "string" + }, + "issuerUri": { + "description": "Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.", + "type": "string" + }, + "oktaIdpId": { + "description": "Legacy 20-hexadecimal digit string that identifies the identity provider.", + "maxLength": 20, + "minLength": 20, + "pattern": "^([a-f0-9]{20})$", + "type": "string" + }, + "protocol": { + "description": "String enum that indicates the protocol of the identity provider. Either SAML or OIDC.", + "enum": [ + "SAML", + "OIDC" + ], + "type": "string" + }, + "updatedAt": { + "description": "Date that the identity provider was last updated on.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "userClaim": { + "description": "Identifier of the claim which contains the user ID in the token.", + "type": "string" + } + }, + "required": [ + "id", + "oktaIdpId" + ], + "title": "OIDC WORKLOAD", + "type": "object" + }, + "FederationOidcWorkloadIdentityProviderUpdate": { + "properties": { + "audience": { + "description": "Identifier of the intended recipient of the token.", + "type": "string" + }, + "authorizationType": { + "description": "Indicates whether authorization is granted based on group membership or user ID.", + "enum": [ + "GROUP", + "USER" + ], + "type": "string" + }, + "description": { + "description": "The description of the identity provider.", + "type": "string" + }, + "displayName": { + "description": "Human-readable label that identifies the identity provider.", + "maxLength": 50, + "minLength": 1, + "type": "string" + }, + "groupsClaim": { + "description": "Identifier of the claim which contains IdP Group IDs in the token.", + "type": "string" + }, + "idpType": { + "description": "String enum that indicates the type of the identity provider. Default is WORKFORCE.", + "enum": [ + "WORKFORCE", + "WORKLOAD" + ], + "type": "string" + }, + "issuerUri": { + "description": "Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.", + "example": "urn:idp:default", + "type": "string" + }, + "protocol": { + "description": "String enum that indicates the protocol of the identity provider. Either SAML or OIDC.", + "enum": [ + "SAML", + "OIDC" + ], + "type": "string" + }, + "userClaim": { + "description": "Identifier of the claim which contains the user ID in the token.", + "type": "string" + } + }, + "title": "OIDC WORKLOAD", + "type": "object" + }, + "FederationSamlIdentityProvider": { + "properties": { + "acsUrl": { + "description": "URL that points to where to send the SAML response.", + "type": "string" + }, + "associatedDomains": { + "description": "List that contains the domains associated with the identity provider.", + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "associatedOrgs": { + "description": "List that contains the connected organization configurations associated with the identity provider.", + "items": { + "$ref": "#/components/schemas/ConnectedOrgConfig" + }, + "type": "array", + "uniqueItems": true + }, + "audienceUri": { + "description": "Unique string that identifies the intended audience of the SAML assertion.", + "type": "string" + }, + "createdAt": { + "description": "Date that the identity provider was created on.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "The description of the identity provider.", + "type": "string" + }, + "displayName": { + "description": "Human-readable label that identifies the identity provider.", + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the identity provider.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "idpType": { + "description": "String enum that indicates the type of the identity provider. Default is WORKFORCE.", + "enum": [ + "WORKFORCE", + "WORKLOAD" + ], + "type": "string" + }, + "issuerUri": { + "description": "Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.", + "type": "string" + }, + "oktaIdpId": { + "description": "Legacy 20-hexadecimal digit string that identifies the identity provider.", + "maxLength": 20, + "minLength": 20, + "pattern": "^([a-f0-9]{20})$", + "type": "string" + }, + "pemFileInfo": { + "$ref": "#/components/schemas/PemFileInfo" + }, + "protocol": { + "description": "String enum that indicates the protocol of the identity provider. Either SAML or OIDC.", + "enum": [ + "SAML", + "OIDC" + ], + "type": "string" + }, + "requestBinding": { + "description": "SAML Authentication Request Protocol HTTP method binding (POST or REDIRECT) that Federated Authentication uses to send the authentication request.", + "enum": [ + "HTTP-POST", + "HTTP-REDIRECT" + ], + "type": "string" + }, + "responseSignatureAlgorithm": { + "description": "Signature algorithm that Federated Authentication uses to encrypt the identity provider signature.", + "enum": [ + "SHA-1", + "SHA-256" + ], + "type": "string" + }, + "slug": { + "description": "Custom SSO Url for the identity provider.", + "type": "string" + }, + "ssoDebugEnabled": { + "description": "Flag that indicates whether the identity provider has SSO debug enabled.", + "type": "boolean" + }, + "ssoUrl": { + "description": "URL that points to the receiver of the SAML authentication request.", + "type": "string" + }, + "status": { + "description": "String enum that indicates whether the identity provider is active.", + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "type": "string" + }, + "updatedAt": { + "description": "Date that the identity provider was last updated on.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "id", + "oktaIdpId" + ], + "title": "SAML", + "type": "object" + }, + "FederationSamlIdentityProviderUpdate": { + "properties": { + "associatedDomains": { + "description": "List that contains the domains associated with the identity provider.", + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "description": { + "description": "The description of the identity provider.", + "type": "string" + }, + "displayName": { + "description": "Human-readable label that identifies the identity provider.", + "maxLength": 50, + "minLength": 1, + "type": "string" + }, + "idpType": { + "description": "String enum that indicates the type of the identity provider. Default is WORKFORCE.", + "enum": [ + "WORKFORCE", + "WORKLOAD" + ], + "type": "string" + }, + "issuerUri": { + "description": "Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.", + "example": "urn:idp:default", + "type": "string" + }, + "pemFileInfo": { + "$ref": "#/components/schemas/PemFileInfoUpdate" + }, + "protocol": { + "description": "String enum that indicates the protocol of the identity provider. Either SAML or OIDC.", + "enum": [ + "SAML", + "OIDC" + ], + "type": "string" + }, + "requestBinding": { + "description": "SAML Authentication Request Protocol HTTP method binding (POST or REDIRECT) that Federated Authentication uses to send the authentication request.", + "enum": [ + "HTTP-POST", + "HTTP-REDIRECT" + ], + "type": "string" + }, + "responseSignatureAlgorithm": { + "description": "Signature algorithm that Federated Authentication uses to encrypt the identity provider signature.", + "enum": [ + "SHA-1", + "SHA-256" + ], + "type": "string" + }, + "slug": { + "description": "Custom SSO Url for the identity provider.", + "type": "string" + }, + "ssoDebugEnabled": { + "description": "Flag that indicates whether the identity provider has SSO debug enabled.", + "type": "boolean" + }, + "ssoUrl": { + "description": "URL that points to the receiver of the SAML authentication request.", + "example": "https://example.com", + "type": "string" + }, + "status": { + "description": "String enum that indicates whether the identity provider is active.", + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "type": "string" + } + }, + "required": [ + "ssoDebugEnabled" + ], + "title": "SAML", + "type": "object" + }, + "FieldTransformation": { + "description": "Field Transformations during ingestion of a Data Lake Pipeline.", + "properties": { + "field": { + "description": "Key in the document.", + "type": "string" + }, + "type": { + "description": "Type of transformation applied during the export of the namespace in a Data Lake Pipeline.", + "enum": [ + "EXCLUDE" + ], + "type": "string" + } + }, + "title": "Field Transformation", + "type": "object" + }, + "ForNdsGroup": { + "description": "ReplicaSet Event identifies different activities about replica set of mongod instances.", + "properties": { + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ReplicaSetEventTypeViewForNdsGroup" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "port": { + "description": "IANA port on which the MongoDB process listens for requests.", + "example": 27017, + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "replicaSetName": { + "description": "Human-readable label of the replica set associated with the event.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "shardName": { + "description": "Human-readable label of the shard associated with the event.", + "example": "event-sh-01", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "ReplicaSet Events", + "type": "object" + }, + "GCPCloudProviderContainer": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudProviderContainer" + }, + { + "properties": { + "atlasCidrBlock": { + "description": "IP addresses expressed in Classless Inter-Domain Routing (CIDR) notation that MongoDB Cloud uses for the network peering containers in your project. MongoDB Cloud assigns all of the project's clusters deployed to this cloud provider an IP address from this range. MongoDB Cloud locks this value if an M10 or greater cluster or a network peering connection exists in this project.\n\nThese CIDR blocks must fall within the ranges reserved per RFC 1918. GCP further limits the block to a lower bound of the `/18` range.\n\nTo modify the CIDR block, the target project cannot have:\n\n- Any M10 or greater clusters\n- Any other VPC peering connections\n\n You can also create a new project and create a network peering connection to set the desired MongoDB Cloud network peering container CIDR block for that project. MongoDB Cloud limits the number of MongoDB nodes per network peering connection based on the CIDR block and the region selected for the project.\n\n **Example:** A project in an Google Cloud (GCP) region supporting three availability zones and an MongoDB CIDR network peering container block of limit of `/24` equals 27 three-node replica sets.", + "pattern": "^((([0-9]{1,3}\\.){3}[0-9]{1,3})|(:{0,2}([0-9a-f]{1,4}:){0,7}[0-9a-f]{1,4}[:]{0,2}))((%2[fF]|/)[0-9]{1,3})+$", + "type": "string" + }, + "gcpProjectId": { + "description": "Unique string that identifies the GCP project in which MongoDB Cloud clusters in this network peering container exist. The response returns **null** if no clusters exist in this network peering container.", + "maxLength": 26, + "minLength": 26, + "pattern": "^p-[0-9a-z]{24}$", + "readOnly": true, + "type": "string" + }, + "networkName": { + "description": "Human-readable label that identifies the network in which MongoDB Cloud clusters in this network peering container exist. MongoDB Cloud returns **null** if no clusters exist in this network peering container.", + "maxLength": 36, + "minLength": 36, + "pattern": "^nt-[0-9a-f]{24}-[0-9a-z]{8}$", + "readOnly": true, + "type": "string" + }, + "regions": { + "description": "List of GCP regions to which you want to deploy this MongoDB Cloud network peering container. In this MongoDB Cloud project, you can deploy clusters only to the GCP regions in this list. To deploy MongoDB Cloud clusters to other GCP regions, create additional projects.", + "items": { + "description": "List of GCP regions to which you want to deploy this MongoDB Cloud network peering container. In this MongoDB Cloud project, you can deploy clusters only to the GCP regions in this list. To deploy MongoDB Cloud clusters to other GCP regions, create additional projects.", + "enum": [ + "ASIA_EAST_2", + "ASIA_NORTHEAST_2", + "ASIA_NORTHEAST_3", + "ASIA_SOUTH_1", + "ASIA_SOUTH_2", + "ASIA_SOUTHEAST_2", + "AUSTRALIA_SOUTHEAST_1", + "AUSTRALIA_SOUTHEAST_2", + "CENTRAL_US", + "EASTERN_ASIA_PACIFIC", + "EASTERN_US", + "EUROPE_CENTRAL_2", + "EUROPE_NORTH_1", + "EUROPE_WEST_2", + "EUROPE_WEST_3", + "EUROPE_WEST_4", + "EUROPE_WEST_6", + "EUROPE_WEST_10", + "EUROPE_WEST_12", + "MIDDLE_EAST_CENTRAL_1", + "MIDDLE_EAST_CENTRAL_2", + "MIDDLE_EAST_WEST_1", + "NORTH_AMERICA_NORTHEAST_1", + "NORTH_AMERICA_NORTHEAST_2", + "NORTHEASTERN_ASIA_PACIFIC", + "SOUTH_AMERICA_EAST_1", + "SOUTH_AMERICA_WEST_1", + "SOUTHEASTERN_ASIA_PACIFIC", + "US_EAST_4", + "US_EAST_5", + "US_WEST_2", + "US_WEST_3", + "US_WEST_4", + "US_SOUTH_1", + "WESTERN_EUROPE", + "WESTERN_US" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + ], + "description": "Collection of settings that configures the network container for a virtual private connection on Amazon Web Services.", + "required": [ + "atlasCidrBlock" + ], + "title": "GCP", + "type": "object" + }, + "GCPComputeAutoScaling": { + "description": "Collection of settings that configures how a cluster might scale its cluster tier and whether the cluster can scale down. Cluster tier auto-scaling is unavailable for clusters using Low CPU or NVME storage classes.", + "properties": { + "maxInstanceSize": { + "description": "Maximum instance size to which your cluster can automatically scale.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M140", + "M200", + "M250", + "M300", + "M400", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "R600" + ], + "title": "GCP Instance Sizes", + "type": "string" + }, + "minInstanceSize": { + "description": "Minimum instance size to which your cluster can automatically scale.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M140", + "M200", + "M250", + "M300", + "M400", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "R600" + ], + "title": "GCP Instance Sizes", + "type": "string" + } + }, + "title": "GCP", + "type": "object" + }, + "GCPConsumerForwardingRule": { + "properties": { + "endpointName": { + "description": "Human-readable label that identifies the Google Cloud consumer forwarding rule that you created.", + "externalDocs": { + "description": "Google Cloud Forwarding Rule Concepts", + "url": "https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts" + }, + "readOnly": true, + "type": "string" + }, + "ipAddress": { + "description": "One Private Internet Protocol version 4 (IPv4) address to which this Google Cloud consumer forwarding rule resolves.", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of the MongoDB Cloud endpoint group when MongoDB Cloud received this request.", + "enum": [ + "INITIATING", + "AVAILABLE", + "FAILED", + "DELETING" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GCPEndpointService": { + "description": "Group of Private Endpoint Service settings.", + "properties": { + "cloudProvider": { + "description": "Cloud service provider that serves the requested endpoint service.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "readOnly": true, + "type": "string" + }, + "endpointGroupNames": { + "description": "List of Google Cloud network endpoint groups that corresponds to the Private Service Connect endpoint service.", + "externalDocs": { + "description": "Google Cloud Forwarding Rule Concepts", + "url": "https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts" + }, + "items": { + "description": "One Google Cloud network endpoint group that corresponds to the Private Service Connect endpoint service.", + "type": "string" + }, + "type": "array" + }, + "errorMessage": { + "description": "Error message returned when requesting private connection resource. The resource returns `null` if the request succeeded.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the Private Endpoint Service.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "regionName": { + "description": "Cloud provider region that manages this Private Endpoint Service.", + "readOnly": true, + "type": "string" + }, + "serviceAttachmentNames": { + "description": "List of Uniform Resource Locators (URLs) that identifies endpoints that MongoDB Cloud can use to access one Google Cloud Service across a Google Cloud Virtual Private Connection (VPC) network.", + "externalDocs": { + "description": "Google Cloud Private Service Connect Service Attachments", + "url": "https://cloud.google.com/vpc/docs/private-service-connect#service-attachments" + }, + "items": { + "description": "Uniform Resource Locator (URL) that identifies one endpoint that MongoDB Cloud can use to access one Google Cloud Service across a Google Cloud Virtual Private Connection (VPC) network.", + "pattern": "https:\\/\\/([a-z0-9\\.]+)+\\.[a-z]{2,}(\\/[a-z0-9\\-]+)+\\/projects\\/p-[a-z0-9]+\\/regions\\/[a-z\\-0-9]+\\/serviceAttachments\\/[a-z0-9\\-]+", + "type": "string" + }, + "type": "array" + }, + "status": { + "description": "State of the Private Endpoint Service connection when MongoDB Cloud received this request.", + "enum": [ + "INITIATING", + "AVAILABLE", + "WAITING_FOR_USER", + "FAILED", + "DELETING" + ], + "readOnly": true, + "type": "string" + } + }, + "required": [ + "cloudProvider" + ], + "title": "GCP", + "type": "object" + }, + "GCPHardwareSpec": { + "properties": { + "instanceSize": { + "description": "Hardware specification for the instance sizes in this region. Each instance size has a default storage and memory capacity. The instance size you select applies to all the data-bearing hosts in your instance size.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M140", + "M200", + "M250", + "M300", + "M400", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "R600" + ], + "title": "GCP Instance Sizes", + "type": "string" + }, + "nodeCount": { + "description": "Number of nodes of the given type for MongoDB Cloud to deploy to the region.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GCPHardwareSpec20250101": { + "properties": { + "diskSizeGB": { + "description": "Storage capacity that the host's root volume possesses expressed in gigabytes. Increase this number to add capacity. MongoDB Cloud requires this parameter if you set **replicationSpecs**. If you specify a disk size below the minimum (10 GB), this parameter defaults to the minimum disk size value. Storage charge calculations depend on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier.", + "format": "double", + "maximum": 4096, + "minimum": 10, + "type": "number" + }, + "instanceSize": { + "description": "Hardware specification for the instance sizes in this region. Each instance size has a default storage and memory capacity. The instance size you select applies to all the data-bearing hosts in the region.", + "enum": [ + "M10", + "M20", + "M30", + "M40", + "M50", + "M60", + "M80", + "M140", + "M200", + "M250", + "M300", + "M400", + "R40", + "R50", + "R60", + "R80", + "R200", + "R300", + "R400", + "R600" + ], + "title": "GCP Instance Sizes", + "type": "string" + }, + "nodeCount": { + "description": "Number of nodes of the given type for MongoDB Cloud to deploy to the region.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GCPNetworkPeeringConnectionSettings": { + "description": "Group of Network Peering connection settings.", + "properties": { + "containerId": { + "description": "Unique 24-hexadecimal digit string that identifies the MongoDB Cloud network container that contains the specified network peering connection.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "errorMessage": { + "description": "Details of the error returned when requesting a GCP network peering resource. The resource returns `null` if the request succeeded.", + "readOnly": true, + "type": "string" + }, + "gcpProjectId": { + "description": "Human-readable label that identifies the GCP project that contains the network that you want to peer with the MongoDB Cloud VPC.", + "maxLength": 30, + "minLength": 6, + "pattern": "^[a-z][0-9a-z-]{4,28}[0-9a-z]{1}", + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the network peering connection.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "networkName": { + "description": "Human-readable label that identifies the network to peer with the MongoDB Cloud VPC.", + "maxLength": 63, + "minLength": 1, + "pattern": "[a-z]([-a-z0-9]{0,62}[a-z0-9]{0,1})?", + "type": "string" + }, + "providerName": { + "description": "Cloud service provider that serves the requested network peering connection.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "type": "string" + }, + "status": { + "description": "State of the network peering connection at the time you made the request.", + "enum": [ + "ADDING_PEER", + "WAITING_FOR_USER", + "AVAILABLE", + "FAILED", + "DELETING" + ], + "readOnly": true, + "type": "string" + } + }, + "required": [ + "containerId", + "gcpProjectId", + "networkName" + ], + "title": "GCP", + "type": "object" + }, + "GCPRegionConfig": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudRegionConfig" + }, + { + "properties": { + "analyticsAutoScaling": { + "$ref": "#/components/schemas/AdvancedAutoScalingSettings" + }, + "analyticsSpecs": { + "$ref": "#/components/schemas/DedicatedHardwareSpec" + }, + "autoScaling": { + "$ref": "#/components/schemas/AdvancedAutoScalingSettings" + }, + "readOnlySpecs": { + "$ref": "#/components/schemas/DedicatedHardwareSpec" + } + }, + "type": "object" + } + ], + "description": "Details that explain how MongoDB Cloud replicates data in one region on the specified MongoDB database.", + "title": "GCP Regional Replication Specifications", + "type": "object" + }, + "GCPRegionConfig20250101": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudRegionConfig20250101" + }, + { + "properties": { + "analyticsAutoScaling": { + "$ref": "#/components/schemas/AdvancedAutoScalingSettings" + }, + "analyticsSpecs": { + "$ref": "#/components/schemas/DedicatedHardwareSpec20250101" + }, + "autoScaling": { + "$ref": "#/components/schemas/AdvancedAutoScalingSettings" + }, + "readOnlySpecs": { + "$ref": "#/components/schemas/DedicatedHardwareSpec20250101" + } + }, + "type": "object" + } + ], + "description": "Details that explain how MongoDB Cloud replicates data in one region on the specified MongoDB database.", + "title": "GCP Regional Replication Specifications", + "type": "object" + }, + "GeoSharding": { + "properties": { + "customZoneMapping": { + "additionalProperties": { + "description": "List that contains comma-separated key value pairs to map zones to geographic regions. These pairs map an ISO 3166-1a2 location code, with an ISO 3166-2 subdivision code when possible, to a unique 24-hexadecimal string that identifies the custom zone.\n\nThis parameter returns an empty object if no custom zones exist.", + "readOnly": true, + "type": "string" + }, + "description": "List that contains comma-separated key value pairs to map zones to geographic regions. These pairs map an ISO 3166-1a2 location code, with an ISO 3166-2 subdivision code when possible, to a unique 24-hexadecimal string that identifies the custom zone.\n\nThis parameter returns an empty object if no custom zones exist.", + "readOnly": true, + "type": "object" + }, + "managedNamespaces": { + "description": "List that contains a namespace for a Global Cluster. MongoDB Cloud manages this cluster.", + "items": { + "$ref": "#/components/schemas/ManagedNamespaces" + }, + "readOnly": true, + "type": "array" + }, + "selfManagedSharding": { + "description": "Boolean that controls which management mode the Global Cluster is operating under. If this parameter is true Self-Managed Sharding is enabled and users are in control of the zone sharding within the Global Cluster. If this parameter is false Atlas-Managed Sharding is enabled and Atlas is control of zone sharding within the Global Cluster.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudKMS": { + "description": "Details that define the configuration of Encryption at Rest using Google Cloud Key Management Service (KMS).", + "externalDocs": { + "description": "Google Cloud Key Management Service", + "url": "https://www.mongodb.com/docs/atlas/security-gcp-kms/" + }, + "properties": { + "enabled": { + "description": "Flag that indicates whether someone enabled encryption at rest for the specified project. To disable encryption at rest using customer key management and remove the configuration details, pass only this parameter with a value of `false`.", + "type": "boolean" + }, + "keyVersionResourceID": { + "description": "Resource path that displays the key version resource ID for your Google Cloud KMS.", + "example": "projects/my-project-common-0/locations/us-east4/keyRings/my-key-ring-0/cryptoKeys/my-key-0/cryptoKeyVersions/1", + "type": "string" + }, + "serviceAccountKey": { + "description": "JavaScript Object Notation (JSON) object that contains the Google Cloud Key Management Service (KMS). Format the JSON as a string and not as an object.", + "externalDocs": { + "description": "Google Cloud Authentication", + "url": "https://cloud.google.com/docs/authentication/getting-started" + }, + "type": "string", + "writeOnly": true + }, + "valid": { + "description": "Flag that indicates whether the Google Cloud Key Management Service (KMS) encryption key can encrypt and decrypt data.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, + "GreaterThanDaysThresholdView": { + "description": "Threshold value that triggers an alert.", + "properties": { + "operator": { + "description": "Comparison operator to apply when checking the current metric value.", + "enum": [ + "GREATER_THAN" + ], + "type": "string" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "int32", + "type": "integer" + }, + "units": { + "description": "Element used to express the quantity. This can be an element of time, storage capacity, and the like.", + "enum": [ + "DAYS" + ], + "type": "string" + } + }, + "type": "object" + }, + "GreaterThanRawThreshold": { + "description": "A Limit that triggers an alert when greater than a number.", + "properties": { + "operator": { + "description": "Comparison operator to apply when checking the current metric value.", + "enum": [ + "GREATER_THAN" + ], + "type": "string" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "int32", + "type": "integer" + }, + "units": { + "$ref": "#/components/schemas/RawMetricUnits" + } + }, + "title": "Greater Than Raw Threshold", + "type": "object" + }, + "GreaterThanRawThresholdAlertConfigViewForNdsGroup": { + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ReplicaSetEventTypeViewForNdsGroupAlertableWithThreshold" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "List of rules that determine whether MongoDB Cloud checks an object for the alert configuration. You can filter using the matchers array if the **eventTypeName** specifies an event for a host, replica set, or sharded cluster.", + "items": { + "$ref": "#/components/schemas/ReplicaSetMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "threshold": { + "$ref": "#/components/schemas/GreaterThanRawThreshold" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "type": "object" + }, + "GreaterThanTimeThreshold": { + "description": "A Limit that triggers an alert when greater than a time period.", + "properties": { + "operator": { + "description": "Comparison operator to apply when checking the current metric value.", + "enum": [ + "GREATER_THAN" + ], + "type": "string" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "int32", + "type": "integer" + }, + "units": { + "$ref": "#/components/schemas/TimeMetricUnits" + } + }, + "title": "Greater Than Time Threshold", + "type": "object" + }, + "Group": { + "properties": { + "clusterCount": { + "description": "Quantity of MongoDB Cloud clusters deployed in this project.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this project. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the MongoDB Cloud project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable label that identifies the project included in the MongoDB Cloud organization.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.(),:\u0026@+']{1,64}$", + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the MongoDB Cloud organization to which the project belongs.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "regionUsageRestrictions": { + "default": "COMMERCIAL_FEDRAMP_REGIONS_ONLY", + "description": "Applies to Atlas for Government only.\n\nIn Commercial Atlas, this field will be rejected in requests and missing in responses.\n\nThis field sets restrictions on available regions in the project.\n\n| Value | Available Regions |\n|-----------------------------------|------------|\n| `COMMERCIAL_FEDRAMP_REGIONS_ONLY` | Only allows deployments in FedRAMP Moderate regions.|\n| `GOV_REGIONS_ONLY` | Only allows deployments in GovCloud regions.|", + "enum": [ + "COMMERCIAL_FEDRAMP_REGIONS_ONLY", + "GOV_REGIONS_ONLY" + ], + "externalDocs": { + "url": "https://www.mongodb.com/docs/atlas/government/overview/supported-regions/#supported-cloud-providers-and-regions" + }, + "type": "string" + }, + "tags": { + "description": "List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the project.", + "externalDocs": { + "description": "Resource Tags", + "url": "https://www.mongodb.com/docs/atlas/tags" + }, + "items": { + "$ref": "#/components/schemas/ResourceTag" + }, + "type": "array" + }, + "withDefaultAlertsSettings": { + "description": "Flag that indicates whether to create the project with default alert settings.", + "type": "boolean", + "writeOnly": true + } + }, + "required": [ + "clusterCount", + "created", + "name", + "orgId" + ], + "type": "object" + }, + "GroupAlertsConfig": { + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultAlertConfigViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/AppServiceAlertConfigViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/AppServiceMetricAlertConfigViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/BillingThresholdAlertConfigViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/ClusterAlertConfigViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/CpsBackupThresholdAlertConfigViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/EncryptionKeyAlertConfigViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/HostAlertConfigViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/HostMetricAlertConfigViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/NDSX509UserAuthenticationAlertConfigViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/ReplicaSetAlertConfigViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/ReplicaSetThresholdAlertConfigViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/ServerlessMetricAlertConfigViewForNdsGroup" + }, + { + "$ref": "#/components/schemas/StreamProcessorAlertConfigViewForNdsGroup" + } + ], + "type": "object" + }, + "GroupIPAddresses": { + "description": "List of IP addresses in a project.", + "properties": { + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the MongoDB Cloud project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "services": { + "$ref": "#/components/schemas/GroupService" + } + }, + "title": "Group IP Address", + "type": "object" + }, + "GroupInvitation": { + "properties": { + "createdAt": { + "description": "Date and time when MongoDB Cloud sent the invitation. This parameter expresses its value in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "expiresAt": { + "description": "Date and time when MongoDB Cloud expires the invitation. This parameter expresses its value in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "groupName": { + "description": "Human-readable label that identifies the project to which you invited the MongoDB Cloud user.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.(),:\u0026@+']{1,64}$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal character string that identifies the invitation.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "inviterUsername": { + "description": "Email address of the MongoDB Cloud user who sent the invitation.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "roles": { + "description": "One or more organization or project level roles to assign to the MongoDB Cloud user.", + "items": { + "enum": [ + "GROUP_CLUSTER_MANAGER", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_OWNER", + "GROUP_READ_ONLY" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "username": { + "description": "Email address of the MongoDB Cloud user invited to join the project.", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GroupInvitationRequest": { + "properties": { + "roles": { + "description": "One or more project level roles to assign to the MongoDB Cloud user.", + "items": { + "enum": [ + "GROUP_CLUSTER_MANAGER", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_OWNER", + "GROUP_READ_ONLY" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "username": { + "description": "Email address of the MongoDB Cloud user invited to the specified project.", + "format": "email", + "type": "string" + } + }, + "type": "object" + }, + "GroupInvitationUpdateRequest": { + "properties": { + "roles": { + "description": "One or more organization or project level roles to assign to the MongoDB Cloud user.", + "items": { + "enum": [ + "GROUP_CLUSTER_MANAGER", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_OWNER", + "GROUP_READ_ONLY" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "GroupMaintenanceWindow": { + "properties": { + "autoDeferOnceEnabled": { + "description": "Flag that indicates whether MongoDB Cloud should defer all maintenance windows for one week after you enable them.", + "type": "boolean" + }, + "dayOfWeek": { + "description": "One-based integer that represents the day of the week that the maintenance window starts.\n\n| Value | Day of Week |\n|---|---|\n| `1` | Sunday |\n| `2` | Monday |\n| `3` | Tuesday |\n| `4` | Wednesday |\n| `5` | Thursday |\n| `6` | Friday |\n| `7` | Saturday |\n", + "format": "int32", + "maximum": 7, + "minimum": 1, + "type": "integer" + }, + "hourOfDay": { + "description": "Zero-based integer that represents the hour of the of the day that the maintenance window starts according to a 24-hour clock. Use `0` for midnight and `12` for noon.", + "format": "int32", + "maximum": 23, + "minimum": 0, + "type": "integer" + }, + "numberOfDeferrals": { + "description": "Number of times the current maintenance event for this project has been deferred.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "startASAP": { + "description": "Flag that indicates whether MongoDB Cloud starts the maintenance window immediately upon receiving this request. To start the maintenance window immediately for your project, MongoDB Cloud must have maintenance scheduled and you must set a maintenance window. This flag resets to `false` after MongoDB Cloud completes maintenance.", + "type": "boolean" + } + }, + "required": [ + "dayOfWeek" + ], + "type": "object" + }, + "GroupMigrationRequest": { + "properties": { + "destinationOrgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to move the specified project to.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "destinationOrgPrivateApiKey": { + "description": "Unique string that identifies the private part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) used to verify access to the destination organization. This parameter is required only when you authenticate with Programmatic API Keys.", + "example": "55c3bbb6-b4bb-0be1-e66d20841f3e", + "readOnly": true, + "type": "string" + }, + "destinationOrgPublicApiKey": { + "description": "Unique string that identifies the public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) used to verify access to the destination organization. This parameter is required only when you authenticate with Programmatic API Keys.", + "example": "zmmrboas", + "maxLength": 8, + "minLength": 8, + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GroupNotification": { + "description": "Group notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "emailEnabled": { + "description": "Flag that indicates whether MongoDB Cloud should send email notifications. The resource requires this parameter when one of the following values have been set:\n\n- `\"notifications.[n].typeName\" : \"ORG\"`\n- `\"notifications.[n].typeName\" : \"GROUP\"`\n- `\"notifications.[n].typeName\" : \"USER\"`", + "type": "boolean" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "roles": { + "description": "List that contains the one or more [organization](https://dochub.mongodb.org/core/atlas-org-roles) or [project roles](https://dochub.mongodb.org/core/atlas-proj-roles) that receive the configured alert. The resource requires this parameter when `\"notifications.[n].typeName\" : \"GROUP\"` or `\"notifications.[n].typeName\" : \"ORG\"`. If you include this parameter, MongoDB Cloud sends alerts only to users assigned the roles you specify in the array. If you omit this parameter, MongoDB Cloud sends alerts to users assigned any role.", + "items": { + "description": "One organization or project role that receive the configured alert.", + "enum": [ + "GROUP_CLUSTER_MANAGER", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_OWNER", + "GROUP_READ_WRITE", + "ORG_OWNER", + "ORG_MEMBER", + "ORG_GROUP_CREATOR", + "ORG_BILLING_ADMIN", + "ORG_READ_ONLY" + ], + "type": "string" + }, + "type": "array" + }, + "smsEnabled": { + "description": "Flag that indicates whether MongoDB Cloud should send text message notifications. The resource requires this parameter when one of the following values have been set:\n\n- `\"notifications.[n].typeName\" : \"ORG\"`\n- `\"notifications.[n].typeName\" : \"GROUP\"`\n- `\"notifications.[n].typeName\" : \"USER\"`", + "type": "boolean" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "GROUP" + ], + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "Group Notification", + "type": "object" + }, + "GroupPaginatedEventView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/EventViewForNdsGroup" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "GroupRole": { + "properties": { + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project to which this role belongs.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "groupRole": { + "description": "Human-readable label that identifies the collection of privileges that MongoDB Cloud grants a specific API key, MongoDB Cloud user, or MongoDB Cloud team. These roles include project-level roles.\n\nProject Roles\n\n* GROUP_CLUSTER_MANAGER\n* GROUP_DATA_ACCESS_ADMIN\n* GROUP_DATA_ACCESS_READ_ONLY\n* GROUP_DATA_ACCESS_READ_WRITE\n* GROUP_OWNER\n* GROUP_READ_ONLY\n* GROUP_SEARCH_INDEX_EDITOR\n* GROUP_STREAM_PROCESSING_OWNER\n\n", + "enum": [ + "GROUP_CLUSTER_MANAGER", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_OWNER", + "GROUP_READ_ONLY", + "GROUP_SEARCH_INDEX_EDITOR", + "GROUP_STREAM_PROCESSING_OWNER" + ], + "type": "string" + } + }, + "type": "object" + }, + "GroupService": { + "description": "List of IP addresses in a project categorized by services.", + "properties": { + "clusters": { + "description": "IP addresses of clusters.", + "items": { + "$ref": "#/components/schemas/ClusterIPAddresses" + }, + "readOnly": true, + "type": "array" + } + }, + "readOnly": true, + "title": "Group Service IP Addresses", + "type": "object" + }, + "GroupServiceAccount": { + "properties": { + "createdAt": { + "description": "Service account creation time.", + "format": "date-time", + "type": "string" + }, + "description": { + "description": "Description of the service account.", + "type": "string" + }, + "id": { + "description": "ID for the service account.", + "pattern": "^mdb_sa_id_[a-fA-F\\d]{24}$", + "type": "string" + }, + "name": { + "description": "Name for service account.", + "type": "string" + }, + "roles": { + "description": "Roles assigned to the Service Account group.", + "items": { + "description": "Project roles associated with the service account.", + "enum": [ + "GROUP_AUTOMATION_ADMIN", + "GROUP_BACKUP_ADMIN", + "GROUP_MONITORING_ADMIN", + "GROUP_OWNER", + "GROUP_READ_ONLY", + "GROUP_USER_ADMIN", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_CLUSTER_MANAGER", + "GROUP_SEARCH_INDEX_EDITOR", + "GROUP_STREAM_PROCESSING_OWNER" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "secrets": { + "description": "List of secrets.", + "items": { + "$ref": "#/components/schemas/ServiceAccountSecret" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "GroupServiceAccountRequest": { + "properties": { + "description": { + "description": "Human readable description for the service account.", + "maxLength": 250, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.,' ]*$", + "type": "string" + }, + "name": { + "description": "Human-readable name for the service account. The name is modifiable and does not have to be unique.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.,' ]*$", + "type": "string" + }, + "roles": { + "description": "Project roles associated with the service account.", + "items": { + "description": "Project roles associated with the service account.", + "enum": [ + "GROUP_AUTOMATION_ADMIN", + "GROUP_BACKUP_ADMIN", + "GROUP_MONITORING_ADMIN", + "GROUP_OWNER", + "GROUP_READ_ONLY", + "GROUP_USER_ADMIN", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_CLUSTER_MANAGER", + "GROUP_SEARCH_INDEX_EDITOR", + "GROUP_STREAM_PROCESSING_OWNER" + ], + "type": "string" + }, + "type": "array" + }, + "secretExpiresAfterHours": { + "description": "Secret expiration time.", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "description", + "name", + "secretExpiresAfterHours" + ], + "type": "object" + }, + "GroupServiceAccountRoleAssignment": { + "properties": { + "roles": { + "description": "Group access roles.", + "items": { + "description": "Project roles associated with the service account.", + "enum": [ + "GROUP_AUTOMATION_ADMIN", + "GROUP_BACKUP_ADMIN", + "GROUP_MONITORING_ADMIN", + "GROUP_OWNER", + "GROUP_READ_ONLY", + "GROUP_USER_ADMIN", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_CLUSTER_MANAGER", + "GROUP_SEARCH_INDEX_EDITOR", + "GROUP_STREAM_PROCESSING_OWNER" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "GroupServiceAccountUpdateRequest": { + "properties": { + "description": { + "description": "Human readable description for the service account.", + "maxLength": 250, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.,' ]*$", + "type": "string" + }, + "name": { + "description": "Human-readable name for the service account. The name is modifiable and does not have to be unique.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.,' ]*$", + "type": "string" + }, + "roles": { + "description": "Project roles associated with the service account.", + "items": { + "description": "Project roles associated with the service account.", + "enum": [ + "GROUP_AUTOMATION_ADMIN", + "GROUP_BACKUP_ADMIN", + "GROUP_MONITORING_ADMIN", + "GROUP_OWNER", + "GROUP_READ_ONLY", + "GROUP_USER_ADMIN", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_CLUSTER_MANAGER", + "GROUP_SEARCH_INDEX_EDITOR", + "GROUP_STREAM_PROCESSING_OWNER" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GroupSettings": { + "description": "Collection of settings that configures the project.", + "properties": { + "isCollectDatabaseSpecificsStatisticsEnabled": { + "description": "Flag that indicates whether to collect database-specific metrics for the specified project.", + "type": "boolean" + }, + "isDataExplorerEnabled": { + "description": "Flag that indicates whether to enable the Data Explorer for the specified project.", + "type": "boolean" + }, + "isExtendedStorageSizesEnabled": { + "description": "Flag that indicates whether to enable extended storage sizes for the specified project.", + "type": "boolean" + }, + "isPerformanceAdvisorEnabled": { + "description": "Flag that indicates whether to enable the Performance Advisor and Profiler for the specified project.", + "type": "boolean" + }, + "isRealtimePerformancePanelEnabled": { + "description": "Flag that indicates whether to enable the Real Time Performance Panel for the specified project.", + "type": "boolean" + }, + "isSchemaAdvisorEnabled": { + "description": "Flag that indicates whether to enable the Schema Advisor for the specified project.", + "type": "boolean" + } + }, + "type": "object" + }, + "GroupUpdate": { + "description": "Request view to update the group.", + "properties": { + "name": { + "description": "Human-readable label that identifies the project included in the MongoDB Cloud organization.", + "type": "string" + }, + "tags": { + "description": "List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the project.", + "externalDocs": { + "description": "Resource Tags", + "url": "https://www.mongodb.com/docs/atlas/tags" + }, + "items": { + "$ref": "#/components/schemas/ResourceTag" + }, + "type": "array" + } + }, + "type": "object" + }, + "HardwareSpec": { + "description": "Hardware specifications for all electable nodes deployed in the region. Electable nodes can become the primary and can enable local reads. If you don't specify this option, MongoDB Cloud deploys no electable nodes to the region.", + "oneOf": [ + { + "$ref": "#/components/schemas/AWSHardwareSpec" + }, + { + "$ref": "#/components/schemas/AzureHardwareSpec" + }, + { + "$ref": "#/components/schemas/GCPHardwareSpec" + }, + { + "$ref": "#/components/schemas/TenantHardwareSpec" + } + ], + "type": "object" + }, + "HardwareSpec20250101": { + "description": "Hardware specifications for all electable nodes deployed in the region. Electable nodes can become the primary and can enable local reads. If you don't specify this option, MongoDB Cloud deploys no electable nodes to the region.", + "oneOf": [ + { + "$ref": "#/components/schemas/AWSHardwareSpec20250101" + }, + { + "$ref": "#/components/schemas/AzureHardwareSpec" + }, + { + "$ref": "#/components/schemas/GCPHardwareSpec20250101" + }, + { + "$ref": "#/components/schemas/TenantHardwareSpec20250101" + } + ], + "properties": { + "diskSizeGB": { + "description": "Storage capacity that the host's root volume possesses expressed in gigabytes. Increase this number to add capacity. MongoDB Cloud requires this parameter if you set **replicationSpecs**. If you specify a disk size below the minimum (10 GB), this parameter defaults to the minimum disk size value. Storage charge calculations depend on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier.", + "format": "double", + "maximum": 4096, + "minimum": 10, + "type": "number" + } + }, + "type": "object" + }, + "HipChatNotification": { + "description": "HipChat notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "integrationId": { + "description": "The id of the associated integration, the credentials of which to use for requests.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notificationToken": { + "description": "HipChat API token that MongoDB Cloud needs to send alert notifications to HipChat. The resource requires this parameter when `\"notifications.[n].typeName\" : \"HIP_CHAT\"`\". If the token later becomes invalid, MongoDB Cloud sends an email to the project owners. If the token remains invalid, MongoDB Cloud removes it.\n\n**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:\n\n* View or edit the alert through the Atlas UI.\n\n* Query the alert for the notification through the Atlas Administration API.", + "example": "************************************1234", + "type": "string" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "roomName": { + "description": "HipChat API room name to which MongoDB Cloud sends alert notifications. The resource requires this parameter when `\"notifications.[n].typeName\" : \"HIP_CHAT\"`\".", + "example": "test room", + "type": "string" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "HIP_CHAT" + ], + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "HipChat Notification", + "type": "object" + }, + "HostAlertConfigViewForNdsGroup": { + "description": "Host alert configuration allows to select which mongod host events trigger alerts and how users are notified.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostEventTypeViewForNdsGroupAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "List of rules that determine whether MongoDB Cloud checks an object for the alert configuration. You can filter using the matchers array if the **eventTypeName** specifies an event for a host, replica set, or sharded cluster.", + "items": { + "$ref": "#/components/schemas/HostMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "Host Alert Configuration", + "type": "object" + }, + "HostAlertViewForNdsGroup": { + "description": "Host alert notifies about activities on mongod host.", + "properties": { + "acknowledgedUntil": { + "description": "Date and time until which this alert has been acknowledged. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.\n\n- To acknowledge this alert forever, set the parameter value to 100 years in the future.\n\n- To unacknowledge a previously acknowledged alert, do not set this parameter value.", + "format": "date-time", + "type": "string" + }, + "acknowledgementComment": { + "description": "Comment that a MongoDB Cloud user submitted when acknowledging the alert.", + "example": "Expiration on 3/19. Silencing for 7days.", + "maxLength": 200, + "type": "string" + }, + "acknowledgingUsername": { + "description": "MongoDB Cloud username of the person who acknowledged the alert. The response returns this parameter if a MongoDB Cloud user previously acknowledged this alert.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration that sets this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster to which this alert applies. This resource returns this parameter for alerts of events impacting backups, replica sets, or sharded clusters.", + "example": "cluster1", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostEventTypeViewForNdsGroupAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hostnameAndPort": { + "description": "Hostname and port of the host to which this alert applies. The resource returns this parameter for alerts of events impacting hosts or replica sets.", + "example": "cloud-test.mongodb.com:27017", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastNotified": { + "description": "Date and time that any notifications were last sent for this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if MongoDB Cloud has sent notifications for this alert.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal character string that identifies the organization that owns the project to which this alert applies.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Name of the replica set to which this alert applies. The response returns this parameter for alerts of events impacting backups, hosts, or replica sets.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "resolved": { + "description": "Date and time that this alert changed to `\"status\" : \"CLOSED\"`. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter once `\"status\" : \"CLOSED\"`.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of this alert at the time you requested its details.", + "enum": [ + "CANCELLED", + "CLOSED", + "OPEN", + "TRACKING" + ], + "example": "OPEN", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Date and time when someone last updated this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "alertConfigId", + "created", + "eventTypeName", + "id", + "status", + "updated" + ], + "title": "Host Alerts", + "type": "object" + }, + "HostEventTypeViewForNdsGroup": { + "description": "Unique identifier of event type.", + "enum": [ + "AUTO_CREATED_INDEX_AUDIT", + "ATTEMPT_KILLOP_AUDIT", + "ATTEMPT_KILLSESSION_AUDIT", + "HOST_UP", + "HOST_DOWN", + "HOST_HAS_INDEX_SUGGESTIONS", + "HOST_MONGOT_RECOVERED_OOM", + "HOST_MONGOT_CRASHING_OOM", + "HOST_ENOUGH_DISK_SPACE", + "HOST_NOT_ENOUGH_DISK_SPACE" + ], + "example": "HOST_DOWN", + "title": "Host Event Types", + "type": "string" + }, + "HostEventTypeViewForNdsGroupAlertable": { + "description": "Event type that triggers an alert.", + "enum": [ + "HOST_DOWN", + "HOST_HAS_INDEX_SUGGESTIONS", + "HOST_MONGOT_CRASHING_OOM", + "HOST_NOT_ENOUGH_DISK_SPACE" + ], + "example": "HOST_DOWN", + "title": "Host Event Types", + "type": "string" + }, + "HostEventViewForNdsGroup": { + "description": "Host event identifies different activities about mongod host.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostEventTypeViewForNdsGroup" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "port": { + "description": "IANA port on which the MongoDB process listens for requests.", + "example": 27017, + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Human-readable label of the replica set associated with the event.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "shardName": { + "description": "Human-readable label of the shard associated with the event.", + "example": "event-sh-01", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Host Events", + "type": "object" + }, + "HostMatcher": { + "description": "Rules to apply when comparing an host against this alert configuration.", + "properties": { + "fieldName": { + "$ref": "#/components/schemas/HostMatcherField" + }, + "operator": { + "description": "Comparison operator to apply when checking the current metric value against **matcher[n].value**.", + "enum": [ + "EQUALS", + "CONTAINS", + "STARTS_WITH", + "ENDS_WITH", + "NOT_EQUALS", + "NOT_CONTAINS", + "REGEX" + ], + "type": "string" + }, + "value": { + "$ref": "#/components/schemas/MatcherHostType" + } + }, + "required": [ + "fieldName", + "operator" + ], + "title": "Matchers", + "type": "object" + }, + "HostMatcherField": { + "description": "Name of the parameter in the target object that MongoDB Cloud checks. The parameter must match all rules for MongoDB Cloud to check for alert configurations.", + "enum": [ + "TYPE_NAME", + "HOSTNAME", + "PORT", + "HOSTNAME_AND_PORT", + "REPLICA_SET_NAME" + ], + "example": "HOSTNAME", + "title": "Host Matcher Fields", + "type": "string" + }, + "HostMetricAlert": { + "description": "Host Metric Alert notifies about changes of measurements or metrics for mongod host.", + "discriminator": { + "mapping": { + "ASSERT_MSG": "#/components/schemas/RawMetricAlertView", + "ASSERT_REGULAR": "#/components/schemas/RawMetricAlertView", + "ASSERT_USER": "#/components/schemas/RawMetricAlertView", + "ASSERT_WARNING": "#/components/schemas/RawMetricAlertView", + "AVG_COMMAND_EXECUTION_TIME": "#/components/schemas/TimeMetricAlertView", + "AVG_READ_EXECUTION_TIME": "#/components/schemas/TimeMetricAlertView", + "AVG_WRITE_EXECUTION_TIME": "#/components/schemas/TimeMetricAlertView", + "BACKGROUND_FLUSH_AVG": "#/components/schemas/TimeMetricAlertView", + "CACHE_BYTES_READ_INTO": "#/components/schemas/DataMetricAlertView", + "CACHE_BYTES_WRITTEN_FROM": "#/components/schemas/DataMetricAlertView", + "CACHE_USAGE_DIRTY": "#/components/schemas/DataMetricAlertView", + "CACHE_USAGE_USED": "#/components/schemas/DataMetricAlertView", + "COMPUTED_MEMORY": "#/components/schemas/DataMetricAlertView", + "CONNECTIONS": "#/components/schemas/RawMetricAlertView", + "CONNECTIONS_MAX": "#/components/schemas/RawMetricAlertView", + "CONNECTIONS_PERCENT": "#/components/schemas/RawMetricAlertView", + "CURSORS_TOTAL_CLIENT_CURSORS_SIZE": "#/components/schemas/RawMetricAlertView", + "CURSORS_TOTAL_OPEN": "#/components/schemas/RawMetricAlertView", + "CURSORS_TOTAL_TIMED_OUT": "#/components/schemas/RawMetricAlertView", + "DB_DATA_SIZE_TOTAL": "#/components/schemas/DataMetricAlertView", + "DB_DATA_SIZE_TOTAL_WO_SYSTEM": "#/components/schemas/DataMetricAlertView", + "DB_INDEX_SIZE_TOTAL": "#/components/schemas/DataMetricAlertView", + "DB_STORAGE_TOTAL": "#/components/schemas/DataMetricAlertView", + "DISK_PARTITION_QUEUE_DEPTH_DATA": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_QUEUE_DEPTH_INDEX": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_QUEUE_DEPTH_JOURNAL": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_READ_IOPS_DATA": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_READ_IOPS_INDEX": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_READ_IOPS_JOURNAL": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_READ_LATENCY_DATA": "#/components/schemas/TimeMetricAlertView", + "DISK_PARTITION_READ_LATENCY_INDEX": "#/components/schemas/TimeMetricAlertView", + "DISK_PARTITION_READ_LATENCY_JOURNAL": "#/components/schemas/TimeMetricAlertView", + "DISK_PARTITION_SPACE_USED_DATA": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_SPACE_USED_INDEX": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_SPACE_USED_JOURNAL": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_UTILIZATION_DATA": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_UTILIZATION_INDEX": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_UTILIZATION_JOURNAL": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_WRITE_IOPS_DATA": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_WRITE_IOPS_INDEX": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_WRITE_IOPS_JOURNAL": "#/components/schemas/RawMetricAlertView", + "DISK_PARTITION_WRITE_LATENCY_DATA": "#/components/schemas/TimeMetricAlertView", + "DISK_PARTITION_WRITE_LATENCY_INDEX": "#/components/schemas/TimeMetricAlertView", + "DISK_PARTITION_WRITE_LATENCY_JOURNAL": "#/components/schemas/TimeMetricAlertView", + "DOCUMENT_DELETED": "#/components/schemas/RawMetricAlertView", + "DOCUMENT_INSERTED": "#/components/schemas/RawMetricAlertView", + "DOCUMENT_RETURNED": "#/components/schemas/RawMetricAlertView", + "DOCUMENT_UPDATED": "#/components/schemas/RawMetricAlertView", + "EXTRA_INFO_PAGE_FAULTS": "#/components/schemas/RawMetricAlertView", + "FTS_DISK_UTILIZATION": "#/components/schemas/DataMetricAlertView", + "FTS_JVM_CURRENT_MEMORY": "#/components/schemas/DataMetricAlertView", + "FTS_JVM_MAX_MEMORY": "#/components/schemas/DataMetricAlertView", + "FTS_MEMORY_MAPPED": "#/components/schemas/DataMetricAlertView", + "FTS_MEMORY_RESIDENT": "#/components/schemas/DataMetricAlertView", + "FTS_MEMORY_VIRTUAL": "#/components/schemas/DataMetricAlertView", + "FTS_PROCESS_CPU_KERNEL": "#/components/schemas/RawMetricAlertView", + "FTS_PROCESS_CPU_USER": "#/components/schemas/RawMetricAlertView", + "GLOBAL_ACCESSES_NOT_IN_MEMORY": "#/components/schemas/RawMetricAlertView", + "GLOBAL_LOCK_CURRENT_QUEUE_READERS": "#/components/schemas/RawMetricAlertView", + "GLOBAL_LOCK_CURRENT_QUEUE_TOTAL": "#/components/schemas/RawMetricAlertView", + "GLOBAL_LOCK_CURRENT_QUEUE_WRITERS": "#/components/schemas/RawMetricAlertView", + "GLOBAL_LOCK_PERCENTAGE": "#/components/schemas/RawMetricAlertView", + "GLOBAL_PAGE_FAULT_EXCEPTIONS_THROWN": "#/components/schemas/RawMetricAlertView", + "INDEX_COUNTERS_BTREE_ACCESSES": "#/components/schemas/RawMetricAlertView", + "INDEX_COUNTERS_BTREE_HITS": "#/components/schemas/RawMetricAlertView", + "INDEX_COUNTERS_BTREE_MISSES": "#/components/schemas/RawMetricAlertView", + "INDEX_COUNTERS_BTREE_MISS_RATIO": "#/components/schemas/RawMetricAlertView", + "JOURNALING_COMMITS_IN_WRITE_LOCK": "#/components/schemas/RawMetricAlertView", + "JOURNALING_MB": "#/components/schemas/DataMetricAlertView", + "JOURNALING_WRITE_DATA_FILES_MB": "#/components/schemas/DataMetricAlertView", + "LOGICAL_SIZE": "#/components/schemas/DataMetricAlertView", + "MAX_DISK_PARTITION_QUEUE_DEPTH_DATA": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_QUEUE_DEPTH_INDEX": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_QUEUE_DEPTH_JOURNAL": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_READ_IOPS_DATA": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_READ_IOPS_INDEX": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_READ_IOPS_JOURNAL": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_READ_LATENCY_DATA": "#/components/schemas/TimeMetricAlertView", + "MAX_DISK_PARTITION_READ_LATENCY_INDEX": "#/components/schemas/TimeMetricAlertView", + "MAX_DISK_PARTITION_READ_LATENCY_JOURNAL": "#/components/schemas/TimeMetricAlertView", + "MAX_DISK_PARTITION_SPACE_USED_DATA": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_SPACE_USED_INDEX": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_SPACE_USED_JOURNAL": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_UTILIZATION_DATA": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_UTILIZATION_INDEX": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_UTILIZATION_JOURNAL": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_WRITE_IOPS_DATA": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_WRITE_IOPS_INDEX": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_WRITE_IOPS_JOURNAL": "#/components/schemas/RawMetricAlertView", + "MAX_DISK_PARTITION_WRITE_LATENCY_DATA": "#/components/schemas/TimeMetricAlertView", + "MAX_DISK_PARTITION_WRITE_LATENCY_INDEX": "#/components/schemas/TimeMetricAlertView", + "MAX_DISK_PARTITION_WRITE_LATENCY_JOURNAL": "#/components/schemas/TimeMetricAlertView", + "MAX_NORMALIZED_SYSTEM_CPU_STEAL": "#/components/schemas/RawMetricAlertView", + "MAX_NORMALIZED_SYSTEM_CPU_USER": "#/components/schemas/RawMetricAlertView", + "MAX_SWAP_USAGE_FREE": "#/components/schemas/DataMetricAlertView", + "MAX_SWAP_USAGE_USED": "#/components/schemas/DataMetricAlertView", + "MAX_SYSTEM_MEMORY_AVAILABLE": "#/components/schemas/DataMetricAlertView", + "MAX_SYSTEM_MEMORY_PERCENT_USED": "#/components/schemas/RawMetricAlertView", + "MAX_SYSTEM_MEMORY_USED": "#/components/schemas/DataMetricAlertView", + "MAX_SYSTEM_NETWORK_IN": "#/components/schemas/DataMetricAlertView", + "MAX_SYSTEM_NETWORK_OUT": "#/components/schemas/DataMetricAlertView", + "MEMORY_MAPPED": "#/components/schemas/DataMetricAlertView", + "MEMORY_RESIDENT": "#/components/schemas/DataMetricAlertView", + "MEMORY_VIRTUAL": "#/components/schemas/DataMetricAlertView", + "MUNIN_CPU_IOWAIT": "#/components/schemas/RawMetricAlertView", + "MUNIN_CPU_IRQ": "#/components/schemas/RawMetricAlertView", + "MUNIN_CPU_NICE": "#/components/schemas/RawMetricAlertView", + "MUNIN_CPU_SOFTIRQ": "#/components/schemas/RawMetricAlertView", + "MUNIN_CPU_STEAL": "#/components/schemas/RawMetricAlertView", + "MUNIN_CPU_SYSTEM": "#/components/schemas/RawMetricAlertView", + "MUNIN_CPU_USER": "#/components/schemas/RawMetricAlertView", + "NETWORK_BYTES_IN": "#/components/schemas/DataMetricAlertView", + "NETWORK_BYTES_OUT": "#/components/schemas/DataMetricAlertView", + "NETWORK_NUM_REQUESTS": "#/components/schemas/RawMetricAlertView", + "NORMALIZED_FTS_PROCESS_CPU_KERNEL": "#/components/schemas/RawMetricAlertView", + "NORMALIZED_FTS_PROCESS_CPU_USER": "#/components/schemas/RawMetricAlertView", + "NORMALIZED_SYSTEM_CPU_STEAL": "#/components/schemas/RawMetricAlertView", + "NORMALIZED_SYSTEM_CPU_USER": "#/components/schemas/RawMetricAlertView", + "OPCOUNTER_CMD": "#/components/schemas/RawMetricAlertView", + "OPCOUNTER_DELETE": "#/components/schemas/RawMetricAlertView", + "OPCOUNTER_GETMORE": "#/components/schemas/RawMetricAlertView", + "OPCOUNTER_INSERT": "#/components/schemas/RawMetricAlertView", + "OPCOUNTER_QUERY": "#/components/schemas/RawMetricAlertView", + "OPCOUNTER_REPL_CMD": "#/components/schemas/RawMetricAlertView", + "OPCOUNTER_REPL_DELETE": "#/components/schemas/RawMetricAlertView", + "OPCOUNTER_REPL_INSERT": "#/components/schemas/RawMetricAlertView", + "OPCOUNTER_REPL_UPDATE": "#/components/schemas/RawMetricAlertView", + "OPCOUNTER_UPDATE": "#/components/schemas/RawMetricAlertView", + "OPERATIONS_SCAN_AND_ORDER": "#/components/schemas/RawMetricAlertView", + "OPLOG_MASTER_LAG_TIME_DIFF": "#/components/schemas/TimeMetricAlertView", + "OPLOG_MASTER_TIME": "#/components/schemas/TimeMetricAlertView", + "OPLOG_MASTER_TIME_ESTIMATED_TTL": "#/components/schemas/TimeMetricAlertView", + "OPLOG_RATE_GB_PER_HOUR": "#/components/schemas/DataMetricAlertView", + "OPLOG_REPLICATION_LAG_TIME": "#/components/schemas/TimeMetricAlertView", + "OPLOG_SLAVE_LAG_MASTER_TIME": "#/components/schemas/TimeMetricAlertView", + "QUERY_EXECUTOR_SCANNED": "#/components/schemas/RawMetricAlertView", + "QUERY_EXECUTOR_SCANNED_OBJECTS": "#/components/schemas/RawMetricAlertView", + "QUERY_TARGETING_SCANNED_OBJECTS_PER_RETURNED": "#/components/schemas/RawMetricAlertView", + "QUERY_TARGETING_SCANNED_PER_RETURNED": "#/components/schemas/RawMetricAlertView", + "RESTARTS_IN_LAST_HOUR": "#/components/schemas/RawMetricAlertView", + "SEARCH_INDEX_SIZE": "#/components/schemas/DataMetricAlertView", + "SEARCH_MAX_NUMBER_OF_LUCENE_DOCS": "#/components/schemas/NumberMetricAlertView", + "SEARCH_NUMBER_OF_FIELDS_IN_INDEX": "#/components/schemas/RawMetricAlertView", + "SEARCH_NUMBER_OF_QUERIES_ERROR": "#/components/schemas/RawMetricAlertView", + "SEARCH_NUMBER_OF_QUERIES_SUCCESS": "#/components/schemas/RawMetricAlertView", + "SEARCH_NUMBER_OF_QUERIES_TOTAL": "#/components/schemas/RawMetricAlertView", + "SEARCH_OPCOUNTER_DELETE": "#/components/schemas/RawMetricAlertView", + "SEARCH_OPCOUNTER_GETMORE": "#/components/schemas/RawMetricAlertView", + "SEARCH_OPCOUNTER_INSERT": "#/components/schemas/RawMetricAlertView", + "SEARCH_OPCOUNTER_UPDATE": "#/components/schemas/RawMetricAlertView", + "SEARCH_REPLICATION_LAG": "#/components/schemas/TimeMetricAlertView", + "SWAP_USAGE_FREE": "#/components/schemas/DataMetricAlertView", + "SWAP_USAGE_USED": "#/components/schemas/DataMetricAlertView", + "SYSTEM_MEMORY_AVAILABLE": "#/components/schemas/DataMetricAlertView", + "SYSTEM_MEMORY_PERCENT_USED": "#/components/schemas/RawMetricAlertView", + "SYSTEM_MEMORY_USED": "#/components/schemas/DataMetricAlertView", + "SYSTEM_NETWORK_IN": "#/components/schemas/DataMetricAlertView", + "SYSTEM_NETWORK_OUT": "#/components/schemas/DataMetricAlertView", + "TICKETS_AVAILABLE_READS": "#/components/schemas/RawMetricAlertView", + "TICKETS_AVAILABLE_WRITES": "#/components/schemas/RawMetricAlertView" + }, + "propertyName": "metricName" + }, + "properties": { + "acknowledgedUntil": { + "description": "Date and time until which this alert has been acknowledged. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.\n\n- To acknowledge this alert forever, set the parameter value to 100 years in the future.\n\n- To unacknowledge a previously acknowledged alert, do not set this parameter value.", + "format": "date-time", + "type": "string" + }, + "acknowledgementComment": { + "description": "Comment that a MongoDB Cloud user submitted when acknowledging the alert.", + "example": "Expiration on 3/19. Silencing for 7days.", + "maxLength": 200, + "type": "string" + }, + "acknowledgingUsername": { + "description": "MongoDB Cloud username of the person who acknowledged the alert. The response returns this parameter if a MongoDB Cloud user previously acknowledged this alert.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration that sets this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster to which this alert applies. This resource returns this parameter for alerts of events impacting backups, replica sets, or sharded clusters.", + "example": "cluster1", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "currentValue": { + "$ref": "#/components/schemas/HostMetricValue" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostMetricEventTypeViewAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hostnameAndPort": { + "description": "Hostname and port of the host to which this alert applies. The resource returns this parameter for alerts of events impacting hosts or replica sets.", + "example": "cloud-test.mongodb.com:27017", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastNotified": { + "description": "Date and time that any notifications were last sent for this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if MongoDB Cloud has sent notifications for this alert.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "metricName": { + "description": "Name of the metric against which Atlas checks the configured `metricThreshold.threshold`.\n\nTo learn more about the available metrics, see \u003ca href=\"https://www.mongodb.com/docs/atlas/reference/alert-host-metrics/#std-label-measurement-types\" target=\"_blank\"\u003eHost Metrics\u003c/a\u003e.\n\n**NOTE**: If you set eventTypeName to OUTSIDE_SERVERLESS_METRIC_THRESHOLD, you can specify only metrics available for serverless. To learn more, see \u003ca href=\"https://dochub.mongodb.org/core/alert-config-serverless-measurements\" target=\"_blank\"\u003eServerless Measurements\u003c/a\u003e.", + "example": "ASSERT_USER", + "readOnly": true, + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal character string that identifies the organization that owns the project to which this alert applies.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Name of the replica set to which this alert applies. The response returns this parameter for alerts of events impacting backups, hosts, or replica sets.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "resolved": { + "description": "Date and time that this alert changed to `\"status\" : \"CLOSED\"`. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter once `\"status\" : \"CLOSED\"`.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of this alert at the time you requested its details.", + "enum": [ + "CANCELLED", + "CLOSED", + "OPEN", + "TRACKING" + ], + "example": "OPEN", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Date and time when someone last updated this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "alertConfigId", + "created", + "eventTypeName", + "id", + "status", + "updated" + ], + "title": "Host Metric Alerts", + "type": "object" + }, + "HostMetricAlertConfigViewForNdsGroup": { + "description": "Host metric alert configuration allows to select which mongod host metrics trigger alerts and how users are notified.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostMetricEventTypeViewAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "List of rules that determine whether MongoDB Cloud checks an object for the alert configuration. You can filter using the matchers array if the **eventTypeName** specifies an event for a host, replica set, or sharded cluster.", + "items": { + "$ref": "#/components/schemas/HostMatcher" + }, + "type": "array" + }, + "metricThreshold": { + "$ref": "#/components/schemas/HostMetricThreshold" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "Host Metric Alert Configuration", + "type": "object" + }, + "HostMetricEvent": { + "description": "Host Metric Event reflects different measurements and metrics about mongod host.", + "discriminator": { + "mapping": { + "ASSERT_MSG": "#/components/schemas/RawMetricEventView", + "ASSERT_REGULAR": "#/components/schemas/RawMetricEventView", + "ASSERT_USER": "#/components/schemas/RawMetricEventView", + "ASSERT_WARNING": "#/components/schemas/RawMetricEventView", + "AVG_COMMAND_EXECUTION_TIME": "#/components/schemas/TimeMetricEventView", + "AVG_READ_EXECUTION_TIME": "#/components/schemas/TimeMetricEventView", + "AVG_WRITE_EXECUTION_TIME": "#/components/schemas/TimeMetricEventView", + "BACKGROUND_FLUSH_AVG": "#/components/schemas/TimeMetricEventView", + "CACHE_BYTES_READ_INTO": "#/components/schemas/DataMetricEventView", + "CACHE_BYTES_WRITTEN_FROM": "#/components/schemas/DataMetricEventView", + "CACHE_USAGE_DIRTY": "#/components/schemas/DataMetricEventView", + "CACHE_USAGE_USED": "#/components/schemas/DataMetricEventView", + "COMPUTED_MEMORY": "#/components/schemas/DataMetricEventView", + "CONNECTIONS": "#/components/schemas/RawMetricEventView", + "CONNECTIONS_MAX": "#/components/schemas/RawMetricEventView", + "CONNECTIONS_PERCENT": "#/components/schemas/RawMetricEventView", + "CURSORS_TOTAL_CLIENT_CURSORS_SIZE": "#/components/schemas/RawMetricEventView", + "CURSORS_TOTAL_OPEN": "#/components/schemas/RawMetricEventView", + "CURSORS_TOTAL_TIMED_OUT": "#/components/schemas/RawMetricEventView", + "DB_DATA_SIZE_TOTAL": "#/components/schemas/DataMetricEventView", + "DB_DATA_SIZE_TOTAL_WO_SYSTEM": "#/components/schemas/DataMetricEventView", + "DB_INDEX_SIZE_TOTAL": "#/components/schemas/DataMetricEventView", + "DB_STORAGE_TOTAL": "#/components/schemas/DataMetricEventView", + "DISK_PARTITION_QUEUE_DEPTH_DATA": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_QUEUE_DEPTH_INDEX": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_QUEUE_DEPTH_JOURNAL": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_READ_IOPS_DATA": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_READ_IOPS_INDEX": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_READ_IOPS_JOURNAL": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_READ_LATENCY_DATA": "#/components/schemas/TimeMetricEventView", + "DISK_PARTITION_READ_LATENCY_INDEX": "#/components/schemas/TimeMetricEventView", + "DISK_PARTITION_READ_LATENCY_JOURNAL": "#/components/schemas/TimeMetricEventView", + "DISK_PARTITION_SPACE_USED_DATA": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_SPACE_USED_INDEX": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_SPACE_USED_JOURNAL": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_UTILIZATION_DATA": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_UTILIZATION_INDEX": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_UTILIZATION_JOURNAL": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_WRITE_IOPS_DATA": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_WRITE_IOPS_INDEX": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_WRITE_IOPS_JOURNAL": "#/components/schemas/RawMetricEventView", + "DISK_PARTITION_WRITE_LATENCY_DATA": "#/components/schemas/TimeMetricEventView", + "DISK_PARTITION_WRITE_LATENCY_INDEX": "#/components/schemas/TimeMetricEventView", + "DISK_PARTITION_WRITE_LATENCY_JOURNAL": "#/components/schemas/TimeMetricEventView", + "DOCUMENT_DELETED": "#/components/schemas/RawMetricEventView", + "DOCUMENT_INSERTED": "#/components/schemas/RawMetricEventView", + "DOCUMENT_RETURNED": "#/components/schemas/RawMetricEventView", + "DOCUMENT_UPDATED": "#/components/schemas/RawMetricEventView", + "EXTRA_INFO_PAGE_FAULTS": "#/components/schemas/RawMetricEventView", + "FTS_DISK_UTILIZATION": "#/components/schemas/DataMetricEventView", + "FTS_JVM_CURRENT_MEMORY": "#/components/schemas/DataMetricEventView", + "FTS_JVM_MAX_MEMORY": "#/components/schemas/DataMetricEventView", + "FTS_MEMORY_MAPPED": "#/components/schemas/DataMetricEventView", + "FTS_MEMORY_RESIDENT": "#/components/schemas/DataMetricEventView", + "FTS_MEMORY_VIRTUAL": "#/components/schemas/DataMetricEventView", + "FTS_PROCESS_CPU_KERNEL": "#/components/schemas/RawMetricEventView", + "FTS_PROCESS_CPU_USER": "#/components/schemas/RawMetricEventView", + "GLOBAL_ACCESSES_NOT_IN_MEMORY": "#/components/schemas/RawMetricEventView", + "GLOBAL_LOCK_CURRENT_QUEUE_READERS": "#/components/schemas/RawMetricEventView", + "GLOBAL_LOCK_CURRENT_QUEUE_TOTAL": "#/components/schemas/RawMetricEventView", + "GLOBAL_LOCK_CURRENT_QUEUE_WRITERS": "#/components/schemas/RawMetricEventView", + "GLOBAL_LOCK_PERCENTAGE": "#/components/schemas/RawMetricEventView", + "GLOBAL_PAGE_FAULT_EXCEPTIONS_THROWN": "#/components/schemas/RawMetricEventView", + "INDEX_COUNTERS_BTREE_ACCESSES": "#/components/schemas/RawMetricEventView", + "INDEX_COUNTERS_BTREE_HITS": "#/components/schemas/RawMetricEventView", + "INDEX_COUNTERS_BTREE_MISSES": "#/components/schemas/RawMetricEventView", + "INDEX_COUNTERS_BTREE_MISS_RATIO": "#/components/schemas/RawMetricEventView", + "JOURNALING_COMMITS_IN_WRITE_LOCK": "#/components/schemas/RawMetricEventView", + "JOURNALING_MB": "#/components/schemas/DataMetricEventView", + "JOURNALING_WRITE_DATA_FILES_MB": "#/components/schemas/DataMetricEventView", + "LOGICAL_SIZE": "#/components/schemas/DataMetricEventView", + "MAX_DISK_PARTITION_QUEUE_DEPTH_DATA": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_QUEUE_DEPTH_INDEX": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_QUEUE_DEPTH_JOURNAL": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_READ_IOPS_DATA": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_READ_IOPS_INDEX": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_READ_IOPS_JOURNAL": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_READ_LATENCY_DATA": "#/components/schemas/TimeMetricEventView", + "MAX_DISK_PARTITION_READ_LATENCY_INDEX": "#/components/schemas/TimeMetricEventView", + "MAX_DISK_PARTITION_READ_LATENCY_JOURNAL": "#/components/schemas/TimeMetricEventView", + "MAX_DISK_PARTITION_SPACE_USED_DATA": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_SPACE_USED_INDEX": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_SPACE_USED_JOURNAL": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_UTILIZATION_DATA": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_UTILIZATION_INDEX": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_UTILIZATION_JOURNAL": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_WRITE_IOPS_DATA": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_WRITE_IOPS_INDEX": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_WRITE_IOPS_JOURNAL": "#/components/schemas/RawMetricEventView", + "MAX_DISK_PARTITION_WRITE_LATENCY_DATA": "#/components/schemas/TimeMetricEventView", + "MAX_DISK_PARTITION_WRITE_LATENCY_INDEX": "#/components/schemas/TimeMetricEventView", + "MAX_DISK_PARTITION_WRITE_LATENCY_JOURNAL": "#/components/schemas/TimeMetricEventView", + "MAX_NORMALIZED_SYSTEM_CPU_STEAL": "#/components/schemas/RawMetricEventView", + "MAX_NORMALIZED_SYSTEM_CPU_USER": "#/components/schemas/RawMetricEventView", + "MAX_SWAP_USAGE_FREE": "#/components/schemas/DataMetricEventView", + "MAX_SWAP_USAGE_USED": "#/components/schemas/DataMetricEventView", + "MAX_SYSTEM_MEMORY_AVAILABLE": "#/components/schemas/DataMetricEventView", + "MAX_SYSTEM_MEMORY_PERCENT_USED": "#/components/schemas/RawMetricEventView", + "MAX_SYSTEM_MEMORY_USED": "#/components/schemas/DataMetricEventView", + "MAX_SYSTEM_NETWORK_IN": "#/components/schemas/DataMetricEventView", + "MAX_SYSTEM_NETWORK_OUT": "#/components/schemas/DataMetricEventView", + "MEMORY_MAPPED": "#/components/schemas/DataMetricEventView", + "MEMORY_RESIDENT": "#/components/schemas/DataMetricEventView", + "MEMORY_VIRTUAL": "#/components/schemas/DataMetricEventView", + "MUNIN_CPU_IOWAIT": "#/components/schemas/RawMetricEventView", + "MUNIN_CPU_IRQ": "#/components/schemas/RawMetricEventView", + "MUNIN_CPU_NICE": "#/components/schemas/RawMetricEventView", + "MUNIN_CPU_SOFTIRQ": "#/components/schemas/RawMetricEventView", + "MUNIN_CPU_STEAL": "#/components/schemas/RawMetricEventView", + "MUNIN_CPU_SYSTEM": "#/components/schemas/RawMetricEventView", + "MUNIN_CPU_USER": "#/components/schemas/RawMetricEventView", + "NETWORK_BYTES_IN": "#/components/schemas/DataMetricEventView", + "NETWORK_BYTES_OUT": "#/components/schemas/DataMetricEventView", + "NETWORK_NUM_REQUESTS": "#/components/schemas/RawMetricEventView", + "NORMALIZED_FTS_PROCESS_CPU_KERNEL": "#/components/schemas/RawMetricEventView", + "NORMALIZED_FTS_PROCESS_CPU_USER": "#/components/schemas/RawMetricEventView", + "NORMALIZED_SYSTEM_CPU_STEAL": "#/components/schemas/RawMetricEventView", + "NORMALIZED_SYSTEM_CPU_USER": "#/components/schemas/RawMetricEventView", + "OPCOUNTER_CMD": "#/components/schemas/RawMetricEventView", + "OPCOUNTER_DELETE": "#/components/schemas/RawMetricEventView", + "OPCOUNTER_GETMORE": "#/components/schemas/RawMetricEventView", + "OPCOUNTER_INSERT": "#/components/schemas/RawMetricEventView", + "OPCOUNTER_QUERY": "#/components/schemas/RawMetricEventView", + "OPCOUNTER_REPL_CMD": "#/components/schemas/RawMetricEventView", + "OPCOUNTER_REPL_DELETE": "#/components/schemas/RawMetricEventView", + "OPCOUNTER_REPL_INSERT": "#/components/schemas/RawMetricEventView", + "OPCOUNTER_REPL_UPDATE": "#/components/schemas/RawMetricEventView", + "OPCOUNTER_UPDATE": "#/components/schemas/RawMetricEventView", + "OPERATIONS_SCAN_AND_ORDER": "#/components/schemas/RawMetricEventView", + "OPLOG_MASTER_LAG_TIME_DIFF": "#/components/schemas/TimeMetricEventView", + "OPLOG_MASTER_TIME": "#/components/schemas/TimeMetricEventView", + "OPLOG_MASTER_TIME_ESTIMATED_TTL": "#/components/schemas/TimeMetricEventView", + "OPLOG_RATE_GB_PER_HOUR": "#/components/schemas/DataMetricEventView", + "OPLOG_REPLICATION_LAG_TIME": "#/components/schemas/TimeMetricEventView", + "OPLOG_SLAVE_LAG_MASTER_TIME": "#/components/schemas/TimeMetricEventView", + "QUERY_EXECUTOR_SCANNED": "#/components/schemas/RawMetricEventView", + "QUERY_EXECUTOR_SCANNED_OBJECTS": "#/components/schemas/RawMetricEventView", + "QUERY_TARGETING_SCANNED_OBJECTS_PER_RETURNED": "#/components/schemas/RawMetricEventView", + "QUERY_TARGETING_SCANNED_PER_RETURNED": "#/components/schemas/RawMetricEventView", + "RESTARTS_IN_LAST_HOUR": "#/components/schemas/RawMetricEventView", + "SEARCH_INDEX_SIZE": "#/components/schemas/DataMetricEventView", + "SEARCH_MAX_NUMBER_OF_LUCENE_DOCS": "#/components/schemas/NumberMetricEventView", + "SEARCH_NUMBER_OF_FIELDS_IN_INDEX": "#/components/schemas/RawMetricEventView", + "SEARCH_NUMBER_OF_QUERIES_ERROR": "#/components/schemas/RawMetricEventView", + "SEARCH_NUMBER_OF_QUERIES_SUCCESS": "#/components/schemas/RawMetricEventView", + "SEARCH_NUMBER_OF_QUERIES_TOTAL": "#/components/schemas/RawMetricEventView", + "SEARCH_OPCOUNTER_DELETE": "#/components/schemas/RawMetricEventView", + "SEARCH_OPCOUNTER_GETMORE": "#/components/schemas/RawMetricEventView", + "SEARCH_OPCOUNTER_INSERT": "#/components/schemas/RawMetricEventView", + "SEARCH_OPCOUNTER_UPDATE": "#/components/schemas/RawMetricEventView", + "SEARCH_REPLICATION_LAG": "#/components/schemas/TimeMetricEventView", + "SWAP_USAGE_FREE": "#/components/schemas/DataMetricEventView", + "SWAP_USAGE_USED": "#/components/schemas/DataMetricEventView", + "SYSTEM_MEMORY_AVAILABLE": "#/components/schemas/DataMetricEventView", + "SYSTEM_MEMORY_PERCENT_USED": "#/components/schemas/RawMetricEventView", + "SYSTEM_MEMORY_USED": "#/components/schemas/DataMetricEventView", + "SYSTEM_NETWORK_IN": "#/components/schemas/DataMetricEventView", + "SYSTEM_NETWORK_OUT": "#/components/schemas/DataMetricEventView", + "TICKETS_AVAILABLE_READS": "#/components/schemas/RawMetricEventView", + "TICKETS_AVAILABLE_WRITES": "#/components/schemas/RawMetricEventView" + }, + "propertyName": "metricName" + }, + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "currentValue": { + "$ref": "#/components/schemas/HostMetricValue" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostMetricEventTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "metricName": { + "description": "Human-readable label of the metric associated with the **alertId**. This field may change type of **currentValue** field.", + "readOnly": true, + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "port": { + "description": "IANA port on which the MongoDB process listens for requests.", + "example": 27017, + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Human-readable label of the replica set associated with the event.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "shardName": { + "description": "Human-readable label of the shard associated with the event.", + "example": "event-sh-01", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Host Metric Events", + "type": "object" + }, + "HostMetricEventTypeView": { + "description": "Unique identifier of event type.", + "enum": [ + "INSIDE_METRIC_THRESHOLD", + "OUTSIDE_METRIC_THRESHOLD" + ], + "example": "OUTSIDE_METRIC_THRESHOLD", + "title": "Host Metric Event Types", + "type": "string" + }, + "HostMetricEventTypeViewAlertable": { + "description": "Event type that triggers an alert.", + "enum": [ + "OUTSIDE_METRIC_THRESHOLD" + ], + "example": "OUTSIDE_METRIC_THRESHOLD", + "title": "Host Metric Event Types", + "type": "string" + }, + "HostMetricThreshold": { + "description": "Threshold for the metric that, when exceeded, triggers an alert. The metric threshold pertains to event types which reflects changes of measurements and metrics about mongod host.", + "discriminator": { + "mapping": { + "ASSERT_MSG": "#/components/schemas/RawMetricThresholdView", + "ASSERT_REGULAR": "#/components/schemas/RawMetricThresholdView", + "ASSERT_USER": "#/components/schemas/RawMetricThresholdView", + "ASSERT_WARNING": "#/components/schemas/RawMetricThresholdView", + "AVG_COMMAND_EXECUTION_TIME": "#/components/schemas/TimeMetricThresholdView", + "AVG_READ_EXECUTION_TIME": "#/components/schemas/TimeMetricThresholdView", + "AVG_WRITE_EXECUTION_TIME": "#/components/schemas/TimeMetricThresholdView", + "BACKGROUND_FLUSH_AVG": "#/components/schemas/TimeMetricThresholdView", + "CACHE_BYTES_READ_INTO": "#/components/schemas/DataMetricThresholdView", + "CACHE_BYTES_WRITTEN_FROM": "#/components/schemas/DataMetricThresholdView", + "CACHE_USAGE_DIRTY": "#/components/schemas/DataMetricThresholdView", + "CACHE_USAGE_USED": "#/components/schemas/DataMetricThresholdView", + "COMPUTED_MEMORY": "#/components/schemas/DataMetricThresholdView", + "CONNECTIONS": "#/components/schemas/RawMetricThresholdView", + "CONNECTIONS_MAX": "#/components/schemas/RawMetricThresholdView", + "CONNECTIONS_PERCENT": "#/components/schemas/RawMetricThresholdView", + "CURSORS_TOTAL_CLIENT_CURSORS_SIZE": "#/components/schemas/RawMetricThresholdView", + "CURSORS_TOTAL_OPEN": "#/components/schemas/RawMetricThresholdView", + "CURSORS_TOTAL_TIMED_OUT": "#/components/schemas/RawMetricThresholdView", + "DB_DATA_SIZE_TOTAL": "#/components/schemas/DataMetricThresholdView", + "DB_DATA_SIZE_TOTAL_WO_SYSTEM": "#/components/schemas/DataMetricThresholdView", + "DB_INDEX_SIZE_TOTAL": "#/components/schemas/DataMetricThresholdView", + "DB_STORAGE_TOTAL": "#/components/schemas/DataMetricThresholdView", + "DISK_PARTITION_QUEUE_DEPTH_DATA": "#/components/schemas/RawMetricThresholdView", + "DISK_PARTITION_QUEUE_DEPTH_INDEX": "#/components/schemas/RawMetricThresholdView", + "DISK_PARTITION_QUEUE_DEPTH_JOURNAL": "#/components/schemas/RawMetricThresholdView", + "DISK_PARTITION_READ_IOPS_DATA": "#/components/schemas/RawMetricThresholdView", + "DISK_PARTITION_READ_IOPS_INDEX": "#/components/schemas/RawMetricThresholdView", + "DISK_PARTITION_READ_IOPS_JOURNAL": "#/components/schemas/RawMetricThresholdView", + "DISK_PARTITION_READ_LATENCY_DATA": "#/components/schemas/TimeMetricThresholdView", + "DISK_PARTITION_READ_LATENCY_INDEX": "#/components/schemas/TimeMetricThresholdView", + "DISK_PARTITION_READ_LATENCY_JOURNAL": "#/components/schemas/TimeMetricThresholdView", + "DISK_PARTITION_SPACE_USED_DATA": "#/components/schemas/RawMetricThresholdView", + "DISK_PARTITION_SPACE_USED_INDEX": "#/components/schemas/RawMetricThresholdView", + "DISK_PARTITION_SPACE_USED_JOURNAL": "#/components/schemas/RawMetricThresholdView", + "DISK_PARTITION_WRITE_IOPS_DATA": "#/components/schemas/RawMetricThresholdView", + "DISK_PARTITION_WRITE_IOPS_INDEX": "#/components/schemas/RawMetricThresholdView", + "DISK_PARTITION_WRITE_IOPS_JOURNAL": "#/components/schemas/RawMetricThresholdView", + "DISK_PARTITION_WRITE_LATENCY_DATA": "#/components/schemas/TimeMetricThresholdView", + "DISK_PARTITION_WRITE_LATENCY_INDEX": "#/components/schemas/TimeMetricThresholdView", + "DISK_PARTITION_WRITE_LATENCY_JOURNAL": "#/components/schemas/TimeMetricThresholdView", + "DOCUMENT_DELETED": "#/components/schemas/RawMetricThresholdView", + "DOCUMENT_INSERTED": "#/components/schemas/RawMetricThresholdView", + "DOCUMENT_RETURNED": "#/components/schemas/RawMetricThresholdView", + "DOCUMENT_UPDATED": "#/components/schemas/RawMetricThresholdView", + "EXTRA_INFO_PAGE_FAULTS": "#/components/schemas/RawMetricThresholdView", + "FTS_DISK_UTILIZATION": "#/components/schemas/DataMetricThresholdView", + "FTS_JVM_CURRENT_MEMORY": "#/components/schemas/DataMetricThresholdView", + "FTS_JVM_MAX_MEMORY": "#/components/schemas/DataMetricThresholdView", + "FTS_MEMORY_MAPPED": "#/components/schemas/DataMetricThresholdView", + "FTS_MEMORY_RESIDENT": "#/components/schemas/DataMetricThresholdView", + "FTS_MEMORY_VIRTUAL": "#/components/schemas/DataMetricThresholdView", + "FTS_PROCESS_CPU_KERNEL": "#/components/schemas/RawMetricThresholdView", + "FTS_PROCESS_CPU_USER": "#/components/schemas/RawMetricThresholdView", + "GLOBAL_ACCESSES_NOT_IN_MEMORY": "#/components/schemas/RawMetricThresholdView", + "GLOBAL_LOCK_CURRENT_QUEUE_READERS": "#/components/schemas/RawMetricThresholdView", + "GLOBAL_LOCK_CURRENT_QUEUE_TOTAL": "#/components/schemas/RawMetricThresholdView", + "GLOBAL_LOCK_CURRENT_QUEUE_WRITERS": "#/components/schemas/RawMetricThresholdView", + "GLOBAL_LOCK_PERCENTAGE": "#/components/schemas/RawMetricThresholdView", + "GLOBAL_PAGE_FAULT_EXCEPTIONS_THROWN": "#/components/schemas/RawMetricThresholdView", + "INDEX_COUNTERS_BTREE_ACCESSES": "#/components/schemas/RawMetricThresholdView", + "INDEX_COUNTERS_BTREE_HITS": "#/components/schemas/RawMetricThresholdView", + "INDEX_COUNTERS_BTREE_MISSES": "#/components/schemas/RawMetricThresholdView", + "INDEX_COUNTERS_BTREE_MISS_RATIO": "#/components/schemas/RawMetricThresholdView", + "JOURNALING_COMMITS_IN_WRITE_LOCK": "#/components/schemas/RawMetricThresholdView", + "JOURNALING_MB": "#/components/schemas/DataMetricThresholdView", + "JOURNALING_WRITE_DATA_FILES_MB": "#/components/schemas/DataMetricThresholdView", + "LOGICAL_SIZE": "#/components/schemas/DataMetricThresholdView", + "MAX_DISK_PARTITION_QUEUE_DEPTH_DATA": "#/components/schemas/RawMetricThresholdView", + "MAX_DISK_PARTITION_QUEUE_DEPTH_INDEX": "#/components/schemas/RawMetricThresholdView", + "MAX_DISK_PARTITION_QUEUE_DEPTH_JOURNAL": "#/components/schemas/RawMetricThresholdView", + "MAX_DISK_PARTITION_READ_IOPS_DATA": "#/components/schemas/RawMetricThresholdView", + "MAX_DISK_PARTITION_READ_IOPS_INDEX": "#/components/schemas/RawMetricThresholdView", + "MAX_DISK_PARTITION_READ_IOPS_JOURNAL": "#/components/schemas/RawMetricThresholdView", + "MAX_DISK_PARTITION_READ_LATENCY_DATA": "#/components/schemas/TimeMetricThresholdView", + "MAX_DISK_PARTITION_READ_LATENCY_INDEX": "#/components/schemas/TimeMetricThresholdView", + "MAX_DISK_PARTITION_READ_LATENCY_JOURNAL": "#/components/schemas/TimeMetricThresholdView", + "MAX_DISK_PARTITION_SPACE_USED_DATA": "#/components/schemas/RawMetricThresholdView", + "MAX_DISK_PARTITION_SPACE_USED_INDEX": "#/components/schemas/RawMetricThresholdView", + "MAX_DISK_PARTITION_SPACE_USED_JOURNAL": "#/components/schemas/RawMetricThresholdView", + "MAX_DISK_PARTITION_WRITE_IOPS_DATA": "#/components/schemas/RawMetricThresholdView", + "MAX_DISK_PARTITION_WRITE_IOPS_INDEX": "#/components/schemas/RawMetricThresholdView", + "MAX_DISK_PARTITION_WRITE_IOPS_JOURNAL": "#/components/schemas/RawMetricThresholdView", + "MAX_DISK_PARTITION_WRITE_LATENCY_DATA": "#/components/schemas/TimeMetricThresholdView", + "MAX_DISK_PARTITION_WRITE_LATENCY_INDEX": "#/components/schemas/TimeMetricThresholdView", + "MAX_DISK_PARTITION_WRITE_LATENCY_JOURNAL": "#/components/schemas/TimeMetricThresholdView", + "MAX_NORMALIZED_SYSTEM_CPU_STEAL": "#/components/schemas/RawMetricThresholdView", + "MAX_NORMALIZED_SYSTEM_CPU_USER": "#/components/schemas/RawMetricThresholdView", + "MAX_SWAP_USAGE_FREE": "#/components/schemas/DataMetricThresholdView", + "MAX_SWAP_USAGE_USED": "#/components/schemas/DataMetricThresholdView", + "MAX_SYSTEM_MEMORY_AVAILABLE": "#/components/schemas/DataMetricThresholdView", + "MAX_SYSTEM_MEMORY_PERCENT_USED": "#/components/schemas/RawMetricThresholdView", + "MAX_SYSTEM_MEMORY_USED": "#/components/schemas/DataMetricThresholdView", + "MAX_SYSTEM_NETWORK_IN": "#/components/schemas/DataMetricThresholdView", + "MAX_SYSTEM_NETWORK_OUT": "#/components/schemas/DataMetricThresholdView", + "MEMORY_MAPPED": "#/components/schemas/DataMetricThresholdView", + "MEMORY_RESIDENT": "#/components/schemas/DataMetricThresholdView", + "MEMORY_VIRTUAL": "#/components/schemas/DataMetricThresholdView", + "MUNIN_CPU_IOWAIT": "#/components/schemas/RawMetricThresholdView", + "MUNIN_CPU_IRQ": "#/components/schemas/RawMetricThresholdView", + "MUNIN_CPU_NICE": "#/components/schemas/RawMetricThresholdView", + "MUNIN_CPU_SOFTIRQ": "#/components/schemas/RawMetricThresholdView", + "MUNIN_CPU_STEAL": "#/components/schemas/RawMetricThresholdView", + "MUNIN_CPU_SYSTEM": "#/components/schemas/RawMetricThresholdView", + "MUNIN_CPU_USER": "#/components/schemas/RawMetricThresholdView", + "NETWORK_BYTES_IN": "#/components/schemas/DataMetricThresholdView", + "NETWORK_BYTES_OUT": "#/components/schemas/DataMetricThresholdView", + "NETWORK_NUM_REQUESTS": "#/components/schemas/RawMetricThresholdView", + "NORMALIZED_FTS_PROCESS_CPU_KERNEL": "#/components/schemas/RawMetricThresholdView", + "NORMALIZED_FTS_PROCESS_CPU_USER": "#/components/schemas/RawMetricThresholdView", + "NORMALIZED_SYSTEM_CPU_STEAL": "#/components/schemas/RawMetricThresholdView", + "NORMALIZED_SYSTEM_CPU_USER": "#/components/schemas/RawMetricThresholdView", + "OPCOUNTER_CMD": "#/components/schemas/RawMetricThresholdView", + "OPCOUNTER_DELETE": "#/components/schemas/RawMetricThresholdView", + "OPCOUNTER_GETMORE": "#/components/schemas/RawMetricThresholdView", + "OPCOUNTER_INSERT": "#/components/schemas/RawMetricThresholdView", + "OPCOUNTER_QUERY": "#/components/schemas/RawMetricThresholdView", + "OPCOUNTER_REPL_CMD": "#/components/schemas/RawMetricThresholdView", + "OPCOUNTER_REPL_DELETE": "#/components/schemas/RawMetricThresholdView", + "OPCOUNTER_REPL_INSERT": "#/components/schemas/RawMetricThresholdView", + "OPCOUNTER_REPL_UPDATE": "#/components/schemas/RawMetricThresholdView", + "OPCOUNTER_UPDATE": "#/components/schemas/RawMetricThresholdView", + "OPERATIONS_SCAN_AND_ORDER": "#/components/schemas/RawMetricThresholdView", + "OPLOG_MASTER_LAG_TIME_DIFF": "#/components/schemas/TimeMetricThresholdView", + "OPLOG_MASTER_TIME": "#/components/schemas/TimeMetricThresholdView", + "OPLOG_MASTER_TIME_ESTIMATED_TTL": "#/components/schemas/TimeMetricThresholdView", + "OPLOG_RATE_GB_PER_HOUR": "#/components/schemas/DataMetricThresholdView", + "OPLOG_SLAVE_LAG_MASTER_TIME": "#/components/schemas/TimeMetricThresholdView", + "QUERY_EXECUTOR_SCANNED": "#/components/schemas/RawMetricThresholdView", + "QUERY_EXECUTOR_SCANNED_OBJECTS": "#/components/schemas/RawMetricThresholdView", + "QUERY_TARGETING_SCANNED_OBJECTS_PER_RETURNED": "#/components/schemas/RawMetricThresholdView", + "QUERY_TARGETING_SCANNED_PER_RETURNED": "#/components/schemas/RawMetricThresholdView", + "RESTARTS_IN_LAST_HOUR": "#/components/schemas/RawMetricThresholdView", + "SEARCH_INDEX_SIZE": "#/components/schemas/DataMetricThresholdView", + "SEARCH_MAX_NUMBER_OF_LUCENE_DOCS": "#/components/schemas/NumberMetricThresholdView", + "SEARCH_NUMBER_OF_FIELDS_IN_INDEX": "#/components/schemas/RawMetricThresholdView", + "SEARCH_NUMBER_OF_QUERIES_ERROR": "#/components/schemas/RawMetricThresholdView", + "SEARCH_NUMBER_OF_QUERIES_SUCCESS": "#/components/schemas/RawMetricThresholdView", + "SEARCH_NUMBER_OF_QUERIES_TOTAL": "#/components/schemas/RawMetricThresholdView", + "SEARCH_OPCOUNTER_DELETE": "#/components/schemas/RawMetricThresholdView", + "SEARCH_OPCOUNTER_GETMORE": "#/components/schemas/RawMetricThresholdView", + "SEARCH_OPCOUNTER_INSERT": "#/components/schemas/RawMetricThresholdView", + "SEARCH_OPCOUNTER_UPDATE": "#/components/schemas/RawMetricThresholdView", + "SEARCH_REPLICATION_LAG": "#/components/schemas/TimeMetricThresholdView", + "SWAP_USAGE_FREE": "#/components/schemas/DataMetricThresholdView", + "SWAP_USAGE_USED": "#/components/schemas/DataMetricThresholdView", + "SYSTEM_MEMORY_AVAILABLE": "#/components/schemas/DataMetricThresholdView", + "SYSTEM_MEMORY_PERCENT_USED": "#/components/schemas/RawMetricThresholdView", + "SYSTEM_MEMORY_USED": "#/components/schemas/DataMetricThresholdView", + "SYSTEM_NETWORK_IN": "#/components/schemas/DataMetricThresholdView", + "SYSTEM_NETWORK_OUT": "#/components/schemas/DataMetricThresholdView", + "TICKETS_AVAILABLE_READS": "#/components/schemas/RawMetricThresholdView", + "TICKETS_AVAILABLE_WRITES": "#/components/schemas/RawMetricThresholdView" + }, + "propertyName": "metricName" + }, + "properties": { + "metricName": { + "description": "Human-readable label that identifies the metric against which MongoDB Cloud checks the configured **metricThreshold.threshold**.", + "type": "string" + }, + "mode": { + "description": "MongoDB Cloud computes the current metric value as an average.", + "enum": [ + "AVERAGE" + ], + "type": "string" + }, + "operator": { + "$ref": "#/components/schemas/Operator" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "double", + "type": "number" + }, + "units": { + "description": "Element used to express the quantity. This can be an element of time, storage capacity, and the like.", + "enum": [ + "bits", + "Kbits", + "Mbits", + "Gbits", + "bytes", + "KB", + "MB", + "GB", + "TB", + "PB", + "nsec", + "msec", + "sec", + "min", + "hours", + "million minutes", + "days", + "requests", + "1000 requests", + "GB seconds", + "GB hours", + "GB days", + "RPU", + "thousand RPU", + "million RPU", + "WPU", + "thousand WPU", + "million WPU", + "count", + "thousand", + "million", + "billion", + "", + "", + "" + ], + "type": "string" + } + }, + "required": [ + "metricName" + ], + "title": "Host Metric Threshold", + "type": "object" + }, + "HostMetricValue": { + "description": "Value of the metric that triggered the alert. The resource returns this parameter for alerts of events impacting hosts.", + "properties": { + "number": { + "description": "Amount of the **metricName** recorded at the time of the event. This value triggered the alert.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "units": { + "description": "Element used to express the quantity in **currentValue.number**. This can be an element of time, storage capacity, and the like. This metric triggered the alert.", + "enum": [ + "bits", + "Kbits", + "Mbits", + "Gbits", + "bytes", + "KB", + "MB", + "GB", + "TB", + "PB", + "nsec", + "msec", + "sec", + "min", + "hours", + "million minutes", + "days", + "requests", + "1000 requests", + "GB seconds", + "GB hours", + "GB days", + "RPU", + "thousand RPU", + "million RPU", + "WPU", + "thousand WPU", + "million WPU", + "count", + "thousand", + "million", + "billion", + "", + "", + "" + ], + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "InboundControlPlaneCloudProviderIPAddresses": { + "description": "List of inbound IP addresses to the Atlas control plane, categorized by cloud provider. If your application allows outbound HTTP requests only to specific IP addresses, you must allow access to the following IP addresses so that your API requests can reach the Atlas control plane.", + "properties": { + "aws": { + "additionalProperties": { + "description": "Control plane IP addresses in AWS. Each key identifies an Amazon Web Services (AWS) region. Each value identifies control plane IP addresses in the AWS region.", + "items": { + "description": "Control plane IP addresses in AWS. Each key identifies an Amazon Web Services (AWS) region. Each value identifies control plane IP addresses in the AWS region.", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "description": "Control plane IP addresses in AWS. Each key identifies an Amazon Web Services (AWS) region. Each value identifies control plane IP addresses in the AWS region.", + "readOnly": true, + "type": "object" + }, + "azure": { + "additionalProperties": { + "description": "Control plane IP addresses in Azure. Each key identifies an Azure region. Each value identifies control plane IP addresses in the Azure region.", + "items": { + "description": "Control plane IP addresses in Azure. Each key identifies an Azure region. Each value identifies control plane IP addresses in the Azure region.", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "description": "Control plane IP addresses in Azure. Each key identifies an Azure region. Each value identifies control plane IP addresses in the Azure region.", + "readOnly": true, + "type": "object" + }, + "gcp": { + "additionalProperties": { + "description": "Control plane IP addresses in GCP. Each key identifies a Google Cloud (GCP) region. Each value identifies control plane IP addresses in the GCP region.", + "items": { + "description": "Control plane IP addresses in GCP. Each key identifies a Google Cloud (GCP) region. Each value identifies control plane IP addresses in the GCP region.", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "description": "Control plane IP addresses in GCP. Each key identifies a Google Cloud (GCP) region. Each value identifies control plane IP addresses in the GCP region.", + "readOnly": true, + "type": "object" + } + }, + "readOnly": true, + "title": "Inbound Control Plane IP Addresses By Cloud Provider", + "type": "object" + }, + "IndexOptions": { + "description": "One or more settings that determine how the MongoDB Cloud creates this MongoDB index.", + "externalDocs": { + "description": "Index Options", + "url": "https://docs.mongodb.com/manual/reference/method/db.collection.createIndex/#options" + }, + "properties": { + "2dsphereIndexVersion": { + "default": 3, + "description": "Index version number applied to the 2dsphere index. MongoDB 3.2 and later use version 3. Use this option to override the default version number. This option applies to the **2dsphere** index type only.", + "format": "int32", + "type": "integer" + }, + "background": { + "default": false, + "description": "Flag that indicates whether MongoDB should build the index in the background. This applies to MongoDB databases running feature compatibility version 4.0 or earlier. MongoDB databases running FCV 4.2 or later build indexes using an optimized build process. This process holds the exclusive lock only at the beginning and end of the build process. The rest of the build process yields to interleaving read and write operations. MongoDB databases running FCV 4.2 or later ignore this option. This option applies to all index types.", + "type": "boolean" + }, + "bits": { + "default": 26, + "description": "Number of precision applied to the stored geohash value of the location data. This option applies to the **2d** index type only.", + "format": "int32", + "type": "integer" + }, + "bucketSize": { + "description": "Number of units within which to group the location values. You could group in the same bucket those location values within the specified number of units to each other. This option applies to the geoHaystack index type only.\n\nMongoDB 5.0 removed geoHaystack Indexes and the `geoSearch` command.", + "format": "int32", + "type": "integer" + }, + "columnstoreProjection": { + "additionalProperties": { + "description": "The columnstoreProjection document allows to include or exclude subschemas schema. One cannot combine inclusion and exclusion statements. Accordingly, the \u003cvalue\u003e can be either of the following:\n1 or true to include the field and recursively all fields it is a prefix of in the index\n0 or false to exclude the field and recursively all fields it is a prefix of from the index.", + "format": "int32", + "type": "integer" + }, + "description": "The columnstoreProjection document allows to include or exclude subschemas schema. One cannot combine inclusion and exclusion statements. Accordingly, the \u003cvalue\u003e can be either of the following:\n1 or true to include the field and recursively all fields it is a prefix of in the index\n0 or false to exclude the field and recursively all fields it is a prefix of from the index.", + "type": "object" + }, + "default_language": { + "default": "english", + "description": "Human language that determines the list of stop words and the rules for the stemmer and tokenizer. This option accepts the supported languages using its name in lowercase english or the ISO 639-2 code. If you set this parameter to `\"none\"`, then the text search uses simple tokenization with no list of stop words and no stemming. This option applies to the **text** index type only.", + "type": "string" + }, + "expireAfterSeconds": { + "description": "Number of seconds that MongoDB retains documents in a Time To Live (TTL) index.", + "format": "int32", + "type": "integer" + }, + "hidden": { + "default": false, + "description": "Flag that determines whether the index is hidden from the query planner. A hidden index is not evaluated as part of the query plan selection.", + "type": "boolean" + }, + "language_override": { + "default": "language", + "description": "Human-readable label that identifies the document parameter that contains the override language for the document. This option applies to the **text** index type only.", + "type": "string" + }, + "max": { + "default": 180, + "description": "Upper inclusive boundary to limit the longitude and latitude values. This option applies to the 2d index type only.", + "format": "int32", + "type": "integer" + }, + "min": { + "default": -180, + "description": "Lower inclusive boundary to limit the longitude and latitude values. This option applies to the 2d index type only.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "Human-readable label that identifies this index. This option applies to all index types.", + "type": "string" + }, + "partialFilterExpression": { + "additionalProperties": { + "description": "Rules that limit the documents that the index references to a filter expression. All MongoDB index types accept a **partialFilterExpression** option. **partialFilterExpression** can include following expressions:\n\n- equality (`\"parameter\" : \"value\"` or using the `$eq` operator)\n- `\"$exists\": true`\n, maximum: `$gt`, `$gte`, `$lt`, `$lte` comparisons\n- `$type`\n- `$and` (top-level only)\n This option applies to all index types.", + "type": "object" + }, + "description": "Rules that limit the documents that the index references to a filter expression. All MongoDB index types accept a **partialFilterExpression** option. **partialFilterExpression** can include following expressions:\n\n- equality (`\"parameter\" : \"value\"` or using the `$eq` operator)\n- `\"$exists\": true`\n, maximum: `$gt`, `$gte`, `$lt`, `$lte` comparisons\n- `$type`\n- `$and` (top-level only)\n This option applies to all index types.", + "type": "object" + }, + "sparse": { + "default": false, + "description": "Flag that indicates whether the index references documents that only have the specified parameter. These indexes use less space but behave differently in some situations like when sorting. The following index types default to sparse and ignore this option: `2dsphere`, `2d`, `geoHaystack`, `text`.\n\nCompound indexes that includes one or more indexes with `2dsphere` keys alongside other key types, only the `2dsphere` index parameters determine which documents the index references. If you run MongoDB 3.2 or later, use partial indexes. This option applies to all index types.", + "type": "boolean" + }, + "storageEngine": { + "additionalProperties": { + "description": "Storage engine set for the specific index. This value can be set only at creation. This option uses the following format: `\"storageEngine\" : { \"\u003cstorage-engine-name\u003e\" : \"\u003coptions\u003e\" }` MongoDB validates storage engine configuration options when creating indexes. To support replica sets with members with different storage engines, MongoDB logs these options to the oplog during replication. This option applies to all index types.", + "externalDocs": { + "description": "MongoDB Server Storage Engines", + "url": "https://docs.mongodb.com/manual/core/storage-engines/" + }, + "type": "object" + }, + "description": "Storage engine set for the specific index. This value can be set only at creation. This option uses the following format: `\"storageEngine\" : { \"\u003cstorage-engine-name\u003e\" : \"\u003coptions\u003e\" }` MongoDB validates storage engine configuration options when creating indexes. To support replica sets with members with different storage engines, MongoDB logs these options to the oplog during replication. This option applies to all index types.", + "externalDocs": { + "description": "MongoDB Server Storage Engines", + "url": "https://docs.mongodb.com/manual/core/storage-engines/" + }, + "type": "object" + }, + "textIndexVersion": { + "default": 3, + "description": "Version applied to this text index. MongoDB 3.2 and later use version `3`. Use this option to override the default version number. This option applies to the **text** index type only.", + "format": "int32", + "type": "integer" + }, + "weights": { + "additionalProperties": { + "description": "Relative importance to place upon provided index parameters. This object expresses this as key/value pairs of index parameter and weight to apply to that parameter. You can specify weights for some or all the indexed parameters. The weight must be an integer between 1 and 99,999. MongoDB 5.0 and later can apply **weights** to **text** indexes only.", + "type": "object" + }, + "description": "Relative importance to place upon provided index parameters. This object expresses this as key/value pairs of index parameter and weight to apply to that parameter. You can specify weights for some or all the indexed parameters. The weight must be an integer between 1 and 99,999. MongoDB 5.0 and later can apply **weights** to **text** indexes only.", + "type": "object" + } + }, + "type": "object", + "writeOnly": true + }, + "Info": { + "description": "Information about the MongoDB Atlas Administration API OpenAPI Specification.", + "properties": { + "description": { + "description": "Description of the MongoDB Atlas Administration API.", + "example": "The MongoDB Atlas Administration API allows developers to manage all components in MongoDB Atlas.", + "type": "string" + }, + "license": { + "$ref": "#/components/schemas/License" + }, + "termsOfService": { + "description": "Terms of Service URL.", + "example": "https://www.mongodb.com/mongodb-management-service-terms-and-conditions", + "type": "string" + }, + "title": { + "description": "Title of the MongoDB Atlas Administration API.", + "example": "MongoDB Atlas Administration API.", + "type": "string" + }, + "version": { + "description": "Version of the MongoDB Atlas Administration API.", + "example": "2.0", + "type": "string" + } + }, + "type": "object" + }, + "IngestionPipelineRun": { + "description": "Run details of a Data Lake Pipeline.", + "properties": { + "_id": { + "description": "Unique 24-hexadecimal character string that identifies a Data Lake Pipeline run.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "backupFrequencyType": { + "description": "Backup schedule interval of the Data Lake Pipeline.", + "enum": [ + "HOURLY", + "DAILY", + "WEEKLY", + "MONTHLY", + "YEARLY", + "ON_DEMAND" + ], + "readOnly": true, + "type": "string" + }, + "createdDate": { + "description": "Timestamp that indicates when the pipeline run was created.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "datasetName": { + "description": "Human-readable label that identifies the dataset that Atlas generates during this pipeline run. You can use this dataset as a `dataSource` in a Federated Database collection.", + "example": "v1$atlas$snapshot$Cluster0$myDatabase$myCollection$19700101T000000Z", + "readOnly": true, + "type": "string" + }, + "datasetRetentionPolicy": { + "$ref": "#/components/schemas/DatasetRetentionPolicy" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastUpdatedDate": { + "description": "Timestamp that indicates the last time that the pipeline run was updated.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "phase": { + "description": "Processing phase of the Data Lake Pipeline.", + "enum": [ + "SNAPSHOT", + "EXPORT", + "INGESTION" + ], + "readOnly": true, + "type": "string" + }, + "pipelineId": { + "description": "Unique 24-hexadecimal character string that identifies a Data Lake Pipeline.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "scheduledDeletionDate": { + "description": "Timestamp that indicates when the pipeline run will expire and its dataset will be deleted.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "snapshotId": { + "description": "Unique 24-hexadecimal character string that identifies the snapshot of a cluster.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "State of the pipeline run.", + "enum": [ + "PENDING", + "IN_PROGRESS", + "DONE", + "FAILED", + "DATASET_DELETED" + ], + "readOnly": true, + "type": "string" + }, + "stats": { + "$ref": "#/components/schemas/PipelineRunStats" + } + }, + "title": "Data Lake Pipeline Run", + "type": "object" + }, + "IngestionSink": { + "description": "Ingestion destination of a Data Lake Pipeline.", + "discriminator": { + "mapping": { + "DLS": "#/components/schemas/DLSIngestionSink" + }, + "propertyName": "type" + }, + "properties": { + "type": { + "description": "Type of ingestion destination of this Data Lake Pipeline.", + "enum": [ + "DLS" + ], + "readOnly": true, + "type": "string" + } + }, + "title": "Ingestion Destination", + "type": "object" + }, + "IngestionSource": { + "description": "Ingestion Source of a Data Lake Pipeline.", + "discriminator": { + "mapping": { + "ON_DEMAND_CPS": "#/components/schemas/OnDemandCpsSnapshotSource", + "PERIODIC_CPS": "#/components/schemas/PeriodicCpsSnapshotSource" + }, + "propertyName": "type" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/OnDemandCpsSnapshotSource" + }, + { + "$ref": "#/components/schemas/PeriodicCpsSnapshotSource" + } + ], + "properties": { + "type": { + "description": "Type of ingestion source of this Data Lake Pipeline.", + "enum": [ + "PERIODIC_CPS", + "ON_DEMAND_CPS" + ], + "type": "string" + } + }, + "title": "Ingestion Source", + "type": "object" + }, + "InvoiceLineItem": { + "description": "One service included in this invoice.", + "properties": { + "clusterName": { + "description": "Human-readable label that identifies the cluster that incurred the charge.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this line item. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "discountCents": { + "description": "Sum by which MongoDB discounted this line item. MongoDB Cloud expresses this value in cents (100ths of one US Dollar). The resource returns this parameter when a discount applies.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "endDate": { + "description": "Date and time when when MongoDB Cloud finished charging for this line item. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project associated to this line item.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "groupName": { + "description": "Human-readable label that identifies the project.", + "type": "string" + }, + "note": { + "description": "Comment that applies to this line item.", + "readOnly": true, + "type": "string" + }, + "percentDiscount": { + "description": "Percentage by which MongoDB discounted this line item. The resource returns this parameter when a discount applies.", + "format": "float", + "readOnly": true, + "type": "number" + }, + "quantity": { + "description": "Number of units included for the line item. These can be expressions of storage (GB), time (hours), or other units.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "sku": { + "description": "Human-readable description of the service that this line item provided. This Stock Keeping Unit (SKU) could be the instance type, a support charge, advanced security, or another service.", + "enum": [ + "CLASSIC_BACKUP_OPLOG", + "CLASSIC_BACKUP_STORAGE", + "CLASSIC_BACKUP_SNAPSHOT_CREATE", + "CLASSIC_BACKUP_DAILY_MINIMUM", + "CLASSIC_BACKUP_FREE_TIER", + "CLASSIC_COUPON", + "BACKUP_STORAGE_FREE_TIER", + "BACKUP_STORAGE", + "FLEX_CONSULTING", + "CLOUD_MANAGER_CLASSIC", + "CLOUD_MANAGER_BASIC_FREE_TIER", + "CLOUD_MANAGER_BASIC", + "CLOUD_MANAGER_PREMIUM", + "CLOUD_MANAGER_FREE_TIER", + "CLOUD_MANAGER_STANDARD_FREE_TIER", + "CLOUD_MANAGER_STANDARD_ANNUAL", + "CLOUD_MANAGER_STANDARD", + "CLOUD_MANAGER_FREE_TRIAL", + "ATLAS_INSTANCE_M0", + "ATLAS_INSTANCE_M2", + "ATLAS_INSTANCE_M5", + "ATLAS_AWS_INSTANCE_M10", + "ATLAS_AWS_INSTANCE_M20", + "ATLAS_AWS_INSTANCE_M30", + "ATLAS_AWS_INSTANCE_M40", + "ATLAS_AWS_INSTANCE_M50", + "ATLAS_AWS_INSTANCE_M60", + "ATLAS_AWS_INSTANCE_M80", + "ATLAS_AWS_INSTANCE_M100", + "ATLAS_AWS_INSTANCE_M140", + "ATLAS_AWS_INSTANCE_M200", + "ATLAS_AWS_INSTANCE_M300", + "ATLAS_AWS_INSTANCE_M40_LOW_CPU", + "ATLAS_AWS_INSTANCE_M50_LOW_CPU", + "ATLAS_AWS_INSTANCE_M60_LOW_CPU", + "ATLAS_AWS_INSTANCE_M80_LOW_CPU", + "ATLAS_AWS_INSTANCE_M200_LOW_CPU", + "ATLAS_AWS_INSTANCE_M300_LOW_CPU", + "ATLAS_AWS_INSTANCE_M400_LOW_CPU", + "ATLAS_AWS_INSTANCE_M700_LOW_CPU", + "ATLAS_AWS_INSTANCE_M40_NVME", + "ATLAS_AWS_INSTANCE_M50_NVME", + "ATLAS_AWS_INSTANCE_M60_NVME", + "ATLAS_AWS_INSTANCE_M80_NVME", + "ATLAS_AWS_INSTANCE_M200_NVME", + "ATLAS_AWS_INSTANCE_M400_NVME", + "ATLAS_AWS_INSTANCE_M10_PAUSED", + "ATLAS_AWS_INSTANCE_M20_PAUSED", + "ATLAS_AWS_INSTANCE_M30_PAUSED", + "ATLAS_AWS_INSTANCE_M40_PAUSED", + "ATLAS_AWS_INSTANCE_M50_PAUSED", + "ATLAS_AWS_INSTANCE_M60_PAUSED", + "ATLAS_AWS_INSTANCE_M80_PAUSED", + "ATLAS_AWS_INSTANCE_M100_PAUSED", + "ATLAS_AWS_INSTANCE_M140_PAUSED", + "ATLAS_AWS_INSTANCE_M200_PAUSED", + "ATLAS_AWS_INSTANCE_M300_PAUSED", + "ATLAS_AWS_INSTANCE_M40_LOW_CPU_PAUSED", + "ATLAS_AWS_INSTANCE_M50_LOW_CPU_PAUSED", + "ATLAS_AWS_INSTANCE_M60_LOW_CPU_PAUSED", + "ATLAS_AWS_INSTANCE_M80_LOW_CPU_PAUSED", + "ATLAS_AWS_INSTANCE_M200_LOW_CPU_PAUSED", + "ATLAS_AWS_INSTANCE_M300_LOW_CPU_PAUSED", + "ATLAS_AWS_INSTANCE_M400_LOW_CPU_PAUSED", + "ATLAS_AWS_INSTANCE_M700_LOW_CPU_PAUSED", + "ATLAS_AWS_SEARCH_INSTANCE_S20_COMPUTE_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S30_COMPUTE_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S40_COMPUTE_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S50_COMPUTE_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S60_COMPUTE_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S70_COMPUTE_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S80_COMPUTE_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S30_MEMORY_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S40_MEMORY_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S50_MEMORY_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S60_MEMORY_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S80_MEMORY_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S90_MEMORY_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S100_MEMORY_NVME", + "ATLAS_AWS_SEARCH_INSTANCE_S110_MEMORY_NVME", + "ATLAS_AWS_STORAGE_PROVISIONED", + "ATLAS_AWS_STORAGE_STANDARD", + "ATLAS_AWS_STORAGE_STANDARD_GP3", + "ATLAS_AWS_STORAGE_IOPS", + "ATLAS_AWS_DATA_TRANSFER_SAME_REGION", + "ATLAS_AWS_DATA_TRANSFER_DIFFERENT_REGION", + "ATLAS_AWS_DATA_TRANSFER_INTERNET", + "ATLAS_AWS_BACKUP_SNAPSHOT_STORAGE", + "ATLAS_AWS_BACKUP_DOWNLOAD_VM", + "ATLAS_AWS_BACKUP_DOWNLOAD_VM_STORAGE", + "ATLAS_AWS_BACKUP_DOWNLOAD_VM_STORAGE_IOPS", + "ATLAS_AWS_PRIVATE_ENDPOINT", + "ATLAS_AWS_PRIVATE_ENDPOINT_CAPACITY_UNITS", + "ATLAS_GCP_SEARCH_INSTANCE_S20_COMPUTE_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S30_COMPUTE_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S40_COMPUTE_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S50_COMPUTE_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S60_COMPUTE_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S70_COMPUTE_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S80_COMPUTE_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S30_MEMORY_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S40_MEMORY_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S50_MEMORY_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S60_MEMORY_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S70_MEMORY_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S80_MEMORY_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S90_MEMORY_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S100_MEMORY_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S110_MEMORY_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S120_MEMORY_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S130_MEMORY_LOCALSSD", + "ATLAS_GCP_SEARCH_INSTANCE_S140_MEMORY_LOCALSSD", + "ATLAS_GCP_INSTANCE_M10", + "ATLAS_GCP_INSTANCE_M20", + "ATLAS_GCP_INSTANCE_M30", + "ATLAS_GCP_INSTANCE_M40", + "ATLAS_GCP_INSTANCE_M50", + "ATLAS_GCP_INSTANCE_M60", + "ATLAS_GCP_INSTANCE_M80", + "ATLAS_GCP_INSTANCE_M140", + "ATLAS_GCP_INSTANCE_M200", + "ATLAS_GCP_INSTANCE_M250", + "ATLAS_GCP_INSTANCE_M300", + "ATLAS_GCP_INSTANCE_M400", + "ATLAS_GCP_INSTANCE_M40_LOW_CPU", + "ATLAS_GCP_INSTANCE_M50_LOW_CPU", + "ATLAS_GCP_INSTANCE_M60_LOW_CPU", + "ATLAS_GCP_INSTANCE_M80_LOW_CPU", + "ATLAS_GCP_INSTANCE_M200_LOW_CPU", + "ATLAS_GCP_INSTANCE_M300_LOW_CPU", + "ATLAS_GCP_INSTANCE_M400_LOW_CPU", + "ATLAS_GCP_INSTANCE_M600_LOW_CPU", + "ATLAS_GCP_INSTANCE_M10_PAUSED", + "ATLAS_GCP_INSTANCE_M20_PAUSED", + "ATLAS_GCP_INSTANCE_M30_PAUSED", + "ATLAS_GCP_INSTANCE_M40_PAUSED", + "ATLAS_GCP_INSTANCE_M50_PAUSED", + "ATLAS_GCP_INSTANCE_M60_PAUSED", + "ATLAS_GCP_INSTANCE_M80_PAUSED", + "ATLAS_GCP_INSTANCE_M140_PAUSED", + "ATLAS_GCP_INSTANCE_M200_PAUSED", + "ATLAS_GCP_INSTANCE_M250_PAUSED", + "ATLAS_GCP_INSTANCE_M300_PAUSED", + "ATLAS_GCP_INSTANCE_M400_PAUSED", + "ATLAS_GCP_INSTANCE_M40_LOW_CPU_PAUSED", + "ATLAS_GCP_INSTANCE_M50_LOW_CPU_PAUSED", + "ATLAS_GCP_INSTANCE_M60_LOW_CPU_PAUSED", + "ATLAS_GCP_INSTANCE_M80_LOW_CPU_PAUSED", + "ATLAS_GCP_INSTANCE_M200_LOW_CPU_PAUSED", + "ATLAS_GCP_INSTANCE_M300_LOW_CPU_PAUSED", + "ATLAS_GCP_INSTANCE_M400_LOW_CPU_PAUSED", + "ATLAS_GCP_INSTANCE_M600_LOW_CPU_PAUSED", + "ATLAS_GCP_DATA_TRANSFER_INTERNET", + "ATLAS_GCP_STORAGE_SSD", + "ATLAS_GCP_DATA_TRANSFER_INTER_CONNECT", + "ATLAS_GCP_DATA_TRANSFER_INTER_ZONE", + "ATLAS_GCP_DATA_TRANSFER_INTER_REGION", + "ATLAS_GCP_DATA_TRANSFER_GOOGLE", + "ATLAS_GCP_BACKUP_SNAPSHOT_STORAGE", + "ATLAS_GCP_BACKUP_DOWNLOAD_VM", + "ATLAS_GCP_BACKUP_DOWNLOAD_VM_STORAGE", + "ATLAS_GCP_PRIVATE_ENDPOINT", + "ATLAS_GCP_PRIVATE_ENDPOINT_CAPACITY_UNITS", + "ATLAS_GCP_SNAPSHOT_COPY_DATA_TRANSFER", + "ATLAS_AZURE_INSTANCE_M10", + "ATLAS_AZURE_INSTANCE_M20", + "ATLAS_AZURE_INSTANCE_M30", + "ATLAS_AZURE_INSTANCE_M40", + "ATLAS_AZURE_INSTANCE_M50", + "ATLAS_AZURE_INSTANCE_M60", + "ATLAS_AZURE_INSTANCE_M80", + "ATLAS_AZURE_INSTANCE_M90", + "ATLAS_AZURE_INSTANCE_M200", + "ATLAS_AZURE_INSTANCE_R40", + "ATLAS_AZURE_INSTANCE_R50", + "ATLAS_AZURE_INSTANCE_R60", + "ATLAS_AZURE_INSTANCE_R80", + "ATLAS_AZURE_INSTANCE_R200", + "ATLAS_AZURE_INSTANCE_R300", + "ATLAS_AZURE_INSTANCE_R400", + "ATLAS_AZURE_INSTANCE_M60_NVME", + "ATLAS_AZURE_INSTANCE_M80_NVME", + "ATLAS_AZURE_INSTANCE_M200_NVME", + "ATLAS_AZURE_INSTANCE_M300_NVME", + "ATLAS_AZURE_INSTANCE_M400_NVME", + "ATLAS_AZURE_INSTANCE_M600_NVME", + "ATLAS_AZURE_INSTANCE_M10_PAUSED", + "ATLAS_AZURE_INSTANCE_M20_PAUSED", + "ATLAS_AZURE_INSTANCE_M30_PAUSED", + "ATLAS_AZURE_INSTANCE_M40_PAUSED", + "ATLAS_AZURE_INSTANCE_M50_PAUSED", + "ATLAS_AZURE_INSTANCE_M60_PAUSED", + "ATLAS_AZURE_INSTANCE_M80_PAUSED", + "ATLAS_AZURE_INSTANCE_M90_PAUSED", + "ATLAS_AZURE_INSTANCE_M200_PAUSED", + "ATLAS_AZURE_INSTANCE_R40_PAUSED", + "ATLAS_AZURE_INSTANCE_R50_PAUSED", + "ATLAS_AZURE_INSTANCE_R60_PAUSED", + "ATLAS_AZURE_INSTANCE_R80_PAUSED", + "ATLAS_AZURE_INSTANCE_R200_PAUSED", + "ATLAS_AZURE_INSTANCE_R300_PAUSED", + "ATLAS_AZURE_INSTANCE_R400_PAUSED", + "ATLAS_AZURE_SEARCH_INSTANCE_S20_COMPUTE_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S30_COMPUTE_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S40_COMPUTE_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S50_COMPUTE_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S60_COMPUTE_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S70_COMPUTE_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S80_COMPUTE_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S40_MEMORY_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S50_MEMORY_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S60_MEMORY_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S80_MEMORY_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S90_MEMORY_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S100_MEMORY_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S110_MEMORY_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S130_MEMORY_LOCALSSD", + "ATLAS_AZURE_SEARCH_INSTANCE_S135_MEMORY_LOCALSSD", + "ATLAS_AZURE_STORAGE_P2", + "ATLAS_AZURE_STORAGE_P3", + "ATLAS_AZURE_STORAGE_P4", + "ATLAS_AZURE_STORAGE_P6", + "ATLAS_AZURE_STORAGE_P10", + "ATLAS_AZURE_STORAGE_P15", + "ATLAS_AZURE_STORAGE_P20", + "ATLAS_AZURE_STORAGE_P30", + "ATLAS_AZURE_STORAGE_P40", + "ATLAS_AZURE_STORAGE_P50", + "ATLAS_AZURE_DATA_TRANSFER", + "ATLAS_AZURE_DATA_TRANSFER_REGIONAL_VNET_IN", + "ATLAS_AZURE_DATA_TRANSFER_REGIONAL_VNET_OUT", + "ATLAS_AZURE_DATA_TRANSFER_GLOBAL_VNET_IN", + "ATLAS_AZURE_DATA_TRANSFER_GLOBAL_VNET_OUT", + "ATLAS_AZURE_DATA_TRANSFER_AVAILABILITY_ZONE_IN", + "ATLAS_AZURE_DATA_TRANSFER_AVAILABILITY_ZONE_OUT", + "ATLAS_AZURE_DATA_TRANSFER_INTER_REGION_INTRA_CONTINENT", + "ATLAS_AZURE_DATA_TRANSFER_INTER_REGION_INTER_CONTINENT", + "ATLAS_AZURE_BACKUP_SNAPSHOT_STORAGE", + "ATLAS_AZURE_BACKUP_DOWNLOAD_VM", + "ATLAS_AZURE_BACKUP_DOWNLOAD_VM_STORAGE_P2", + "ATLAS_AZURE_BACKUP_DOWNLOAD_VM_STORAGE_P3", + "ATLAS_AZURE_BACKUP_DOWNLOAD_VM_STORAGE_P4", + "ATLAS_AZURE_BACKUP_DOWNLOAD_VM_STORAGE_P6", + "ATLAS_AZURE_BACKUP_DOWNLOAD_VM_STORAGE_P10", + "ATLAS_AZURE_BACKUP_DOWNLOAD_VM_STORAGE_P15", + "ATLAS_AZURE_BACKUP_DOWNLOAD_VM_STORAGE_P20", + "ATLAS_AZURE_BACKUP_DOWNLOAD_VM_STORAGE_P30", + "ATLAS_AZURE_BACKUP_DOWNLOAD_VM_STORAGE_P40", + "ATLAS_AZURE_BACKUP_DOWNLOAD_VM_STORAGE_P50", + "ATLAS_AZURE_STANDARD_STORAGE", + "ATLAS_AZURE_EXTENDED_STANDARD_IOPS", + "ATLAS_AZURE_BACKUP_DOWNLOAD_VM_STORAGE", + "ATLAS_AZURE_BACKUP_DOWNLOAD_VM_STORAGE_EXTENDED_IOPS", + "ATLAS_AZURE_SNAPSHOT_EXPORT_VM_STORAGE", + "ATLAS_AZURE_SNAPSHOT_EXPORT_VM_STORAGE_EXTENDED_IOPS", + "ATLAS_BI_CONNECTOR", + "ATLAS_ADVANCED_SECURITY", + "ATLAS_ENTERPRISE_AUDITING", + "ATLAS_FREE_SUPPORT", + "ATLAS_SUPPORT", + "STITCH_DATA_DOWNLOADED_FREE_TIER", + "STITCH_DATA_DOWNLOADED", + "STITCH_COMPUTE_FREE_TIER", + "STITCH_COMPUTE", + "CREDIT", + "MINIMUM_CHARGE", + "CHARTS_DATA_DOWNLOADED_FREE_TIER", + "CHARTS_DATA_DOWNLOADED", + "ATLAS_DATA_LAKE_AWS_DATA_RETURNED_SAME_REGION", + "ATLAS_DATA_LAKE_AWS_DATA_RETURNED_DIFFERENT_REGION", + "ATLAS_DATA_LAKE_AWS_DATA_RETURNED_INTERNET", + "ATLAS_DATA_LAKE_AWS_DATA_SCANNED", + "ATLAS_DATA_LAKE_AWS_DATA_TRANSFERRED_FROM_DIFFERENT_REGION", + "ATLAS_NDS_AWS_DATA_LAKE_STORAGE_ACCESS", + "ATLAS_NDS_AWS_DATA_LAKE_STORAGE", + "ATLAS_DATA_FEDERATION_AZURE_DATA_RETURNED_SAME_REGION", + "ATLAS_DATA_FEDERATION_AZURE_DATA_RETURNED_SAME_CONTINENT", + "ATLAS_DATA_FEDERATION_AZURE_DATA_RETURNED_DIFFERENT_CONTINENT", + "ATLAS_DATA_FEDERATION_AZURE_DATA_RETURNED_INTERNET", + "ATLAS_DATA_FEDERATION_GCP_DATA_RETURNED_SAME_REGION", + "ATLAS_DATA_FEDERATION_GCP_DATA_RETURNED_DIFFERENT_REGION", + "ATLAS_DATA_FEDERATION_GCP_DATA_RETURNED_INTERNET", + "ATLAS_DATA_FEDERATION_AZURE_DATA_SCANNED", + "ATLAS_NDS_AZURE_DATA_LAKE_STORAGE_ACCESS", + "ATLAS_NDS_AZURE_DATA_LAKE_STORAGE", + "ATLAS_DATA_FEDERATION_GCP_DATA_SCANNED", + "ATLAS_NDS_GCP_DATA_LAKE_STORAGE_ACCESS", + "ATLAS_NDS_GCP_DATA_LAKE_STORAGE", + "ATLAS_NDS_AWS_OBJECT_STORAGE_ACCESS", + "ATLAS_NDS_AWS_COMPRESSED_OBJECT_STORAGE", + "ATLAS_NDS_AZURE_OBJECT_STORAGE_ACCESS", + "ATLAS_NDS_AZURE_OBJECT_STORAGE", + "ATLAS_NDS_AZURE_COMPRESSED_OBJECT_STORAGE", + "ATLAS_NDS_GCP_OBJECT_STORAGE_ACCESS", + "ATLAS_NDS_GCP_OBJECT_STORAGE", + "ATLAS_NDS_GCP_COMPRESSED_OBJECT_STORAGE", + "ATLAS_ARCHIVE_ACCESS_PARTITION_LOCATE", + "ATLAS_NDS_AWS_PIT_RESTORE_STORAGE_FREE_TIER", + "ATLAS_NDS_AWS_PIT_RESTORE_STORAGE", + "ATLAS_NDS_GCP_PIT_RESTORE_STORAGE_FREE_TIER", + "ATLAS_NDS_GCP_PIT_RESTORE_STORAGE", + "ATLAS_NDS_AZURE_PIT_RESTORE_STORAGE_FREE_TIER", + "ATLAS_NDS_AZURE_PIT_RESTORE_STORAGE", + "ATLAS_NDS_AZURE_PRIVATE_ENDPOINT_CAPACITY_UNITS", + "ATLAS_NDS_AWS_OBJECT_STORAGE", + "ATLAS_NDS_AWS_SNAPSHOT_EXPORT_UPLOAD", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_UPLOAD", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM_M40", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM_M50", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM_M60", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM_STORAGE_P2", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM_STORAGE_P3", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM_STORAGE_P4", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM_STORAGE_P6", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM_STORAGE_P10", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM_STORAGE_P15", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM_STORAGE_P20", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM_STORAGE_P30", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM_STORAGE_P40", + "ATLAS_NDS_AZURE_SNAPSHOT_EXPORT_VM_STORAGE_P50", + "ATLAS_NDS_AWS_SNAPSHOT_EXPORT_VM", + "ATLAS_NDS_AWS_SNAPSHOT_EXPORT_VM_M40", + "ATLAS_NDS_AWS_SNAPSHOT_EXPORT_VM_M50", + "ATLAS_NDS_AWS_SNAPSHOT_EXPORT_VM_M60", + "ATLAS_NDS_AWS_SNAPSHOT_EXPORT_VM_STORAGE", + "ATLAS_NDS_AWS_SNAPSHOT_EXPORT_VM_STORAGE_IOPS", + "ATLAS_NDS_GCP_SNAPSHOT_EXPORT_VM", + "ATLAS_NDS_GCP_SNAPSHOT_EXPORT_VM_M40", + "ATLAS_NDS_GCP_SNAPSHOT_EXPORT_VM_M50", + "ATLAS_NDS_GCP_SNAPSHOT_EXPORT_VM_M60", + "ATLAS_NDS_GCP_SNAPSHOT_EXPORT_VM_STORAGE", + "ATLAS_NDS_AWS_SERVERLESS_RPU", + "ATLAS_NDS_AWS_SERVERLESS_WPU", + "ATLAS_NDS_AWS_SERVERLESS_STORAGE", + "ATLAS_NDS_AWS_SERVERLESS_CONTINUOUS_BACKUP", + "ATLAS_NDS_AWS_SERVERLESS_BACKUP_RESTORE_VM", + "ATLAS_NDS_AWS_SERVERLESS_DATA_TRANSFER_PREVIEW", + "ATLAS_NDS_AWS_SERVERLESS_DATA_TRANSFER", + "ATLAS_NDS_AWS_SERVERLESS_DATA_TRANSFER_REGIONAL", + "ATLAS_NDS_AWS_SERVERLESS_DATA_TRANSFER_CROSS_REGION", + "ATLAS_NDS_AWS_SERVERLESS_DATA_TRANSFER_INTERNET", + "ATLAS_NDS_GCP_SERVERLESS_RPU", + "ATLAS_NDS_GCP_SERVERLESS_WPU", + "ATLAS_NDS_GCP_SERVERLESS_STORAGE", + "ATLAS_NDS_GCP_SERVERLESS_CONTINUOUS_BACKUP", + "ATLAS_NDS_GCP_SERVERLESS_BACKUP_RESTORE_VM", + "ATLAS_NDS_GCP_SERVERLESS_DATA_TRANSFER_PREVIEW", + "ATLAS_NDS_GCP_SERVERLESS_DATA_TRANSFER", + "ATLAS_NDS_GCP_SERVERLESS_DATA_TRANSFER_REGIONAL", + "ATLAS_NDS_GCP_SERVERLESS_DATA_TRANSFER_CROSS_REGION", + "ATLAS_NDS_GCP_SERVERLESS_DATA_TRANSFER_INTERNET", + "ATLAS_NDS_AZURE_SERVERLESS_RPU", + "ATLAS_NDS_AZURE_SERVERLESS_WPU", + "ATLAS_NDS_AZURE_SERVERLESS_STORAGE", + "ATLAS_NDS_AZURE_SERVERLESS_CONTINUOUS_BACKUP", + "ATLAS_NDS_AZURE_SERVERLESS_BACKUP_RESTORE_VM", + "ATLAS_NDS_AZURE_SERVERLESS_DATA_TRANSFER_PREVIEW", + "ATLAS_NDS_AZURE_SERVERLESS_DATA_TRANSFER", + "ATLAS_NDS_AZURE_SERVERLESS_DATA_TRANSFER_REGIONAL", + "ATLAS_NDS_AZURE_SERVERLESS_DATA_TRANSFER_CROSS_REGION", + "ATLAS_NDS_AZURE_SERVERLESS_DATA_TRANSFER_INTERNET", + "REALM_APP_REQUESTS_FREE_TIER", + "REALM_APP_REQUESTS", + "REALM_APP_COMPUTE_FREE_TIER", + "REALM_APP_COMPUTE", + "REALM_APP_SYNC_FREE_TIER", + "REALM_APP_SYNC", + "REALM_APP_DATA_TRANSFER_FREE_TIER", + "REALM_APP_DATA_TRANSFER", + "GCP_SNAPSHOT_COPY_DISK", + "ATLAS_AWS_STREAM_PROCESSING_INSTANCE_SP10", + "ATLAS_AWS_STREAM_PROCESSING_INSTANCE_SP30", + "ATLAS_AWS_STREAM_PROCESSING_INSTANCE_SP50", + "ATLAS_AZURE_STREAM_PROCESSING_INSTANCE_SP10", + "ATLAS_AZURE_STREAM_PROCESSING_INSTANCE_SP30", + "ATLAS_AZURE_STREAM_PROCESSING_INSTANCE_SP50", + "ATLAS_AWS_STREAM_PROCESSING_DATA_TRANSFER", + "ATLAS_AZURE_STREAM_PROCESSING_DATA_TRANSFER", + "ATLAS_AWS_STREAM_PROCESSING_VPC_PEERING" + ], + "readOnly": true, + "type": "string" + }, + "startDate": { + "description": "Date and time when MongoDB Cloud began charging for this line item. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "stitchAppName": { + "description": "Human-readable label that identifies the Atlas App Services application associated with this line item.", + "externalDocs": { + "description": "Create a new Atlas App Service", + "url": "https://www.mongodb.com/docs/atlas/app-services/manage-apps/create/create-with-ui/" + }, + "readOnly": true, + "type": "string" + }, + "tags": { + "additionalProperties": { + "description": "A map of key-value pairs corresponding to the tags associated with the line item resource.", + "items": { + "description": "A map of key-value pairs corresponding to the tags associated with the line item resource.", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "description": "A map of key-value pairs corresponding to the tags associated with the line item resource.", + "readOnly": true, + "type": "object" + }, + "tierLowerBound": { + "description": "Lower bound for usage amount range in current SKU tier. \n\n**NOTE**: **lineItems[n].tierLowerBound** appears only if your **lineItems[n].sku** is tiered.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "tierUpperBound": { + "description": "Upper bound for usage amount range in current SKU tier. \n\n**NOTE**: **lineItems[n].tierUpperBound** appears only if your **lineItems[n].sku** is tiered.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "totalPriceCents": { + "description": "Sum of the cost set for this line item. MongoDB Cloud expresses this value in cents (100ths of one US Dollar) and calculates this value as **unitPriceDollars** × **quantity** × 100.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "unit": { + "description": "Element used to express what **quantity** this line item measures. This value can be elements of time, storage capacity, and the like.", + "readOnly": true, + "type": "string" + }, + "unitPriceDollars": { + "description": "Value per **unit** for this line item expressed in US Dollars.", + "format": "double", + "readOnly": true, + "type": "number" + } + }, + "title": "Line Item", + "type": "object" + }, + "LDAPSecuritySettings": { + "description": "Lightweight Directory Access Protocol (LDAP) over Transport Layer Security (TLS) configuration details that apply to the specified project.", + "properties": { + "authenticationEnabled": { + "description": "Flag that indicates whether users can authenticate using an Lightweight Directory Access Protocol (LDAP) host.", + "type": "boolean" + }, + "authorizationEnabled": { + "description": "Flag that indicates whether users can authorize access to MongoDB Cloud resources using an Lightweight Directory Access Protocol (LDAP) host.", + "type": "boolean" + }, + "authzQueryTemplate": { + "default": "{USER}?memberOf?base", + "description": "Lightweight Directory Access Protocol (LDAP) query template that MongoDB Cloud runs to obtain the LDAP groups associated with the authenticated user. MongoDB Cloud uses this parameter only for user authorization. Use the `{USER}` placeholder in the Uniform Resource Locator (URL) to substitute the authenticated username. The query relates to the host specified with the hostname. Format this query according to [RFC 4515](https://datatracker.ietf.org/doc/html/rfc4515) and [RFC 4516](https://datatracker.ietf.org/doc/html/rfc4516).", + "example": "{USER}?memberOf?base", + "type": "string" + }, + "bindPassword": { + "description": "Password that MongoDB Cloud uses to authenticate the **bindUsername**.", + "type": "string", + "writeOnly": true + }, + "bindUsername": { + "description": "Full Distinguished Name (DN) of the Lightweight Directory Access Protocol (LDAP) user that MongoDB Cloud uses to connect to the LDAP host. LDAP distinguished names must be formatted according to RFC 2253.", + "example": "CN=BindUser,CN=Users,DC=myldapserver,DC=mycompany,DC=com", + "externalDocs": { + "description": "RFC 2253", + "url": "https://tools.ietf.org/html/2253" + }, + "pattern": "^(?:(?\u003ccn\u003eCN=(?\u003cname\u003e[^,]*)),)?(?:(?\u003cpath\u003e(?:(?:CN|OU)=[^,]+,?)+),)?(?\u003cdomain\u003e(?:DC=[^,]+,?)+)$", + "type": "string" + }, + "caCertificate": { + "description": "Certificate Authority (CA) certificate that MongoDB Cloud uses to verify the identity of the Lightweight Directory Access Protocol (LDAP) host. MongoDB Cloud allows self-signed certificates. To delete an assigned value, pass an empty string: `\"caCertificate\": \"\"`.", + "type": "string" + }, + "hostname": { + "description": "Human-readable label that identifies the hostname or Internet Protocol (IP) address of the Lightweight Directory Access Protocol (LDAP) host. This host must have access to the internet or have a Virtual Private Cloud (VPC) peering connection to your cluster.", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?$", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "port": { + "default": 636, + "description": "Port to which the Lightweight Directory Access Protocol (LDAP) host listens for client connections.", + "format": "int32", + "type": "integer" + }, + "userToDNMapping": { + "description": "User-to-Distinguished Name (DN) map that MongoDB Cloud uses to transform a Lightweight Directory Access Protocol (LDAP) username into an LDAP DN.", + "items": { + "$ref": "#/components/schemas/UserToDNMapping" + }, + "type": "array" + } + }, + "title": "LDAP Security Settings", + "type": "object" + }, + "LDAPVerifyConnectivityJobRequest": { + "properties": { + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project associated with this Lightweight Directory Access Protocol (LDAP) over Transport Layer Security (TLS) configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "request": { + "$ref": "#/components/schemas/LDAPVerifyConnectivityJobRequestParams" + }, + "requestId": { + "description": "Unique 24-hexadecimal digit string that identifies this request to verify an Lightweight Directory Access Protocol (LDAP) configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Human-readable string that indicates the status of the Lightweight Directory Access Protocol (LDAP) over Transport Layer Security (TLS) configuration.", + "enum": [ + "FAIL", + "PENDING", + "SUCCESS" + ], + "readOnly": true, + "type": "string" + }, + "validations": { + "description": "List that contains the validation messages related to the verification of the provided Lightweight Directory Access Protocol (LDAP) over Transport Layer Security (TLS) configuration details. The list contains a document for each test that MongoDB Cloud runs. MongoDB Cloud stops running tests after the first failure.", + "items": { + "$ref": "#/components/schemas/LDAPVerifyConnectivityJobRequestValidation" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "LDAPVerifyConnectivityJobRequestParams": { + "description": "Request information needed to verify an Lightweight Directory Access Protocol (LDAP) over Transport Layer Security (TLS) configuration. The response does not return the **bindPassword**.", + "properties": { + "authzQueryTemplate": { + "default": "{USER}?memberOf?base", + "description": "Lightweight Directory Access Protocol (LDAP) query template that MongoDB Cloud applies to create an LDAP query to return the LDAP groups associated with the authenticated MongoDB user. MongoDB Cloud uses this parameter only for user authorization.\n\nUse the `{USER}` placeholder in the Uniform Resource Locator (URL) to substitute the authenticated username. The query relates to the host specified with the hostname. Format this query per [RFC 4515](https://datatracker.ietf.org/doc/html/rfc4515) and [RFC 4516](https://datatracker.ietf.org/doc/html/rfc4516).", + "example": "{USER}?memberOf?base", + "type": "string", + "writeOnly": true + }, + "bindPassword": { + "description": "Password that MongoDB Cloud uses to authenticate the **bindUsername**.", + "type": "string", + "writeOnly": true + }, + "bindUsername": { + "description": "Full Distinguished Name (DN) of the Lightweight Directory Access Protocol (LDAP) user that MongoDB Cloud uses to connect to the LDAP host. LDAP distinguished names must be formatted according to RFC 2253.", + "example": "CN=BindUser,CN=Users,DC=myldapserver,DC=mycompany,DC=com", + "externalDocs": { + "description": "RFC 2253", + "url": "https://tools.ietf.org/html/2253" + }, + "pattern": "^(?:(?\u003ccn\u003eCN=(?\u003cname\u003e[^,]*)),)?(?:(?\u003cpath\u003e(?:(?:CN|OU)=[^,]+,?)+),)?(?\u003cdomain\u003e(?:DC=[^,]+,?)+)$", + "type": "string" + }, + "caCertificate": { + "description": "Certificate Authority (CA) certificate that MongoDB Cloud uses to verify the identity of the Lightweight Directory Access Protocol (LDAP) host. MongoDB Cloud allows self-signed certificates. To delete an assigned value, pass an empty string: `\"caCertificate\": \"\"`.", + "type": "string" + }, + "hostname": { + "description": "Human-readable label that identifies the hostname or Internet Protocol (IP) address of the Lightweight Directory Access Protocol (LDAP) host. This host must have access to the internet or have a Virtual Private Cloud (VPC) peering connection to your cluster.", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?$", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "port": { + "default": 636, + "description": "IANA port to which the Lightweight Directory Access Protocol (LDAP) host listens for client connections.", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "bindPassword", + "bindUsername", + "hostname", + "port" + ], + "type": "object" + }, + "LDAPVerifyConnectivityJobRequestValidation": { + "description": "One test that MongoDB Cloud runs to test verification of the provided Lightweight Directory Access Protocol (LDAP) over Transport Layer Security (TLS) configuration details.", + "properties": { + "status": { + "description": "Human-readable string that indicates the result of this verification test.", + "enum": [ + "FAIL", + "OK" + ], + "readOnly": true, + "type": "string" + }, + "validationType": { + "description": "Human-readable label that identifies this verification test that MongoDB Cloud runs.", + "enum": [ + "AUTHENTICATE", + "AUTHORIZATION_ENABLED", + "CONNECT", + "PARSE_AUTHZ_QUERY", + "QUERY_SERVER", + "SERVER_SPECIFIED", + "TEMPLATE" + ], + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "LegacyAtlasCluster": { + "description": "Group of settings that configure a MongoDB cluster.", + "properties": { + "acceptDataRisksAndForceReplicaSetReconfig": { + "description": "If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set **acceptDataRisksAndForceReplicaSetReconfig** to the current date.", + "externalDocs": { + "description": "Reconfiguring a Replica Set during a regional outage", + "url": "https://dochub.mongodb.org/core/regional-outage-reconfigure-replica-set" + }, + "format": "date-time", + "type": "string" + }, + "autoScaling": { + "$ref": "#/components/schemas/ClusterAutoScalingSettings" + }, + "backupEnabled": { + "description": "Flag that indicates whether the cluster can perform backups. If set to `true`, the cluster can perform backups. You must set this value to `true` for NVMe clusters. Backup uses Cloud Backups for dedicated clusters and Shared Cluster Backups for tenant clusters. If set to `false`, the cluster doesn't use MongoDB Cloud backups.", + "type": "boolean" + }, + "biConnector": { + "$ref": "#/components/schemas/BiConnector" + }, + "clusterType": { + "description": "Configuration of nodes that comprise the cluster.", + "enum": [ + "REPLICASET", + "SHARDED", + "GEOSHARDED" + ], + "type": "string" + }, + "connectionStrings": { + "$ref": "#/components/schemas/ClusterConnectionStrings" + }, + "createDate": { + "description": "Date and time when MongoDB Cloud created this serverless instance. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "diskSizeGB": { + "description": "Storage capacity that the host's root volume possesses expressed in gigabytes. Increase this number to add capacity. MongoDB Cloud requires this parameter if you set **replicationSpecs**. If you specify a disk size below the minimum (10 GB), this parameter defaults to the minimum disk size value. Storage charge calculations depend on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier.", + "format": "double", + "maximum": 4096, + "minimum": 10, + "type": "number" + }, + "diskWarmingMode": { + "default": "FULLY_WARMED", + "description": "Disk warming mode selection.", + "enum": [ + "FULLY_WARMED", + "VISIBLE_EARLIER" + ], + "externalDocs": { + "description": "Reduce Secondary Disk Warming Impact", + "url": "https://docs.atlas.mongodb.com/reference/replica-set-tags/#reduce-secondary-disk-warming-impact" + }, + "type": "string" + }, + "encryptionAtRestProvider": { + "description": "Cloud service provider that manages your customer keys to provide an additional layer of Encryption at Rest for the cluster.", + "enum": [ + "NONE", + "AWS", + "AZURE", + "GCP" + ], + "externalDocs": { + "description": "Encryption at Rest using Customer Key Management", + "url": "https://www.mongodb.com/docs/atlas/security-kms-encryption/" + }, + "type": "string" + }, + "globalClusterSelfManagedSharding": { + "description": "Set this field to configure the Sharding Management Mode when creating a new Global Cluster.\n\nWhen set to false, the management mode is set to Atlas-Managed Sharding. This mode fully manages the sharding of your Global Cluster and is built to provide a seamless deployment experience.\n\nWhen set to true, the management mode is set to Self-Managed Sharding. This mode leaves the management of shards in your hands and is built to provide an advanced and flexible deployment experience.\n\nThis setting cannot be changed once the cluster is deployed.", + "externalDocs": { + "description": "Creating a Global Cluster", + "url": "https://dochub.mongodb.org/core/global-cluster-management" + }, + "type": "boolean" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the cluster.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "labels": { + "deprecated": true, + "description": "Collection of key-value pairs between 1 to 255 characters in length that tag and categorize the cluster. The MongoDB Cloud console doesn't display your labels.\n\nCluster labels are deprecated and will be removed in a future release. We strongly recommend that you use [resource tags](https://dochub.mongodb.org/core/add-cluster-tag-atlas) instead.", + "items": { + "$ref": "#/components/schemas/ComponentLabel" + }, + "type": "array" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "mongoDBMajorVersion": { + "description": "MongoDB major version of the cluster.\n\nOn creation: Choose from the available versions of MongoDB, or leave unspecified for the current recommended default in the MongoDB Cloud platform. The recommended version is a recent Long Term Support version. The default is not guaranteed to be the most recently released version throughout the entire release cycle. For versions available in a specific project, see the linked documentation or use the API endpoint for [project LTS versions endpoint](#tag/Projects/operation/getProjectLTSVersions).\n\n On update: Increase version only by 1 major version at a time. If the cluster is pinned to a MongoDB feature compatibility version exactly one major version below the current MongoDB version, the MongoDB version can be downgraded to the previous major version.", + "externalDocs": { + "description": "Available MongoDB Versions in Atlas", + "url": "https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-" + }, + "type": "string" + }, + "mongoDBVersion": { + "description": "Version of MongoDB that the cluster runs.", + "pattern": "([\\d]+\\.[\\d]+\\.[\\d]+)", + "type": "string" + }, + "mongoURI": { + "description": "Base connection string that you can use to connect to the cluster. MongoDB Cloud displays the string only after the cluster starts, not while it builds the cluster.", + "externalDocs": { + "description": "Connection string URI format.", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "readOnly": true, + "type": "string" + }, + "mongoURIUpdated": { + "description": "Date and time when someone last updated the connection string. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "mongoURIWithOptions": { + "description": "Connection string that you can use to connect to the cluster including the `replicaSet`, `ssl`, and `authSource` query parameters with values appropriate for the cluster. You may need to add MongoDB database users. The response returns this parameter once the cluster can receive requests, not while it builds the cluster.", + "externalDocs": { + "description": "Connection string URI format.", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Human-readable label that identifies the cluster.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "type": "string" + }, + "numShards": { + "default": 1, + "description": "Number of shards up to 50 to deploy for a sharded cluster. The resource returns `1` to indicate a replica set and values of `2` and higher to indicate a sharded cluster. The returned value equals the number of shards in the cluster.", + "externalDocs": { + "description": "Sharding", + "url": "https://docs.mongodb.com/manual/sharding/" + }, + "format": "int32", + "maximum": 50, + "minimum": 1, + "type": "integer" + }, + "paused": { + "description": "Flag that indicates whether the cluster is paused.", + "type": "boolean" + }, + "pitEnabled": { + "description": "Flag that indicates whether the cluster uses continuous cloud backups.", + "externalDocs": { + "description": "Continuous Cloud Backups", + "url": "https://docs.atlas.mongodb.com/backup/cloud-backup/overview/" + }, + "type": "boolean" + }, + "providerBackupEnabled": { + "description": "Flag that indicates whether the M10 or higher cluster can perform Cloud Backups. If set to `true`, the cluster can perform backups. If this and **backupEnabled** are set to `false`, the cluster doesn't use MongoDB Cloud backups.", + "type": "boolean" + }, + "providerSettings": { + "$ref": "#/components/schemas/ClusterProviderSettings" + }, + "replicationFactor": { + "default": 3, + "deprecated": true, + "description": "Number of members that belong to the replica set. Each member retains a copy of your databases, providing high availability and data redundancy. Use **replicationSpecs** instead.", + "enum": [ + 3, + 5, + 7 + ], + "format": "int32", + "type": "integer" + }, + "replicationSpec": { + "additionalProperties": { + "$ref": "#/components/schemas/RegionSpec" + }, + "description": "Physical location where MongoDB Cloud provisions cluster nodes.", + "title": "Region Configuration", + "type": "object" + }, + "replicationSpecs": { + "description": "List of settings that configure your cluster regions.\n\n- For Global Clusters, each object in the array represents one zone where MongoDB Cloud deploys your clusters nodes.\n- For non-Global sharded clusters and replica sets, the single object represents where MongoDB Cloud deploys your clusters nodes.", + "items": { + "$ref": "#/components/schemas/LegacyReplicationSpec" + }, + "type": "array" + }, + "rootCertType": { + "default": "ISRGROOTX1", + "description": "Root Certificate Authority that MongoDB Atlas clusters uses. MongoDB Cloud supports Internet Security Research Group.", + "enum": [ + "ISRGROOTX1" + ], + "type": "string" + }, + "srvAddress": { + "description": "Connection string that you can use to connect to the cluster. The `+srv` modifier forces the connection to use Transport Layer Security (TLS). The `mongoURI` parameter lists additional options.", + "externalDocs": { + "description": "Connection string URI format.", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "readOnly": true, + "type": "string" + }, + "stateName": { + "description": "Human-readable label that indicates the current operating condition of the cluster.", + "enum": [ + "IDLE", + "CREATING", + "UPDATING", + "DELETING", + "REPAIRING" + ], + "readOnly": true, + "type": "string" + }, + "tags": { + "description": "List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster.", + "externalDocs": { + "description": "Resource Tags", + "url": "https://dochub.mongodb.org/core/add-cluster-tag-atlas" + }, + "items": { + "$ref": "#/components/schemas/ResourceTag" + }, + "type": "array" + }, + "terminationProtectionEnabled": { + "default": false, + "description": "Flag that indicates whether termination protection is enabled on the cluster. If set to `true`, MongoDB Cloud won't delete the cluster. If set to `false`, MongoDB Cloud will delete the cluster.", + "type": "boolean" + }, + "versionReleaseSystem": { + "default": "LTS", + "description": "Method by which the cluster maintains the MongoDB versions. If value is `CONTINUOUS`, you must not specify **mongoDBMajorVersion**.", + "enum": [ + "LTS", + "CONTINUOUS" + ], + "type": "string" + } + }, + "title": "Cluster Description", + "type": "object" + }, + "LegacyAtlasTenantClusterUpgradeRequest": { + "description": "Request containing target state of tenant cluster to be upgraded", + "properties": { + "acceptDataRisksAndForceReplicaSetReconfig": { + "description": "If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set **acceptDataRisksAndForceReplicaSetReconfig** to the current date.", + "externalDocs": { + "description": "Reconfiguring a Replica Set during a regional outage", + "url": "https://dochub.mongodb.org/core/regional-outage-reconfigure-replica-set" + }, + "format": "date-time", + "type": "string" + }, + "autoScaling": { + "$ref": "#/components/schemas/ClusterAutoScalingSettings" + }, + "backupEnabled": { + "description": "Flag that indicates whether the cluster can perform backups. If set to `true`, the cluster can perform backups. You must set this value to `true` for NVMe clusters. Backup uses Cloud Backups for dedicated clusters and Shared Cluster Backups for tenant clusters. If set to `false`, the cluster doesn't use MongoDB Cloud backups.", + "type": "boolean" + }, + "biConnector": { + "$ref": "#/components/schemas/BiConnector" + }, + "clusterType": { + "description": "Configuration of nodes that comprise the cluster.", + "enum": [ + "REPLICASET", + "SHARDED", + "GEOSHARDED" + ], + "type": "string" + }, + "connectionStrings": { + "$ref": "#/components/schemas/ClusterConnectionStrings" + }, + "createDate": { + "description": "Date and time when MongoDB Cloud created this serverless instance. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "diskSizeGB": { + "description": "Storage capacity that the host's root volume possesses expressed in gigabytes. Increase this number to add capacity. MongoDB Cloud requires this parameter if you set **replicationSpecs**. If you specify a disk size below the minimum (10 GB), this parameter defaults to the minimum disk size value. Storage charge calculations depend on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier.", + "format": "double", + "maximum": 4096, + "minimum": 10, + "type": "number" + }, + "diskWarmingMode": { + "default": "FULLY_WARMED", + "description": "Disk warming mode selection.", + "enum": [ + "FULLY_WARMED", + "VISIBLE_EARLIER" + ], + "externalDocs": { + "description": "Reduce Secondary Disk Warming Impact", + "url": "https://docs.atlas.mongodb.com/reference/replica-set-tags/#reduce-secondary-disk-warming-impact" + }, + "type": "string" + }, + "encryptionAtRestProvider": { + "description": "Cloud service provider that manages your customer keys to provide an additional layer of Encryption at Rest for the cluster.", + "enum": [ + "NONE", + "AWS", + "AZURE", + "GCP" + ], + "externalDocs": { + "description": "Encryption at Rest using Customer Key Management", + "url": "https://www.mongodb.com/docs/atlas/security-kms-encryption/" + }, + "type": "string" + }, + "globalClusterSelfManagedSharding": { + "description": "Set this field to configure the Sharding Management Mode when creating a new Global Cluster.\n\nWhen set to false, the management mode is set to Atlas-Managed Sharding. This mode fully manages the sharding of your Global Cluster and is built to provide a seamless deployment experience.\n\nWhen set to true, the management mode is set to Self-Managed Sharding. This mode leaves the management of shards in your hands and is built to provide an advanced and flexible deployment experience.\n\nThis setting cannot be changed once the cluster is deployed.", + "externalDocs": { + "description": "Creating a Global Cluster", + "url": "https://dochub.mongodb.org/core/global-cluster-management" + }, + "type": "boolean" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the cluster.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "labels": { + "deprecated": true, + "description": "Collection of key-value pairs between 1 to 255 characters in length that tag and categorize the cluster. The MongoDB Cloud console doesn't display your labels.\n\nCluster labels are deprecated and will be removed in a future release. We strongly recommend that you use [resource tags](https://dochub.mongodb.org/core/add-cluster-tag-atlas) instead.", + "items": { + "$ref": "#/components/schemas/ComponentLabel" + }, + "type": "array" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "mongoDBMajorVersion": { + "description": "MongoDB major version of the cluster.\n\nOn creation: Choose from the available versions of MongoDB, or leave unspecified for the current recommended default in the MongoDB Cloud platform. The recommended version is a recent Long Term Support version. The default is not guaranteed to be the most recently released version throughout the entire release cycle. For versions available in a specific project, see the linked documentation or use the API endpoint for [project LTS versions endpoint](#tag/Projects/operation/getProjectLTSVersions).\n\n On update: Increase version only by 1 major version at a time. If the cluster is pinned to a MongoDB feature compatibility version exactly one major version below the current MongoDB version, the MongoDB version can be downgraded to the previous major version.", + "externalDocs": { + "description": "Available MongoDB Versions in Atlas", + "url": "https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-" + }, + "type": "string" + }, + "mongoDBVersion": { + "description": "Version of MongoDB that the cluster runs.", + "pattern": "([\\d]+\\.[\\d]+\\.[\\d]+)", + "type": "string" + }, + "mongoURI": { + "description": "Base connection string that you can use to connect to the cluster. MongoDB Cloud displays the string only after the cluster starts, not while it builds the cluster.", + "externalDocs": { + "description": "Connection string URI format.", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "readOnly": true, + "type": "string" + }, + "mongoURIUpdated": { + "description": "Date and time when someone last updated the connection string. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "mongoURIWithOptions": { + "description": "Connection string that you can use to connect to the cluster including the `replicaSet`, `ssl`, and `authSource` query parameters with values appropriate for the cluster. You may need to add MongoDB database users. The response returns this parameter once the cluster can receive requests, not while it builds the cluster.", + "externalDocs": { + "description": "Connection string URI format.", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Human-readable label that identifies the cluster.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "type": "string" + }, + "numShards": { + "default": 1, + "description": "Number of shards up to 50 to deploy for a sharded cluster. The resource returns `1` to indicate a replica set and values of `2` and higher to indicate a sharded cluster. The returned value equals the number of shards in the cluster.", + "externalDocs": { + "description": "Sharding", + "url": "https://docs.mongodb.com/manual/sharding/" + }, + "format": "int32", + "maximum": 50, + "minimum": 1, + "type": "integer" + }, + "paused": { + "description": "Flag that indicates whether the cluster is paused.", + "type": "boolean" + }, + "pitEnabled": { + "description": "Flag that indicates whether the cluster uses continuous cloud backups.", + "externalDocs": { + "description": "Continuous Cloud Backups", + "url": "https://docs.atlas.mongodb.com/backup/cloud-backup/overview/" + }, + "type": "boolean" + }, + "providerBackupEnabled": { + "description": "Flag that indicates whether the M10 or higher cluster can perform Cloud Backups. If set to `true`, the cluster can perform backups. If this and **backupEnabled** are set to `false`, the cluster doesn't use MongoDB Cloud backups.", + "type": "boolean" + }, + "providerSettings": { + "$ref": "#/components/schemas/ClusterProviderSettings" + }, + "replicationFactor": { + "default": 3, + "deprecated": true, + "description": "Number of members that belong to the replica set. Each member retains a copy of your databases, providing high availability and data redundancy. Use **replicationSpecs** instead.", + "enum": [ + 3, + 5, + 7 + ], + "format": "int32", + "type": "integer" + }, + "replicationSpec": { + "additionalProperties": { + "$ref": "#/components/schemas/RegionSpec" + }, + "description": "Physical location where MongoDB Cloud provisions cluster nodes.", + "title": "Region Configuration", + "type": "object" + }, + "replicationSpecs": { + "description": "List of settings that configure your cluster regions.\n\n- For Global Clusters, each object in the array represents one zone where MongoDB Cloud deploys your clusters nodes.\n- For non-Global sharded clusters and replica sets, the single object represents where MongoDB Cloud deploys your clusters nodes.", + "items": { + "$ref": "#/components/schemas/LegacyReplicationSpec" + }, + "type": "array" + }, + "rootCertType": { + "default": "ISRGROOTX1", + "description": "Root Certificate Authority that MongoDB Atlas clusters uses. MongoDB Cloud supports Internet Security Research Group.", + "enum": [ + "ISRGROOTX1" + ], + "type": "string" + }, + "srvAddress": { + "description": "Connection string that you can use to connect to the cluster. The `+srv` modifier forces the connection to use Transport Layer Security (TLS). The `mongoURI` parameter lists additional options.", + "externalDocs": { + "description": "Connection string URI format.", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "readOnly": true, + "type": "string" + }, + "stateName": { + "description": "Human-readable label that indicates the current operating condition of the cluster.", + "enum": [ + "IDLE", + "CREATING", + "UPDATING", + "DELETING", + "REPAIRING" + ], + "readOnly": true, + "type": "string" + }, + "tags": { + "description": "List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster.", + "externalDocs": { + "description": "Resource Tags", + "url": "https://dochub.mongodb.org/core/add-cluster-tag-atlas" + }, + "items": { + "$ref": "#/components/schemas/ResourceTag" + }, + "type": "array" + }, + "terminationProtectionEnabled": { + "default": false, + "description": "Flag that indicates whether termination protection is enabled on the cluster. If set to `true`, MongoDB Cloud won't delete the cluster. If set to `false`, MongoDB Cloud will delete the cluster.", + "type": "boolean" + }, + "versionReleaseSystem": { + "default": "LTS", + "description": "Method by which the cluster maintains the MongoDB versions. If value is `CONTINUOUS`, you must not specify **mongoDBMajorVersion**.", + "enum": [ + "LTS", + "CONTINUOUS" + ], + "type": "string" + } + }, + "required": [ + "name" + ], + "title": "Tenant Cluster Upgrade Request", + "type": "object" + }, + "LegacyRegionsConfig": { + "additionalProperties": { + "$ref": "#/components/schemas/RegionSpec" + }, + "description": "Physical location where MongoDB Cloud provisions cluster nodes.", + "title": "Region Configuration", + "type": "object" + }, + "LegacyReplicationSpec": { + "properties": { + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the replication object for a zone in a Global Cluster.\n\n- If you include existing zones in the request, you must specify this parameter.\n\n- If you add a new zone to an existing Global Cluster, you may specify this parameter. The request deletes any existing zones in a Global Cluster that you exclude from the request.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "numShards": { + "default": 1, + "description": "Positive integer that specifies the number of shards to deploy in each specified zone If you set this value to `1` and **clusterType** is `SHARDED`, MongoDB Cloud deploys a single-shard sharded cluster. Don't create a sharded cluster with a single shard for production environments. Single-shard sharded clusters don't provide the same benefits as multi-shard configurations.\n\n If you are upgrading a replica set to a sharded cluster, you cannot increase the number of shards in the same update request. You should wait until after the cluster has completed upgrading to sharded and you have reconnected all application clients to the MongoDB router before adding additional shards. Otherwise, your data might become inconsistent once MongoDB Cloud begins distributing data across shards.", + "format": "int32", + "type": "integer" + }, + "regionsConfig": { + "additionalProperties": { + "$ref": "#/components/schemas/RegionSpec" + }, + "description": "Physical location where MongoDB Cloud provisions cluster nodes.", + "title": "Region Configuration", + "type": "object" + }, + "zoneName": { + "description": "Human-readable label that identifies the zone in a Global Cluster. Provide this value only if **clusterType** is `GEOSHARDED`.", + "type": "string" + } + }, + "type": "object" + }, + "LessThanDaysThresholdView": { + "description": "Threshold value that triggers an alert.", + "properties": { + "operator": { + "description": "Comparison operator to apply when checking the current metric value.", + "enum": [ + "LESS_THAN" + ], + "type": "string" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "int32", + "type": "integer" + }, + "units": { + "description": "Element used to express the quantity. This can be an element of time, storage capacity, and the like.", + "enum": [ + "DAYS" + ], + "type": "string" + } + }, + "type": "object" + }, + "LessThanTimeThreshold": { + "description": "A Limit that triggers an alert when less than a time period.", + "properties": { + "operator": { + "description": "Comparison operator to apply when checking the current metric value.", + "enum": [ + "LESS_THAN" + ], + "type": "string" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "int32", + "type": "integer" + }, + "units": { + "$ref": "#/components/schemas/TimeMetricUnits" + } + }, + "title": "Less Than Time Threshold", + "type": "object" + }, + "LessThanTimeThresholdAlertConfigViewForNdsGroup": { + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ReplicaSetEventTypeViewForNdsGroupAlertableWithThreshold" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "List of rules that determine whether MongoDB Cloud checks an object for the alert configuration. You can filter using the matchers array if the **eventTypeName** specifies an event for a host, replica set, or sharded cluster.", + "items": { + "$ref": "#/components/schemas/ReplicaSetMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "threshold": { + "$ref": "#/components/schemas/LessThanTimeThreshold" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "type": "object" + }, + "License": { + "description": "License information of the MongoDB Atlas Administration API.", + "properties": { + "name": { + "description": "Name of the license.", + "example": "CC BY-NC-SA 3.0 US", + "type": "string" + }, + "url": { + "description": "URL of the license.", + "example": "https://creativecommons.org/licenses/by-nc-sa/3.0/us/", + "type": "string" + } + }, + "type": "object" + }, + "Link": { + "properties": { + "href": { + "description": "Uniform Resource Locator (URL) that points another API resource to which this response has some relationship. This URL often begins with `https://cloud.mongodb.com/api/atlas`.", + "example": "https://cloud.mongodb.com/api/atlas", + "type": "string" + }, + "rel": { + "description": "Uniform Resource Locator (URL) that defines the semantic relationship between this resource and another API resource. This URL often begins with `https://cloud.mongodb.com/api/atlas`.", + "example": "self", + "type": "string" + } + }, + "type": "object" + }, + "Link_Atlas": { + "properties": { + "href": { + "description": "Uniform Resource Locator (URL) that points another API resource to which this response has some relationship. This URL often begins with `https://cloud.mongodb.com/api/atlas`.", + "example": "https://cloud.mongodb.com/api/atlas", + "type": "string" + }, + "rel": { + "description": "Uniform Resource Locator (URL) that defines the semantic relationship between this resource and another API resource. This URL often begins with `https://cloud.mongodb.com/api/atlas`.", + "example": "self", + "type": "string" + } + }, + "type": "object" + }, + "LiveImportAvailableProject": { + "properties": { + "deployments": { + "description": "List of clusters that can be migrated to MongoDB Cloud.", + "items": { + "$ref": "#/components/schemas/AvailableClustersDeployment" + }, + "type": "array" + }, + "migrationHosts": { + "description": "Hostname of MongoDB Agent list that you configured to perform a migration.", + "items": { + "description": "Hostname of MongoDB Agent that you configured to perform a migration.", + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Human-readable label that identifies this project.", + "maxLength": 64, + "minLength": 1, + "readOnly": true, + "type": "string" + }, + "projectId": { + "description": "Unique 24-hexadecimal digit string that identifies the project to be migrated.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "name", + "projectId" + ], + "type": "object" + }, + "LiveImportValidation": { + "properties": { + "_id": { + "description": "Unique 24-hexadecimal digit string that identifies the validation.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "errorMessage": { + "description": "Reason why the validation job failed.", + "nullable": true, + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project to validate.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "sourceGroupId": { + "description": "Unique 24-hexadecimal digit string that identifies the source project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "status": { + "description": "State of the specified validation job returned at the time of the request.", + "enum": [ + "PENDING", + "SUCCESS", + "FAILED" + ], + "nullable": true, + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "LiveMigrationRequest": { + "properties": { + "_id": { + "description": "Unique 24-hexadecimal digit string that identifies the migration request.", + "example": "507f1f77bcf86cd799439011", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "destination": { + "$ref": "#/components/schemas/Destination" + }, + "dropEnabled": { + "description": "Flag that indicates whether the migration process drops all collections from the destination cluster before the migration starts.", + "type": "boolean", + "writeOnly": true + }, + "migrationHosts": { + "description": "List of migration hosts used for this migration.", + "items": { + "example": "vm001.example.com", + "type": "string" + }, + "maxItems": 1, + "minItems": 1, + "type": "array" + }, + "sharding": { + "$ref": "#/components/schemas/ShardingRequest" + }, + "source": { + "$ref": "#/components/schemas/Source" + } + }, + "required": [ + "destination", + "dropEnabled", + "source" + ], + "type": "object" + }, + "LiveMigrationRequest20240530": { + "properties": { + "_id": { + "description": "Unique 24-hexadecimal digit string that identifies the migration request.", + "example": "507f1f77bcf86cd799439011", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "destination": { + "$ref": "#/components/schemas/Destination" + }, + "dropDestinationData": { + "default": false, + "description": "Flag that indicates whether the migration process drops all collections from the destination cluster before the migration starts.", + "type": "boolean", + "writeOnly": true + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "migrationHosts": { + "description": "List of migration hosts used for this migration.", + "items": { + "example": "vm001.example.com", + "type": "string" + }, + "maxItems": 1, + "minItems": 1, + "type": "array" + }, + "sharding": { + "$ref": "#/components/schemas/ShardingRequest" + }, + "source": { + "$ref": "#/components/schemas/Source" + } + }, + "required": [ + "destination", + "source" + ], + "type": "object" + }, + "LiveMigrationResponse": { + "properties": { + "_id": { + "description": "Unique 24-hexadecimal digit string that identifies the migration job.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lagTimeSeconds": { + "description": "Replication lag between the source and destination clusters. Atlas returns this setting only during an active migration, before the cutover phase.", + "format": "int64", + "nullable": true, + "readOnly": true, + "type": "integer" + }, + "migrationHosts": { + "description": "List of hosts running MongoDB Agents. These Agents can transfer your MongoDB data between one source and one target cluster.", + "items": { + "description": "One host running a MongoDB Agent. This Agent can transfer your MongoDB data between one source and one target cluster.", + "example": "vm001.example.com", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?$", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "readyForCutover": { + "description": "Flag that indicates the migrated cluster can be cut over to MongoDB Atlas.", + "readOnly": true, + "type": "boolean" + }, + "status": { + "description": "Progress made in migrating one cluster to MongoDB Atlas.\n\n| Status | Explanation |\n|----------|-------------|\n| NEW | Someone scheduled a local cluster migration to MongoDB Atlas. |\n| FAILED | The cluster migration to MongoDB Atlas failed. |\n| COMPLETE | The cluster migration to MongoDB Atlas succeeded. |\n| EXPIRED | MongoDB Atlas prepares to begin the cut over of the migrating cluster when source and target clusters have almost synchronized. If `\"readyForCutover\" : true`, this synchronization starts a timer of 120 hours. You can extend this timer. If the timer expires, MongoDB Atlas returns this status. |\n| WORKING | The cluster migration to MongoDB Atlas is performing one of the following tasks:\u003cul\u003e\u003cli\u003ePreparing connections to source and target clusters\u003c/li\u003e\u003cli\u003eReplicating data from source to target\u003c/li\u003e\u003cli\u003eVerifying MongoDB Atlas connection settings\u003c/li\u003e\u003cli\u003eStopping replication after the cut over\u003c/li\u003e\u003c/ul\u003e |\n", + "enum": [ + "NEW", + "WORKING", + "FAILED", + "COMPLETE", + "EXPIRED" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ManagedNamespaceView": { + "properties": { + "collection": { + "description": "Human-readable label of the collection to manage for this Global Cluster.", + "type": "string" + }, + "customShardKey": { + "description": "Database parameter used to divide the *collection* into shards. Global clusters require a compound shard key. This compound shard key combines the location parameter and the user-selected custom key.", + "type": "string" + }, + "db": { + "description": "Human-readable label of the database to manage for this Global Cluster.", + "type": "string" + }, + "isCustomShardKeyHashed": { + "default": false, + "description": "Flag that indicates whether someone hashed the custom shard key. If this parameter returns `false`, this cluster uses ranged sharding.", + "type": "boolean" + }, + "isShardKeyUnique": { + "default": false, + "description": "Flag that indicates whether the underlying index enforces unique values.", + "type": "boolean" + }, + "numInitialChunks": { + "description": "Minimum number of chunks to create initially when sharding an empty collection with a hashed shard key.", + "format": "int64", + "type": "integer" + }, + "presplitHashedZones": { + "default": false, + "description": "Flag that indicates whether MongoDB Cloud should create and distribute initial chunks for an empty or non-existing collection. MongoDB Cloud distributes data based on the defined zones and zone ranges for the collection.", + "type": "boolean" + } + }, + "type": "object" + }, + "ManagedNamespaces": { + "properties": { + "collection": { + "description": "Human-readable label of the collection to manage for this Global Cluster.", + "type": "string" + }, + "customShardKey": { + "description": "Database parameter used to divide the *collection* into shards. Global clusters require a compound shard key. This compound shard key combines the location parameter and the user-selected custom key.", + "readOnly": true, + "type": "string" + }, + "db": { + "description": "Human-readable label of the database to manage for this Global Cluster.", + "type": "string" + }, + "isCustomShardKeyHashed": { + "default": false, + "description": "Flag that indicates whether someone hashed the custom shard key for the specified collection. If you set this value to `false`, MongoDB Cloud uses ranged sharding.", + "externalDocs": { + "description": "Hashed Shard Keys", + "url": "https://www.mongodb.com/docs/manual/reference/method/sh.shardCollection/#hashed-shard-keys" + }, + "type": "boolean", + "writeOnly": true + }, + "isShardKeyUnique": { + "default": false, + "description": "Flag that indicates whether someone [hashed](https://www.mongodb.com/docs/manual/reference/method/sh.shardCollection/#hashed-shard-keys) the custom shard key. If this parameter returns `false`, this cluster uses [ranged sharding](https://www.mongodb.com/docs/manual/core/ranged-sharding/).", + "type": "boolean", + "writeOnly": true + }, + "numInitialChunks": { + "description": "Minimum number of chunks to create initially when sharding an empty collection with a [hashed shard key](https://www.mongodb.com/docs/manual/core/hashed-sharding/).", + "externalDocs": { + "description": "Global Cluster Sharding", + "url": "https://www.mongodb.com/docs/atlas/shard-global-collection/" + }, + "format": "int64", + "maximum": 8192, + "type": "integer", + "writeOnly": true + }, + "presplitHashedZones": { + "default": false, + "description": "Flag that indicates whether MongoDB Cloud should create and distribute initial chunks for an empty or non-existing collection. MongoDB Cloud distributes data based on the defined zones and zone ranges for the collection.", + "externalDocs": { + "description": "Hashed Shard Key", + "url": "https://www.mongodb.com/docs/manual/core/hashed-sharding/" + }, + "type": "boolean", + "writeOnly": true + } + }, + "required": [ + "collection", + "customShardKey", + "db" + ], + "type": "object" + }, + "MatcherFieldView": { + "oneOf": [ + { + "enum": [ + "APPLICATION_ID" + ], + "title": "App Services Metric Matcher Fields", + "type": "string" + }, + { + "enum": [ + "CLUSTER_NAME" + ], + "title": "Cluster Matcher Fields", + "type": "string" + }, + { + "enum": [ + "TYPE_NAME", + "HOSTNAME", + "PORT", + "HOSTNAME_AND_PORT", + "REPLICA_SET_NAME" + ], + "title": "Host Matcher Fields", + "type": "string" + }, + { + "enum": [ + "REPLICA_SET_NAME", + "SHARD_NAME", + "CLUSTER_NAME" + ], + "title": "Replica Set Matcher Fields", + "type": "string" + }, + { + "enum": [ + "INSTANCE_NAME", + "PROCESSOR_NAME" + ], + "title": "Streams Matcher Fields", + "type": "string" + } + ], + "type": "object" + }, + "MatcherHostType": { + "description": "Value to match or exceed using the specified **matchers.operator**.", + "enum": [ + "STANDALONE", + "PRIMARY", + "SECONDARY", + "ARBITER", + "MONGOS", + "CONFIG" + ], + "example": "STANDALONE", + "title": "Matcher Host Types", + "type": "string" + }, + "MdbAvailableVersion": { + "properties": { + "cloudProvider": { + "description": "Cloud service provider on which MongoDB Cloud provisions the hosts. Set dedicated clusters to `AWS`, `GCP`, `AZURE` or `TENANT`.", + "enum": [ + "AWS", + "AZURE", + "GCP", + "TENANT" + ], + "type": "string" + }, + "defaultStatus": { + "description": "Whether the version is the current default for the Instance Size and Cloud Provider.", + "enum": [ + "DEFAULT", + "NOT_DEFAULT" + ], + "type": "string" + }, + "instanceSize": { + "$ref": "#/components/schemas/BaseCloudProviderInstanceSize" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "version": { + "description": "The MongoDB Major Version in question.", + "externalDocs": { + "description": "MongoDB Versioning", + "url": "https://www.mongodb.com/docs/manual/reference/versioning/" + }, + "type": "string" + } + }, + "type": "object" + }, + "MeasurementDiskPartition": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "partitionName": { + "description": "Human-readable label of the disk or partition to which the measurements apply.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "MeasurementsCollStatsLatencyCluster": { + "properties": { + "clusterId": { + "description": "Unique identifier for Clusters.", + "readOnly": true, + "type": "string" + }, + "clusterView": { + "description": "Cluster topology view.", + "readOnly": true, + "type": "string" + }, + "collectionName": { + "description": "Human-readable label that identifies the collection.", + "readOnly": true, + "type": "string" + }, + "databaseName": { + "description": "Human-readable label that identifies the database that the specified MongoDB process serves.", + "readOnly": true, + "type": "string" + }, + "end": { + "description": "Date and time that specifies when to stop retrieving measurements. If you set **end**, you must set **start**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "granularity": { + "description": "Duration that specifies the interval between measurement data points. The parameter expresses its value in ISO 8601 timestamp format in UTC. If you set this parameter, you must set either **period** or **start** and **end**.", + "enum": [ + "PT1M", + "PT5M", + "PT1H", + "P1D" + ], + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project. The project contains MongoDB processes that you want to return. The MongoDB process can be either the `mongod` or `mongos`.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "measurements": { + "description": "List that contains measurements and their data points.", + "items": { + "$ref": "#/components/schemas/MetricsMeasurement" + }, + "readOnly": true, + "type": "array" + }, + "processId": { + "description": "Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.", + "example": "mongodb.example.com:27017", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?(\\:[0-9]{4,5})$", + "readOnly": true, + "type": "string" + }, + "start": { + "description": "Date and time that specifies when to start retrieving measurements. If you set **start**, you must set **end**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "MeasurementsCollStatsLatencyHost": { + "properties": { + "collectionName": { + "description": "Human-readable label that identifies the collection.", + "readOnly": true, + "type": "string" + }, + "databaseName": { + "description": "Human-readable label that identifies the database that the specified MongoDB process serves.", + "readOnly": true, + "type": "string" + }, + "end": { + "description": "Date and time that specifies when to stop retrieving measurements. If you set **end**, you must set **start**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "granularity": { + "description": "Duration that specifies the interval between measurement data points. The parameter expresses its value in ISO 8601 timestamp format in UTC. If you set this parameter, you must set either **period** or **start** and **end**.", + "enum": [ + "PT1M", + "PT5M", + "PT1H", + "P1D" + ], + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project. The project contains MongoDB processes that you want to return. The MongoDB process can be either the `mongod` or `mongos`.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "measurements": { + "description": "List that contains measurements and their data points.", + "items": { + "$ref": "#/components/schemas/MetricsMeasurement" + }, + "readOnly": true, + "type": "array" + }, + "processId": { + "description": "Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.", + "example": "mongodb.example.com:27017", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?(\\:[0-9]{4,5})$", + "readOnly": true, + "type": "string" + }, + "start": { + "description": "Date and time that specifies when to start retrieving measurements. If you set **start**, you must set **end**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "MeasurementsIndexes": { + "properties": { + "collectionName": { + "description": "Human-readable label that identifies the collection.", + "readOnly": true, + "type": "string" + }, + "databaseName": { + "description": "Human-readable label that identifies the database that the specified MongoDB process serves.", + "readOnly": true, + "type": "string" + }, + "end": { + "description": "Date and time that specifies when to stop retrieving measurements. If you set **end**, you must set **start**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "granularity": { + "description": "Duration that specifies the interval between measurement data points. The parameter expresses its value in ISO 8601 timestamp format in UTC. If you set this parameter, you must set either **period** or **start** and **end**.", + "enum": [ + "PT1M", + "PT5M", + "PT1H", + "P1D" + ], + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project. The project contains MongoDB processes that you want to return. The MongoDB process can be either the `mongod` or `mongos`.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "indexIds": { + "description": "List that contains the Atlas Search index identifiers.", + "items": { + "description": "Unique 24-hexadecimal digit string that identifies the index.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "indexStatsMeasurements": { + "description": "List that contains the Atlas Search index stats measurements.", + "items": { + "$ref": "#/components/schemas/MetricsMeasurement" + }, + "readOnly": true, + "type": "array" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "processId": { + "description": "Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.", + "example": "mongodb.example.com:27017", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?(\\:[0-9]{4,5})$", + "readOnly": true, + "type": "string" + }, + "start": { + "description": "Date and time that specifies when to start retrieving measurements. If you set **start**, you must set **end**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "MeasurementsNonIndex": { + "properties": { + "end": { + "description": "Date and time that specifies when to stop retrieving measurements. If you set **end**, you must set **start**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "granularity": { + "description": "Duration that specifies the interval between measurement data points. The parameter expresses its value in ISO 8601 timestamp format in UTC. If you set this parameter, you must set either **period** or **start** and **end**.", + "enum": [ + "PT1M", + "PT5M", + "PT1H", + "P1D" + ], + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project. The project contains MongoDB processes that you want to return. The MongoDB process can be either the `mongod` or `mongos`.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hardwareMeasurements": { + "description": "List that contains the Atlas Search hardware measurements.", + "items": { + "$ref": "#/components/schemas/MetricsMeasurement" + }, + "readOnly": true, + "type": "array" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "processId": { + "description": "Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.", + "example": "mongodb.example.com:27017", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\\.){1,10}[a-z]+)?(\\:[0-9]{4,5})$", + "readOnly": true, + "type": "string" + }, + "start": { + "description": "Date and time that specifies when to start retrieving measurements. If you set **start**, you must set **end**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "statusMeasurements": { + "description": "List that contains the Atlas Search status measurements.", + "items": { + "$ref": "#/components/schemas/MetricsMeasurement" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "MesurementsDatabase": { + "properties": { + "databaseName": { + "description": "Human-readable label that identifies the database that the specified MongoDB process serves.", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "MetricDataPoint": { + "description": "value of, and metadata provided for, one data point generated at a particular moment in time. If no data point exists for a particular moment in time, the `value` parameter returns `null`.", + "properties": { + "timestamp": { + "description": "Date and time when this data point occurred. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Value that comprises this data point.", + "readOnly": true, + "type": "number" + } + }, + "readOnly": true, + "type": "object" + }, + "MetricDataPoint_Atlas": { + "description": "value of, and metadata provided for, one data point generated at a particular moment in time. If no data point exists for a particular moment in time, the `value` parameter returns `null`.", + "properties": { + "timestamp": { + "description": "Date and time when this data point occurred. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Value that comprises this data point.", + "readOnly": true, + "type": "number" + } + }, + "readOnly": true, + "type": "object" + }, + "MetricsMeasurement": { + "properties": { + "dataPoints": { + "description": "List that contains the value of, and metadata provided for, one data point generated at a particular moment in time. If no data point exists for a particular moment in time, the `value` parameter returns `null`.", + "items": { + "$ref": "#/components/schemas/MetricDataPoint" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable label of the measurement that this data point covers.", + "readOnly": true, + "type": "string" + }, + "units": { + "description": "Element used to quantify the measurement. The resource returns units of throughput, storage, and time.", + "enum": [ + "BYTES", + "BYTES_PER_SECOND", + "GIGABYTES", + "GIGABYTES_PER_HOUR", + "MEGABYTES_PER_SECOND", + "MICROSECONDS", + "MILLISECONDS", + "PERCENT", + "SCALAR", + "SCALAR_PER_SECOND" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "MetricsMeasurement_Atlas": { + "properties": { + "dataPoints": { + "description": "List that contains the value of, and metadata provided for, one data point generated at a particular moment in time. If no data point exists for a particular moment in time, the `value` parameter returns `null`.", + "items": { + "$ref": "#/components/schemas/MetricDataPoint_Atlas" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable label of the measurement that this data point covers.", + "readOnly": true, + "type": "string" + }, + "units": { + "description": "Element used to quantify the measurement. The resource returns units of throughput, storage, and time.", + "enum": [ + "BYTES", + "BYTES_PER_SECOND", + "GIGABYTES", + "GIGABYTES_PER_HOUR", + "MEGABYTES_PER_SECOND", + "MICROSECONDS", + "MILLISECONDS", + "PERCENT", + "SCALAR", + "SCALAR_PER_SECOND" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "MicrosoftTeams": { + "description": "Details to integrate one Microsoft Teams account with one MongoDB Cloud project.", + "properties": { + "id": { + "description": "Integration id.", + "nullable": true, + "type": "string" + }, + "microsoftTeamsWebhookUrl": { + "description": "Endpoint web address of the Microsoft Teams webhook to which MongoDB Cloud sends notifications.\n\n**NOTE**: When you view or edit the alert for a Microsoft Teams notification, the URL appears partially redacted.", + "example": "https://webhook.com/****", + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud. The value must match the third-party service integration type.", + "enum": [ + "MICROSOFT_TEAMS" + ], + "type": "string" + } + }, + "required": [ + "microsoftTeamsWebhookUrl" + ], + "title": "MICROSOFT_TEAMS", + "type": "object" + }, + "MicrosoftTeamsNotification": { + "description": "Microsoft Teams notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "integrationId": { + "description": "The id of the associated integration, the credentials of which to use for requests.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "microsoftTeamsWebhookUrl": { + "description": "Microsoft Teams Webhook Uniform Resource Locator (URL) that MongoDB Cloud needs to send this notification via Microsoft Teams. The resource requires this parameter when `\"notifications.[n].typeName\" : \"MICROSOFT_TEAMS\"`. If the URL later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.\n\n**NOTE**: When you view or edit the alert for a Microsoft Teams notification, the URL appears partially redacted.", + "example": "https://webhook.com/****", + "type": "string" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "MICROSOFT_TEAMS" + ], + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "Microsoft Teams Notification", + "type": "object" + }, + "MongoDBAccessLogs": { + "description": "Authentication attempt, one per object, made against the cluster.", + "properties": { + "authResult": { + "description": "Flag that indicates whether the response should return successful authentication attempts only.", + "type": "boolean" + }, + "authSource": { + "description": "Database against which someone attempted to authenticate.", + "readOnly": true, + "type": "string" + }, + "failureReason": { + "description": "Reason that the authentication failed. Null if authentication succeeded.", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hostname": { + "description": "Human-readable label that identifies the hostname of the target node that received the authentication attempt.", + "readOnly": true, + "type": "string" + }, + "ipAddress": { + "description": "Internet Protocol address that attempted to authenticate with the database.", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "logLine": { + "description": "Text of the host log concerning the authentication attempt.", + "readOnly": true, + "type": "string" + }, + "timestamp": { + "description": "Date and time when someone made this authentication attempt. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Username used to authenticate against the database.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "MongoDBAccessLogsList": { + "properties": { + "accessLogs": { + "description": "Authentication attempt, one per object, made against the cluster.", + "items": { + "$ref": "#/components/schemas/MongoDBAccessLogs" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "MonthlyScheduleView": { + "allOf": [ + { + "$ref": "#/components/schemas/OnlineArchiveSchedule" + }, + { + "properties": { + "dayOfMonth": { + "description": "Day of the month when the scheduled archive starts.", + "format": "int32", + "maximum": 31, + "minimum": 1, + "type": "integer" + }, + "endHour": { + "description": "Hour of the day when the scheduled window to run one online archive ends.", + "format": "int32", + "maximum": 23, + "minimum": 0, + "type": "integer" + }, + "endMinute": { + "description": "Minute of the hour when the scheduled window to run one online archive ends.", + "format": "int32", + "maximum": 59, + "minimum": 0, + "type": "integer" + }, + "startHour": { + "description": "Hour of the day when the when the scheduled window to run one online archive starts.", + "format": "int32", + "maximum": 23, + "minimum": 0, + "type": "integer" + }, + "startMinute": { + "description": "Minute of the hour when the scheduled window to run one online archive starts.", + "format": "int32", + "maximum": 59, + "minimum": 0, + "type": "integer" + } + }, + "type": "object" + } + ], + "required": [ + "type" + ], + "type": "object" + }, + "NDSAuditTypeViewForNdsGroup": { + "description": "Unique identifier of event type.", + "enum": [ + "CLUSTER_CREATED", + "CLUSTER_RESURRECTED", + "CLUSTER_READY", + "CLUSTER_UPDATE_SUBMITTED", + "CLUSTER_UPDATE_SUBMITTED_INTERNAL", + "CLUSTER_PROCESS_ARGS_UPDATE_SUBMITTED", + "CLUSTER_MONGOT_PROCESS_ARGS_UPDATE_SUBMITTED", + "CLUSTER_SERVER_PARAMETERS_UPDATE_SUBMITTED", + "CLUSTER_AUTOMATICALLY_PAUSED", + "CLUSTER_UPDATE_STARTED", + "CLUSTER_UPDATE_STARTED_INTERNAL", + "CLUSTER_UPDATE_COMPLETED", + "MATERIAL_CLUSTER_UPDATE_COMPLETED_INTERNAL", + "CLUSTER_DELETE_SUBMITTED", + "CLUSTER_DELETE_SUBMITTED_INTERNAL", + "CLUSTER_DELETED", + "CLUSTER_IMPORT_STARTED", + "CLUSTER_IMPORT_CANCELLED", + "CLUSTER_IMPORT_EXPIRED", + "CLUSTER_IMPORT_CUTOVER", + "CLUSTER_IMPORT_RESTART_REQUESTED", + "PROJECT_LIVE_IMPORT_OVERRIDES_ADDED", + "PROJECT_LIVE_IMPORT_OVERRIDES_UPDATED", + "PROJECT_LIVE_IMPORT_OVERRIDES_DELETED", + "CLUSTER_OPLOG_RESIZED", + "CLUSTER_INSTANCE_RESTARTED", + "CLUSTER_INSTANCE_STOP_START", + "CLUSTER_INSTANCE_RESYNC_REQUESTED", + "CLUSTER_INSTANCE_RESYNC_CLEARED", + "CLUSTER_INSTANCE_UPDATE_REQUESTED", + "CLUSTER_INSTANCE_REPLACED", + "CLUSTER_INSTANCE_REPLACE_CLEARED", + "CLUSTER_INSTANCE_CONFIG_UPDATED", + "CLUSTER_INSTANCE_SSL_ROTATED", + "CLUSTER_INSTANCE_SSL_ROTATED_PER_CLUSTER", + "CLUSTER_INSTANCE_SSL_REVOKED", + "RELOAD_SSL_ON_PROCESSES", + "CLUSTER_INSTANCE_ADMIN_BACKUP_SNAPSHOT_REQUESTED", + "UPDATE_BUMPER_FILES", + "DATA_LAKE_QUERY_LOGS_DOWNLOADED", + "FEDERATED_DATABASE_QUERY_LOGS_DOWNLOADED", + "ONLINE_ARCHIVE_QUERY_LOGS_DOWNLOADED", + "MONGODB_LOGS_DOWNLOADED", + "MONGOSQLD_LOGS_DOWNLOADED", + "MONGODB_USER_ADDED", + "MONGODB_USER_DELETED", + "MONGODB_USER_X509_CERT_CREATED", + "MONGODB_USER_X509_CERT_REVOKED", + "MONGODB_USER_UPDATED", + "MONGODB_ROLE_ADDED", + "MONGODB_ROLE_DELETED", + "MONGODB_ROLE_UPDATED", + "NETWORK_PERMISSION_ENTRY_ADDED", + "NETWORK_PERMISSION_ENTRY_REMOVED", + "NETWORK_PERMISSION_ENTRY_UPDATED", + "PRIVATE_NETWORK_ENDPOINT_ENTRY_ADDED", + "PRIVATE_NETWORK_ENDPOINT_ENTRY_REMOVED", + "PRIVATE_NETWORK_ENDPOINT_ENTRY_UPDATED", + "PLAN_STARTED", + "PLAN_COMPLETED", + "PLAN_ABANDONED", + "PLAN_FAILURE_COUNT_RESET", + "PLAN_ASAP_REQUESTED", + "INDEPENDENT_SHARD_SCALING_AVAILABLE", + "MOVE_SKIPPED", + "PROXY_RESTARTED", + "PROXY_PANICKED", + "ATLAS_MAINTENANCE_WINDOW_ADDED", + "ATLAS_MAINTENANCE_WINDOW_MODIFIED", + "ATLAS_MAINTENANCE_WINDOW_REMOVED", + "ATLAS_MAINTENANCE_START_ASAP", + "ATLAS_MAINTENANCE_SCHEDULED_FOR_NEXT_WINDOW", + "ATLAS_MAINTENANCE_DEFERRED", + "ATLAS_MAINTENANCE_AUTO_DEFER_ENABLED", + "ATLAS_MAINTENANCE_AUTO_DEFER_DISABLED", + "SCHEDULED_MAINTENANCE", + "PROJECT_SCHEDULED_MAINTENANCE", + "PROJECT_LIMIT_UPDATED", + "PROJECT_OPERATIONAL_LIMIT_UPDATED", + "PROJECT_ENABLE_EXTENDED_STORAGE_SIZES_UPDATED", + "OS_MAINTENANCE", + "OS_MAINTENANCE_RESTART", + "OS_MAINTENANCE_REPLACEMENT", + "FREE_UPGRADE_STARTED", + "TEST_FAILOVER_REQUESTED", + "USER_SECURITY_SETTINGS_UPDATED", + "AUDIT_LOG_CONFIGURATION_UPDATED", + "STREAMS_AUDIT_LOG_CONFIGURATION_UPDATED", + "ENCRYPTION_AT_REST_CONFIGURATION_UPDATED", + "ENCRYPTION_AT_REST_CONFIGURATION_VALIDATION_FAILED", + "NDS_SET_IMAGE_OVERRIDES", + "NDS_SET_CHEF_TARBALL_URI", + "RESTRICTED_EMPLOYEE_ACCESS_BYPASS", + "REVOKED_EMPLOYEE_ACCESS_BYPASS", + "DEVICE_SYNC_DEBUG_ACCESS_GRANTED", + "DEVICE_SYNC_DEBUG_ACCESS_REVOKED", + "DEVICE_SYNC_DEBUG_X509_CERT_CREATED", + "QUERY_ENGINE_TENANT_CREATED", + "QUERY_ENGINE_TENANT_UPDATED", + "QUERY_ENGINE_TENANT_REMOVED", + "FEDERATED_DATABASE_CREATED", + "FEDERATED_DATABASE_UPDATED", + "FEDERATED_DATABASE_REMOVED", + "TENANT_CLUSTER_UPGRADE_FROM_MTM", + "TENANT_SNAPSHOT_FAILED", + "TENANT_RESTORE_FAILED", + "SAMPLE_DATASET_LOAD_REQUESTED", + "CUSTOMER_X509_CRL_UPDATED", + "CONTAINER_SUBNETS_UPDATE_REQUESTED", + "CLEAR_UNPROVISIONED_TARGET_GROUPS_REQUESTED", + "ONLINE_ARCHIVE_CREATED", + "ONLINE_ARCHIVE_DELETED", + "ONLINE_ARCHIVE_UPDATED", + "ONLINE_ARCHIVE_PAUSE_REQUESTED", + "ONLINE_ARCHIVE_PAUSED", + "ONLINE_ARCHIVE_ACTIVE", + "ONLINE_ARCHIVE_ORPHANED", + "ONLINE_ARCHIVE_DATA_EXPIRATION_RULE_ENABLED", + "ONLINE_ARCHIVE_DATA_EXPIRATION_RULE_UPDATED", + "ONLINE_ARCHIVE_DATA_EXPIRATION_RULE_DISABLED", + "CLOUD_PROVIDER_ACCESS_AWS_IAM_ROLE_ADDED", + "CLOUD_PROVIDER_ACCESS_AWS_IAM_ROLE_DELETED", + "CLOUD_PROVIDER_ACCESS_AWS_IAM_ROLE_UPDATED", + "CLOUD_PROVIDER_ACCESS_AZURE_SERVICE_PRINCIPAL_ADDED", + "CLOUD_PROVIDER_ACCESS_AZURE_SERVICE_PRINCIPAL_DELETED", + "CLOUD_PROVIDER_ACCESS_AZURE_SERVICE_PRINCIPAL_UPDATED", + "PENDING_INDEXES_DELETED", + "PENDING_INDEXES_CANCELED", + "PROCESS_RESTART_REQUESTED", + "AUTO_HEALING_ACTION", + "EXTRA_MAINTENANCE_DEFERRAL_GRANTED", + "ADMIN_NOTE_UPDATED", + "GROUP_AUTOMATION_CONFIG_PUBLISHED", + "CLUSTER_AUTOMATION_CONFIG_PUBLISHED", + "SET_ENSURE_CLUSTER_CONNECTIVITY_AFTER_FOR_CLUSTER", + "CLUSTER_LINKED_TO_VERCEL", + "CLUSTER_UNLINKED_FROM_VERCEL", + "INGESTION_PIPELINE_DELETED", + "INGESTION_PIPELINE_DESTROYED", + "INGESTION_PIPELINE_CREATED", + "INGESTION_PIPELINE_UPDATED", + "OS_TUNE_FILE_OVERRIDES", + "CLUSTER_PREFERRED_CPU_ARCHITECTURE_MODIFIED", + "CLUSTER_FORCE_PLANNED", + "DATA_PROCESSING_REGION_UPDATED", + "CLUSTER_REGIONAL_OUTAGE_SIMULATION_STARTED", + "CLUSTER_REGIONAL_OUTAGE_SIMULATION_FAILED_TO_START", + "CLUSTER_REGIONAL_OUTAGE_SIMULATION_END_REQUESTED", + "CLUSTER_REGIONAL_OUTAGE_SIMULATION_COMPLETED", + "CLUSTER_REGIONAL_OUTAGE_SIMULATION_CANCELLED_CLUSTER_PAUSE", + "UIS_PANICKED", + "TENANT_UPGRADE_TO_SERVERLESS_SUCCESSFUL", + "TENANT_UPGRADE_TO_SERVERLESS_FAILED", + "CLUSTER_FORCE_RECONFIG_REQUESTED", + "PROJECT_BYPASSED_MAINTENANCE", + "DATA_FEDERATION_QUERY_LIMIT_CONFIGURED", + "DATA_FEDERATION_QUERY_LIMIT_DELETED", + "DATA_API_SETUP_FOR_VERCEL", + "ADMIN_CLUSTER_LOCK_UPDATED", + "CLUSTER_ROLLING_RESYNC_STARTED", + "CLUSTER_ROLLING_RESYNC_COMPLETED", + "CLUSTER_ROLLING_RESYNC_FAILED", + "NODE_ROLLING_RESYNC_SCHEDULED", + "CLUSTER_ROLLING_RESYNC_CANCELED", + "CLUSTER_OS_UPDATED", + "CLUSTER_INSTANCE_FAMILY_UPDATED", + "PUSH_BASED_LOG_EXPORT_ENABLED", + "PUSH_BASED_LOG_EXPORT_CONFIGURATION_UPDATED", + "PUSH_BASED_LOG_EXPORT_DISABLED", + "AZURE_CLUSTER_PREFERRED_STORAGE_TYPE_UPDATED", + "CONTAINER_DELETED", + "REGIONALIZED_PRIVATE_ENDPOINT_MODE_ENABLED", + "REGIONALIZED_PRIVATE_ENDPOINT_MODE_DISABLED", + "STREAM_TENANT_CREATED", + "STREAM_TENANT_UPDATED", + "STREAM_TENANT_DELETED", + "STREAM_TENANT_CONNECTIONS_LISTED", + "STREAM_TENANT_CONNECTION_UPDATED", + "STREAM_TENANT_CONNECTION_DELETED", + "STREAM_TENANT_CONNECTION_CREATED", + "STREAM_TENANT_CONNECTION_VIEWED", + "STREAM_TENANT_AUDIT_LOGS", + "STREAM_TENANT_AUDIT_LOGS_DELETED", + "QUEUED_ADMIN_ACTION_CREATED", + "ATLAS_SQL_SCHEDULED_UPDATE_CREATED", + "ATLAS_SQL_SCHEDULED_UPDATE_MODIFIED", + "ATLAS_SQL_SCHEDULED_UPDATE_REMOVED" + ], + "example": "CLUSTER_CREATED", + "title": "NDS Audit Types", + "type": "string" + }, + "NDSAuditTypeViewForOrg": { + "description": "Unique identifier of event type.", + "enum": [ + "ORG_LIMIT_UPDATED" + ], + "example": "ORG_LIMIT_UPDATED", + "title": "NDS Audit Types", + "type": "string" + }, + "NDSAuditViewForNdsGroup": { + "description": "NDS audit saving information about atlas cloud provider and other atlas related details.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "dbUserUsername": { + "description": "The username of the MongoDB User that was created, deleted, or edited.", + "example": "user1", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/NDSAuditTypeViewForNdsGroup" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "whitelistEntry": { + "description": "Entry in the list of source host addresses that the API key accepts and this event targets.", + "example": "0.0.0.0", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "NDS Audits", + "type": "object" + }, + "NDSAuditViewForOrg": { + "description": "NDS audit saving information about atlas cloud provider and other atlas related details.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "dbUserUsername": { + "description": "The username of the MongoDB User that was created, deleted, or edited.", + "example": "user1", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/NDSAuditTypeViewForOrg" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "whitelistEntry": { + "description": "Entry in the list of source host addresses that the API key accepts and this event targets.", + "example": "0.0.0.0", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "NDS Audits", + "type": "object" + }, + "NDSAutoScalingAuditTypeViewForNdsGroup": { + "description": "Unique identifier of event type.", + "enum": [ + "COMPUTE_AUTO_SCALE_INITIATED", + "DISK_AUTO_SCALE_INITIATED", + "COMPUTE_AUTO_SCALE_INITIATED_BASE", + "COMPUTE_AUTO_SCALE_INITIATED_ANALYTICS", + "COMPUTE_AUTO_SCALE_SCALE_DOWN_FAIL_BASE", + "COMPUTE_AUTO_SCALE_SCALE_DOWN_FAIL_ANALYTICS", + "COMPUTE_AUTO_SCALE_MAX_INSTANCE_SIZE_FAIL_BASE", + "COMPUTE_AUTO_SCALE_MAX_INSTANCE_SIZE_FAIL_ANALYTICS", + "COMPUTE_AUTO_SCALE_OPLOG_FAIL_BASE", + "COMPUTE_AUTO_SCALE_OPLOG_FAIL_ANALYTICS", + "DISK_AUTO_SCALE_MAX_DISK_SIZE_FAIL", + "DISK_AUTO_SCALE_OPLOG_FAIL" + ], + "example": "COMPUTE_AUTO_SCALE_INITIATED", + "title": "NDS Auto Scaling Audit Types", + "type": "string" + }, + "NDSAutoScalingAuditViewForNdsGroup": { + "description": "NDS auto scaling audit indicates when atlas auto-scaling cluster tier up or down.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/NDSAutoScalingAuditTypeViewForNdsGroup" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "NDS Auto Scaling Audits", + "type": "object" + }, + "NDSNotificationView": { + "description": "NDS notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "severity": { + "description": "Degree of seriousness given to this notification.", + "enum": [ + "CRITICAL", + "ERROR", + "WARNING" + ], + "type": "string" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "NDS" + ], + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "NDS Notification", + "type": "object" + }, + "NDSServerlessInstanceAuditTypeView": { + "description": "Unique identifier of event type.", + "enum": [ + "SERVERLESS_INSTANCE_CREATED", + "SERVERLESS_INSTANCE_READY", + "SERVERLESS_INSTANCE_UPDATE_SUBMITTED", + "SERVERLESS_INSTANCE_UPDATE_STARTED", + "SERVERLESS_INSTANCE_UPDATE_COMPLETED", + "SERVERLESS_INSTANCE_DELETE_SUBMITTED", + "SERVERLESS_INSTANCE_DELETED", + "SERVERLESS_INSTANCE_BLOCKED", + "SERVERLESS_INSTANCE_UNBLOCKED" + ], + "example": "SERVERLESS_INSTANCE_CREATED", + "title": "NDS Serverless Instance Audit Types", + "type": "string" + }, + "NDSServerlessInstanceAuditView": { + "description": "NDS serverless instance audit identifies any activities around serverless instance.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/NDSServerlessInstanceAuditTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "NDS Serverless Instance Audits", + "type": "object" + }, + "NDSTenantEndpointAuditTypeView": { + "description": "Unique identifier of event type.", + "enum": [ + "TENANT_ENDPOINT_CREATED", + "TENANT_ENDPOINT_RESERVED", + "TENANT_ENDPOINT_RESERVATION_FAILED", + "TENANT_ENDPOINT_UPDATED", + "TENANT_ENDPOINT_INITIATING", + "TENANT_ENDPOINT_AVAILABLE", + "TENANT_ENDPOINT_FAILED", + "TENANT_ENDPOINT_DELETING", + "TENANT_ENDPOINT_DELETED", + "TENANT_ENDPOINT_EXPIRED" + ], + "example": "TENANT_ENDPOINT_CREATED", + "title": "NDS Auto Scaling Audit Types", + "type": "string" + }, + "NDSTenantEndpointAuditView": { + "description": "NDS tenant endpoint audit indicates when atlas auto-scaling cluster tier up or down.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "endpointId": { + "description": "Unique 24-hexadecimal digit string that identifies the endpoint associated with this event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/NDSTenantEndpointAuditTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "providerEndpointId": { + "description": "Unique identification string that the cloud provider uses to identify the private endpoint.", + "example": "vpce-0d6c248dedef65a25", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "NDS Tenant Endpoint Audits", + "type": "object" + }, + "NDSX509UserAuthenticationAlertConfigViewForNdsGroup": { + "description": "NDS X509 User Authentication alert configuration allows to select thresholds for expiration of client, CA certificates and CRL which trigger alerts and how users are notified.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/NDSX509UserAuthenticationEventTypeViewAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "Matching conditions for target resources.", + "items": { + "$ref": "#/components/schemas/AlertMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "threshold": { + "$ref": "#/components/schemas/LessThanDaysThresholdView" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "NDS X509 User Authentication Alert Configuration", + "type": "object" + }, + "NDSX509UserAuthenticationEventTypeViewAlertable": { + "description": "Event type that triggers an alert.", + "enum": [ + "NDS_X509_USER_AUTHENTICATION_CUSTOMER_CA_EXPIRATION_CHECK", + "NDS_X509_USER_AUTHENTICATION_CUSTOMER_CRL_EXPIRATION_CHECK", + "NDS_X509_USER_AUTHENTICATION_MANAGED_USER_CERTS_EXPIRATION_CHECK" + ], + "example": "NDS_X509_USER_AUTHENTICATION_CUSTOMER_CA_EXPIRATION_CHECK", + "title": "NDS x509 User Auth Event Types", + "type": "string" + }, + "NamespaceObj": { + "description": "Human-readable label that identifies the namespace on the specified host. The resource expresses this parameter value as `\u003cdatabase\u003e.\u003ccollection\u003e`.", + "properties": { + "namespace": { + "description": "Human-readable label that identifies the namespace on the specified host. The resource expresses this parameter value as `\u003cdatabase\u003e.\u003ccollection\u003e`.", + "readOnly": true, + "type": "string" + }, + "type": { + "default": "collection", + "description": "Human-readable label that identifies the type of namespace.", + "enum": [ + "collection" + ], + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "Namespaces": { + "properties": { + "namespaces": { + "description": "List that contains each combination of database, collection, and type on the specified host.", + "items": { + "$ref": "#/components/schemas/NamespaceObj" + }, + "readOnly": true, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "NamespacesRequest": { + "properties": { + "namespaces": { + "description": "List of namespace strings (combination of database and collection) on the specified host or cluster.", + "items": { + "description": "Human-readable label that identifies the namespace on the specified host or cluster. The resource expresses this parameter value as `\u003cdatabase\u003e.\u003ccollection\u003e`.", + "type": "string", + "writeOnly": true + }, + "type": "array", + "uniqueItems": true, + "writeOnly": true + } + }, + "type": "object" + }, + "NetworkPermissionEntry": { + "properties": { + "awsSecurityGroup": { + "description": "Unique string of the Amazon Web Services (AWS) security group that you want to add to the project's IP access list. Your IP access list entry can be one **awsSecurityGroup**, one **cidrBlock**, or one **ipAddress**. You must configure Virtual Private Connection (VPC) peering for your project before you can add an AWS security group to an IP access list. You cannot set AWS security groups as temporary access list entries. Don't set this parameter if you set **cidrBlock** or **ipAddress**.", + "pattern": "^([0-9]*/)?sg-([0-9]*)", + "type": "string" + }, + "cidrBlock": { + "description": "Range of IP addresses in Classless Inter-Domain Routing (CIDR) notation that you want to add to the project's IP access list. Your IP access list entry can be one **awsSecurityGroup**, one **cidrBlock**, or one **ipAddress**. Don't set this parameter if you set **awsSecurityGroup** or **ipAddress**.", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\\:){7}[0-9a-f]{1,4}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\\:){1,6}\\:(%2[fF][0-9]{1,3})?$", + "type": "string" + }, + "comment": { + "description": "Remark that explains the purpose or scope of this IP access list entry.", + "maxLength": 80, + "type": "string" + }, + "deleteAfterDate": { + "description": "Date and time after which MongoDB Cloud deletes the temporary access list entry. This parameter expresses its value in the ISO 8601 timestamp format in UTC and can include the time zone designation. The date must be later than the current date but no later than one week after you submit this request. The resource returns this parameter if you specified an expiration date when creating this IP access list entry.", + "format": "date-time", + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that contains the IP access list to which you want to add one or more entries.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "ipAddress": { + "description": "IP address that you want to add to the project's IP access list. Your IP access list entry can be one **awsSecurityGroup**, one **cidrBlock**, or one **ipAddress**. Don't set this parameter if you set **awsSecurityGroup** or **cidrBlock**.", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "NetworkPermissionEntryStatus": { + "properties": { + "STATUS": { + "description": "State of the access list entry when MongoDB Cloud made this request.\n\n| Status | Activity |\n|---|---|\n| `ACTIVE` | This access list entry applies to all relevant cloud providers. |\n| `PENDING` | MongoDB Cloud has started to add access list entry. This access list entry may not apply to all cloud providers at the time of this request. |\n| `FAILED` | MongoDB Cloud didn't succeed in adding this access list entry. |\n", + "enum": [ + "PENDING", + "FAILED", + "ACTIVE" + ], + "readOnly": true, + "type": "string" + } + }, + "required": [ + "STATUS" + ], + "type": "object" + }, + "NewRelic": { + "description": "Details to integrate one New Relic account with one MongoDB Cloud project.\n\n***IMPORTANT**: Effective Wednesday, June 16th, 2021, New Relic no longer supports the plugin-based integration with MongoDB. We do not recommend that you sign up for the plugin-based integration.\n\nTo learn more, see the \u003ca href=\"https://discuss.newrelic.com/t/new-relic-plugin-eol-wednesday-june-16th-2021/127267\" target=\"_blank\"\u003eNew Relic Plugin EOL Statement\u003c/a\u003e. Consider configuring an alternative monitoring integration before June 16th to maintain visibility into your MongoDB deployments.", + "properties": { + "accountId": { + "description": "Unique 40-hexadecimal digit string that identifies your New Relic account.", + "example": "bcc3c81b344a6030a3935c2527e2216535af7718", + "maxLength": 40, + "minLength": 40, + "pattern": "^([0-9a-f]){40}$", + "type": "string" + }, + "id": { + "description": "Integration id.", + "nullable": true, + "type": "string" + }, + "licenseKey": { + "description": "Unique 40-hexadecimal digit string that identifies your New Relic license.\n\n**IMPORTANT**: Effective Wednesday, June 16th, 2021, New Relic no longer supports the plugin-based integration with MongoDB. We do not recommend that you sign up for the plugin-based integration.\nTo learn more, see the \u003ca href=\"https://discuss.newrelic.com/t/new-relic-plugin-eol-wednesday-june-16th-2021/127267\" target=\"_blank\"\u003eNew Relic Plugin EOL Statement\u003c/a\u003e Consider configuring an alternative monitoring integration before June 16th to maintain visibility into your MongoDB deployments.", + "example": "bc3768f44193c282b2688ab39e00f8e4fc8d75ea", + "maxLength": 40, + "minLength": 40, + "pattern": "^([0-9a-f]){40}$", + "type": "string" + }, + "readToken": { + "description": "Query key used to access your New Relic account.", + "example": "193c96aee4a3ac640b98634562e2631f17ae0a69", + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud. The value must match the third-party service integration type.", + "enum": [ + "NEW_RELIC" + ], + "type": "string" + }, + "writeToken": { + "description": "Insert key associated with your New Relic account.", + "example": "a67b10e5cd7f8fb6a34b501136c409f373edc218", + "type": "string" + } + }, + "required": [ + "accountId", + "licenseKey", + "readToken", + "writeToken" + ], + "title": "NEW_RELIC", + "type": "object" + }, + "NoBody": { + "description": "Endpoint does not return a response body.", + "type": "object" + }, + "NumberMetricAlertView": { + "properties": { + "acknowledgedUntil": { + "description": "Date and time until which this alert has been acknowledged. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.\n\n- To acknowledge this alert forever, set the parameter value to 100 years in the future.\n\n- To unacknowledge a previously acknowledged alert, do not set this parameter value.", + "format": "date-time", + "type": "string" + }, + "acknowledgementComment": { + "description": "Comment that a MongoDB Cloud user submitted when acknowledging the alert.", + "example": "Expiration on 3/19. Silencing for 7days.", + "maxLength": 200, + "type": "string" + }, + "acknowledgingUsername": { + "description": "MongoDB Cloud username of the person who acknowledged the alert. The response returns this parameter if a MongoDB Cloud user previously acknowledged this alert.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration that sets this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster to which this alert applies. This resource returns this parameter for alerts of events impacting backups, replica sets, or sharded clusters.", + "example": "cluster1", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "currentValue": { + "$ref": "#/components/schemas/NumberMetricValueView" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostMetricEventTypeViewAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hostnameAndPort": { + "description": "Hostname and port of the host to which this alert applies. The resource returns this parameter for alerts of events impacting hosts or replica sets.", + "example": "cloud-test.mongodb.com:27017", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastNotified": { + "description": "Date and time that any notifications were last sent for this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if MongoDB Cloud has sent notifications for this alert.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "metricName": { + "description": "Name of the metric against which Atlas checks the configured `metricThreshold.threshold`.\n\nTo learn more about the available metrics, see \u003ca href=\"https://www.mongodb.com/docs/atlas/reference/alert-host-metrics/#std-label-measurement-types\" target=\"_blank\"\u003eHost Metrics\u003c/a\u003e.\n\n**NOTE**: If you set eventTypeName to OUTSIDE_SERVERLESS_METRIC_THRESHOLD, you can specify only metrics available for serverless. To learn more, see \u003ca href=\"https://dochub.mongodb.org/core/alert-config-serverless-measurements\" target=\"_blank\"\u003eServerless Measurements\u003c/a\u003e.", + "example": "ASSERT_USER", + "readOnly": true, + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal character string that identifies the organization that owns the project to which this alert applies.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Name of the replica set to which this alert applies. The response returns this parameter for alerts of events impacting backups, hosts, or replica sets.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "resolved": { + "description": "Date and time that this alert changed to `\"status\" : \"CLOSED\"`. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter once `\"status\" : \"CLOSED\"`.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of this alert at the time you requested its details.", + "enum": [ + "CANCELLED", + "CLOSED", + "OPEN", + "TRACKING" + ], + "example": "OPEN", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Date and time when someone last updated this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "alertConfigId", + "created", + "eventTypeName", + "id", + "status", + "updated" + ], + "type": "object" + }, + "NumberMetricEventView": { + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "currentValue": { + "$ref": "#/components/schemas/NumberMetricValueView" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostMetricEventTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "metricName": { + "description": "Human-readable label of the metric associated with the **alertId**. This field may change type of **currentValue** field.", + "readOnly": true, + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "port": { + "description": "IANA port on which the MongoDB process listens for requests.", + "example": 27017, + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Human-readable label of the replica set associated with the event.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "shardName": { + "description": "Human-readable label of the shard associated with the event.", + "example": "event-sh-01", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "type": "object" + }, + "NumberMetricThresholdView": { + "properties": { + "metricName": { + "description": "Human-readable label that identifies the metric against which MongoDB Cloud checks the configured **metricThreshold.threshold**.", + "type": "string" + }, + "mode": { + "description": "MongoDB Cloud computes the current metric value as an average.", + "enum": [ + "AVERAGE" + ], + "type": "string" + }, + "operator": { + "$ref": "#/components/schemas/Operator" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "double", + "type": "number" + }, + "units": { + "$ref": "#/components/schemas/NumberMetricUnits" + } + }, + "required": [ + "metricName" + ], + "type": "object" + }, + "NumberMetricUnits": { + "description": "Element used to express the quantity. This can be an element of time, storage capacity, and the like.", + "enum": [ + "COUNT", + "THOUSAND", + "MILLION", + "BILLION" + ], + "example": "COUNT", + "title": "Number Metric Units", + "type": "string" + }, + "NumberMetricValueView": { + "description": "Measurement of the **metricName** recorded at the time of the event.", + "properties": { + "number": { + "description": "Amount of the **metricName** recorded at the time of the event. This value triggered the alert.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "units": { + "$ref": "#/components/schemas/NumberMetricUnits" + } + }, + "readOnly": true, + "title": "Number Metric Value", + "type": "object" + }, + "ObjectCreated": { + "description": "Created", + "type": "object" + }, + "OnDemandCpsSnapshotSource": { + "allOf": [ + { + "$ref": "#/components/schemas/IngestionSource" + }, + { + "properties": { + "clusterName": { + "description": "Human-readable name that identifies the cluster.", + "type": "string" + }, + "collectionName": { + "description": "Human-readable name that identifies the collection.", + "type": "string" + }, + "databaseName": { + "description": "Human-readable name that identifies the database.", + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + } + ], + "description": "On-Demand Cloud Provider Snapshots as Source for a Data Lake Pipeline.", + "title": "On-Demand Cloud Provider Snapshot Source", + "type": "object" + }, + "OnlineArchiveSchedule": { + "description": "Regular frequency and duration when archiving process occurs.", + "discriminator": { + "mapping": { + "DAILY": "#/components/schemas/DailyScheduleView", + "DEFAULT": "#/components/schemas/DefaultScheduleView", + "MONTHLY": "#/components/schemas/MonthlyScheduleView", + "WEEKLY": "#/components/schemas/WeeklyScheduleView" + }, + "propertyName": "type" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/DefaultScheduleView" + }, + { + "$ref": "#/components/schemas/DailyScheduleView" + }, + { + "$ref": "#/components/schemas/WeeklyScheduleView" + }, + { + "$ref": "#/components/schemas/MonthlyScheduleView" + } + ], + "properties": { + "type": { + "description": "Type of schedule.", + "enum": [ + "DEFAULT", + "DAILY", + "WEEKLY", + "MONTHLY" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "Online Archive Schedule", + "type": "object" + }, + "OpenApiInfo": { + "properties": { + "info": { + "$ref": "#/components/schemas/Info" + } + }, + "type": "object" + }, + "Operator": { + "description": "Comparison operator to apply when checking the current metric value.", + "enum": [ + "\u003c", + "\u003e" + ], + "type": "string" + }, + "OpsGenie": { + "description": "Details to integrate one Opsgenie account with one MongoDB Cloud project.", + "properties": { + "apiKey": { + "description": "Key that allows MongoDB Cloud to access your Opsgenie account.\n\n**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:\n\n* View or edit the alert through the Atlas UI.\n\n* Query the alert for the notification through the Atlas Administration API.", + "example": "********************************a111", + "type": "string" + }, + "id": { + "description": "Integration id.", + "nullable": true, + "type": "string" + }, + "region": { + "default": "US", + "description": "Two-letter code that indicates which regional URL MongoDB uses to access the Opsgenie API.", + "enum": [ + "US", + "EU" + ], + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud. The value must match the third-party service integration type.", + "enum": [ + "OPS_GENIE" + ], + "type": "string" + } + }, + "required": [ + "apiKey" + ], + "title": "OPS_GENIE", + "type": "object" + }, + "OpsGenieNotification": { + "description": "OpsGenie notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "integrationId": { + "description": "The id of the associated integration, the credentials of which to use for requests.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "opsGenieApiKey": { + "description": "API Key that MongoDB Cloud needs to send this notification via Opsgenie. The resource requires this parameter when `\"notifications.[n].typeName\" : \"OPS_GENIE\"`. If the key later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.\n\n**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:\n\n* View or edit the alert through the Atlas UI.\n\n* Query the alert for the notification through the Atlas Administration API.", + "example": "********************************a111", + "type": "string" + }, + "opsGenieRegion": { + "default": "US", + "description": "Opsgenie region that indicates which API Uniform Resource Locator (URL) to use.", + "enum": [ + "US", + "EU" + ], + "type": "string" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "OPS_GENIE" + ], + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "OpsGenie Notification", + "type": "object" + }, + "OrgEventTypeViewForOrg": { + "description": "Unique identifier of event type.", + "enum": [ + "ORG_CREATED", + "SECURITY_CONTACT_MODIFIED", + "ORG_CREDIT_CARD_ADDED", + "ORG_CREDIT_CARD_UPDATED", + "ORG_CREDIT_CARD_CURRENT", + "ORG_CREDIT_CARD_ABOUT_TO_EXPIRE", + "ORG_PAYPAL_LINKED", + "ORG_PAYPAL_UPDATED", + "ORG_PAYPAL_CANCELLED", + "ORG_OVERRIDE_PAYMENT_METHOD_ADDED", + "ORG_ACTIVATED", + "ORG_TEMPORARILY_ACTIVATED", + "ORG_SUSPENSION_DATE_CHANGED", + "ORG_SUSPENDED", + "ORG_ADMIN_SUSPENDED", + "ORG_ADMIN_LOCKED", + "ORG_CLUSTERS_DELETED", + "ORG_CLUSTERS_PAUSED", + "ORG_LOCKED", + "ORG_UNDER_FINANCIAL_PROTECTION", + "ORG_NO_FINANCIAL_PROTECTION", + "ORG_RENAMED", + "ALL_ORG_USERS_HAVE_MFA", + "ORG_USERS_WITHOUT_MFA", + "ORG_INVOICE_UNDER_THRESHOLD", + "ORG_INVOICE_OVER_THRESHOLD", + "ORG_DAILY_BILL_UNDER_THRESHOLD", + "ORG_DAILY_BILL_OVER_THRESHOLD", + "ORG_GROUP_CHARGES_UNDER_THRESHOLD", + "ORG_GROUP_CHARGES_OVER_THRESHOLD", + "ORG_TWO_FACTOR_AUTH_REQUIRED", + "ORG_TWO_FACTOR_AUTH_OPTIONAL", + "ORG_PUBLIC_API_ACCESS_LIST_REQUIRED", + "ORG_PUBLIC_API_ACCESS_LIST_NOT_REQUIRED", + "ORG_EMPLOYEE_ACCESS_RESTRICTED", + "ORG_EMPLOYEE_ACCESS_UNRESTRICTED", + "ORG_SFDC_ACCOUNT_ID_CHANGED", + "ORG_CONNECTED_TO_MLAB", + "ORG_DISCONNECTED_FROM_MLAB", + "ORG_IDP_CERTIFICATE_CURRENT", + "ORG_IDP_CERTIFICATE_ABOUT_TO_EXPIRE", + "ORG_CONNECTED_TO_VERCEL", + "ORG_DISCONNECTED_TO_VERCEL", + "ORG_CONNECTION_UNINSTALLED_FROM_VERCEL", + "ORG_UI_IP_ACCESS_LIST_ENABLED", + "ORG_UI_IP_ACCESS_LIST_DISABLED", + "ORG_EDITED_UI_IP_ACCESS_LIST_ENTRIES", + "ORG_SERVICE_ACCOUNT_MAX_SECRET_VALIDITY_EDITED" + ], + "example": "ORG_CREATED", + "title": "Org Event Types", + "type": "string" + }, + "OrgEventViewForOrg": { + "description": "Org event identifies different activities and changes in an organization settings.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/OrgEventTypeViewForOrg" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "invoiceId": { + "description": "Unique 24-hexadecimal digit string that identifies of the invoice associated with the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Org Events", + "type": "object" + }, + "OrgFederationSettings": { + "description": "Details that define how to connect one MongoDB Cloud organization to one federated authentication service.", + "properties": { + "federatedDomains": { + "description": "List of domains associated with the organization's identity provider.", + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "hasRoleMappings": { + "description": "Flag that indicates whether this organization has role mappings configured.", + "type": "boolean" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this federation.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "identityProviderId": { + "description": "Legacy 20-hexadecimal digit string that identifies the identity provider connected to this organization.", + "example": "c2777a9eca931f29fc2f", + "maxLength": 20, + "minLength": 20, + "pattern": "^([a-f0-9]{20})$", + "type": "string" + }, + "identityProviderStatus": { + "description": "String enum that indicates whether the identity provider is active.", + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "type": "string" + } + }, + "title": "Organization Federation Settings", + "type": "object" + }, + "OrgGroup": { + "properties": { + "clusters": { + "description": "Settings that describe the clusters in each project that the API key is authorized to view.", + "items": { + "$ref": "#/components/schemas/CloudCluster" + }, + "readOnly": true, + "type": "array" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "groupName": { + "description": "Human-readable label that identifies the project.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.(),:\u0026@+']{1,64}$", + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal character string that identifies the organization that contains the project.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "orgName": { + "description": "Human-readable label that identifies the organization that contains the project.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.(),:\u0026@+']{1,64}$", + "type": "string" + }, + "planType": { + "description": "Human-readable label that indicates the plan type.", + "readOnly": true, + "type": "string" + }, + "tags": { + "description": "List of human-readable labels that categorize the specified project. MongoDB Cloud returns an empty array.", + "items": { + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "OrgNotification": { + "description": "Org notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "emailEnabled": { + "description": "Flag that indicates whether MongoDB Cloud should send email notifications. The resource requires this parameter when one of the following values have been set:\n\n- `\"notifications.[n].typeName\" : \"ORG\"`\n- `\"notifications.[n].typeName\" : \"GROUP\"`\n- `\"notifications.[n].typeName\" : \"USER\"`", + "type": "boolean" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "roles": { + "description": "List that contains the one or more [organization](https://dochub.mongodb.org/core/atlas-org-roles) or [project roles](https://dochub.mongodb.org/core/atlas-proj-roles) that receive the configured alert. The resource requires this parameter when `\"notifications.[n].typeName\" : \"GROUP\"` or `\"notifications.[n].typeName\" : \"ORG\"`. If you include this parameter, MongoDB Cloud sends alerts only to users assigned the roles you specify in the array. If you omit this parameter, MongoDB Cloud sends alerts to users assigned any role.", + "items": { + "description": "One organization or project role that receive the configured alert.", + "enum": [ + "GROUP_CLUSTER_MANAGER", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_OWNER", + "GROUP_READ_WRITE", + "ORG_OWNER", + "ORG_MEMBER", + "ORG_GROUP_CREATOR", + "ORG_BILLING_ADMIN", + "ORG_READ_ONLY" + ], + "type": "string" + }, + "type": "array" + }, + "smsEnabled": { + "description": "Flag that indicates whether MongoDB Cloud should send text message notifications. The resource requires this parameter when one of the following values have been set:\n\n- `\"notifications.[n].typeName\" : \"ORG\"`\n- `\"notifications.[n].typeName\" : \"GROUP\"`\n- `\"notifications.[n].typeName\" : \"USER\"`", + "type": "boolean" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "ORG" + ], + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "Org Notification", + "type": "object" + }, + "OrgPaginatedEventView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/EventViewForOrg" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "OrgServiceAccount": { + "properties": { + "createdAt": { + "description": "Service account creation time.", + "format": "date-time", + "type": "string" + }, + "description": { + "description": "Description of the service account.", + "type": "string" + }, + "id": { + "description": "ID for the service account.", + "pattern": "^mdb_sa_id_[a-fA-F\\d]{24}$", + "type": "string" + }, + "name": { + "description": "Name for service account.", + "type": "string" + }, + "roles": { + "description": "Organization roles assigned to the Service Account.", + "items": { + "description": "Organization roles associated with the service account.", + "enum": [ + "ORG_MEMBER", + "ORG_READ_ONLY", + "ORG_BILLING_ADMIN", + "ORG_BILLING_READ_ONLY", + "ORG_GROUP_CREATOR", + "ORG_OWNER" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "secrets": { + "description": "List of secrets.", + "items": { + "$ref": "#/components/schemas/ServiceAccountSecret" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "OrgServiceAccountRequest": { + "properties": { + "description": { + "description": "Human readable description for the service account.", + "maxLength": 250, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.,' ]*$", + "type": "string" + }, + "name": { + "description": "Human-readable name for the service account. The name is modifiable and does not have to be unique.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.,' ]*$", + "type": "string" + }, + "roles": { + "description": "Organization roles associated with the service account.", + "items": { + "description": "Organization roles associated with the service account.", + "enum": [ + "ORG_MEMBER", + "ORG_READ_ONLY", + "ORG_BILLING_ADMIN", + "ORG_BILLING_READ_ONLY", + "ORG_GROUP_CREATOR", + "ORG_OWNER" + ], + "type": "string" + }, + "type": "array" + }, + "secretExpiresAfterHours": { + "description": "Secret expiration time.", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "description", + "name", + "secretExpiresAfterHours" + ], + "type": "object" + }, + "OrgServiceAccountUpdateRequest": { + "properties": { + "description": { + "description": "Human readable description for the service account.", + "maxLength": 250, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.,' ]*$", + "type": "string" + }, + "name": { + "description": "Human-readable name for the service account. The name is modifiable and does not have to be unique.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.,' ]*$", + "type": "string" + }, + "roles": { + "description": "Organization roles associated with the Service account.", + "items": { + "description": "Organization roles associated with the service account.", + "enum": [ + "ORG_MEMBER", + "ORG_READ_ONLY", + "ORG_BILLING_ADMIN", + "ORG_BILLING_READ_ONLY", + "ORG_GROUP_CREATOR", + "ORG_OWNER" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "OrganizationInvitation": { + "properties": { + "createdAt": { + "description": "Date and time when MongoDB Cloud sent the invitation. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "expiresAt": { + "description": "Date and time when the invitation from MongoDB Cloud expires. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "groupRoleAssignments": { + "description": "List of projects that the user will be added to when they accept their invitation to the organization.", + "items": { + "$ref": "#/components/schemas/GroupRole" + }, + "type": "array", + "uniqueItems": true + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this invitation.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "inviterUsername": { + "description": "Email address of the MongoDB Cloud user who sent the invitation to join the organization.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "orgName": { + "description": "Human-readable label that identifies this organization.", + "pattern": "^[\\p{L}\\p{N}\\-_.(),:\u0026@+']{1,64}$", + "type": "string" + }, + "roles": { + "description": "One or more organization level roles to assign to the MongoDB Cloud user.", + "items": { + "enum": [ + "ORG_OWNER", + "ORG_MEMBER", + "ORG_GROUP_CREATOR", + "ORG_BILLING_ADMIN", + "ORG_READ_ONLY", + "GROUP_CLUSTER_MANAGER", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_OWNER", + "GROUP_READ_ONLY" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "teamIds": { + "description": "List of unique 24-hexadecimal digit strings that identifies each team.", + "items": { + "description": "Unique 24-hexadecimal digit string that identifies the team.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "readOnly": true, + "type": "array", + "uniqueItems": true + }, + "username": { + "description": "Email address of the MongoDB Cloud user invited to join the organization.", + "format": "email", + "type": "string" + } + }, + "required": [ + "orgName" + ], + "type": "object" + }, + "OrganizationInvitationGroupRoleAssignmentsRequest": { + "properties": { + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project to which these roles belong.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "roles": { + "description": "One or more project level roles to assign to the MongoDB Cloud user.", + "items": { + "enum": [ + "GROUP_CLUSTER_MANAGER", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_OWNER", + "GROUP_READ_ONLY" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "OrganizationInvitationRequest": { + "properties": { + "groupRoleAssignments": { + "description": "List of projects that the user will be added to when they accept their invitation to the organization.", + "items": { + "$ref": "#/components/schemas/OrganizationInvitationGroupRoleAssignmentsRequest" + }, + "type": "array" + }, + "roles": { + "description": "One or more organization level roles to assign to the MongoDB Cloud user.", + "items": { + "enum": [ + "ORG_OWNER", + "ORG_MEMBER", + "ORG_GROUP_CREATOR", + "ORG_BILLING_ADMIN", + "ORG_READ_ONLY" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "teamIds": { + "description": "List of teams to which you want to invite the desired MongoDB Cloud user.", + "items": { + "description": "Unique 24-hexadecimal digit string that identifies the team.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "username": { + "description": "Email address that belongs to the desired MongoDB Cloud user.", + "format": "email", + "type": "string" + } + }, + "type": "object" + }, + "OrganizationInvitationUpdateRequest": { + "properties": { + "groupRoleAssignments": { + "description": "List of projects that the user will be added to when they accept their invitation to the organization.", + "items": { + "$ref": "#/components/schemas/OrganizationInvitationGroupRoleAssignmentsRequest" + }, + "type": "array" + }, + "roles": { + "description": "One or more organization level roles to assign to the MongoDB Cloud user.", + "items": { + "enum": [ + "ORG_OWNER", + "ORG_MEMBER", + "ORG_GROUP_CREATOR", + "ORG_BILLING_ADMIN", + "ORG_READ_ONLY" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "teamIds": { + "description": "List of teams to which you want to invite the desired MongoDB Cloud user.", + "items": { + "description": "Unique 24-hexadecimal digit string that identifies the team.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "OrganizationSettings": { + "description": "Collection of settings that configures the organization.", + "properties": { + "apiAccessListRequired": { + "description": "Flag that indicates whether to require API operations to originate from an IP Address added to the API access list for the specified organization.", + "type": "boolean" + }, + "multiFactorAuthRequired": { + "description": "Flag that indicates whether to require users to set up Multi-Factor Authentication (MFA) before accessing the specified organization. To learn more, see: https://www.mongodb.com/docs/atlas/security-multi-factor-authentication/.", + "type": "boolean" + }, + "restrictEmployeeAccess": { + "description": "Flag that indicates whether to block MongoDB Support from accessing Atlas infrastructure for any deployment in the specified organization without explicit permission. Once this setting is turned on, you can grant MongoDB Support a 24-hour bypass access to the Atlas deployment to resolve support issues. To learn more, see: https://www.mongodb.com/docs/atlas/security-restrict-support-access/.", + "type": "boolean" + } + }, + "type": "object" + }, + "OutboundControlPlaneCloudProviderIPAddresses": { + "description": "List of outbound IP addresses from the Atlas control plane, categorized by cloud provider. If your network allows inbound HTTP requests only from specific IP addresses, you must allow access from the following IP addresses so that Atlas can communicate with your webhooks and KMS.", + "properties": { + "aws": { + "additionalProperties": { + "description": "Control plane IP addresses in AWS. Each key identifies an Amazon Web Services (AWS) region. Each value identifies control plane IP addresses in the AWS region.", + "items": { + "description": "Control plane IP addresses in AWS. Each key identifies an Amazon Web Services (AWS) region. Each value identifies control plane IP addresses in the AWS region.", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "description": "Control plane IP addresses in AWS. Each key identifies an Amazon Web Services (AWS) region. Each value identifies control plane IP addresses in the AWS region.", + "readOnly": true, + "type": "object" + }, + "azure": { + "additionalProperties": { + "description": "Control plane IP addresses in Azure. Each key identifies an Azure region. Each value identifies control plane IP addresses in the Azure region.", + "items": { + "description": "Control plane IP addresses in Azure. Each key identifies an Azure region. Each value identifies control plane IP addresses in the Azure region.", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "description": "Control plane IP addresses in Azure. Each key identifies an Azure region. Each value identifies control plane IP addresses in the Azure region.", + "readOnly": true, + "type": "object" + }, + "gcp": { + "additionalProperties": { + "description": "Control plane IP addresses in GCP. Each key identifies a Google Cloud (GCP) region. Each value identifies control plane IP addresses in the GCP region.", + "items": { + "description": "Control plane IP addresses in GCP. Each key identifies a Google Cloud (GCP) region. Each value identifies control plane IP addresses in the GCP region.", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "description": "Control plane IP addresses in GCP. Each key identifies a Google Cloud (GCP) region. Each value identifies control plane IP addresses in the GCP region.", + "readOnly": true, + "type": "object" + } + }, + "readOnly": true, + "title": "Outbound Control Plane IP Addresses By Cloud Provider", + "type": "object" + }, + "PagerDuty": { + "description": "Details to integrate one PagerDuty account with one MongoDB Cloud project.", + "properties": { + "id": { + "description": "Integration id.", + "nullable": true, + "type": "string" + }, + "region": { + "description": "PagerDuty region that indicates the API Uniform Resource Locator (URL) to use.", + "enum": [ + "US", + "EU" + ], + "type": "string" + }, + "serviceKey": { + "description": "Service key associated with your PagerDuty account.\n\n**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:\n\n* View or edit the alert through the Atlas UI.\n\n* Query the alert for the notification through the Atlas Administration API.", + "example": "****************************7890", + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud. The value must match the third-party service integration type.", + "enum": [ + "PAGER_DUTY" + ], + "type": "string" + } + }, + "required": [ + "serviceKey" + ], + "title": "PAGER_DUTY", + "type": "object" + }, + "PagerDutyNotification": { + "description": "PagerDuty notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "integrationId": { + "description": "The id of the associated integration, the credentials of which to use for requests.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "region": { + "default": "US", + "description": "PagerDuty region that indicates which API Uniform Resource Locator (URL) to use.", + "enum": [ + "US", + "EU" + ], + "type": "string" + }, + "serviceKey": { + "description": "PagerDuty service key that MongoDB Cloud needs to send notifications via PagerDuty. The resource requires this parameter when `\"notifications.[n].typeName\" : \"PAGER_DUTY\"`. If the key later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.\n\n**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:\n\n* View or edit the alert through the Atlas UI.\n\n* Query the alert for the notification through the Atlas Administration API.", + "example": "****************************7890", + "type": "string" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "PAGER_DUTY" + ], + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "PagerDuty Notification", + "type": "object" + }, + "PaginatedAdvancedClusterDescriptionView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/AdvancedClusterDescription" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedAlertConfigView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/GroupAlertsConfig" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedAlertView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/AlertViewForNdsGroup" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiApiUserView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/ApiKeyUserDetails" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiAppUserView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/CloudAppUser" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiAtlasCheckpointView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/ApiAtlasCheckpointView" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiAtlasDatabaseUserView": { + "description": "List of MongoDB Database users granted access to databases in the specified project.", + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/CloudDatabaseUser" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiAtlasDiskBackupExportJobView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/DiskBackupExportJob" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiAtlasProviderRegionsView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/CloudProviderRegions" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiAtlasServerlessBackupRestoreJobView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/ServerlessBackupRestoreJob" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiAtlasServerlessBackupSnapshotView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/ServerlessBackupSnapshot" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiAtlasUSSBackupRestoreJob20250101View": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/USSBackupRestoreJob20250101" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiAtlasUSSBackupSnapshot20240710View": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/USSBackupSnapshot20250101" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiInvoiceMetadataView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/BillingInvoiceMetadata" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiInvoiceView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/BillingInvoice" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiStreamsConnectionView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/StreamsConnection" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiStreamsTenantView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/StreamsTenant" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedApiUserAccessListResponseView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/UserAccessListResponse" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedAppUserView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/CloudAppUser" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedAtlasGroupView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/Group" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedAvailableVersionView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/MdbAvailableVersion" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedBackupSnapshotExportBucketView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/DiskBackupSnapshotAWSExportBucket" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedBackupSnapshotExportBucketsView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/DiskBackupSnapshotExportBucket" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedBackupSnapshotView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/DiskBackupSnapshot" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedCloudBackupReplicaSetView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/DiskBackupReplicaSet" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedCloudBackupRestoreJobView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/DiskBackupSnapshotRestoreJob" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedCloudBackupShardedClusterSnapshotView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/DiskBackupShardedClusterSnapshot" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedCloudProviderContainerView": { + "description": "List of Network Peering Containers that Amazon Web Services serves.", + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/CloudProviderContainer" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "title": "Network Peering", + "type": "object" + }, + "PaginatedClusterDescription20250101": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/ClusterDescription20250101" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedConnectedOrgConfigsView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/ConnectedOrgConfig" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedContainerPeerView": { + "description": "Group of Network Peering connection settings.", + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/BaseNetworkPeeringConnectionSettings" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedDatabaseView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/MesurementsDatabase" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedDiskPartitionView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/MeasurementDiskPartition" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedEventTypeDetailsResponse": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/EventTypeDetails" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedFederationIdentityProvider": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/FederationIdentityProvider" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedGroupServiceAccounts": { + "description": "List of Service Accounts", + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/GroupServiceAccount" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedHostView_Atlas": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link_Atlas" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/ApiHostView_Atlas" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedIntegrationView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/ThirdPartyIntegration" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedLegacyClusterView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/LegacyAtlasCluster" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedNetworkAccessView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/NetworkPermissionEntry" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedOnlineArchiveView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/BackupOnlineArchive" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedOrgGroupView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/OrgGroup" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedOrgServiceAccounts": { + "description": "List of Service Accounts", + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/OrgServiceAccount" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedOrganizationView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/AtlasOrganization" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedPipelineRunView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/IngestionPipelineRun" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedPrivateNetworkEndpointIdEntryView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/PrivateNetworkEndpointIdEntry" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedRestoreJobView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/BackupRestoreJob" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedRoleMappingView": { + "description": "List role mappings from the specified organization in the specified federation.", + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/AuthFederationRoleMapping" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedServerlessInstanceDescriptionView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/ServerlessInstanceDescription" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedServiceAccountGroup": { + "description": "List of Service Account projects.", + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/ServiceAccountGroup" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedSnapshotView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/BackupSnapshot" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedTeamRoleView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/TeamRole" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedTeamView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/TeamResponse" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedTenantRestoreView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/TenantRestore" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedTenantSnapshotView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/BackupTenantSnapshot" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedUSSInstance20250101": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "type": "object" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PaginatedUserCertView": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "results": { + "description": "List of returned documents that MongoDB Cloud providers when completing this request.", + "items": { + "$ref": "#/components/schemas/UserCert" + }, + "readOnly": true, + "type": "array" + }, + "totalCount": { + "description": "Total number of documents available. MongoDB Cloud omits this value if `includeCount` is set to `false`.", + "format": "int32", + "minimum": 0, + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "PartialFilter": { + "additionalProperties": { + "description": "Rules that limit the documents that the index references to a filter expression. All MongoDB index types accept a **partialFilterExpression** option. **partialFilterExpression** can include following expressions:\n\n- equality (`\"parameter\" : \"value\"` or using the `$eq` operator)\n- `\"$exists\": true`\n, maximum: `$gt`, `$gte`, `$lt`, `$lte` comparisons\n- `$type`\n- `$and` (top-level only)\n This option applies to all index types.", + "type": "object" + }, + "description": "Rules that limit the documents that the index references to a filter expression. All MongoDB index types accept a **partialFilterExpression** option. **partialFilterExpression** can include following expressions:\n\n- equality (`\"parameter\" : \"value\"` or using the `$eq` operator)\n- `\"$exists\": true`\n, maximum: `$gt`, `$gte`, `$lt`, `$lte` comparisons\n- `$type`\n- `$and` (top-level only)\n This option applies to all index types.", + "type": "object" + }, + "PartitionFieldView": { + "description": "Metadata to partition this online archive.", + "properties": { + "fieldName": { + "description": "Human-readable label that identifies the parameter that MongoDB Cloud uses to partition data. To specify a nested parameter, use the dot notation.", + "maxLength": 700, + "type": "string" + }, + "fieldType": { + "description": "Data type of the parameter that that MongoDB Cloud uses to partition data. Partition parameters of type [UUID](http://bsonspec.org/spec.html) must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3.", + "enum": [ + "date", + "int", + "long", + "objectId", + "string", + "uuid" + ], + "readOnly": true, + "type": "string" + }, + "order": { + "default": 0, + "description": "Sequence in which MongoDB Cloud slices the collection data to create partitions. The resource expresses this sequence starting with zero. The value of the **criteria.dateField** parameter defaults as the first item in the partition sequence.", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "fieldName", + "order" + ], + "title": "Online Archive Partition", + "type": "object" + }, + "PemFileInfo": { + "description": "PEM file information for the identity provider's current certificates.", + "properties": { + "certificates": { + "description": "List of certificates in the file.", + "items": { + "$ref": "#/components/schemas/X509Certificate" + }, + "type": "array" + }, + "fileName": { + "description": "Human-readable label given to the file.", + "type": "string" + } + }, + "type": "object" + }, + "PemFileInfoUpdate": { + "description": "PEM file information for the identity provider's current certificates.", + "properties": { + "certificates": { + "description": "List of certificates in the file.", + "items": { + "$ref": "#/components/schemas/X509CertificateUpdate" + }, + "type": "array" + }, + "fileName": { + "description": "Human-readable label given to the file.", + "type": "string" + } + }, + "type": "object" + }, + "PerformanceAdvisorIndex": { + "properties": { + "avgObjSize": { + "description": "The average size of an object in the collection of this index.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this index.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "impact": { + "description": "List that contains unique 24-hexadecimal character string that identifies the query shapes in this response that the Performance Advisor suggests.", + "items": { + "description": "One unique 24-hexadecimal character string that identifies one query shape.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "index": { + "description": "List that contains documents that specify a key in the index and its sort order.", + "items": { + "additionalProperties": { + "description": "One index key paired with its sort order. A value of `1` indicates an ascending sort order. A value of `-1` indicates a descending sort order. Keys in indexes with multiple keys appear in the same order that they appear in the index.", + "enum": [ + 1, + -1 + ], + "format": "int32", + "type": "integer" + }, + "description": "One index key paired with its sort order. A value of `1` indicates an ascending sort order. A value of `-1` indicates a descending sort order. Keys in indexes with multiple keys appear in the same order that they appear in the index.", + "type": "object" + }, + "readOnly": true, + "type": "array" + }, + "namespace": { + "description": "Human-readable label that identifies the namespace on the specified host. The resource expresses this parameter value as `\u003cdatabase\u003e.\u003ccollection\u003e`.", + "readOnly": true, + "type": "string" + }, + "weight": { + "description": "Estimated performance improvement that the suggested index provides. This value corresponds to **Impact** in the Performance Advisor user interface.", + "format": "double", + "readOnly": true, + "type": "number" + } + }, + "type": "object" + }, + "PerformanceAdvisorOpStats": { + "description": "Details that this resource returned about the specified query.", + "properties": { + "ms": { + "description": "Length of time expressed during which the query finds suggested indexes among the managed namespaces in the cluster. This parameter expresses its value in milliseconds. This parameter relates to the **duration** query parameter.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "nReturned": { + "description": "Number of results that the query returns.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "nScanned": { + "description": "Number of documents that the query read.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "ts": { + "description": "Date and time from which the query retrieves the suggested indexes. This parameter expresses its value in the number of seconds that have elapsed since the [UNIX epoch](https://en.wikipedia.org/wiki/Unix_time). This parameter relates to the **since** query parameter.", + "format": "int64", + "readOnly": true, + "type": "integer" + } + }, + "readOnly": true, + "type": "object" + }, + "PerformanceAdvisorOperationView": { + "properties": { + "predicates": { + "description": "List that contains the search criteria that the query uses. To use the values in key-value pairs in these predicates requires **Project Data Access Read Only** permissions or greater. Otherwise, MongoDB Cloud redacts these values.", + "items": { + "description": "List that contains the search criteria that the query uses. To use the values in key-value pairs in these predicates requires **Project Data Access Read Only** permissions or greater. Otherwise, MongoDB Cloud redacts these values.", + "readOnly": true, + "type": "object" + }, + "readOnly": true, + "type": "array" + }, + "stats": { + "$ref": "#/components/schemas/PerformanceAdvisorOpStats" + } + }, + "type": "object" + }, + "PerformanceAdvisorResponse": { + "properties": { + "shapes": { + "description": "List of query predicates, sorts, and projections that the Performance Advisor suggests.", + "items": { + "$ref": "#/components/schemas/PerformanceAdvisorShape" + }, + "readOnly": true, + "type": "array" + }, + "suggestedIndexes": { + "description": "List that contains the documents with information about the indexes that the Performance Advisor suggests.", + "items": { + "$ref": "#/components/schemas/PerformanceAdvisorIndex" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "PerformanceAdvisorShape": { + "properties": { + "avgMs": { + "description": "Average duration in milliseconds for the queries examined that match this shape.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "count": { + "description": "Number of queries examined that match this shape.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this shape. This string exists only for the duration of this API request.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "inefficiencyScore": { + "description": "Average number of documents read for every document that the query returns.", + "externalDocs": { + "description": "Understanding the Query Inefficiency Score", + "url": "https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-query-inefficiency-score" + }, + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "namespace": { + "description": "Human-readable label that identifies the namespace on the specified host. The resource expresses this parameter value as `\u003cdatabase\u003e.\u003ccollection\u003e`.", + "readOnly": true, + "type": "string" + }, + "operations": { + "description": "List that contains specific about individual queries.", + "items": { + "$ref": "#/components/schemas/PerformanceAdvisorOperationView" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "PerformanceAdvisorSlowQuery": { + "description": "Details of one slow query that the Performance Advisor detected.", + "properties": { + "line": { + "description": "Text of the MongoDB log related to this slow query.", + "readOnly": true, + "type": "string" + }, + "namespace": { + "description": "Human-readable label that identifies the namespace on the specified host. The resource expresses this parameter value as `\u003cdatabase\u003e.\u003ccollection\u003e`.", + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "PerformanceAdvisorSlowQueryList": { + "properties": { + "slowQueries": { + "description": "List of operations that the Performance Advisor detected that took longer to execute than a specified threshold.", + "items": { + "$ref": "#/components/schemas/PerformanceAdvisorSlowQuery" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "PeriodicCpsSnapshotSource": { + "allOf": [ + { + "$ref": "#/components/schemas/IngestionSource" + }, + { + "properties": { + "clusterName": { + "description": "Human-readable name that identifies the cluster.", + "type": "string" + }, + "collectionName": { + "description": "Human-readable name that identifies the collection.", + "type": "string" + }, + "databaseName": { + "description": "Human-readable name that identifies the database.", + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "policyItemId": { + "description": "Unique 24-hexadecimal character string that identifies a policy item.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + } + }, + "type": "object" + } + ], + "description": "Scheduled Cloud Provider Snapshot as Source for a Data Lake Pipeline.", + "title": "Periodic Cloud Provider Snapshot Source", + "type": "object" + }, + "PinFCVView": { + "properties": { + "expirationDate": { + "description": "Expiration date of the fixed FCV. If left unspecified, will default to 4 weeks ahead of the existing pinnedDate (if an FCV is already pinned) or the current date. Note that this field cannot exceed 4 weeks from the pinned date.", + "format": "date-time", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "PinnedNamespaces": { + "description": "Pinned namespaces view for cluster", + "properties": { + "clusterId": { + "description": "Unique 24-hexadecimal digit string that identifies the request cluster.", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the request project.", + "readOnly": true, + "type": "string" + }, + "pinnedNamespaces": { + "description": "List of all pinned namespaces.", + "items": { + "description": "A single pinned namespace.", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "PipelineRunStats": { + "description": "Runtime statistics for this Data Lake Pipeline run.", + "properties": { + "bytesExported": { + "description": "Total data size in bytes exported for this pipeline run.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "numDocs": { + "description": "Number of docs ingested for a this pipeline run.", + "format": "int64", + "readOnly": true, + "type": "integer" + } + }, + "readOnly": true, + "title": "Data Lake Pipeline Run Statistics", + "type": "object" + }, + "PrivateEndpointHostname": { + "description": "Set of Private endpoint and hostnames.", + "properties": { + "hostname": { + "description": "Human-readable label that identifies the hostname.", + "readOnly": true, + "type": "string" + }, + "privateEndpoint": { + "description": "Human-readable label that identifies private endpoint.", + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "PrivateGCPEndpointGroup": { + "description": "Group of Private Endpoint settings.", + "properties": { + "cloudProvider": { + "description": "Cloud service provider that serves the requested endpoint.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "readOnly": true, + "type": "string" + }, + "deleteRequested": { + "description": "Flag that indicates whether MongoDB Cloud received a request to remove the specified private endpoint from the private endpoint service.", + "readOnly": true, + "type": "boolean" + }, + "endpointGroupName": { + "description": "Human-readable label that identifies a set of endpoints.", + "externalDocs": { + "description": "Google Cloud Forwarding Rule Concepts", + "url": "https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts" + }, + "readOnly": true, + "type": "string" + }, + "endpoints": { + "description": "List of individual private endpoints that comprise this endpoint group.", + "externalDocs": { + "description": "Google Cloud Forwarding Rule Concepts", + "url": "https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts" + }, + "items": { + "$ref": "#/components/schemas/GCPConsumerForwardingRule" + }, + "readOnly": true, + "type": "array" + }, + "errorMessage": { + "description": "Error message returned when requesting private connection resource. The resource returns `null` if the request succeeded.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of the Google Cloud network endpoint group when MongoDB Cloud received this request.", + "enum": [ + "INITIATING", + "VERIFIED", + "AVAILABLE", + "FAILED", + "DELETING" + ], + "readOnly": true, + "type": "string" + } + }, + "required": [ + "cloudProvider" + ], + "title": "GCP", + "type": "object" + }, + "PrivateIPModeView": { + "properties": { + "enabled": { + "description": "Flag that indicates whether someone enabled **Connect via Peering Only** mode for the specified project.", + "type": "boolean" + } + }, + "required": [ + "enabled" + ], + "type": "object" + }, + "PrivateLinkEndpoint": { + "discriminator": { + "mapping": { + "AWS": "#/components/schemas/AWSInterfaceEndpoint", + "AZURE": "#/components/schemas/AzurePrivateEndpoint", + "GCP": "#/components/schemas/PrivateGCPEndpointGroup" + }, + "propertyName": "cloudProvider" + }, + "properties": { + "cloudProvider": { + "description": "Cloud service provider that serves the requested endpoint.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "readOnly": true, + "type": "string" + }, + "deleteRequested": { + "description": "Flag that indicates whether MongoDB Cloud received a request to remove the specified private endpoint from the private endpoint service.", + "readOnly": true, + "type": "boolean" + }, + "errorMessage": { + "description": "Error message returned when requesting private connection resource. The resource returns `null` if the request succeeded.", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "cloudProvider" + ], + "type": "object" + }, + "PrivateNetworkEndpointIdEntry": { + "properties": { + "comment": { + "description": "Human-readable string to associate with this private endpoint.", + "type": "string" + }, + "customerEndpointDNSName": { + "description": "Human-readable label to identify customer's VPC endpoint DNS name.", + "type": "string" + }, + "endpointId": { + "description": "Unique 22-character alphanumeric string that identifies the private endpoint.", + "example": "vpce-3bf78b0ddee411ba1", + "externalDocs": { + "description": "Atlas Data Lake supports Amazon Web Services private endpoints using the AWS PrivateLink feature.", + "url": "https://aws.amazon.com/privatelink/?privatelink-blogs.sort-by=item.additionalFields.createdDate\u0026privatelink-blogs.sort-order=desc" + }, + "maxLength": 22, + "minLength": 22, + "pattern": "^vpce-[0-9a-f]{17}$", + "type": "string" + }, + "provider": { + "default": "AWS", + "description": "Human-readable label that identifies the cloud service provider. Atlas Data Lake supports Amazon Web Services only.", + "enum": [ + "AWS" + ], + "type": "string" + }, + "region": { + "description": "Human-readable label to identify the region of customer's VPC endpoint.", + "type": "string" + }, + "type": { + "default": "DATA_LAKE", + "description": "Human-readable label that identifies the resource type associated with this private endpoint.", + "enum": [ + "DATA_LAKE" + ], + "type": "string" + } + }, + "required": [ + "endpointId" + ], + "type": "object" + }, + "ProjectSettingItemView": { + "properties": { + "enabled": { + "description": "Flag that indicates whether someone enabled the regionalized private endpoint setting for the specified project.\n\n- Set this value to `true` to enable regionalized private endpoints. This allows you to create more than one private endpoint in a cloud provider region. You need to enable this setting to connect to multi-region and global MongoDB Cloud sharded clusters. Enabling regionalized private endpoints introduces the following limitations:\n - Your applications must use the new connection strings for existing multi-region and global sharded clusters. This might cause downtime.\n - Your MongoDB Cloud project can't contain replica sets nor can you create new replica sets in this project.\n\n - You can't disable this setting if you have:\n - more than one private endpoint in more than one region\n - more than one private endpoint in one region and one private endpoint in one or more regions.\n\n- Set this value to `false` to disable regionalized private endpoints.", + "type": "boolean" + } + }, + "required": [ + "enabled" + ], + "type": "object" + }, + "Prometheus": { + "description": "Details to integrate one Prometheus account with one MongoDB Cloud project.", + "properties": { + "enabled": { + "description": "Flag that indicates whether someone has activated the Prometheus integration.", + "type": "boolean" + }, + "id": { + "description": "Integration id.", + "nullable": true, + "type": "string" + }, + "password": { + "description": "Password needed to allow MongoDB Cloud to access your Prometheus account.", + "type": "string", + "writeOnly": true + }, + "serviceDiscovery": { + "description": "Desired method to discover the Prometheus service.", + "enum": [ + "http", + "file" + ], + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud. The value must match the third-party service integration type.", + "enum": [ + "PROMETHEUS" + ], + "type": "string" + }, + "username": { + "description": "Human-readable label that identifies your Prometheus incoming webhook.", + "example": "prom_user_618d48e05277a606ed2496fe", + "type": "string" + } + }, + "required": [ + "enabled", + "serviceDiscovery", + "username" + ], + "title": "PROMETHEUS", + "type": "object" + }, + "ProxyInfo": { + "description": "VPC Proxy Information.", + "properties": { + "authKey": { + "description": "Authentication key for the proxy.", + "type": "string" + }, + "dnsName": { + "description": "DNS name to use to reach the proxy/s.", + "type": "string" + } + }, + "type": "object" + }, + "PushBasedLogExportProject": { + "properties": { + "bucketName": { + "description": "The name of the bucket to which the agent will send the logs to.", + "type": "string" + }, + "createDate": { + "description": "Date and time that this feature was enabled on.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "iamRoleId": { + "description": "ID of the AWS IAM role that will be used to write to the S3 bucket.", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "prefixPath": { + "description": "S3 directory in which vector will write to in order to store the logs. An empty string denotes the root directory.", + "type": "string" + }, + "state": { + "description": "Describes whether or not the feature is enabled and what status it is in.", + "enum": [ + "UNCONFIGURED", + "INITIATING", + "BUCKET_VERIFIED", + "BUCKET_VERIFICATION_FAILED", + "ASSUME_ROLE_FAILED", + "ACTIVE" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "RPUMetricThresholdView": { + "properties": { + "metricName": { + "description": "Human-readable label that identifies the metric against which MongoDB Cloud checks the configured **metricThreshold.threshold**.", + "type": "string" + }, + "mode": { + "description": "MongoDB Cloud computes the current metric value as an average.", + "enum": [ + "AVERAGE" + ], + "type": "string" + }, + "operator": { + "$ref": "#/components/schemas/Operator" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "double", + "type": "number" + }, + "units": { + "$ref": "#/components/schemas/ServerlessMetricUnits" + } + }, + "required": [ + "metricName" + ], + "type": "object" + }, + "RawMetricAlertView": { + "properties": { + "acknowledgedUntil": { + "description": "Date and time until which this alert has been acknowledged. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.\n\n- To acknowledge this alert forever, set the parameter value to 100 years in the future.\n\n- To unacknowledge a previously acknowledged alert, do not set this parameter value.", + "format": "date-time", + "type": "string" + }, + "acknowledgementComment": { + "description": "Comment that a MongoDB Cloud user submitted when acknowledging the alert.", + "example": "Expiration on 3/19. Silencing for 7days.", + "maxLength": 200, + "type": "string" + }, + "acknowledgingUsername": { + "description": "MongoDB Cloud username of the person who acknowledged the alert. The response returns this parameter if a MongoDB Cloud user previously acknowledged this alert.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration that sets this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster to which this alert applies. This resource returns this parameter for alerts of events impacting backups, replica sets, or sharded clusters.", + "example": "cluster1", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "currentValue": { + "$ref": "#/components/schemas/RawMetricValueView" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostMetricEventTypeViewAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hostnameAndPort": { + "description": "Hostname and port of the host to which this alert applies. The resource returns this parameter for alerts of events impacting hosts or replica sets.", + "example": "cloud-test.mongodb.com:27017", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastNotified": { + "description": "Date and time that any notifications were last sent for this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if MongoDB Cloud has sent notifications for this alert.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "metricName": { + "description": "Name of the metric against which Atlas checks the configured `metricThreshold.threshold`.\n\nTo learn more about the available metrics, see \u003ca href=\"https://www.mongodb.com/docs/atlas/reference/alert-host-metrics/#std-label-measurement-types\" target=\"_blank\"\u003eHost Metrics\u003c/a\u003e.\n\n**NOTE**: If you set eventTypeName to OUTSIDE_SERVERLESS_METRIC_THRESHOLD, you can specify only metrics available for serverless. To learn more, see \u003ca href=\"https://dochub.mongodb.org/core/alert-config-serverless-measurements\" target=\"_blank\"\u003eServerless Measurements\u003c/a\u003e.", + "example": "ASSERT_USER", + "readOnly": true, + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal character string that identifies the organization that owns the project to which this alert applies.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Name of the replica set to which this alert applies. The response returns this parameter for alerts of events impacting backups, hosts, or replica sets.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "resolved": { + "description": "Date and time that this alert changed to `\"status\" : \"CLOSED\"`. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter once `\"status\" : \"CLOSED\"`.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of this alert at the time you requested its details.", + "enum": [ + "CANCELLED", + "CLOSED", + "OPEN", + "TRACKING" + ], + "example": "OPEN", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Date and time when someone last updated this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "alertConfigId", + "created", + "eventTypeName", + "id", + "status", + "updated" + ], + "type": "object" + }, + "RawMetricEventView": { + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "currentValue": { + "$ref": "#/components/schemas/RawMetricValueView" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostMetricEventTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "metricName": { + "description": "Human-readable label of the metric associated with the **alertId**. This field may change type of **currentValue** field.", + "readOnly": true, + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "port": { + "description": "IANA port on which the MongoDB process listens for requests.", + "example": 27017, + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Human-readable label of the replica set associated with the event.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "shardName": { + "description": "Human-readable label of the shard associated with the event.", + "example": "event-sh-01", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "type": "object" + }, + "RawMetricThresholdView": { + "properties": { + "metricName": { + "description": "Human-readable label that identifies the metric against which MongoDB Cloud checks the configured **metricThreshold.threshold**.", + "type": "string" + }, + "mode": { + "description": "MongoDB Cloud computes the current metric value as an average.", + "enum": [ + "AVERAGE" + ], + "type": "string" + }, + "operator": { + "$ref": "#/components/schemas/Operator" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "double", + "type": "number" + }, + "units": { + "$ref": "#/components/schemas/RawMetricUnits" + } + }, + "required": [ + "metricName" + ], + "type": "object" + }, + "RawMetricUnits": { + "default": "RAW", + "description": "Element used to express the quantity. This can be an element of time, storage capacity, and the like.", + "enum": [ + "RAW" + ], + "title": "Raw Metric Units", + "type": "string" + }, + "RawMetricValueView": { + "description": "Measurement of the **metricName** recorded at the time of the event.", + "properties": { + "number": { + "description": "Amount of the **metricName** recorded at the time of the event. This value triggered the alert.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "units": { + "$ref": "#/components/schemas/RawMetricUnits" + } + }, + "readOnly": true, + "title": "Raw Metric Value", + "type": "object" + }, + "RegionSpec": { + "description": "Physical location where MongoDB Cloud provisions cluster nodes.", + "properties": { + "analyticsNodes": { + "description": "Number of analytics nodes in the region. Analytics nodes handle analytic data such as reporting queries from MongoDB Connector for Business Intelligence on MongoDB Cloud. Analytics nodes are read-only, and can never become the primary. Use **replicationSpecs[n].{region}.analyticsNodes** instead.", + "format": "int32", + "type": "integer" + }, + "electableNodes": { + "description": "Number of electable nodes to deploy in the specified region. Electable nodes can become the primary and can facilitate local reads. Use **replicationSpecs[n].{region}.electableNodes** instead.", + "enum": [ + 0, + 3, + 5, + 7 + ], + "format": "int32", + "type": "integer" + }, + "priority": { + "description": "Number that indicates the election priority of the region. To identify the Preferred Region of the cluster, set this parameter to `7`. The primary node runs in the **Preferred Region**. To identify a read-only region, set this parameter to `0`.", + "format": "int32", + "maximum": 7, + "minimum": 0, + "type": "integer" + }, + "readOnlyNodes": { + "description": "Number of read-only nodes in the region. Read-only nodes can never become the primary member, but can facilitate local reads. Use **replicationSpecs[n].{region}.readOnlyNodes** instead.", + "format": "int32", + "type": "integer" + } + }, + "title": "Region Configuration", + "type": "object" + }, + "ReplicaSetAlertConfigViewForNdsGroup": { + "description": "Replica Set alert configuration allows to select which conditions of mongod replica set trigger alerts and how users are notified.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ReplicaSetEventTypeViewForNdsGroupAlertableNoThreshold" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "List of rules that determine whether MongoDB Cloud checks an object for the alert configuration. You can filter using the matchers array if the **eventTypeName** specifies an event for a host, replica set, or sharded cluster.", + "items": { + "$ref": "#/components/schemas/ReplicaSetMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "threshold": { + "$ref": "#/components/schemas/AlertsThresholdInteger" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "Replica Set Alert Configuration", + "type": "object" + }, + "ReplicaSetAlertViewForNdsGroup": { + "description": "ReplicaSet alert notifies about different activities on replica set of mongod instances.", + "properties": { + "acknowledgedUntil": { + "description": "Date and time until which this alert has been acknowledged. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.\n\n- To acknowledge this alert forever, set the parameter value to 100 years in the future.\n\n- To unacknowledge a previously acknowledged alert, do not set this parameter value.", + "format": "date-time", + "type": "string" + }, + "acknowledgementComment": { + "description": "Comment that a MongoDB Cloud user submitted when acknowledging the alert.", + "example": "Expiration on 3/19. Silencing for 7days.", + "maxLength": 200, + "type": "string" + }, + "acknowledgingUsername": { + "description": "MongoDB Cloud username of the person who acknowledged the alert. The response returns this parameter if a MongoDB Cloud user previously acknowledged this alert.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration that sets this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster to which this alert applies. This resource returns this parameter for alerts of events impacting backups, replica sets, or sharded clusters.", + "example": "cluster1", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ReplicaSetEventTypeViewForNdsGroupAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hostnameAndPort": { + "description": "Hostname and port of the host to which this alert applies. The resource returns this parameter for alerts of events impacting hosts or replica sets.", + "example": "cloud-test.mongodb.com:27017", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastNotified": { + "description": "Date and time that any notifications were last sent for this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if MongoDB Cloud has sent notifications for this alert.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "nonRunningHostIds": { + "description": "List of unique 24-hexadecimal character strings that identify the replica set members that are not in PRIMARY nor SECONDARY state.", + "items": { + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 32, + "minLength": 8, + "pattern": "^([a-f0-9]{8,32})$", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal character string that identifies the organization that owns the project to which this alert applies.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "parentClusterId": { + "description": "Unique 24-hexadecimal character string that identifies the parent cluster to which this alert applies. The parent cluster contains the sharded nodes. MongoDB Cloud returns this parameter only for alerts of events impacting sharded clusters.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 64, + "minLength": 1, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Name of the replica set to which this alert applies. The response returns this parameter for alerts of events impacting backups, hosts, or replica sets.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "resolved": { + "description": "Date and time that this alert changed to `\"status\" : \"CLOSED\"`. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter once `\"status\" : \"CLOSED\"`.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of this alert at the time you requested its details.", + "enum": [ + "CANCELLED", + "CLOSED", + "OPEN", + "TRACKING" + ], + "example": "OPEN", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Date and time when someone last updated this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "alertConfigId", + "created", + "eventTypeName", + "id", + "status", + "updated" + ], + "title": "ReplicaSet Alerts", + "type": "object" + }, + "ReplicaSetEventTypeViewForNdsGroup": { + "description": "Unique identifier of event type.", + "enum": [ + "PRIMARY_ELECTED", + "REPLICATION_OPLOG_WINDOW_HEALTHY", + "REPLICATION_OPLOG_WINDOW_RUNNING_OUT", + "ONE_PRIMARY", + "NO_PRIMARY", + "TOO_MANY_ELECTIONS" + ], + "example": "PRIMARY_ELECTED", + "title": "ReplicaSet Event Types", + "type": "string" + }, + "ReplicaSetEventTypeViewForNdsGroupAlertable": { + "description": "Incident that triggered this alert.", + "enum": [ + "REPLICATION_OPLOG_WINDOW_RUNNING_OUT", + "NO_PRIMARY", + "PRIMARY_ELECTED", + "TOO_MANY_ELECTIONS" + ], + "example": "NO_PRIMARY", + "readOnly": true, + "title": "ReplicaSet Event Types", + "type": "string" + }, + "ReplicaSetEventTypeViewForNdsGroupAlertableNoThreshold": { + "description": "Event type that triggers an alert.", + "enum": [ + "NO_PRIMARY", + "PRIMARY_ELECTED" + ], + "example": "NO_PRIMARY", + "title": "ReplicaSet Event Types", + "type": "string" + }, + "ReplicaSetEventTypeViewForNdsGroupAlertableWithThreshold": { + "description": "Event type that triggers an alert.", + "enum": [ + "TOO_MANY_ELECTIONS", + "REPLICATION_OPLOG_WINDOW_RUNNING_OUT" + ], + "example": "TOO_MANY_ELECTIONS", + "title": "ReplicaSet Event Types", + "type": "string" + }, + "ReplicaSetMatcher": { + "description": "Rules to apply when comparing an replica set against this alert configuration.", + "properties": { + "fieldName": { + "$ref": "#/components/schemas/ReplicaSetMatcherField" + }, + "operator": { + "description": "Comparison operator to apply when checking the current metric value against **matcher[n].value**.", + "enum": [ + "EQUALS", + "CONTAINS", + "STARTS_WITH", + "ENDS_WITH", + "NOT_EQUALS", + "NOT_CONTAINS", + "REGEX" + ], + "type": "string" + }, + "value": { + "description": "Value to match or exceed using the specified **matchers.operator**.", + "example": "event-replica-set", + "type": "string" + } + }, + "required": [ + "fieldName", + "operator", + "value" + ], + "title": "Matchers", + "type": "object" + }, + "ReplicaSetMatcherField": { + "description": "Name of the parameter in the target object that MongoDB Cloud checks. The parameter must match all rules for MongoDB Cloud to check for alert configurations.", + "enum": [ + "REPLICA_SET_NAME", + "SHARD_NAME", + "CLUSTER_NAME" + ], + "example": "REPLICA_SET_NAME", + "title": "Replica Set Matcher Fields", + "type": "string" + }, + "ReplicaSetThresholdAlertConfigViewForNdsGroup": { + "description": "Replica Set threshold alert configuration allows to select thresholds for conditions of mongod replica set which trigger alerts and how users are notified.", + "discriminator": { + "mapping": { + "REPLICATION_OPLOG_WINDOW_RUNNING_OUT": "#/components/schemas/LessThanTimeThresholdAlertConfigViewForNdsGroup", + "TOO_MANY_ELECTIONS": "#/components/schemas/GreaterThanRawThresholdAlertConfigViewForNdsGroup" + }, + "propertyName": "eventTypeName" + }, + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ReplicaSetEventTypeViewForNdsGroupAlertableWithThreshold" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "List of rules that determine whether MongoDB Cloud checks an object for the alert configuration. You can filter using the matchers array if the **eventTypeName** specifies an event for a host, replica set, or sharded cluster.", + "items": { + "$ref": "#/components/schemas/ReplicaSetMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "threshold": { + "$ref": "#/components/schemas/AlertsThresholdInteger" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "Replica Set Threshold Alert Configuration", + "type": "object" + }, + "ReplicationSpec": { + "description": "Details that explain how MongoDB Cloud replicates data on the specified MongoDB database.", + "properties": { + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the replication object for a zone in a Multi-Cloud Cluster. If you include existing zones in the request, you must specify this parameter. If you add a new zone to an existing Multi-Cloud Cluster, you may specify this parameter. The request deletes any existing zones in the Multi-Cloud Cluster that you exclude from the request.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "numShards": { + "description": "Positive integer that specifies the number of shards to deploy in each specified zone. If you set this value to `1` and **clusterType** is `SHARDED`, MongoDB Cloud deploys a single-shard sharded cluster. Don't create a sharded cluster with a single shard for production environments. Single-shard sharded clusters don't provide the same benefits as multi-shard configurations.\n\n If you are upgrading a replica set to a sharded cluster, you cannot increase the number of shards in the same update request. You should wait until after the cluster has completed upgrading to sharded and you have reconnected all application clients to the MongoDB router before adding additional shards. Otherwise, your data might become inconsistent once MongoDB Cloud begins distributing data across shards.", + "format": "int32", + "minimum": 1, + "type": "integer" + }, + "regionConfigs": { + "description": "Hardware specifications for nodes set for a given region. Each **regionConfigs** object describes the region's priority in elections and the number and type of MongoDB nodes that MongoDB Cloud deploys to the region. Each **regionConfigs** object must have either an **analyticsSpecs** object, **electableSpecs** object, or **readOnlySpecs** object. Tenant clusters only require **electableSpecs. Dedicated** clusters can specify any of these specifications, but must have at least one **electableSpecs** object within a **replicationSpec**. Every hardware specification must use the same **instanceSize**.\n\n**Example:**\n\nIf you set `\"replicationSpecs[n].regionConfigs[m].analyticsSpecs.instanceSize\" : \"M30\"`, set `\"replicationSpecs[n].regionConfigs[m].electableSpecs.instanceSize\" : `\"M30\"` if you have electable nodes and `\"replicationSpecs[n].regionConfigs[m].readOnlySpecs.instanceSize\" : `\"M30\"` if you have read-only nodes.", + "items": { + "$ref": "#/components/schemas/CloudRegionConfig" + }, + "type": "array" + }, + "zoneName": { + "description": "Human-readable label that identifies the zone in a Global Cluster. Provide this value only if `\"clusterType\" : \"GEOSHARDED\"`.", + "type": "string" + } + }, + "title": "Replication Specifications", + "type": "object" + }, + "ReplicationSpec20250101": { + "description": "Details that explain how MongoDB Cloud replicates data on the specified MongoDB database.", + "properties": { + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. If you include existing shard replication configurations in the request, you must specify this parameter. If you add a new shard to an existing Cluster, you may specify this parameter. The request deletes any existing shards in the Cluster that you exclude from the request.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "regionConfigs": { + "description": "Hardware specifications for nodes set for a given region. Each **regionConfigs** object describes the region's priority in elections and the number and type of MongoDB nodes that MongoDB Cloud deploys to the region. Each **regionConfigs** object must have either an **analyticsSpecs** object, **electableSpecs** object, or **readOnlySpecs** object. Tenant clusters only require **electableSpecs. Dedicated** clusters can specify any of these specifications, but must have at least one **electableSpecs** object within a **replicationSpec**.\n\n**Example:**\n\nIf you set `\"replicationSpecs[n].regionConfigs[m].analyticsSpecs.instanceSize\" : \"M30\"`, set `\"replicationSpecs[n].regionConfigs[m].electableSpecs.instanceSize\" : `\"M30\"` if you have electable nodes and `\"replicationSpecs[n].regionConfigs[m].readOnlySpecs.instanceSize\" : `\"M30\"` if you have read-only nodes.", + "items": { + "$ref": "#/components/schemas/CloudRegionConfig20250101" + }, + "type": "array" + }, + "zoneId": { + "description": "Unique 24-hexadecimal digit string that identifies the zone in a Global Cluster. This value can be used to configure Global Cluster backup policies.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "zoneName": { + "description": "Human-readable label that describes the zone this shard belongs to in a Global Cluster. Provide this value only if \"clusterType\" : \"GEOSHARDED\" but not \"selfManagedSharding\" : true.", + "type": "string" + } + }, + "title": "Replication Specifications", + "type": "object" + }, + "RequestAccepted": { + "description": "Accepted", + "type": "object" + }, + "ResourceEventTypeView": { + "description": "Unique identifier of event type.", + "enum": [ + "TAGS_MODIFIED", + "GROUP_TAGS_MODIFIED" + ], + "example": "TAGS_MODIFIED", + "title": "Resource Event Types", + "type": "string" + }, + "ResourceEventTypeViewForOrg": { + "description": "Unique identifier of event type.", + "enum": [ + "GROUP_TAGS_MODIFIED" + ], + "example": "GROUP_TAGS_MODIFIED", + "title": "Resource Event Types", + "type": "string" + }, + "ResourceEventViewForNdsGroup": { + "description": "Resource event reflects different activities about resources.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ResourceEventTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "resourceId": { + "description": "Unique 24-hexadecimal digit string that identifies the resource associated with the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "resourceType": { + "description": "Unique identifier of resource type.", + "example": "cluster", + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id", + "resourceType" + ], + "title": "Resource Events", + "type": "object" + }, + "ResourceEventViewForOrg": { + "description": "Resource event reflects different activities about resources.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ResourceEventTypeViewForOrg" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "resourceId": { + "description": "Unique 24-hexadecimal digit string that identifies the resource associated with the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "resourceType": { + "description": "Unique identifier of resource type.", + "example": "cluster", + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id", + "resourceType" + ], + "title": "Resource Events", + "type": "object" + }, + "ResourceTag": { + "description": "Key-value pair that tags and categorizes a MongoDB Cloud organization, project, or cluster. For example, `environment : production`.", + "properties": { + "key": { + "description": "Constant that defines the set of the tag. For example, `environment` in the `environment : production` tag.", + "maxLength": 255, + "minLength": 1, + "type": "string" + }, + "value": { + "description": "Variable that belongs to the set of the tag. For example, `production` in the `environment : production` tag.", + "maxLength": 255, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "key", + "value" + ], + "title": "Resource Tag", + "type": "object" + }, + "RestoreJobFileHash": { + "description": "Key and value pair that map one restore file to one hashed checksum. This parameter applies after you download the corresponding **delivery.url**.", + "properties": { + "fileName": { + "description": "Human-readable label that identifies the hashed file.", + "readOnly": true, + "type": "string" + }, + "hash": { + "description": "Hashed checksum that maps to the restore file.", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "typeName": { + "description": "Human-readable label that identifies the hashing algorithm used to compute the hash value.", + "enum": [ + "SHA1" + ], + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "RoleAssignment": { + "properties": { + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project to which this role belongs. Each element within **roleAssignments** can have a value for **groupId** or **orgId**, but not both.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which this role belongs. Each element within **roleAssignments** can have a value for **orgId** or **groupId**, but not both.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "role": { + "description": "Human-readable label that identifies the collection of privileges that MongoDB Cloud grants a specific API key, MongoDB Cloud user, or MongoDB Cloud team. These roles include organization- and project-level roles.\n\nOrganization Roles\n\n* ORG_OWNER\n* ORG_MEMBER\n* ORG_GROUP_CREATOR\n* ORG_BILLING_ADMIN\n* ORG_READ_ONLY\n\nProject Roles\n\n* GROUP_CLUSTER_MANAGER\n* GROUP_DATA_ACCESS_ADMIN\n* GROUP_DATA_ACCESS_READ_ONLY\n* GROUP_DATA_ACCESS_READ_WRITE\n* GROUP_OWNER\n* GROUP_READ_ONLY\n* GROUP_SEARCH_INDEX_EDITOR\n* GROUP_STREAM_PROCESSING_OWNER\n\n", + "enum": [ + "ORG_OWNER", + "ORG_MEMBER", + "ORG_GROUP_CREATOR", + "ORG_BILLING_ADMIN", + "ORG_READ_ONLY", + "GROUP_CLUSTER_MANAGER", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_OWNER", + "GROUP_READ_ONLY", + "GROUP_SEARCH_INDEX_EDITOR", + "GROUP_STREAM_PROCESSING_OWNER" + ], + "type": "string" + } + }, + "type": "object" + }, + "SMSNotification": { + "description": "SMS notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "mobileNumber": { + "description": "Mobile phone number to which MongoDB Cloud sends alert notifications. The resource requires this parameter when `\"notifications.[n].typeName\" : \"SMS\"`.", + "example": "1233337892", + "type": "string" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "SMS" + ], + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "SMS Notification", + "type": "object" + }, + "SampleDatasetStatus": { + "properties": { + "_id": { + "description": "Unique 24-hexadecimal character string that identifies this sample dataset.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster into which you loaded the sample dataset.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "completeDate": { + "description": "Date and time when the sample dataset load job completed. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "createDate": { + "description": "Date and time when you started the sample dataset load job. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "errorMessage": { + "description": "Details of the error returned when MongoDB Cloud loads the sample dataset. This endpoint returns null if state has a value other than FAILED.", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Status of the sample dataset load job.", + "enum": [ + "WORKING", + "FAILED", + "COMPLETED" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "SearchHostStatusDetail": { + "properties": { + "hostname": { + "description": "Hostname that corresponds to the status detail.", + "type": "string" + }, + "mainIndex": { + "$ref": "#/components/schemas/SearchMainIndexStatusDetail" + }, + "queryable": { + "description": "Flag that indicates whether the index is queryable on the host.", + "type": "boolean" + }, + "stagedIndex": { + "$ref": "#/components/schemas/SearchStagedIndexStatusDetail" + }, + "status": { + "description": "Condition of the search index when you made this request.\n\n | Status | Index Condition |\n |---|---|\n | DELETING | The index is being deleted. |\n | FAILED | The index build failed. Indexes can enter the FAILED state due to an invalid index definition. |\n | STALE | The index is queryable but has stopped replicating data from the indexed collection. Searches on the index may return out-of-date data. |\n | PENDING | Atlas has not yet started building the index. |\n | BUILDING | Atlas is building or re-building the index after an edit. |\n | READY | The index is ready and can support queries. |\n", + "enum": [ + "DELETING", + "FAILED", + "STALE", + "PENDING", + "BUILDING", + "READY", + "DOES_NOT_EXIST" + ], + "type": "string" + } + }, + "title": "Search Host Status Detail", + "type": "object" + }, + "SearchIndex": { + "allOf": [ + { + "$ref": "#/components/schemas/ClusterSearchIndex" + }, + { + "properties": { + "analyzer": { + "default": "lucene.standard", + "description": "Specific pre-defined method chosen to convert database field text into searchable words. This conversion reduces the text of fields into the smallest units of text. These units are called a **term** or **token**. This process, known as tokenization, involves a variety of changes made to the text in fields:\n\n- extracting words\n- removing punctuation\n- removing accents\n- changing to lowercase\n- removing common words\n- reducing words to their root form (stemming)\n- changing words to their base form (lemmatization)\n MongoDB Cloud uses the selected process to build the Atlas Search index.", + "enum": [ + "lucene.standard", + "lucene.simple", + "lucene.whitespace", + "lucene.keyword", + "lucene.arabic", + "lucene.armenian", + "lucene.basque", + "lucene.bengali", + "lucene.brazilian", + "lucene.bulgarian", + "lucene.catalan", + "lucene.chinese", + "lucene.cjk", + "lucene.czech", + "lucene.danish", + "lucene.dutch", + "lucene.english", + "lucene.finnish", + "lucene.french", + "lucene.galician", + "lucene.german", + "lucene.greek", + "lucene.hindi", + "lucene.hungarian", + "lucene.indonesian", + "lucene.irish", + "lucene.italian", + "lucene.japanese", + "lucene.korean", + "lucene.kuromoji", + "lucene.latvian", + "lucene.lithuanian", + "lucene.morfologik", + "lucene.nori", + "lucene.norwegian", + "lucene.persian", + "lucene.portuguese", + "lucene.romanian", + "lucene.russian", + "lucene.smartcn", + "lucene.sorani", + "lucene.spanish", + "lucene.swedish", + "lucene.thai", + "lucene.turkish", + "lucene.ukrainian" + ], + "externalDocs": { + "description": "Atlas Search Analyzers", + "url": "https://dochub.mongodb.org/core/analyzers--fts" + }, + "type": "string" + }, + "analyzers": { + "description": "List of user-defined methods to convert database field text into searchable words.", + "externalDocs": { + "description": "Custom Atlas Search Analyzers", + "url": "https://dochub.mongodb.org/core/custom-fts" + }, + "items": { + "$ref": "#/components/schemas/ApiAtlasFTSAnalyzersViewManual" + }, + "type": "array" + }, + "mappings": { + "$ref": "#/components/schemas/ApiAtlasFTSMappingsViewManual" + }, + "searchAnalyzer": { + "default": "lucene.standard", + "description": "Method applied to identify words when searching this index.", + "enum": [ + "lucene.standard", + "lucene.simple", + "lucene.whitespace", + "lucene.keyword", + "lucene.arabic", + "lucene.armenian", + "lucene.basque", + "lucene.bengali", + "lucene.brazilian", + "lucene.bulgarian", + "lucene.catalan", + "lucene.chinese", + "lucene.cjk", + "lucene.czech", + "lucene.danish", + "lucene.dutch", + "lucene.english", + "lucene.finnish", + "lucene.french", + "lucene.galician", + "lucene.german", + "lucene.greek", + "lucene.hindi", + "lucene.hungarian", + "lucene.indonesian", + "lucene.irish", + "lucene.italian", + "lucene.japanese", + "lucene.korean", + "lucene.kuromoji", + "lucene.latvian", + "lucene.lithuanian", + "lucene.morfologik", + "lucene.nori", + "lucene.norwegian", + "lucene.persian", + "lucene.portuguese", + "lucene.romanian", + "lucene.russian", + "lucene.smartcn", + "lucene.sorani", + "lucene.spanish", + "lucene.swedish", + "lucene.thai", + "lucene.turkish", + "lucene.ukrainian" + ], + "type": "string" + }, + "storedSource": { + "description": "Flag that indicates whether to store all fields (true) on Atlas Search. By default, Atlas doesn't store (false) the fields on Atlas Search. Alternatively, you can specify an object that only contains the list of fields to store (include) or not store (exclude) on Atlas Search. To learn more, see documentation.", + "example": { + "include | exclude": [ + "field1", + "field2" + ] + }, + "externalDocs": { + "description": "Stored Source Fields", + "url": "https://dochub.mongodb.org/core/atlas-search-stored-source" + }, + "type": "object" + }, + "synonyms": { + "description": "Rule sets that map words to their synonyms in this index.", + "externalDocs": { + "description": "Synonym Mapping", + "url": "https://dochub.mongodb.org/core/fts-synonym-mappings" + }, + "items": { + "$ref": "#/components/schemas/SearchSynonymMappingDefinition" + }, + "type": "array" + } + }, + "type": "object" + } + ], + "required": [ + "collectionName", + "database", + "name" + ], + "type": "object" + }, + "SearchIndexCreateRequest": { + "discriminator": { + "mapping": { + "search": "#/components/schemas/TextSearchIndexCreateRequest", + "vectorSearch": "#/components/schemas/VectorSearchIndexCreateRequest" + }, + "propertyName": "type" + }, + "properties": { + "collectionName": { + "description": "Label that identifies the collection to create an Atlas Search index in.", + "type": "string" + }, + "database": { + "description": "Label that identifies the database that contains the collection to create an Atlas Search index in.", + "type": "string" + }, + "name": { + "description": "Label that identifies this index. Within each namespace, names of all indexes in the namespace must be unique.", + "type": "string" + }, + "type": { + "description": "Type of the index. The default type is search.", + "enum": [ + "search", + "vectorSearch" + ], + "type": "string" + } + }, + "required": [ + "collectionName", + "database", + "name" + ], + "type": "object" + }, + "SearchIndexDefinition": { + "description": "The search index definition set by the user.", + "title": "Search Index Definition", + "type": "object" + }, + "SearchIndexDefinitionVersion": { + "description": "Object which includes the version number of the index definition and the time that the index definition was created.", + "properties": { + "createdAt": { + "description": "The time at which this index definition was created.", + "format": "date-time", + "type": "string" + }, + "version": { + "description": "The version number associated with this index definition when it was created.", + "format": "int64", + "type": "integer" + } + }, + "title": "Search Index Definition Version", + "type": "object" + }, + "SearchIndexResponse": { + "discriminator": { + "mapping": { + "search": "#/components/schemas/TextSearchIndexResponse", + "vectorSearch": "#/components/schemas/VectorSearchIndexResponse" + }, + "propertyName": "type" + }, + "properties": { + "collectionName": { + "description": "Label that identifies the collection that contains one or more Atlas Search indexes.", + "type": "string" + }, + "database": { + "description": "Label that identifies the database that contains the collection with one or more Atlas Search indexes.", + "type": "string" + }, + "indexID": { + "description": "Unique 24-hexadecimal digit string that identifies this Atlas Search index.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "latestDefinition": { + "$ref": "#/components/schemas/SearchIndexDefinition" + }, + "latestDefinitionVersion": { + "$ref": "#/components/schemas/SearchIndexDefinitionVersion" + }, + "name": { + "description": "Label that identifies this index. Within each namespace, the names of all indexes must be unique.", + "type": "string" + }, + "queryable": { + "description": "Flag that indicates whether the index is queryable on all hosts.", + "type": "boolean" + }, + "status": { + "description": "Condition of the search index when you made this request.\n\n | Status | Index Condition |\n |---|---|\n | DELETING | The index is being deleted. |\n | FAILED | The index build failed. Indexes can enter the FAILED state due to an invalid index definition. |\n | STALE | The index is queryable but has stopped replicating data from the indexed collection. Searches on the index may return out-of-date data. |\n | PENDING | Atlas has not yet started building the index. |\n | BUILDING | Atlas is building or re-building the index after an edit. |\n | READY | The index is ready and can support queries. |\n", + "enum": [ + "DELETING", + "FAILED", + "STALE", + "PENDING", + "BUILDING", + "READY", + "DOES_NOT_EXIST" + ], + "type": "string" + }, + "statusDetail": { + "description": "List of documents detailing index status on each host.", + "items": { + "$ref": "#/components/schemas/SearchHostStatusDetail" + }, + "type": "array" + }, + "type": { + "description": "Type of the index. The default type is search.", + "enum": [ + "search", + "vectorSearch" + ], + "type": "string" + } + }, + "title": "Search Index Response", + "type": "object" + }, + "SearchIndexUpdateRequest": { + "properties": { + "definition": { + "description": "The index definition to update the search index to.", + "oneOf": [ + { + "$ref": "#/components/schemas/TextSearchIndexDefinition" + }, + { + "$ref": "#/components/schemas/VectorSearchIndexDefinition" + } + ], + "type": "object" + } + }, + "required": [ + "definition" + ], + "title": "Search Index Update Request", + "type": "object" + }, + "SearchMainIndexStatusDetail": { + "description": "Contains status information about the active index.", + "properties": { + "definition": { + "$ref": "#/components/schemas/SearchIndexDefinition" + }, + "definitionVersion": { + "$ref": "#/components/schemas/SearchIndexDefinitionVersion" + }, + "message": { + "description": "Optional message describing an error.", + "type": "string" + }, + "queryable": { + "description": "Flag that indicates whether the index generation is queryable on the host.", + "type": "boolean" + }, + "status": { + "description": "Condition of the search index when you made this request.\n\n | Status | Index Condition |\n |---|---|\n | DELETING | The index is being deleted. |\n | FAILED | The index build failed. Indexes can enter the FAILED state due to an invalid index definition. |\n | STALE | The index is queryable but has stopped replicating data from the indexed collection. Searches on the index may return out-of-date data. |\n | PENDING | Atlas has not yet started building the index. |\n | BUILDING | Atlas is building or re-building the index after an edit. |\n | READY | The index is ready and can support queries. |\n", + "enum": [ + "DELETING", + "FAILED", + "STALE", + "PENDING", + "BUILDING", + "READY", + "DOES_NOT_EXIST" + ], + "type": "string" + } + }, + "title": "Search Main Index Status Detail", + "type": "object" + }, + "SearchMappings": { + "description": "Index specifications for the collection's fields.", + "properties": { + "dynamic": { + "description": "Flag that indicates whether the index uses dynamic or static mappings. Required if **mappings.fields** is omitted.", + "externalDocs": { + "description": "Dynamic or Static Mappings", + "url": "https://dochub.mongodb.org/core/field-mapping-definition-fts#static-and-dynamic-mappings" + }, + "type": "boolean" + }, + "fields": { + "additionalProperties": { + "description": "One or more field specifications for the Atlas Search index. Required if **mappings.dynamic** is omitted or set to **false**.", + "externalDocs": { + "description": "Atlas Search Index", + "url": "https://dochub.mongodb.org/core/index-definitions-fts" + }, + "type": "object", + "x-additionalPropertiesName": "Field Name" + }, + "description": "One or more field specifications for the Atlas Search index. Required if **mappings.dynamic** is omitted or set to **false**.", + "externalDocs": { + "description": "Atlas Search Index", + "url": "https://dochub.mongodb.org/core/index-definitions-fts" + }, + "type": "object", + "x-additionalPropertiesName": "Field Name" + } + }, + "title": "Mappings", + "type": "object" + }, + "SearchStagedIndexStatusDetail": { + "description": "Contains status information about an index building in the background.", + "properties": { + "definition": { + "$ref": "#/components/schemas/SearchIndexDefinition" + }, + "definitionVersion": { + "$ref": "#/components/schemas/SearchIndexDefinitionVersion" + }, + "message": { + "description": "Optional message describing an error.", + "type": "string" + }, + "queryable": { + "description": "Flag that indicates whether the index generation is queryable on the host.", + "type": "boolean" + }, + "status": { + "description": "Condition of the search index when you made this request.\n\n | Status | Index Condition |\n |---|---|\n | DELETING | The index is being deleted. |\n | FAILED | The index build failed. Indexes can enter the FAILED state due to an invalid index definition. |\n | STALE | The index is queryable but has stopped replicating data from the indexed collection. Searches on the index may return out-of-date data. |\n | PENDING | Atlas has not yet started building the index. |\n | BUILDING | Atlas is building or re-building the index after an edit. |\n | READY | The index is ready and can support queries. |\n", + "enum": [ + "DELETING", + "FAILED", + "STALE", + "PENDING", + "BUILDING", + "READY", + "DOES_NOT_EXIST" + ], + "type": "string" + } + }, + "title": "Search Staged Index Status Detail", + "type": "object" + }, + "SearchSynonymMappingDefinition": { + "description": "Synonyms used for this full text index.", + "properties": { + "analyzer": { + "description": "Specific pre-defined method chosen to apply to the synonyms to be searched.", + "enum": [ + "lucene.standard", + "lucene.simple", + "lucene.whitespace", + "lucene.keyword", + "lucene.arabic", + "lucene.armenian", + "lucene.basque", + "lucene.bengali", + "lucene.brazilian", + "lucene.bulgarian", + "lucene.catalan", + "lucene.chinese", + "lucene.cjk", + "lucene.czech", + "lucene.danish", + "lucene.dutch", + "lucene.english", + "lucene.finnish", + "lucene.french", + "lucene.galician", + "lucene.german", + "lucene.greek", + "lucene.hindi", + "lucene.hungarian", + "lucene.indonesian", + "lucene.irish", + "lucene.italian", + "lucene.japanese", + "lucene.korean", + "lucene.kuromoji", + "lucene.latvian", + "lucene.lithuanian", + "lucene.morfologik", + "lucene.nori", + "lucene.norwegian", + "lucene.persian", + "lucene.portuguese", + "lucene.romanian", + "lucene.russian", + "lucene.smartcn", + "lucene.sorani", + "lucene.spanish", + "lucene.swedish", + "lucene.thai", + "lucene.turkish", + "lucene.ukrainian" + ], + "type": "string" + }, + "name": { + "description": "Label that identifies the synonym definition. Each **synonym.name** must be unique within the same index definition.", + "type": "string" + }, + "source": { + "$ref": "#/components/schemas/SynonymSource" + } + }, + "required": [ + "analyzer", + "name", + "source" + ], + "title": "Synonym Mapping Definition", + "type": "object" + }, + "ServerlessAWSTenantEndpoint": { + "description": "View for a serverless AWS tenant endpoint.", + "properties": { + "_id": { + "description": "Unique 24-hexadecimal digit string that identifies the private endpoint.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "cloudProviderEndpointId": { + "description": "Unique string that identifies the private endpoint's network interface.", + "pattern": "^vpce-[0-9a-f]{17}$", + "readOnly": true, + "type": "string" + }, + "comment": { + "description": "Human-readable comment associated with the private endpoint.", + "maxLength": 80, + "readOnly": true, + "type": "string" + }, + "endpointServiceName": { + "description": "Unique string that identifies the Amazon Web Services (AWS) PrivateLink endpoint service. MongoDB Cloud returns null while it creates the endpoint service.", + "pattern": "^com\\.amazonaws\\.vpce\\.[a-z-0-9]+\\.vpce-svc-[0-9a-f]{17}", + "readOnly": true, + "type": "string" + }, + "errorMessage": { + "description": "Human-readable error message that indicates error condition associated with establishing the private endpoint connection.", + "readOnly": true, + "type": "string" + }, + "providerName": { + "description": "Human-readable label that identifies the cloud service provider.", + "enum": [ + "AWS" + ], + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Human-readable label that indicates the current operating status of the private endpoint.", + "enum": [ + "RESERVATION_REQUESTED", + "RESERVED", + "INITIATING", + "AVAILABLE", + "FAILED", + "DELETING" + ], + "readOnly": true, + "type": "string" + } + }, + "title": "AWS", + "type": "object" + }, + "ServerlessAWSTenantEndpointUpdate": { + "allOf": [ + { + "$ref": "#/components/schemas/ServerlessTenantEndpointUpdate" + }, + { + "properties": { + "cloudProviderEndpointId": { + "description": "Unique string that identifies the private endpoint's network interface.", + "pattern": "^vpce-[0-9a-f]{17}$", + "type": "string", + "writeOnly": true + } + }, + "type": "object" + } + ], + "description": "Updates to a serverless AWS tenant endpoint.", + "required": [ + "providerName" + ], + "title": "AWS", + "type": "object" + }, + "ServerlessAzureTenantEndpoint": { + "description": "View for a serverless Azure tenant endpoint.", + "properties": { + "_id": { + "description": "Unique 24-hexadecimal digit string that identifies the private endpoint.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "cloudProviderEndpointId": { + "description": "Unique string that identifies the Azure private endpoint's network interface that someone added to this private endpoint service.", + "pattern": "^/subscriptions/[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}/resource[gG]roups/private[Ll]ink/providers/Microsoft\\.Network/privateEndpoints/[-\\w._()]+$", + "readOnly": true, + "type": "string" + }, + "comment": { + "description": "Human-readable comment associated with the private endpoint.", + "maxLength": 80, + "readOnly": true, + "type": "string" + }, + "endpointServiceName": { + "description": "Unique string that identifies the Azure private endpoint service. MongoDB Cloud returns null while it creates the endpoint service.", + "pattern": "^pls_[0-9a-f]{24}$", + "readOnly": true, + "type": "string" + }, + "errorMessage": { + "description": "Human-readable error message that indicates error condition associated with establishing the private endpoint connection.", + "readOnly": true, + "type": "string" + }, + "privateEndpointIpAddress": { + "description": "IPv4 address of the private endpoint in your Azure VNet that someone added to this private endpoint service.", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "privateLinkServiceResourceId": { + "description": "Root-relative path that identifies the Azure Private Link Service that MongoDB Cloud manages. MongoDB Cloud returns null while it creates the endpoint service.", + "readOnly": true, + "type": "string" + }, + "providerName": { + "description": "Human-readable label that identifies the cloud service provider.", + "enum": [ + "AZURE" + ], + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Human-readable label that indicates the current operating status of the private endpoint.", + "enum": [ + "RESERVATION_REQUESTED", + "RESERVED", + "INITIATING", + "AVAILABLE", + "FAILED", + "DELETING" + ], + "readOnly": true, + "type": "string" + } + }, + "title": "Azure", + "type": "object" + }, + "ServerlessAzureTenantEndpointUpdate": { + "allOf": [ + { + "$ref": "#/components/schemas/ServerlessTenantEndpointUpdate" + }, + { + "properties": { + "cloudProviderEndpointId": { + "description": "Unique string that identifies the Azure private endpoint's network interface for this private endpoint service.", + "pattern": "^/subscriptions/[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}/resource[gG]roups/private[Ll]ink/providers/Microsoft\\.Network/privateEndpoints/[-\\w._()]+$", + "type": "string", + "writeOnly": true + }, + "privateEndpointIpAddress": { + "description": "IPv4 address of the private endpoint in your Azure VNet that someone added to this private endpoint service.", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "type": "string", + "writeOnly": true + } + }, + "type": "object" + } + ], + "description": "Updates to a serverless Azure tenant endpoint.", + "required": [ + "providerName" + ], + "title": "AZURE", + "type": "object" + }, + "ServerlessBackupRestoreJob": { + "properties": { + "cancelled": { + "description": "Flag that indicates whether someone canceled this restore job.", + "readOnly": true, + "type": "boolean" + }, + "deliveryType": { + "description": "Human-readable label that categorizes the restore job to create.", + "enum": [ + "automated", + "download", + "pointInTime" + ], + "type": "string" + }, + "deliveryUrl": { + "description": "One or more Uniform Resource Locators (URLs) that point to the compressed snapshot files for manual download. MongoDB Cloud returns this parameter when `\"deliveryType\" : \"download\"`.", + "items": { + "description": "One Uniform Resource Locator that point to the compressed snapshot files for manual download.", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "desiredTimestamp": { + "$ref": "#/components/schemas/ApiBSONTimestampView" + }, + "expired": { + "description": "Flag that indicates whether the restore job expired.", + "readOnly": true, + "type": "boolean" + }, + "expiresAt": { + "description": "Date and time when the restore job expires. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "failed": { + "description": "Flag that indicates whether the restore job failed.", + "readOnly": true, + "type": "boolean" + }, + "finishedAt": { + "description": "Date and time when the restore job completed. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal character string that identifies the restore job.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "oplogInc": { + "description": "Oplog operation number from which you want to restore this snapshot. This number represents the second part of an Oplog timestamp. The resource returns this parameter when `\"deliveryType\" : \"pointInTime\"` and **oplogTs** exceeds `0`.", + "example": 1, + "format": "int32", + "minimum": 1, + "type": "integer" + }, + "oplogTs": { + "description": "Date and time from which you want to restore this snapshot. This parameter expresses this timestamp in the number of seconds that have elapsed since the UNIX epoch. This number represents the first part of an Oplog timestamp. The resource returns this parameter when `\"deliveryType\" : \"pointInTime\"` and **oplogTs** exceeds `0`.", + "format": "int32", + "minimum": 1199145600, + "type": "integer" + }, + "pointInTimeUTCSeconds": { + "description": "Date and time from which MongoDB Cloud restored this snapshot. This parameter expresses this timestamp in the number of seconds that have elapsed since the UNIX epoch. The resource returns this parameter when `\"deliveryType\" : \"pointInTime\"` and **pointInTimeUTCSeconds** exceeds `0`.", + "format": "int32", + "minimum": 1199145600, + "type": "integer" + }, + "snapshotId": { + "description": "Unique 24-hexadecimal character string that identifies the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "targetClusterName": { + "description": "Human-readable label that identifies the target cluster to which the restore job restores the snapshot. The resource returns this parameter when `\"deliveryType\":` `\"automated\"`.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "type": "string" + }, + "targetGroupId": { + "description": "Unique 24-hexadecimal digit string that identifies the target project for the specified **targetClusterName**.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "timestamp": { + "description": "Date and time when MongoDB Cloud took the snapshot associated with **snapshotId**. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "deliveryType", + "targetClusterName", + "targetGroupId" + ], + "type": "object" + }, + "ServerlessBackupSnapshot": { + "properties": { + "createdAt": { + "description": "Date and time when MongoDB Cloud took the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "expiresAt": { + "description": "Date and time when MongoDB Cloud deletes the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "frequencyType": { + "description": "Human-readable label that identifies how often this snapshot triggers.", + "enum": [ + "hourly", + "daily", + "weekly", + "monthly" + ], + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "mongodVersion": { + "description": "Version of the MongoDB host that this snapshot backs up.", + "pattern": "([\\d]+\\.[\\d]+\\.[\\d]+)", + "readOnly": true, + "type": "string" + }, + "serverlessInstanceName": { + "description": "Human-readable label given to the serverless instance from which MongoDB Cloud took this snapshot.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "snapshotType": { + "description": "Human-readable label that identifies when this snapshot triggers.", + "enum": [ + "onDemand", + "scheduled" + ], + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Human-readable label that indicates the stage of the backup process for this snapshot.", + "enum": [ + "queued", + "inProgress", + "completed", + "failed" + ], + "readOnly": true, + "type": "string" + }, + "storageSizeBytes": { + "description": "Number of bytes taken to store the backup snapshot.", + "format": "int64", + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, + "ServerlessConnectionStringsPrivateEndpointItem": { + "description": "Details of a private endpoint deployed for this serverless instance.", + "properties": { + "endpointId": { + "description": "Unique string that the cloud provider uses to identify the private endpoint.", + "readOnly": true, + "type": "string" + }, + "providerName": { + "description": "Cloud provider where the private endpoint is deployed.", + "enum": [ + "AWS", + "AZURE" + ], + "readOnly": true, + "type": "string" + }, + "region": { + "description": "Region where the private endpoint is deployed.", + "readOnly": true, + "type": "string" + } + }, + "title": "Serverless Instance Private Endpoint Connection Strings Endpoint", + "type": "object" + }, + "ServerlessConnectionStringsPrivateEndpointList": { + "description": "Private endpoint connection string that you can use to connect to this serverless instance through a private endpoint.", + "externalDocs": { + "description": "Private Endpoint for Serverless Instance", + "url": "https://docs.atlas.mongodb.com/security-serverless-private-endpoint/" + }, + "properties": { + "endpoints": { + "description": "List that contains the private endpoints through which you connect to MongoDB Cloud when you use **connectionStrings.privateEndpoint[n].srvConnectionString**.", + "items": { + "$ref": "#/components/schemas/ServerlessConnectionStringsPrivateEndpointItem" + }, + "readOnly": true, + "type": "array" + }, + "srvConnectionString": { + "description": "Private endpoint-aware connection string that uses the `mongodb+srv://` protocol to connect to MongoDB Cloud through a private endpoint. The `mongodb+srv` protocol tells the driver to look up the seed list of hosts in the Domain Name System (DNS).", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "MongoDB process type to which your application connects.", + "enum": [ + "MONGOS" + ], + "readOnly": true, + "type": "string" + } + }, + "title": "Serverless Instance Private Endpoint Connection String", + "type": "object" + }, + "ServerlessEventTypeViewAlertable": { + "description": "Event type that triggers an alert.", + "enum": [ + "OUTSIDE_SERVERLESS_METRIC_THRESHOLD" + ], + "example": "OUTSIDE_SERVERLESS_METRIC_THRESHOLD", + "title": "Serverless Event Types", + "type": "string" + }, + "ServerlessInstanceDescription": { + "description": "Group of settings that configure a MongoDB serverless instance.", + "properties": { + "connectionStrings": { + "$ref": "#/components/schemas/ServerlessInstanceDescriptionConnectionStrings" + }, + "createDate": { + "description": "Date and time when MongoDB Cloud created this serverless instance. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the serverless instance.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "mongoDBVersion": { + "description": "Version of MongoDB that the serverless instance runs.", + "pattern": "([\\d]+\\.[\\d]+\\.[\\d]+)", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Human-readable label that identifies the serverless instance.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "type": "string" + }, + "providerSettings": { + "$ref": "#/components/schemas/ServerlessProviderSettings" + }, + "serverlessBackupOptions": { + "$ref": "#/components/schemas/ClusterServerlessBackupOptions" + }, + "stateName": { + "description": "Human-readable label that indicates the current operating condition of the serverless instance.", + "enum": [ + "IDLE", + "CREATING", + "UPDATING", + "DELETING", + "REPAIRING" + ], + "readOnly": true, + "type": "string" + }, + "tags": { + "description": "List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the serverless instance.", + "items": { + "$ref": "#/components/schemas/ResourceTag" + }, + "type": "array" + }, + "terminationProtectionEnabled": { + "default": false, + "description": "Flag that indicates whether termination protection is enabled on the serverless instance. If set to `true`, MongoDB Cloud won't delete the serverless instance. If set to `false`, MongoDB Cloud will delete the serverless instance.", + "type": "boolean" + } + }, + "required": [ + "providerSettings" + ], + "title": "Serverless Instance Description", + "type": "object" + }, + "ServerlessInstanceDescriptionConnectionStrings": { + "description": "Collection of Uniform Resource Locators that point to the MongoDB database.", + "externalDocs": { + "description": "Connection string URI format.", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "properties": { + "privateEndpoint": { + "description": "List of private endpoint-aware connection strings that you can use to connect to this serverless instance through a private endpoint. This parameter returns only if you created a private endpoint for this serverless instance and it is AVAILABLE.", + "items": { + "$ref": "#/components/schemas/ServerlessConnectionStringsPrivateEndpointList" + }, + "readOnly": true, + "type": "array" + }, + "standardSrv": { + "description": "Public connection string that you can use to connect to this serverless instance. This connection string uses the `mongodb+srv://` protocol.", + "externalDocs": { + "description": "Connection String URI Format", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "title": "Serverless Instance Connection Strings", + "type": "object" + }, + "ServerlessInstanceDescriptionCreate": { + "description": "Settings that you can specify when you create a serverless instance.", + "properties": { + "name": { + "description": "Human-readable label that identifies the serverless instance.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "type": "string", + "writeOnly": true + }, + "providerSettings": { + "$ref": "#/components/schemas/ServerlessProviderSettings" + }, + "serverlessBackupOptions": { + "$ref": "#/components/schemas/ClusterServerlessBackupOptions" + }, + "stateName": { + "description": "Human-readable label that indicates the current operating condition of the serverless instance.", + "enum": [ + "IDLE", + "CREATING", + "UPDATING", + "DELETING", + "REPAIRING" + ], + "readOnly": true, + "type": "string" + }, + "tags": { + "description": "List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the serverless instance.", + "items": { + "$ref": "#/components/schemas/ResourceTag" + }, + "type": "array" + }, + "terminationProtectionEnabled": { + "default": false, + "description": "Flag that indicates whether termination protection is enabled on the serverless instance. If set to `true`, MongoDB Cloud won't delete the serverless instance. If set to `false`, MongoDB Cloud will delete the serverless instance.", + "type": "boolean" + } + }, + "required": [ + "name", + "providerSettings" + ], + "title": "Serverless Instance Description Create", + "type": "object" + }, + "ServerlessInstanceDescriptionUpdate": { + "description": "Settings that you can update when you request a serverless cluster update.", + "properties": { + "serverlessBackupOptions": { + "$ref": "#/components/schemas/ClusterServerlessBackupOptions" + }, + "tags": { + "description": "List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the serverless instance.", + "items": { + "$ref": "#/components/schemas/ResourceTag" + }, + "type": "array" + }, + "terminationProtectionEnabled": { + "default": false, + "description": "Flag that indicates whether termination protection is enabled on the serverless instance. If set to `true`, MongoDB Cloud won't delete the serverless instance. If set to `false`, MongoDB Cloud will delete the serverless instance.", + "type": "boolean" + } + }, + "title": "Serverless Instance Description Update", + "type": "object" + }, + "ServerlessMetricAlertConfigViewForNdsGroup": { + "description": "Serverless metric alert configuration allows to select which serverless database metrics trigger alerts and how users are notified.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ServerlessEventTypeViewAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "Matching conditions for target resources.", + "items": { + "$ref": "#/components/schemas/AlertMatcher" + }, + "type": "array" + }, + "metricThreshold": { + "$ref": "#/components/schemas/ServerlessMetricThreshold" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "Serverless Alert Configuration", + "type": "object" + }, + "ServerlessMetricThreshold": { + "description": "Threshold for the metric that, when exceeded, triggers an alert. The metric threshold pertains to event types which reflects changes of measurements and metrics about the serverless database.", + "discriminator": { + "mapping": { + "SERVERLESS_AVG_COMMAND_EXECUTION_TIME": "#/components/schemas/TimeMetricThresholdView", + "SERVERLESS_AVG_READ_EXECUTION_TIME": "#/components/schemas/TimeMetricThresholdView", + "SERVERLESS_AVG_WRITE_EXECUTION_TIME": "#/components/schemas/TimeMetricThresholdView", + "SERVERLESS_CONNECTIONS": "#/components/schemas/RawMetricThresholdView", + "SERVERLESS_CONNECTIONS_PERCENT": "#/components/schemas/RawMetricThresholdView", + "SERVERLESS_DATA_SIZE_TOTAL": "#/components/schemas/DataMetricThresholdView", + "SERVERLESS_NETWORK_BYTES_IN": "#/components/schemas/DataMetricThresholdView", + "SERVERLESS_NETWORK_BYTES_OUT": "#/components/schemas/DataMetricThresholdView", + "SERVERLESS_NETWORK_NUM_REQUESTS": "#/components/schemas/RawMetricThresholdView", + "SERVERLESS_OPCOUNTER_CMD": "#/components/schemas/RawMetricThresholdView", + "SERVERLESS_OPCOUNTER_DELETE": "#/components/schemas/RawMetricThresholdView", + "SERVERLESS_OPCOUNTER_GETMORE": "#/components/schemas/RawMetricThresholdView", + "SERVERLESS_OPCOUNTER_INSERT": "#/components/schemas/RawMetricThresholdView", + "SERVERLESS_OPCOUNTER_QUERY": "#/components/schemas/RawMetricThresholdView", + "SERVERLESS_OPCOUNTER_UPDATE": "#/components/schemas/RawMetricThresholdView", + "SERVERLESS_TOTAL_READ_UNITS": "#/components/schemas/RPUMetricThresholdView", + "SERVERLESS_TOTAL_WRITE_UNITS": "#/components/schemas/RPUMetricThresholdView" + }, + "propertyName": "metricName" + }, + "properties": { + "metricName": { + "description": "Human-readable label that identifies the metric against which MongoDB Cloud checks the configured **metricThreshold.threshold**.", + "type": "string" + }, + "mode": { + "description": "MongoDB Cloud computes the current metric value as an average.", + "enum": [ + "AVERAGE" + ], + "type": "string" + }, + "operator": { + "$ref": "#/components/schemas/Operator" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "double", + "type": "number" + }, + "units": { + "description": "Element used to express the quantity. This can be an element of time, storage capacity, and the like.", + "enum": [ + "bits", + "Kbits", + "Mbits", + "Gbits", + "bytes", + "KB", + "MB", + "GB", + "TB", + "PB", + "nsec", + "msec", + "sec", + "min", + "hours", + "million minutes", + "days", + "requests", + "1000 requests", + "GB seconds", + "GB hours", + "GB days", + "RPU", + "thousand RPU", + "million RPU", + "WPU", + "thousand WPU", + "million WPU", + "count", + "thousand", + "million", + "billion", + "", + "", + "" + ], + "type": "string" + } + }, + "required": [ + "metricName" + ], + "title": "Serverless Metric Threshold", + "type": "object" + }, + "ServerlessMetricUnits": { + "description": "Element used to express the quantity. This can be an element of time, storage capacity, and the like.", + "enum": [ + "RPU", + "THOUSAND_RPU", + "MILLION_RPU", + "WPU", + "THOUSAND_WPU", + "MILLION_WPU" + ], + "example": "RPU", + "title": "Serverless Metric Units", + "type": "string" + }, + "ServerlessProviderSettings": { + "description": "Group of cloud provider settings that configure the provisioned MongoDB serverless instance.", + "properties": { + "backingProviderName": { + "description": "Cloud service provider on which MongoDB Cloud provisioned the serverless instance.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "type": "string" + }, + "providerName": { + "default": "SERVERLESS", + "description": "Human-readable label that identifies the cloud service provider.", + "enum": [ + "SERVERLESS" + ], + "type": "string" + }, + "regionName": { + "description": "Human-readable label that identifies the geographic location of your MongoDB serverless instance. The region you choose can affect network latency for clients accessing your databases. For a complete list of region names, see [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/#std-label-amazon-aws), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), and [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).", + "type": "string" + } + }, + "required": [ + "backingProviderName", + "regionName" + ], + "title": "Cloud Service Provider Settings for a Serverless Instance", + "type": "object" + }, + "ServerlessTenantCreateRequest": { + "properties": { + "comment": { + "description": "Human-readable comment associated with the private endpoint.", + "maxLength": 80, + "type": "string", + "writeOnly": true + } + }, + "type": "object" + }, + "ServerlessTenantEndpoint": { + "oneOf": [ + { + "$ref": "#/components/schemas/ServerlessAWSTenantEndpoint" + }, + { + "$ref": "#/components/schemas/ServerlessAzureTenantEndpoint" + } + ], + "properties": { + "_id": { + "description": "Unique 24-hexadecimal digit string that identifies the private endpoint.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "cloudProviderEndpointId": { + "description": "Unique string that identifies the private endpoint's network interface.", + "readOnly": true, + "type": "string" + }, + "comment": { + "description": "Human-readable comment associated with the private endpoint.", + "maxLength": 80, + "readOnly": true, + "type": "string" + }, + "endpointServiceName": { + "description": "Unique string that identifies the PrivateLink endpoint service. MongoDB Cloud returns null while it creates the endpoint service.", + "pattern": "^com\\.amazonaws\\.vpce\\.[a-z-0-9]+\\.vpce-svc-[0-9a-f]{17}|pls_[0-9a-f]{24}$", + "readOnly": true, + "type": "string" + }, + "errorMessage": { + "description": "Human-readable error message that indicates error condition associated with establishing the private endpoint connection.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Human-readable label that indicates the current operating status of the private endpoint.", + "enum": [ + "RESERVATION_REQUESTED", + "RESERVED", + "INITIATING", + "AVAILABLE", + "FAILED", + "DELETING" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ServerlessTenantEndpointUpdate": { + "description": "Update view for a serverless tenant endpoint.", + "discriminator": { + "mapping": { + "AWS": "#/components/schemas/ServerlessAWSTenantEndpointUpdate", + "AZURE": "#/components/schemas/ServerlessAzureTenantEndpointUpdate" + }, + "propertyName": "providerName" + }, + "properties": { + "comment": { + "description": "Human-readable comment associated with the private endpoint.", + "maxLength": 80, + "type": "string", + "writeOnly": true + }, + "providerName": { + "description": "Human-readable label that identifies the cloud provider of the tenant endpoint.", + "enum": [ + "AWS", + "AZURE" + ], + "type": "string", + "writeOnly": true + } + }, + "required": [ + "providerName" + ], + "type": "object" + }, + "ServiceAccountEventTypeViewForNdsGroup": { + "description": "Unique identifier of event type.", + "enum": [ + "SERVICE_ACCOUNT_CREATED", + "SERVICE_ACCOUNT_DELETED", + "SERVICE_ACCOUNT_ROLES_CHANGED", + "SERVICE_ACCOUNT_DETAILS_CHANGED", + "SERVICE_ACCOUNT_ADDED_TO_GROUP", + "SERVICE_ACCOUNT_REMOVED_FROM_GROUP", + "SERVICE_ACCOUNT_ACCESS_LIST_ENTRY_ADDED", + "SERVICE_ACCOUNT_ACCESS_LIST_ENTRY_DELETED", + "SERVICE_ACCOUNT_SECRET_ADDED", + "SERVICE_ACCOUNT_SECRET_DELETED", + "SERVICE_ACCOUNT_UI_IP_ACCESS_LIST_INHERITANCE_ENABLED", + "SERVICE_ACCOUNT_UI_IP_ACCESS_LIST_INHERITANCE_DISABLED" + ], + "title": "Service Account Event Types", + "type": "string" + }, + "ServiceAccountEventTypeViewForOrg": { + "description": "Unique identifier of event type.", + "enum": [ + "SERVICE_ACCOUNT_CREATED", + "SERVICE_ACCOUNT_DELETED", + "SERVICE_ACCOUNT_ROLES_CHANGED", + "SERVICE_ACCOUNT_DETAILS_CHANGED", + "SERVICE_ACCOUNT_ADDED_TO_GROUP", + "SERVICE_ACCOUNT_REMOVED_FROM_GROUP", + "SERVICE_ACCOUNT_ACCESS_LIST_ENTRY_ADDED", + "SERVICE_ACCOUNT_ACCESS_LIST_ENTRY_DELETED", + "SERVICE_ACCOUNT_SECRET_ADDED", + "SERVICE_ACCOUNT_SECRET_DELETED", + "SERVICE_ACCOUNT_UI_IP_ACCESS_LIST_INHERITANCE_ENABLED", + "SERVICE_ACCOUNT_UI_IP_ACCESS_LIST_INHERITANCE_DISABLED" + ], + "title": "Service Account Event Types", + "type": "string" + }, + "ServiceAccountGroup": { + "properties": { + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ServiceAccountGroupEvents": { + "description": "Service Account event identifies different activities around user api keys.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ServiceAccountEventTypeViewForNdsGroup" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "ServiceAccount Events", + "type": "object" + }, + "ServiceAccountOrgEvents": { + "description": "Service Account event identifies different activities around user api keys.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/ServiceAccountEventTypeViewForOrg" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "ServiceAccount Events", + "type": "object" + }, + "ServiceAccountSecret": { + "properties": { + "createdAt": { + "description": "Timestamp representing creation time.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "expiresAt": { + "description": "Timestamp representing secret expiration time.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal character string that identifies the secret.", + "example": "32b6e34b3d91647abb20e7b8", + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastUsedAt": { + "description": "Timestamp representing last secret usage.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "maskedSecretValue": { + "description": "Service Account secret with masked values of the first 20 characters.", + "example": "mdb_ic_sk_xxxxxxxx-xxxx-xxxx-xxxxxxxx12ce", + "readOnly": true, + "type": "string" + }, + "secret": { + "description": "Secret for the service account. It will be returned only the first time after service account creation.", + "pattern": "^mdb_sa_sk_[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "createdAt", + "expiresAt", + "id" + ], + "type": "object" + }, + "ServiceAccountSecretRequest": { + "properties": { + "secretExpiresAfterHours": { + "description": "Number of hours representing validity duration for secret.", + "format": "int32", + "type": "integer" + } + }, + "required": [ + "secretExpiresAfterHours" + ], + "type": "object" + }, + "ServiceVersionView": { + "properties": { + "gitsha": { + "description": "The service deployed gitSha.", + "type": "string" + } + }, + "type": "object" + }, + "ShardEntry": { + "description": "Sharding configuration for a collection to be sharded on the destination cluster.", + "properties": { + "collection": { + "description": "Human-readable label that identifies the collection to be sharded on the destination cluster.", + "type": "string", + "writeOnly": true + }, + "database": { + "description": "Human-readable label that identifies the database that contains the collection to be sharded on the destination cluster.", + "type": "string", + "writeOnly": true + }, + "shardCollection": { + "$ref": "#/components/schemas/ShardKeys" + } + }, + "required": [ + "collection", + "database", + "shardCollection" + ], + "type": "object" + }, + "ShardKeys": { + "description": "Document that configures the shard key on the destination cluster.", + "properties": { + "key": { + "description": "List of fields to use for the shard key.", + "items": { + "additionalProperties": { + "type": "object" + }, + "type": "object" + }, + "type": "array", + "uniqueItems": true, + "writeOnly": true + } + }, + "type": "object", + "writeOnly": true + }, + "ShardingRequest": { + "description": "Document that configures sharding on the destination cluster when migrating from a replica set source to a sharded cluster destination on MongoDB 6.0 or higher. If you don't wish to shard any collections on the destination cluster, leave this empty.", + "properties": { + "createSupportingIndexes": { + "description": "Flag that lets the migration create supporting indexes for the shard keys, if none exists, as the destination cluster also needs compatible indexes for the specified shard keys.", + "type": "boolean", + "writeOnly": true + }, + "shardingEntries": { + "description": "List of shard configurations to shard destination collections. Atlas shards only those collections that you include in the sharding entries array.", + "items": { + "$ref": "#/components/schemas/ShardEntry" + }, + "type": "array", + "uniqueItems": true, + "writeOnly": true + } + }, + "required": [ + "createSupportingIndexes" + ], + "type": "object", + "writeOnly": true + }, + "Slack": { + "description": "Details to integrate one Slack account with one MongoDB Cloud project.", + "properties": { + "apiToken": { + "description": "Key that allows MongoDB Cloud to access your Slack account.\n\n**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:\n\n* View or edit the alert through the Atlas UI.\n\n* Query the alert for the notification through the Atlas Administration API.\n\n**IMPORTANT**: Slack integrations now use the OAuth2 verification method and must be initially configured, or updated from a legacy integration, through the Atlas third-party service integrations page. Legacy tokens will soon no longer be supported.", + "example": "**********************************************************************abcd", + "type": "string" + }, + "channelName": { + "description": "Name of the Slack channel to which MongoDB Cloud sends alert notifications.", + "example": "alerts", + "maxLength": 80, + "minLength": 1, + "nullable": true, + "type": "string" + }, + "id": { + "description": "Integration id.", + "nullable": true, + "type": "string" + }, + "teamName": { + "description": "Human-readable label that identifies your Slack team. Set this parameter when you configure a legacy Slack integration.", + "example": "MongoDB", + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud. The value must match the third-party service integration type.", + "enum": [ + "SLACK" + ], + "type": "string" + } + }, + "required": [ + "apiToken", + "channelName" + ], + "title": "SLACK", + "type": "object" + }, + "SlackNotification": { + "description": "Slack notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "apiToken": { + "description": "Slack API token or Bot token that MongoDB Cloud needs to send alert notifications via Slack. The resource requires this parameter when `\"notifications.[n].typeName\" : \"SLACK\"`. If the token later becomes invalid, MongoDB Cloud sends an email to the project owners. If the token remains invalid, MongoDB Cloud removes the token. \n\n**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:\n\n* View or edit the alert through the Atlas UI.\n\n* Query the alert for the notification through the Atlas Administration API.", + "example": "**********************************************************************abcd", + "type": "string" + }, + "channelName": { + "description": "Name of the Slack channel to which MongoDB Cloud sends alert notifications. The resource requires this parameter when `\"notifications.[n].typeName\" : \"SLACK\"`.", + "example": "alerts", + "type": "string" + }, + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "integrationId": { + "description": "The id of the associated integration, the credentials of which to use for requests.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "SLACK" + ], + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "Slack Notification", + "type": "object" + }, + "Source": { + "description": "Document that describes the source of the migration.", + "properties": { + "caCertificatePath": { + "description": "Path to the CA certificate that signed SSL certificates use to authenticate to the source cluster.", + "type": "string" + }, + "clusterName": { + "description": "Label that identifies the source cluster name.", + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the source project.", + "example": "9b43a5b329223c3a1591a678", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "managedAuthentication": { + "description": "Flag that indicates whether MongoDB Automation manages authentication to the source cluster. If true, do not provide values for username and password.", + "type": "boolean" + }, + "password": { + "description": "Password that authenticates the username to the source cluster.", + "type": "string", + "writeOnly": true + }, + "ssl": { + "description": "Flag that indicates whether you have SSL enabled.", + "type": "boolean" + }, + "username": { + "description": "Label that identifies the SCRAM-SHA user that connects to the source cluster.", + "type": "string", + "writeOnly": true + } + }, + "required": [ + "clusterName", + "groupId", + "managedAuthentication", + "ssl" + ], + "type": "object" + }, + "StorageEngine": { + "additionalProperties": { + "description": "Storage engine set for the specific index. This value can be set only at creation. This option uses the following format: `\"storageEngine\" : { \"\u003cstorage-engine-name\u003e\" : \"\u003coptions\u003e\" }` MongoDB validates storage engine configuration options when creating indexes. To support replica sets with members with different storage engines, MongoDB logs these options to the oplog during replication. This option applies to all index types.", + "externalDocs": { + "description": "MongoDB Server Storage Engines", + "url": "https://docs.mongodb.com/manual/core/storage-engines/" + }, + "type": "object" + }, + "description": "Storage engine set for the specific index. This value can be set only at creation. This option uses the following format: `\"storageEngine\" : { \"\u003cstorage-engine-name\u003e\" : \"\u003coptions\u003e\" }` MongoDB validates storage engine configuration options when creating indexes. To support replica sets with members with different storage engines, MongoDB logs these options to the oplog during replication. This option applies to all index types.", + "externalDocs": { + "description": "MongoDB Server Storage Engines", + "url": "https://docs.mongodb.com/manual/core/storage-engines/" + }, + "type": "object" + }, + "StreamConfig": { + "description": "Configuration options for an Atlas Stream Processing Instance.", + "nullable": true, + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "tier": { + "description": "Selected tier for the Stream Instance. Configures Memory / VCPU allowances.", + "enum": [ + "SP30", + "SP10" + ], + "title": "Stream Instance Tier", + "type": "string" + } + }, + "type": "object" + }, + "StreamProcessorAlertConfigViewForNdsGroup": { + "description": "Host metric alert configuration allows to select which Atlas streams processors trigger alerts and how users are notified.", + "properties": { + "created": { + "description": "Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "enabled": { + "default": false, + "description": "Flag that indicates whether someone enabled this alert configuration for the specified project.", + "type": "boolean" + }, + "eventTypeName": { + "$ref": "#/components/schemas/StreamProcessorEventTypeViewAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert configuration.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "matchers": { + "description": "List of rules that determine whether MongoDB Cloud checks an object for the alert configuration.", + "items": { + "$ref": "#/components/schemas/StreamsMatcher" + }, + "type": "array" + }, + "notifications": { + "description": "List that contains the targets that MongoDB Cloud sends notifications.", + "items": { + "$ref": "#/components/schemas/AlertsNotificationRootForGroup" + }, + "type": "array" + }, + "updated": { + "description": "Date and time when someone last updated this alert configuration. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "eventTypeName", + "notifications" + ], + "title": "Stream Processor Alert Configuration", + "type": "object" + }, + "StreamProcessorAlertViewForNdsGroup": { + "description": "Stream Processor alert notifies about activities on Stream Processor in AtlasStreams.", + "properties": { + "acknowledgedUntil": { + "description": "Date and time until which this alert has been acknowledged. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.\n\n- To acknowledge this alert forever, set the parameter value to 100 years in the future.\n\n- To unacknowledge a previously acknowledged alert, do not set this parameter value.", + "format": "date-time", + "type": "string" + }, + "acknowledgementComment": { + "description": "Comment that a MongoDB Cloud user submitted when acknowledging the alert.", + "example": "Expiration on 3/19. Silencing for 7days.", + "maxLength": 200, + "type": "string" + }, + "acknowledgingUsername": { + "description": "MongoDB Cloud username of the person who acknowledged the alert. The response returns this parameter if a MongoDB Cloud user previously acknowledged this alert.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration that sets this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostEventTypeViewForNdsGroupAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "instanceName": { + "description": "The name of the Stream Processing Instance to which this alert applies. The resource returns this parameter for alerts of events impacting Stream Processing Instances.", + "example": "foobar", + "readOnly": true, + "type": "string" + }, + "lastNotified": { + "description": "Date and time that any notifications were last sent for this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if MongoDB Cloud has sent notifications for this alert.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal character string that identifies the organization that owns the project to which this alert applies.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "processorErrorMsg": { + "description": "The error message associated with the Stream Processor to which this alert applies.", + "example": "MongoServerError: Failed to start stream processor: (Location77175) Could not connect to the Kafka topic with kafka error code: -195, message: Local: Broker transport failure.: (Location77175)", + "readOnly": true, + "type": "string" + }, + "processorName": { + "description": "The name of the Stream Processor to which this alert applies. The resource returns this parameter for alerts of events impacting Stream Processors.", + "example": "foobar", + "readOnly": true, + "type": "string" + }, + "processorState": { + "description": "The state of the Stream Processor to which this alert applies. The resource returns this parameter for alerts of events impacting Stream Processors.", + "example": "STARTED", + "readOnly": true, + "type": "string" + }, + "resolved": { + "description": "Date and time that this alert changed to `\"status\" : \"CLOSED\"`. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter once `\"status\" : \"CLOSED\"`.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of this alert at the time you requested its details.", + "enum": [ + "CANCELLED", + "CLOSED", + "OPEN", + "TRACKING" + ], + "example": "OPEN", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Date and time when someone last updated this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "alertConfigId", + "created", + "eventTypeName", + "id", + "status", + "updated" + ], + "title": "Stream Processor Alerts", + "type": "object" + }, + "StreamProcessorEventTypeViewAlertable": { + "description": "Event type that triggers an alert.", + "enum": [ + "STREAM_PROCESSOR_STATE_IS_FAILED" + ], + "example": "STREAM_PROCESSOR_STATE_IS_FAILED", + "title": "Stream Processor Event Types", + "type": "string" + }, + "StreamProcessorEventTypeViewForNdsGroup": { + "description": "Unique identifier of event type.", + "enum": [ + "STREAM_PROCESSOR_STATE_IS_FAILED" + ], + "example": "STREAM_PROCESSOR_STATE_IS_FAILED", + "title": "Stream Processor Event Types", + "type": "string" + }, + "StreamProcessorEventViewForNdsGroup": { + "description": "Stream Processor event identifies different activities about a stream processor in Atlas Streams.", + "properties": { + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/StreamProcessorEventTypeViewForNdsGroup" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "instanceName": { + "description": "Name of the stream processing instance associated with the event.", + "example": "foobar", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "processorErrorMsg": { + "description": "Error message linked to the stream processor associated with the event.", + "example": "invalid auth", + "readOnly": true, + "type": "string" + }, + "processorName": { + "description": "Name of the stream processor associated with the event.", + "example": "foobar", + "readOnly": true, + "type": "string" + }, + "processorState": { + "description": "State of the stream processor associated with the event.", + "example": "FAILED", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Stream Processor Events", + "type": "object" + }, + "StreamsClusterConnection": { + "allOf": [ + { + "$ref": "#/components/schemas/StreamsConnection" + }, + { + "properties": { + "clusterName": { + "description": "Name of the cluster configured for this connection.", + "type": "string" + }, + "dbRoleToExecute": { + "$ref": "#/components/schemas/DBRoleToExecute" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "StreamsConnection": { + "description": "Settings that define a connection to an external data store.", + "discriminator": { + "mapping": { + "Cluster": "#/components/schemas/StreamsClusterConnection", + "Kafka": "#/components/schemas/StreamsKafkaConnection", + "Sample": "#/components/schemas/StreamsSampleConnection" + }, + "propertyName": "type" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/StreamsSampleConnection" + }, + { + "$ref": "#/components/schemas/StreamsClusterConnection" + }, + { + "$ref": "#/components/schemas/StreamsKafkaConnection" + } + ], + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable label that identifies the stream connection. In the case of the Sample type, this is the name of the sample source.", + "type": "string" + }, + "type": { + "description": "Type of the connection. Can be either Cluster or Kafka.", + "enum": [ + "Kafka", + "Cluster", + "Sample" + ], + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "StreamsDLQ": { + "description": "Dead letter queue for the stream processor.", + "properties": { + "coll": { + "description": "Name of the collection that will be used for the DLQ.", + "type": "string" + }, + "connectionName": { + "description": "Connection name that will be used to write DLQ messages to. Has to be an Atlas connection.", + "type": "string" + }, + "db": { + "description": "Name of the database that will be used for the DLQ.", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "StreamsDataProcessRegion": { + "description": "Information about the cloud provider region in which MongoDB Cloud processes the stream.", + "properties": { + "cloudProvider": { + "description": "Label that identifies the cloud service provider where MongoDB Cloud performs stream processing. Currently, this parameter supports AWS only.", + "enum": [ + "AWS", + "GCP", + "AZURE", + "TENANT", + "SERVERLESS" + ], + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "region": { + "$ref": "#/components/schemas/BaseStreamsRegion" + } + }, + "required": [ + "cloudProvider", + "region" + ], + "type": "object" + }, + "StreamsEventTypeViewForNdsGroup": { + "description": "Unique identifier of event type.", + "enum": [ + "MAX_PROCESSOR_COUNT_REACHED" + ], + "example": "MAX_PROCESSOR_COUNT_REACHED", + "title": "Streams Event Types", + "type": "string" + }, + "StreamsEventViewForNdsGroup": { + "description": "Streams event identifies different activities about Atlas Streams.", + "properties": { + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/StreamsEventTypeViewForNdsGroup" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "instanceName": { + "description": "Name of the stream processing instance associated with the event.", + "example": "foobar", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Streams Events", + "type": "object" + }, + "StreamsKafkaAuthentication": { + "description": "User credentials required to connect to a Kafka Cluster. Includes the authentication type, as well as the parameters for that authentication mode.", + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "mechanism": { + "description": "Style of authentication. Can be one of PLAIN, SCRAM-256, or SCRAM-512.", + "type": "string" + }, + "password": { + "description": "Password of the account to connect to the Kafka cluster.", + "format": "password", + "type": "string", + "writeOnly": true + }, + "username": { + "description": "Username of the account to connect to the Kafka cluster.", + "type": "string" + } + }, + "type": "object" + }, + "StreamsKafkaConnection": { + "allOf": [ + { + "$ref": "#/components/schemas/StreamsConnection" + }, + { + "properties": { + "authentication": { + "$ref": "#/components/schemas/StreamsKafkaAuthentication" + }, + "bootstrapServers": { + "description": "Comma separated list of server addresses.", + "type": "string" + }, + "config": { + "additionalProperties": { + "description": "A map of Kafka key-value pairs for optional configuration. This is a flat object, and keys can have '.' characters.", + "example": "{\"group.protocol.type\":\"consumer\",\"debug\":\"queue, msg, protocol\"}", + "type": "string" + }, + "description": "A map of Kafka key-value pairs for optional configuration. This is a flat object, and keys can have '.' characters.", + "example": { + "debug": "queue, msg, protocol", + "group.protocol.type": "consumer" + }, + "type": "object" + }, + "networking": { + "$ref": "#/components/schemas/StreamsKafkaNetworking" + }, + "proxyInfo": { + "$ref": "#/components/schemas/ProxyInfo" + }, + "security": { + "$ref": "#/components/schemas/StreamsKafkaSecurity" + } + }, + "type": "object" + } + ], + "type": "object" + }, + "StreamsKafkaNetworking": { + "description": "Networking Access Type can either be 'PUBLIC' (default) or VPC. VPC type is in public preview, please file a support ticket to enable VPC Network Access", + "properties": { + "access": { + "$ref": "#/components/schemas/StreamsKafkaNetworkingAccess" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "StreamsKafkaNetworkingAccess": { + "description": "Information about the networking access.", + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Id of the vpc peer when the type is VPC.", + "type": "string" + }, + "type": { + "description": "Selected networking type. Either PUBLIC or VPC. Defaults to PUBLIC", + "enum": [ + "PUBLIC", + "VPC" + ], + "title": "Networking Access Type", + "type": "string" + } + }, + "type": "object" + }, + "StreamsKafkaSecurity": { + "description": "Properties for the secure transport connection to Kafka. For SSL, this can include the trusted certificate to use.", + "properties": { + "brokerPublicCertificate": { + "description": "A trusted, public x509 certificate for connecting to Kafka over SSL.", + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "protocol": { + "description": "Describes the transport type. Can be either PLAINTEXT or SSL.", + "type": "string" + } + }, + "type": "object" + }, + "StreamsMatcher": { + "description": "Rules to apply when comparing a stream processing instance or stream processor against this alert configuration.", + "properties": { + "fieldName": { + "$ref": "#/components/schemas/StreamsMatcherField" + }, + "operator": { + "description": "Comparison operator to apply when checking the current metric value against **matcher[n].value**.", + "enum": [ + "EQUALS", + "CONTAINS", + "STARTS_WITH", + "ENDS_WITH", + "NOT_EQUALS", + "NOT_CONTAINS", + "REGEX" + ], + "type": "string" + }, + "value": { + "description": "Value to match or exceed using the specified **matchers.operator**.", + "example": "event-replica-set", + "type": "string" + } + }, + "required": [ + "fieldName", + "operator", + "value" + ], + "title": "Matchers", + "type": "object" + }, + "StreamsMatcherField": { + "description": "Name of the parameter in the target object that MongoDB Cloud checks. The parameter must match all rules for MongoDB Cloud to check for alert configurations.", + "enum": [ + "INSTANCE_NAME", + "PROCESSOR_NAME" + ], + "example": "INSTANCE_NAME", + "title": "Streams Matcher Fields", + "type": "string" + }, + "StreamsProcessor": { + "description": "An atlas stream processor.", + "properties": { + "_id": { + "description": "Unique 24-hexadecimal character string that identifies the stream processor.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "dlq": { + "$ref": "#/components/schemas/StreamsDLQ" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable name of the stream processor.", + "type": "string" + }, + "pipeline": { + "description": "Stream aggregation pipeline you want to apply to your streaming data.", + "type": "string" + } + }, + "type": "object" + }, + "StreamsProcessorWithStats": { + "description": "An atlas stream processor with optional stats.", + "properties": { + "_id": { + "description": "Unique 24-hexadecimal character string that identifies the stream processor.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable name of the stream processor.", + "readOnly": true, + "type": "string" + }, + "pipeline": { + "description": "Stream aggregation pipeline you want to apply to your streaming data.", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "The state of the stream processor.", + "readOnly": true, + "type": "string" + }, + "stats": { + "additionalProperties": { + "description": "The stats associated with the stream processor.", + "readOnly": true, + "type": "object" + }, + "description": "The stats associated with the stream processor.", + "readOnly": true, + "type": "object" + } + }, + "required": [ + "_id", + "name", + "pipeline", + "state" + ], + "type": "object" + }, + "StreamsSampleConnection": { + "allOf": [ + { + "$ref": "#/components/schemas/StreamsConnection" + } + ], + "type": "object" + }, + "StreamsTenant": { + "properties": { + "_id": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "connections": { + "description": "List of connections configured in the stream instance.", + "items": { + "$ref": "#/components/schemas/StreamsConnection" + }, + "readOnly": true, + "type": "array" + }, + "dataProcessRegion": { + "$ref": "#/components/schemas/StreamsDataProcessRegion" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hostnames": { + "description": "List that contains the hostnames assigned to the stream instance.", + "items": { + "description": "Unique hostname assigned to the stream instance.", + "readOnly": true, + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable label that identifies the stream instance.", + "type": "string" + }, + "streamConfig": { + "$ref": "#/components/schemas/StreamConfig" + } + }, + "type": "object" + }, + "SummaryNotification": { + "description": "Summary notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "emailAddress": { + "description": "Email address to which MongoDB Cloud sends alert notifications. The resource requires this parameter when `\"notifications.[n].typeName\" : \"EMAIL\"`. You don't need to set this value to send emails to individual or groups of MongoDB Cloud users including:\n\n- specific MongoDB Cloud users (`\"notifications.[n].typeName\" : \"USER\"`)\n- MongoDB Cloud users with specific project roles (`\"notifications.[n].typeName\" : \"GROUP\"`)\n- MongoDB Cloud users with specific organization roles (`\"notifications.[n].typeName\" : \"ORG\"`)\n- MongoDB Cloud teams (`\"notifications.[n].typeName\" : \"TEAM\"`)\n\nTo send emails to one MongoDB Cloud user or grouping of users, set the **notifications.[n].emailEnabled** parameter.", + "format": "email", + "type": "string" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "SUMMARY" + ], + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "Summary Notification", + "type": "object" + }, + "SynonymMappingStatusDetail": { + "description": "Contains the status of the index's synonym mappings on each search host. This field (and its subfields) only appear if the index has synonyms defined.", + "properties": { + "message": { + "description": "Optional message describing an error.", + "type": "string" + }, + "queryable": { + "description": "Flag that indicates whether the synonym mapping is queryable on a host.", + "type": "boolean" + }, + "status": { + "description": "Status that describes this index's synonym mappings. This status appears only if the index has synonyms defined.", + "enum": [ + "FAILED", + "BUILDING", + "READY" + ], + "type": "string" + } + }, + "title": "Synonym Mapping Status Detail", + "type": "object" + }, + "SynonymMappingStatusDetailMap": { + "additionalProperties": { + "$ref": "#/components/schemas/SynonymMappingStatusDetail" + }, + "type": "object", + "x-additionalPropertiesName": "Synonym Mapping Name" + }, + "SynonymSource": { + "description": "Data set that stores words and their applicable synonyms.", + "properties": { + "collection": { + "description": "Label that identifies the MongoDB collection that stores words and their applicable synonyms.", + "type": "string" + } + }, + "required": [ + "collection" + ], + "type": "object" + }, + "SystemStatus": { + "properties": { + "apiKey": { + "$ref": "#/components/schemas/ApiKey" + }, + "appName": { + "description": "Human-readable label that identifies the service from which you requested this response.", + "enum": [ + "MongoDB Atlas" + ], + "readOnly": true, + "type": "string" + }, + "build": { + "description": "Unique 40-hexadecimal digit hash that identifies the latest git commit merged for this application.", + "example": "83be55e140f493c88e7f578aae96548dd881587b", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "throttling": { + "description": "Flag that indicates whether someone enabled throttling on this service.", + "readOnly": true, + "type": "boolean" + } + }, + "required": [ + "apiKey", + "appName", + "build", + "throttling" + ], + "type": "object" + }, + "TargetOrg": { + "properties": { + "linkToken": { + "description": "Link token that contains all the information required to complete the link.", + "type": "string" + } + }, + "required": [ + "linkToken" + ], + "type": "object" + }, + "TargetOrgRequest": { + "properties": { + "accessListIps": { + "description": "IP address access list entries associated with the API key.", + "items": { + "description": "One IP address access list entry associated with the API key.", + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Team": { + "properties": { + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this team.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable label that identifies the team.", + "type": "string" + }, + "usernames": { + "description": "List that contains the MongoDB Cloud users in this team.", + "items": { + "description": "List that contains email addresses that identify MongoDB Cloud users to in this team.", + "format": "email", + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "TeamEvent": { + "description": "Team event identifies different activities around organization teams.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/TeamEventTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "teamId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization team associated with this event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Team Events", + "type": "object" + }, + "TeamEventTypeView": { + "description": "Unique identifier of event type.", + "enum": [ + "TEAM_CREATED", + "TEAM_DELETED", + "TEAM_UPDATED", + "TEAM_NAME_CHANGED", + "TEAM_ADDED_TO_GROUP", + "TEAM_REMOVED_FROM_GROUP", + "TEAM_ROLES_MODIFIED" + ], + "example": "TEAM_ADDED_TO_GROUP", + "title": "Team Event Types", + "type": "string" + }, + "TeamEventTypeViewForNdsGroup": { + "description": "Unique identifier of event type.", + "enum": [ + "TEAM_ADDED_TO_GROUP", + "TEAM_REMOVED_FROM_GROUP", + "TEAM_ROLES_MODIFIED" + ], + "example": "TEAM_ADDED_TO_GROUP", + "title": "Team Event Types", + "type": "string" + }, + "TeamEventViewForNdsGroup": { + "description": "Team event identifies different activities around organization teams.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/TeamEventTypeViewForNdsGroup" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "teamId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization team associated with this event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "Team Events", + "type": "object" + }, + "TeamNotification": { + "description": "Team notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "emailEnabled": { + "description": "Flag that indicates whether MongoDB Cloud should send email notifications. The resource requires this parameter when one of the following values have been set:\n\n- `\"notifications.[n].typeName\" : \"ORG\"`\n- `\"notifications.[n].typeName\" : \"GROUP\"`\n- `\"notifications.[n].typeName\" : \"USER\"`", + "type": "boolean" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "smsEnabled": { + "description": "Flag that indicates whether MongoDB Cloud should send text message notifications. The resource requires this parameter when one of the following values have been set:\n\n- `\"notifications.[n].typeName\" : \"ORG\"`\n- `\"notifications.[n].typeName\" : \"GROUP\"`\n- `\"notifications.[n].typeName\" : \"USER\"`", + "type": "boolean" + }, + "teamId": { + "description": "Unique 24-hexadecimal digit string that identifies one MongoDB Cloud team. The resource requires this parameter when `\"notifications.[n].typeName\" : \"TEAM\"`.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "teamName": { + "description": "Name of the MongoDB Cloud team that receives this notification. The resource requires this parameter when `\"notifications.[n].typeName\" : \"TEAM\"`.", + "example": "Atlas", + "type": "string" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "TEAM" + ], + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "Team Notification", + "type": "object" + }, + "TeamResponse": { + "properties": { + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this team.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable label that identifies the team.", + "type": "string" + } + }, + "type": "object" + }, + "TeamRole": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "roleNames": { + "description": "One or more organization- or project-level roles to assign to the MongoDB Cloud user.", + "items": { + "enum": [ + "GROUP_CLUSTER_MANAGER", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_OWNER", + "GROUP_READ_ONLY" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "teamId": { + "description": "Unique 24-hexadecimal character string that identifies the team.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + } + }, + "type": "object" + }, + "TeamUpdate": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable label that identifies the team.", + "type": "string", + "writeOnly": true + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "TenantHardwareSpec": { + "properties": { + "instanceSize": { + "description": "Hardware specification for the instance sizes in this region. Each instance size has a default storage and memory capacity. The instance size you select applies to all the data-bearing hosts in your instance size.", + "enum": [ + "M0", + "M2", + "M5" + ], + "title": "Tenant Instance Sizes", + "type": "string" + } + }, + "type": "object" + }, + "TenantHardwareSpec20250101": { + "properties": { + "diskSizeGB": { + "description": "Storage capacity that the host's root volume possesses expressed in gigabytes. Increase this number to add capacity. MongoDB Cloud requires this parameter if you set **replicationSpecs**. If you specify a disk size below the minimum (10 GB), this parameter defaults to the minimum disk size value. Storage charge calculations depend on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier.", + "format": "double", + "maximum": 4096, + "minimum": 10, + "type": "number" + }, + "instanceSize": { + "description": "Hardware specification for the instance sizes in this region. Each instance size has a default storage and memory capacity. The instance size you select applies to all the data-bearing hosts in the region.", + "enum": [ + "M0", + "M2", + "M5" + ], + "title": "Tenant Instance Sizes", + "type": "string" + } + }, + "type": "object" + }, + "TenantRegionConfig": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudRegionConfig" + }, + { + "properties": { + "backingProviderName": { + "description": "Cloud service provider on which MongoDB Cloud provisioned the multi-tenant cluster. The resource returns this parameter when **providerName** is `TENANT` and **electableSpecs.instanceSize** is `M0`, `M2` or `M5`.", + "enum": [ + "AWS", + "GCP", + "AZURE" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "description": "Details that explain how MongoDB Cloud replicates data in one region on the specified MongoDB database.", + "title": "Tenant Regional Replication Specifications", + "type": "object" + }, + "TenantRegionConfig20250101": { + "allOf": [ + { + "$ref": "#/components/schemas/CloudRegionConfig20250101" + }, + { + "properties": { + "backingProviderName": { + "description": "Cloud service provider on which MongoDB Cloud provisioned the multi-tenant cluster. The resource returns this parameter when **providerName** is `TENANT` and **electableSpecs.instanceSize** is `M0`, `M2` or `M5`.", + "enum": [ + "AWS", + "GCP", + "AZURE" + ], + "type": "string" + } + }, + "type": "object" + } + ], + "description": "Details that explain how MongoDB Cloud replicates data in one region on the specified MongoDB database.", + "title": "Tenant Regional Replication Specifications", + "type": "object" + }, + "TenantRestore": { + "properties": { + "clusterName": { + "description": "Human-readable label that identifies the source cluster.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "deliveryType": { + "description": "Means by which this resource returns the snapshot to the requesting MongoDB Cloud user.", + "enum": [ + "RESTORE", + "DOWNLOAD" + ], + "readOnly": true, + "type": "string" + }, + "expirationDate": { + "description": "Date and time when the download link no longer works. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the restore job.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "projectId": { + "description": "Unique 24-hexadecimal digit string that identifies the project from which the restore job originated.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "restoreFinishedDate": { + "description": "Date and time when MongoDB Cloud completed writing this snapshot. MongoDB Cloud changes the status of the restore job to `CLOSED`. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "restoreScheduledDate": { + "description": "Date and time when MongoDB Cloud will restore this snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "snapshotFinishedDate": { + "description": "Date and time when MongoDB Cloud completed writing this snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "snapshotId": { + "description": "Unique 24-hexadecimal digit string that identifies the snapshot to restore.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + }, + "snapshotUrl": { + "description": "Internet address from which you can download the compressed snapshot files. The resource returns this parameter when `\"deliveryType\" : \"DOWNLOAD\"`.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Phase of the restore workflow for this job at the time this resource made this request.", + "enum": [ + "PENDING", + "QUEUED", + "RUNNING", + "FAILED", + "COMPLETED" + ], + "readOnly": true, + "type": "string" + }, + "targetDeploymentItemName": { + "description": "Human-readable label that identifies the cluster on the target project to which you want to restore the snapshot. You can restore the snapshot to a cluster tier *M2* or greater.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.(),:\u0026@+']{1,64}$", + "type": "string" + }, + "targetProjectId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that contains the cluster to which you want to restore the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string" + } + }, + "required": [ + "snapshotId", + "targetDeploymentItemName" + ], + "type": "object" + }, + "TextSearchHostStatusDetail": { + "properties": { + "hostname": { + "description": "Hostname that corresponds to the status detail.", + "type": "string" + }, + "mainIndex": { + "$ref": "#/components/schemas/TextSearchIndexStatusDetail" + }, + "queryable": { + "description": "Flag that indicates whether the index is queryable on the host.", + "type": "boolean" + }, + "stagedIndex": { + "$ref": "#/components/schemas/TextSearchIndexStatusDetail" + }, + "status": { + "description": "Condition of the search index when you made this request.\n\n | Status | Index Condition |\n |---|---|\n | DELETING | The index is being deleted. |\n | FAILED | The index build failed. Indexes can enter the FAILED state due to an invalid index definition. |\n | STALE | The index is queryable but has stopped replicating data from the indexed collection. Searches on the index may return out-of-date data. |\n | PENDING | Atlas has not yet started building the index. |\n | BUILDING | Atlas is building or re-building the index after an edit. |\n | READY | The index is ready and can support queries. |\n", + "enum": [ + "DELETING", + "FAILED", + "STALE", + "PENDING", + "BUILDING", + "READY", + "DOES_NOT_EXIST" + ], + "type": "string" + } + }, + "title": "Text Search Host Status Detail", + "type": "object" + }, + "TextSearchIndexCreateRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/SearchIndexCreateRequest" + }, + { + "properties": { + "definition": { + "$ref": "#/components/schemas/TextSearchIndexDefinition" + } + }, + "type": "object" + } + ], + "description": "Text Search Index Create Request", + "required": [ + "collectionName", + "database", + "definition", + "name" + ], + "type": "object" + }, + "TextSearchIndexDefinition": { + "description": "The text search index definition set by the user.", + "properties": { + "analyzer": { + "default": "lucene.standard", + "description": "Specific pre-defined method chosen to convert database field text into searchable words. This conversion reduces the text of fields into the smallest units of text. These units are called a **term** or **token**. This process, known as tokenization, involves making the following changes to the text in fields:\n\n- extracting words\n- removing punctuation\n- removing accents\n- changing to lowercase\n- removing common words\n- reducing words to their root form (stemming)\n- changing words to their base form (lemmatization)\n MongoDB Cloud uses the process you select to build the Atlas Search index.", + "enum": [ + "lucene.standard", + "lucene.simple", + "lucene.whitespace", + "lucene.keyword", + "lucene.arabic", + "lucene.armenian", + "lucene.basque", + "lucene.bengali", + "lucene.brazilian", + "lucene.bulgarian", + "lucene.catalan", + "lucene.chinese", + "lucene.cjk", + "lucene.czech", + "lucene.danish", + "lucene.dutch", + "lucene.english", + "lucene.finnish", + "lucene.french", + "lucene.galician", + "lucene.german", + "lucene.greek", + "lucene.hindi", + "lucene.hungarian", + "lucene.indonesian", + "lucene.irish", + "lucene.italian", + "lucene.japanese", + "lucene.korean", + "lucene.kuromoji", + "lucene.latvian", + "lucene.lithuanian", + "lucene.morfologik", + "lucene.nori", + "lucene.norwegian", + "lucene.persian", + "lucene.portuguese", + "lucene.romanian", + "lucene.russian", + "lucene.smartcn", + "lucene.sorani", + "lucene.spanish", + "lucene.swedish", + "lucene.thai", + "lucene.turkish", + "lucene.ukrainian" + ], + "externalDocs": { + "description": "Atlas Search Analyzers", + "url": "https://dochub.mongodb.org/core/analyzers--fts" + }, + "type": "string" + }, + "analyzers": { + "description": "List of user-defined methods to convert database field text into searchable words.", + "externalDocs": { + "description": "Custom Atlas Search Analyzers", + "url": "https://dochub.mongodb.org/core/custom-fts" + }, + "items": { + "$ref": "#/components/schemas/AtlasSearchAnalyzer" + }, + "type": "array" + }, + "mappings": { + "$ref": "#/components/schemas/SearchMappings" + }, + "searchAnalyzer": { + "default": "lucene.standard", + "description": "Method applied to identify words when searching this index.", + "enum": [ + "lucene.standard", + "lucene.simple", + "lucene.whitespace", + "lucene.keyword", + "lucene.arabic", + "lucene.armenian", + "lucene.basque", + "lucene.bengali", + "lucene.brazilian", + "lucene.bulgarian", + "lucene.catalan", + "lucene.chinese", + "lucene.cjk", + "lucene.czech", + "lucene.danish", + "lucene.dutch", + "lucene.english", + "lucene.finnish", + "lucene.french", + "lucene.galician", + "lucene.german", + "lucene.greek", + "lucene.hindi", + "lucene.hungarian", + "lucene.indonesian", + "lucene.irish", + "lucene.italian", + "lucene.japanese", + "lucene.korean", + "lucene.kuromoji", + "lucene.latvian", + "lucene.lithuanian", + "lucene.morfologik", + "lucene.nori", + "lucene.norwegian", + "lucene.persian", + "lucene.portuguese", + "lucene.romanian", + "lucene.russian", + "lucene.smartcn", + "lucene.sorani", + "lucene.spanish", + "lucene.swedish", + "lucene.thai", + "lucene.turkish", + "lucene.ukrainian" + ], + "type": "string" + }, + "storedSource": { + "description": "Flag that indicates whether to store all fields (true) on Atlas Search. By default, Atlas doesn't store (false) the fields on Atlas Search. Alternatively, you can specify an object that only contains the list of fields to store (include) or not store (exclude) on Atlas Search. To learn more, see Stored Source Fields.", + "example": { + "include | exclude": [ + "field1", + "field2" + ] + }, + "externalDocs": { + "description": "Stored Source Fields", + "url": "https://dochub.mongodb.org/core/atlas-search-stored-source" + }, + "type": "object" + }, + "synonyms": { + "description": "Rule sets that map words to their synonyms in this index.", + "externalDocs": { + "description": "Synonym Mapping", + "url": "https://dochub.mongodb.org/core/fts-synonym-mappings" + }, + "items": { + "$ref": "#/components/schemas/SearchSynonymMappingDefinition" + }, + "type": "array" + } + }, + "required": [ + "mappings" + ], + "title": "Text Search Index Definition", + "type": "object" + }, + "TextSearchIndexResponse": { + "allOf": [ + { + "$ref": "#/components/schemas/SearchIndexResponse" + }, + { + "properties": { + "latestDefinition": { + "$ref": "#/components/schemas/TextSearchIndexDefinition" + }, + "statusDetail": { + "description": "List of documents detailing index status on each host.", + "items": { + "$ref": "#/components/schemas/TextSearchHostStatusDetail" + }, + "type": "array" + }, + "synonymMappingStatus": { + "description": "Status that describes this index's synonym mappings. This status appears only if the index has synonyms defined.", + "enum": [ + "FAILED", + "BUILDING", + "READY" + ], + "type": "string" + }, + "synonymMappingStatusDetail": { + "description": "A list of documents describing the status of the index's synonym mappings on each search host. Only appears if the index has synonyms defined.", + "items": { + "additionalProperties": { + "$ref": "#/components/schemas/SynonymMappingStatusDetail" + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + } + ], + "title": "Text Search Index Response", + "type": "object" + }, + "TextSearchIndexStatusDetail": { + "description": "Contains status information about a text search index.", + "properties": { + "definition": { + "$ref": "#/components/schemas/TextSearchIndexDefinition" + }, + "definitionVersion": { + "$ref": "#/components/schemas/SearchIndexDefinitionVersion" + }, + "message": { + "description": "Optional message describing an error.", + "type": "string" + }, + "queryable": { + "description": "Flag that indicates whether the index generation is queryable on the host.", + "type": "boolean" + }, + "status": { + "description": "Condition of the search index when you made this request.\n\n | Status | Index Condition |\n |---|---|\n | DELETING | The index is being deleted. |\n | FAILED | The index build failed. Indexes can enter the FAILED state due to an invalid index definition. |\n | STALE | The index is queryable but has stopped replicating data from the indexed collection. Searches on the index may return out-of-date data. |\n | PENDING | Atlas has not yet started building the index. |\n | BUILDING | Atlas is building or re-building the index after an edit. |\n | READY | The index is ready and can support queries. |\n", + "enum": [ + "DELETING", + "FAILED", + "STALE", + "PENDING", + "BUILDING", + "READY", + "DOES_NOT_EXIST" + ], + "type": "string" + }, + "synonymMappingStatus": { + "description": "Status that describes this index's synonym mappings. This status appears only if the index has synonyms defined.", + "enum": [ + "FAILED", + "BUILDING", + "READY" + ], + "type": "string" + }, + "synonymMappingStatusDetail": { + "description": "List of synonym statuses by mapping.", + "items": { + "$ref": "#/components/schemas/SynonymMappingStatusDetailMap" + }, + "type": "array" + } + }, + "title": "Text Search Index Status Detail", + "type": "object" + }, + "ThirdPartyIntegration": { + "description": "Collection of settings that describe third-party integrations.", + "discriminator": { + "mapping": { + "DATADOG": "#/components/schemas/Datadog", + "MICROSOFT_TEAMS": "#/components/schemas/MicrosoftTeams", + "NEW_RELIC": "#/components/schemas/NewRelic", + "OPS_GENIE": "#/components/schemas/OpsGenie", + "PAGER_DUTY": "#/components/schemas/PagerDuty", + "PROMETHEUS": "#/components/schemas/Prometheus", + "SLACK": "#/components/schemas/Slack", + "VICTOR_OPS": "#/components/schemas/VictorOps", + "WEBHOOK": "#/components/schemas/Webhook" + }, + "propertyName": "type" + }, + "properties": { + "id": { + "description": "Integration id.", + "nullable": true, + "type": "string" + }, + "type": { + "description": "Integration type", + "enum": [ + "PAGER_DUTY", + "SLACK", + "DATADOG", + "NEW_RELIC", + "OPS_GENIE", + "VICTOR_OPS", + "WEBHOOK", + "HIP_CHAT", + "PROMETHEUS", + "MICROSOFT_TEAMS" + ], + "title": "Integration Type", + "type": "string" + } + }, + "title": "Third-Party Integration", + "type": "object" + }, + "TimeMetricAlertView": { + "properties": { + "acknowledgedUntil": { + "description": "Date and time until which this alert has been acknowledged. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.\n\n- To acknowledge this alert forever, set the parameter value to 100 years in the future.\n\n- To unacknowledge a previously acknowledged alert, do not set this parameter value.", + "format": "date-time", + "type": "string" + }, + "acknowledgementComment": { + "description": "Comment that a MongoDB Cloud user submitted when acknowledging the alert.", + "example": "Expiration on 3/19. Silencing for 7days.", + "maxLength": 200, + "type": "string" + }, + "acknowledgingUsername": { + "description": "MongoDB Cloud username of the person who acknowledged the alert. The response returns this parameter if a MongoDB Cloud user previously acknowledged this alert.", + "format": "email", + "readOnly": true, + "type": "string" + }, + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration that sets this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "clusterName": { + "description": "Human-readable label that identifies the cluster to which this alert applies. This resource returns this parameter for alerts of events impacting backups, replica sets, or sharded clusters.", + "example": "cluster1", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when MongoDB Cloud created this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "currentValue": { + "$ref": "#/components/schemas/TimeMetricValueView" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostMetricEventTypeViewAlertable" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that owns this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "hostnameAndPort": { + "description": "Hostname and port of the host to which this alert applies. The resource returns this parameter for alerts of events impacting hosts or replica sets.", + "example": "cloud-test.mongodb.com:27017", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies this alert.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "lastNotified": { + "description": "Date and time that any notifications were last sent for this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter if MongoDB Cloud has sent notifications for this alert.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "metricName": { + "description": "Name of the metric against which Atlas checks the configured `metricThreshold.threshold`.\n\nTo learn more about the available metrics, see \u003ca href=\"https://www.mongodb.com/docs/atlas/reference/alert-host-metrics/#std-label-measurement-types\" target=\"_blank\"\u003eHost Metrics\u003c/a\u003e.\n\n**NOTE**: If you set eventTypeName to OUTSIDE_SERVERLESS_METRIC_THRESHOLD, you can specify only metrics available for serverless. To learn more, see \u003ca href=\"https://dochub.mongodb.org/core/alert-config-serverless-measurements\" target=\"_blank\"\u003eServerless Measurements\u003c/a\u003e.", + "example": "ASSERT_USER", + "readOnly": true, + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal character string that identifies the organization that owns the project to which this alert applies.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Name of the replica set to which this alert applies. The response returns this parameter for alerts of events impacting backups, hosts, or replica sets.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "resolved": { + "description": "Date and time that this alert changed to `\"status\" : \"CLOSED\"`. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC. The resource returns this parameter once `\"status\" : \"CLOSED\"`.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "State of this alert at the time you requested its details.", + "enum": [ + "CANCELLED", + "CLOSED", + "OPEN", + "TRACKING" + ], + "example": "OPEN", + "readOnly": true, + "type": "string" + }, + "updated": { + "description": "Date and time when someone last updated this alert. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "alertConfigId", + "created", + "eventTypeName", + "id", + "status", + "updated" + ], + "type": "object" + }, + "TimeMetricEventView": { + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "currentValue": { + "$ref": "#/components/schemas/TimeMetricValueView" + }, + "eventTypeName": { + "$ref": "#/components/schemas/HostMetricEventTypeView" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "metricName": { + "description": "Human-readable label of the metric associated with the **alertId**. This field may change type of **currentValue** field.", + "readOnly": true, + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "port": { + "description": "IANA port on which the MongoDB process listens for requests.", + "example": 27017, + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "replicaSetName": { + "description": "Human-readable label of the replica set associated with the event.", + "example": "event-replica-set", + "readOnly": true, + "type": "string" + }, + "shardName": { + "description": "Human-readable label of the shard associated with the event.", + "example": "event-sh-01", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "type": "object" + }, + "TimeMetricThresholdView": { + "properties": { + "metricName": { + "description": "Human-readable label that identifies the metric against which MongoDB Cloud checks the configured **metricThreshold.threshold**.", + "type": "string" + }, + "mode": { + "description": "MongoDB Cloud computes the current metric value as an average.", + "enum": [ + "AVERAGE" + ], + "type": "string" + }, + "operator": { + "$ref": "#/components/schemas/Operator" + }, + "threshold": { + "description": "Value of metric that, when exceeded, triggers an alert.", + "format": "double", + "type": "number" + }, + "units": { + "$ref": "#/components/schemas/TimeMetricUnits" + } + }, + "required": [ + "metricName" + ], + "type": "object" + }, + "TimeMetricUnits": { + "default": "HOURS", + "description": "Element used to express the quantity. This can be an element of time, storage capacity, and the like.", + "enum": [ + "NANOSECONDS", + "MILLISECONDS", + "MILLION_MINUTES", + "SECONDS", + "MINUTES", + "HOURS", + "DAYS" + ], + "title": "Time Metric Units", + "type": "string" + }, + "TimeMetricValueView": { + "description": "Measurement of the **metricName** recorded at the time of the event.", + "properties": { + "number": { + "description": "Amount of the **metricName** recorded at the time of the event. This value triggered the alert.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "units": { + "$ref": "#/components/schemas/TimeMetricUnits" + } + }, + "readOnly": true, + "title": "Time Metric Value", + "type": "object" + }, + "TokenFilterEnglishPossessive": { + "description": "Filter that removes possessives (trailing 's) from words.", + "properties": { + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "englishPossessive" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "englishPossessive", + "type": "object" + }, + "TokenFilterFlattenGraph": { + "description": "Filter that transforms a token filter graph, such as the token filter graph that the wordDelimiterGraph token filter produces, into a flat form suitable for indexing.", + "properties": { + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "flattenGraph" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "flattenGraph", + "type": "object" + }, + "TokenFilterPorterStemming": { + "description": "Filter that uses the porter stemming algorithm to remove the common morphological and inflectional suffixes from words in English. It expects lowercase text and doesn't work as expected for uppercase text.", + "properties": { + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "porterStemming" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "porterStemming", + "type": "object" + }, + "TokenFilterSpanishPluralStemming": { + "description": "Filter that stems Spanish plural words. It expects lowercase text.", + "properties": { + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "spanishPluralStemming" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "spanishPluralStemming", + "type": "object" + }, + "TokenFilterStempel": { + "description": "Filter that uses Lucene's default Polish stemmer table to stem words in the Polish language. It expects lowercase text.", + "externalDocs": { + "description": "Default Polish stemmer table", + "url": "https://lucene.apache.org/core/9_2_0/analysis/stempel/org/apache/lucene/analysis/pl/PolishAnalyzer.html#DEFAULT_STEMMER_FILE" + }, + "properties": { + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "stempel" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "stempel", + "type": "object" + }, + "TokenFilterWordDelimiterGraph": { + "description": "Filter that splits tokens into sub-tokens based on configured rules.", + "properties": { + "delimiterOptions": { + "description": "Object that contains the rules that determine how to split words into sub-words.", + "properties": { + "concatenateAll": { + "default": false, + "description": "Flag that indicates whether to concatenate runs.", + "type": "boolean" + }, + "concatenateNumbers": { + "default": false, + "description": "Flag that indicates whether to concatenate runs of sub-numbers.", + "type": "boolean" + }, + "concatenateWords": { + "default": false, + "description": "Flag that indicates whether to concatenate runs of sub-words.", + "type": "boolean" + }, + "generateNumberParts": { + "default": true, + "description": "Flag that indicates whether to split tokens based on sub-numbers. For example, if `true`, this option splits `100-2` into `100` and `2`.", + "type": "boolean" + }, + "generateWordParts": { + "default": true, + "description": "Flag that indicates whether to split tokens based on sub-words.", + "type": "boolean" + }, + "ignoreKeywords": { + "default": false, + "description": "Flag that indicates whether to skip tokens with the `keyword` attribute set to `true`", + "type": "boolean" + }, + "preserveOriginal": { + "default": true, + "description": "Flag that indicates whether to generate tokens of the original words.", + "type": "boolean" + }, + "splitOnCaseChange": { + "default": true, + "description": "Flag that indicates whether to split tokens based on letter-case transitions.", + "type": "boolean" + }, + "splitOnNumerics": { + "default": true, + "description": "Flag that indicates whether to split tokens based on letter-number transitions.", + "type": "boolean" + }, + "stemEnglishPossessive": { + "default": true, + "description": "Flag that indicates whether to remove trailing possessives from each sub-word.", + "type": "boolean" + } + }, + "type": "object" + }, + "protectedWords": { + "description": "Object that contains options for protected words.", + "properties": { + "ignoreCase": { + "default": true, + "description": "Flag that indicates whether to ignore letter case sensitivity for protected words.", + "type": "boolean" + }, + "words": { + "description": "List that contains the tokens to protect from delimination.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "words" + ], + "type": "object" + }, + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "wordDelimiterGraph" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "wordDelimiterGraph", + "type": "object" + }, + "TokenFilterkStemming": { + "description": "Filter that combines algorithmic stemming with a built-in dictionary for the English language to stem words.", + "properties": { + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "kStemming" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "kStemming", + "type": "object" + }, + "TriggerIngestionPipelineRequest": { + "properties": { + "datasetRetentionPolicy": { + "$ref": "#/components/schemas/DatasetRetentionPolicy" + }, + "snapshotId": { + "description": "Unique 24-hexadecimal character string that identifies the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string", + "writeOnly": true + } + }, + "required": [ + "snapshotId" + ], + "type": "object" + }, + "USSBackupRestoreJob20250101": { + "description": "Details for one restore job of a USS instance.", + "properties": { + "deliveryType": { + "description": "Means by which this resource returns the snapshot to the requesting MongoDB Cloud user.", + "enum": [ + "RESTORE", + "DOWNLOAD" + ], + "readOnly": true, + "type": "string" + }, + "expirationDate": { + "description": "Date and time when the download link no longer works. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the restore job.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "instanceName": { + "description": "Human-readable label that identifies the source instance.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "projectId": { + "description": "Unique 24-hexadecimal digit string that identifies the project from which the restore job originated.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "restoreFinishedDate": { + "description": "Date and time when MongoDB Cloud completed writing this snapshot. MongoDB Cloud changes the status of the restore job to `CLOSED`. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "restoreScheduledDate": { + "description": "Date and time when MongoDB Cloud will restore this snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "snapshotFinishedDate": { + "description": "Date and time when MongoDB Cloud completed writing this snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "snapshotId": { + "description": "Unique 24-hexadecimal digit string that identifies the snapshot to restore.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "snapshotUrl": { + "description": "Internet address from which you can download the compressed snapshot files. The resource returns this parameter when `\"deliveryType\" : \"DOWNLOAD\"`.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Phase of the restore workflow for this job at the time this resource made this request.", + "enum": [ + "PENDING", + "QUEUED", + "RUNNING", + "FAILED", + "COMPLETED" + ], + "readOnly": true, + "type": "string" + }, + "targetDeploymentItemName": { + "description": "Human-readable label that identifies the instance or cluster on the target project to which you want to restore the snapshot. You can restore the snapshot to another USS instance or Dedicated cluster tier.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.(),:\u0026@+']{1,64}$", + "readOnly": true, + "type": "string" + }, + "targetProjectId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that contains the instance or cluster to which you want to restore the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + } + }, + "title": "USS Backup Restore Job", + "type": "object" + }, + "USSBackupRestoreJobCreate20250101": { + "description": "Details to create one restore job of a USS instance.", + "properties": { + "_snapshotId": { + "description": "Unique 24-hexadecimal digit string that identifies the snapshot to restore.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string", + "writeOnly": true + }, + "_targetDeploymentItemName": { + "description": "Human-readable label that identifies the instance or cluster on the target project to which you want to restore the snapshot. You can restore the snapshot to another USS instance or Dedicated cluster tier.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[\\p{L}\\p{N}\\-_.(),:\u0026@+']{1,64}$", + "type": "string", + "writeOnly": true + }, + "_targetProjectId": { + "description": "Unique 24-hexadecimal digit string that identifies the project that contains the instance or cluster to which you want to restore the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string", + "writeOnly": true + }, + "deliveryType": { + "description": "Means by which this resource returns the snapshot to the requesting MongoDB Cloud user.", + "enum": [ + "RESTORE", + "DOWNLOAD" + ], + "readOnly": true, + "type": "string" + }, + "expirationDate": { + "description": "Date and time when the download link no longer works. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the restore job.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "instanceName": { + "description": "Human-readable label that identifies the source instance.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "projectId": { + "description": "Unique 24-hexadecimal digit string that identifies the project from which the restore job originated.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "restoreFinishedDate": { + "description": "Date and time when MongoDB Cloud completed writing this snapshot. MongoDB Cloud changes the status of the restore job to `CLOSED`. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "restoreScheduledDate": { + "description": "Date and time when MongoDB Cloud will restore this snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "snapshotFinishedDate": { + "description": "Date and time when MongoDB Cloud completed writing this snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "snapshotUrl": { + "description": "Internet address from which you can download the compressed snapshot files. The resource returns this parameter when `\"deliveryType\" : \"DOWNLOAD\"`.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Phase of the restore workflow for this job at the time this resource made this request.", + "enum": [ + "PENDING", + "QUEUED", + "RUNNING", + "FAILED", + "COMPLETED" + ], + "readOnly": true, + "type": "string" + } + }, + "required": [ + "_snapshotId", + "_targetDeploymentItemName" + ], + "title": "Create USS Backup Restore Job", + "type": "object" + }, + "USSBackupSettings20250101": { + "description": "USS backup configuration", + "properties": { + "enabled": { + "default": true, + "description": "Flag that indicates whether backups are performed for this USS instance. Backup uses [TODO](TODO) for USS instances.", + "readOnly": true, + "type": "boolean" + } + }, + "readOnly": true, + "title": "USS backup configuration", + "type": "object" + }, + "USSBackupSnapshot20250101": { + "description": "Details for one snapshot of a USS instance.", + "properties": { + "expiration": { + "description": "Date and time when the download link no longer works. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "finishTime": { + "description": "Date and time when MongoDB Cloud completed writing this snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the snapshot.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "mongoDBVersion": { + "description": "MongoDB host version that the snapshot runs.", + "readOnly": true, + "type": "string" + }, + "scheduledTime": { + "description": "Date and time when MongoDB Cloud will take the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "startTime": { + "description": "Date and time when MongoDB Cloud began taking the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Phase of the workflow for this snapshot at the time this resource made this request.", + "enum": [ + "PENDING", + "QUEUED", + "RUNNING", + "FAILED", + "COMPLETED" + ], + "readOnly": true, + "type": "string" + } + }, + "title": "USS Backup Snapshot", + "type": "object" + }, + "USSBackupSnapshotDownloadCreate20250101": { + "description": "Details for one backup snapshot download of a USS instance.", + "properties": { + "_snapshotId": { + "description": "Unique 24-hexadecimal digit string that identifies the snapshot to download.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "type": "string", + "writeOnly": true + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "required": [ + "_snapshotId" + ], + "title": "USS Backup Snapshot Download Create", + "type": "object" + }, + "USSConnectionStrings20250101": { + "description": "Collection of Uniform Resource Locators that point to the MongoDB database.", + "externalDocs": { + "description": "Connection string URI format.", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "properties": { + "standard": { + "description": "Public connection string that you can use to connect to this cluster. This connection string uses the mongodb:// protocol.", + "externalDocs": { + "description": "Connection String URI Format", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "readOnly": true, + "type": "string" + }, + "standardSrv": { + "description": "Public connection string that you can use to connect to this USS instance. This connection string uses the `mongodb+srv://` protocol.", + "externalDocs": { + "description": "Connection String URI Format", + "url": "https://docs.mongodb.com/manual/reference/connection-string/" + }, + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "title": "USS Instance Connection Strings", + "type": "object" + }, + "USSInstanceDescription20250101": { + "description": "Group of settings that configure a MongoDB USS instance.", + "properties": { + "backupSettings": { + "$ref": "#/components/schemas/USSBackupSettings20250101" + }, + "clusterType": { + "description": "USS instance topology.", + "enum": [ + "REPLICASET", + "LOADBALANCED" + ], + "readOnly": true, + "type": "string" + }, + "connectionStrings": { + "$ref": "#/components/schemas/USSConnectionStrings20250101" + }, + "createDate": { + "description": "Date and time when MongoDB Cloud created this instance. This parameter expresses its value in ISO 8601 format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the instance.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "mongoDBVersion": { + "description": "Version of MongoDB that the instance runs.", + "pattern": "([\\d]+\\.[\\d]+\\.[\\d]+)", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Human-readable label that identifies the instance.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "readOnly": true, + "type": "string" + }, + "providerSettings": { + "$ref": "#/components/schemas/USSProviderSettings20250101" + }, + "stateName": { + "description": "Human-readable label that indicates the current operating condition of this instance.", + "enum": [ + "IDLE", + "CREATING", + "UPDATING", + "DELETING", + "REPAIRING" + ], + "readOnly": true, + "type": "string" + }, + "tags": { + "description": "List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the instance.", + "externalDocs": { + "description": "Resource Tags", + "url": "https://dochub.mongodb.org/core/add-cluster-tag-atlas" + }, + "items": { + "$ref": "#/components/schemas/ResourceTag" + }, + "type": "array" + }, + "terminationProtectionEnabled": { + "default": false, + "description": "Flag that indicates whether termination protection is enabled on the cluster. If set to `true`, MongoDB Cloud won't delete the cluster. If set to `false`, MongoDB Cloud will delete the cluster.", + "type": "boolean" + }, + "versionReleaseSystem": { + "default": "LTS", + "description": "Method by which the cluster maintains the MongoDB versions.", + "enum": [ + "LTS" + ], + "readOnly": true, + "type": "string" + } + }, + "required": [ + "providerSettings" + ], + "title": "USS Instance Description", + "type": "object" + }, + "USSInstanceDescriptionCreate20250101": { + "description": "Settings that you can specify when you create a USS instance.", + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "name": { + "description": "Human-readable label that identifies the instance.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "type": "string", + "writeOnly": true + }, + "providerSettings": { + "$ref": "#/components/schemas/USSProviderSettingsCreate20250101" + }, + "tags": { + "description": "List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the instance.", + "externalDocs": { + "description": "Resource Tags", + "url": "https://dochub.mongodb.org/core/add-cluster-tag-atlas" + }, + "items": { + "$ref": "#/components/schemas/ResourceTag" + }, + "type": "array" + }, + "terminationProtectionEnabled": { + "default": false, + "description": "Flag that indicates whether termination protection is enabled on the cluster. If set to `true`, MongoDB Cloud won't delete the cluster. If set to `false`, MongoDB Cloud will delete the cluster.", + "type": "boolean" + } + }, + "required": [ + "name", + "providerSettings" + ], + "title": "USS Instance Description Create", + "type": "object" + }, + "USSProviderSettings20250101": { + "description": "Group of cloud provider settings that configure the provisioned MongoDB USS instance.", + "properties": { + "backingProviderName": { + "description": "Cloud service provider on which MongoDB Cloud provisioned the USS instance.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "readOnly": true, + "type": "string" + }, + "diskSizeGB": { + "description": "Storage capacity available to the USS instance expressed in gigabytes.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "providerName": { + "default": "USS", + "description": "Human-readable label that identifies the cloud service provider.", + "enum": [ + "USS" + ], + "readOnly": true, + "type": "string" + }, + "regionName": { + "description": "Human-readable label that identifies the geographic location of your MongoDB USS instance. The region you choose can affect network latency for clients accessing your databases. For a complete list of region names, see [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/#std-label-amazon-aws), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), and [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).", + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "title": "Cloud Service Provider Settings for a USS Instance", + "type": "object" + }, + "USSProviderSettingsCreate20250101": { + "description": "Group of cloud provider settings that configure the provisioned MongoDB USS instance.", + "properties": { + "backingProviderName": { + "description": "Cloud service provider on which MongoDB Cloud provisioned the serverless instance.", + "enum": [ + "AWS", + "AZURE", + "GCP" + ], + "type": "string", + "writeOnly": true + }, + "diskSizeGB": { + "description": "Storage capacity available to the USS instance expressed in gigabytes.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "providerName": { + "default": "USS", + "description": "Human-readable label that identifies the cloud service provider.", + "enum": [ + "USS" + ], + "readOnly": true, + "type": "string" + }, + "regionName": { + "description": "Human-readable label that identifies the geographic location of your MongoDB USS instance. The region you choose can affect network latency for clients accessing your databases. For a complete list of region names, see [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/#std-label-amazon-aws), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), and [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).", + "type": "string", + "writeOnly": true + } + }, + "required": [ + "backingProviderName", + "regionName" + ], + "title": "Cloud Service Provider Settings for a USS Instance", + "type": "object", + "writeOnly": true + }, + "UpdateAtlasOrganizationApiKey": { + "properties": { + "desc": { + "description": "Purpose or explanation provided when someone creates this organization API key.", + "maxLength": 250, + "minLength": 1, + "type": "string" + }, + "roles": { + "description": "List of roles to grant this API key. If you provide this list, provide a minimum of one role and ensure each role applies to this organization.", + "items": { + "enum": [ + "ORG_OWNER", + "ORG_MEMBER", + "ORG_GROUP_CREATOR", + "ORG_BILLING_ADMIN", + "ORG_READ_ONLY", + "ORG_TEAM_MEMBERS_ADMIN" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "UpdateAtlasProjectApiKey": { + "properties": { + "desc": { + "description": "Purpose or explanation provided when someone creates this project API key.", + "maxLength": 250, + "minLength": 1, + "type": "string" + }, + "roles": { + "description": "List of roles to grant this API key. If you provide this list, provide a minimum of one role and ensure each role applies to this project.", + "items": { + "enum": [ + "ORG_OWNER", + "ORG_MEMBER", + "ORG_GROUP_CREATOR", + "ORG_BILLING_ADMIN", + "ORG_READ_ONLY", + "ORG_TEAM_MEMBERS_ADMIN", + "GROUP_ATLAS_ADMIN", + "GROUP_AUTOMATION_ADMIN", + "GROUP_BACKUP_ADMIN", + "GROUP_MONITORING_ADMIN", + "GROUP_OWNER", + "GROUP_READ_ONLY", + "GROUP_USER_ADMIN", + "GROUP_BILLING_ADMIN", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_CHARTS_ADMIN", + "GROUP_CLUSTER_MANAGER", + "GROUP_SEARCH_INDEX_EDITOR", + "GROUP_STREAM_PROCESSING_OWNER" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "UpdateCustomDBRole": { + "properties": { + "actions": { + "description": "List of the individual privilege actions that the role grants.", + "items": { + "$ref": "#/components/schemas/DatabasePrivilegeAction" + }, + "type": "array" + }, + "inheritedRoles": { + "description": "List of the built-in roles that this custom role inherits.", + "items": { + "$ref": "#/components/schemas/DatabaseInheritedRole" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "UpdateGroupRolesForUser": { + "properties": { + "groupRoles": { + "description": "One or more project level roles to assign to the MongoDB Cloud user.", + "items": { + "enum": [ + "GROUP_CLUSTER_MANAGER", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_OWNER", + "GROUP_READ_ONLY", + "GROUP_SEARCH_INDEX_EDITOR", + "GROUP_STREAM_PROCESSING_OWNER" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "UpdateOrgRolesForUser": { + "properties": { + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgRoles": { + "description": "One or more organization level roles to assign to the MongoDB Cloud user.", + "items": { + "enum": [ + "ORG_OWNER", + "ORG_MEMBER", + "ORG_GROUP_CREATOR", + "ORG_BILLING_ADMIN", + "ORG_READ_ONLY" + ], + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "UserAccessListRequest": { + "properties": { + "cidrBlock": { + "description": "Range of network addresses that you want to add to the access list for the API key. This parameter requires the range to be expressed in classless inter-domain routing (CIDR) notation of Internet Protocol version 4 or version 6 addresses. You can set a value for this parameter or **ipAddress** but not both in the same request.", + "example": "203.0.113.0/24", + "pattern": "^((([0-9]{1,3}\\.){3}[0-9]{1,3})|(:{0,2}([0-9a-f]{1,4}:){0,7}[0-9a-f]{1,4}[:]{0,2}))((%2[fF]|/)[0-9]{1,3})+$", + "type": "string" + }, + "ipAddress": { + "description": "Network address that you want to add to the access list for the API key. This parameter requires the address to be expressed as one Internet Protocol version 4 or version 6 address. You can set a value for this parameter or **cidrBlock** but not both in the same request.", + "example": "203.0.113.10", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "type": "string" + } + }, + "type": "object" + }, + "UserAccessListResponse": { + "properties": { + "cidrBlock": { + "description": "Range of IP addresses in Classless Inter-Domain Routing (CIDR) notation in the access list for the API key.", + "example": "203.0.113.0/24", + "pattern": "^((([0-9]{1,3}\\.){3}[0-9]{1,3})|([\\:]{0,2}([0-9a-f]{1,4}\\:){0,7}[0-9a-f]{1,4}[\\:]{0,2}))((%2[fF]|\\/)[0-9]{1,3})+$", + "type": "string" + }, + "count": { + "description": "Total number of requests that have originated from the Internet Protocol (IP) address given as the value of the *lastUsedAddress* parameter.", + "format": "int32", + "minimum": 1, + "readOnly": true, + "type": "integer" + }, + "created": { + "description": "Date and time when someone added the network addresses to the specified API access list. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "ipAddress": { + "description": "Network address in the access list for the API key.", + "example": "203.0.113.10", + "pattern": "^((([0-9]{1,3}\\.){3}[0-9]{1,3})|([\\:]{0,2}([0-9a-f]{1,4}\\:){0,7}[0-9a-f]{1,4}[\\:]{0,2}))$", + "type": "string" + }, + "lastUsed": { + "description": "Date and time when MongoDB Cloud received the most recent request that originated from this Internet Protocol version 4 or version 6 address. The resource returns this parameter when at least one request has originated from this IP address. MongoDB Cloud updates this parameter each time a client accesses the permitted resource. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "lastUsedAddress": { + "description": "Network address that issued the most recent request to the API. This parameter requires the address to be expressed as one Internet Protocol version 4 or version 6 address. The resource returns this parameter after this IP address made at least one request.", + "example": "203.0.113.10", + "pattern": "^((([0-9]{1,3}\\.){3}[0-9]{1,3})|([\\:]{0,2}([0-9a-f]{1,4}\\:){0,7}[0-9a-f]{1,4}[\\:]{0,2}))$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "UserAccessRoleAssignment": { + "properties": { + "roles": { + "description": "List of roles to grant this API key. If you provide this list, provide a minimum of one role and ensure each role applies to this project.", + "items": { + "enum": [ + "GROUP_CLUSTER_MANAGER", + "GROUP_DATA_ACCESS_ADMIN", + "GROUP_DATA_ACCESS_READ_ONLY", + "GROUP_DATA_ACCESS_READ_WRITE", + "GROUP_SEARCH_INDEX_EDITOR", + "GROUP_STREAM_PROCESSING_OWNER", + "GROUP_OWNER", + "GROUP_READ_ONLY" + ], + "type": "string" + }, + "type": "array" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization API key.", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "UserCert": { + "properties": { + "_id": { + "description": "Unique 24-hexadecimal character string that identifies this certificate.", + "format": "int64", + "readOnly": true, + "type": "integer" + }, + "createdAt": { + "description": "Date and time when MongoDB Cloud created this certificate. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "groupId": { + "description": "Unique 24-hexadecimal character string that identifies the project.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "monthsUntilExpiration": { + "default": 3, + "description": "Number of months that the certificate remains valid until it expires.", + "format": "int32", + "maximum": 24, + "type": "integer", + "writeOnly": true + }, + "notAfter": { + "description": "Date and time when this certificate expires. This parameter expresses its value in the ISO 8601 timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "subject": { + "description": "Subject Alternative Name associated with this certificate. This parameter expresses its value as a distinguished name as defined in [RFC 2253](https://tools.ietf.org/html/2253).", + "example": "CN=BindUser,CN=Users,DC=myldapserver,DC=mycompany,DC=com", + "pattern": "^(?:(?\u003ccn\u003eCN=(?\u003cname\u003e[^,]*)),)?(?:(?\u003cpath\u003e(?:(?:CN|OU)=[^,]+,?)+),)?(?\u003cdomain\u003e(?:DC=[^,]+,?)+)$", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "UserCustomDBRole": { + "properties": { + "actions": { + "description": "List of the individual privilege actions that the role grants.", + "items": { + "$ref": "#/components/schemas/DatabasePrivilegeAction" + }, + "type": "array" + }, + "inheritedRoles": { + "description": "List of the built-in roles that this custom role inherits.", + "items": { + "$ref": "#/components/schemas/DatabaseInheritedRole" + }, + "type": "array", + "uniqueItems": true + }, + "roleName": { + "description": "Human-readable label that identifies the role for the request. This name must be unique for this custom role in this project.", + "type": "string" + } + }, + "required": [ + "roleName" + ], + "type": "object" + }, + "UserEventTypeViewForNdsGroup": { + "description": "Unique identifier of event type.", + "enum": [ + "JOINED_GROUP", + "REMOVED_FROM_GROUP", + "INVITED_TO_GROUP", + "REQUESTED_TO_JOIN_GROUP", + "GROUP_INVITATION_DELETED", + "USER_ROLES_CHANGED_AUDIT", + "JOIN_GROUP_REQUEST_DENIED_AUDIT", + "JOIN_GROUP_REQUEST_APPROVED_AUDIT" + ], + "example": "JOINED_GROUP", + "title": "User Event Types", + "type": "string" + }, + "UserEventTypeViewForOrg": { + "description": "Unique identifier of event type.", + "enum": [ + "JOINED_ORG", + "JOINED_TEAM", + "INVITED_TO_ORG", + "ORG_INVITATION_DELETED", + "REMOVED_FROM_ORG", + "REMOVED_FROM_TEAM", + "USER_ROLES_CHANGED_AUDIT", + "ORG_FLEX_CONSULTING_PURCHASED", + "ORG_FLEX_CONSULTING_PURCHASE_FAILED", + "INVITED_TO_TEAM" + ], + "example": "JOINED_ORG", + "title": "User Event Types", + "type": "string" + }, + "UserEventViewForNdsGroup": { + "description": "User event reflects different activities about the atlas user.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/UserEventTypeViewForNdsGroup" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "targetUsername": { + "description": "Email address for the console user that this event targets. The resource returns this parameter when `\"eventTypeName\" : \"USER\"`.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "User Events", + "type": "object" + }, + "UserEventViewForOrg": { + "description": "User event reflects different activities about the atlas user.", + "properties": { + "apiKeyId": { + "description": "Unique 24-hexadecimal digit string that identifies the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **userId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "created": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "eventTypeName": { + "$ref": "#/components/schemas/UserEventTypeViewForOrg" + }, + "groupId": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The **eventId** identifies the specific event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "isGlobalAdmin": { + "default": false, + "description": "Flag that indicates whether a MongoDB employee triggered the specified event.", + "readOnly": true, + "type": "boolean" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "publicKey": { + "description": "Public part of the [API Key](https://dochub.mongodb.org/core/atlas-create-prog-api-key) that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "raw": { + "$ref": "#/components/schemas/raw" + }, + "remoteAddress": { + "description": "IPv4 or IPv6 address from which the user triggered this event.", + "example": "216.172.40.186", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)(\\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$", + "readOnly": true, + "type": "string" + }, + "targetUsername": { + "description": "Email address for the console user that this event targets. The resource returns this parameter when `\"eventTypeName\" : \"USER\"`.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + }, + "userId": { + "description": "Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the **apiKeyId** parameter.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the **publicApiKey** parameter.", + "example": "test.user@mongodb.com", + "format": "email", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "created", + "eventTypeName", + "id" + ], + "title": "User Events", + "type": "object" + }, + "UserNotification": { + "description": "User notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "emailEnabled": { + "description": "Flag that indicates whether MongoDB Cloud should send email notifications. The resource requires this parameter when one of the following values have been set:\n\n- `\"notifications.[n].typeName\" : \"ORG\"`\n- `\"notifications.[n].typeName\" : \"GROUP\"`\n- `\"notifications.[n].typeName\" : \"USER\"`", + "type": "boolean" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "smsEnabled": { + "description": "Flag that indicates whether MongoDB Cloud should send text message notifications. The resource requires this parameter when one of the following values have been set:\n\n- `\"notifications.[n].typeName\" : \"ORG\"`\n- `\"notifications.[n].typeName\" : \"GROUP\"`\n- `\"notifications.[n].typeName\" : \"USER\"`", + "type": "boolean" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "USER" + ], + "type": "string" + }, + "username": { + "description": "MongoDB Cloud username of the person to whom MongoDB Cloud sends notifications. Specify only MongoDB Cloud users who belong to the project that owns the alert configuration. The resource requires this parameter when `\"notifications.[n].typeName\" : \"USER\"`.", + "format": "email", + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "User Notification", + "type": "object" + }, + "UserScope": { + "description": "Range of resources available to this database user.", + "properties": { + "name": { + "description": "Human-readable label that identifies the cluster or MongoDB Atlas Data Lake that this database user can access.", + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]*$", + "type": "string" + }, + "type": { + "description": "Category of resource that this database user can access.", + "enum": [ + "CLUSTER", + "DATA_LAKE", + "STREAM" + ], + "type": "string" + } + }, + "required": [ + "name", + "type" + ], + "title": "Database User Scope", + "type": "object" + }, + "UserSecurity": { + "properties": { + "customerX509": { + "$ref": "#/components/schemas/DBUserTLSX509Settings" + }, + "ldap": { + "$ref": "#/components/schemas/LDAPSecuritySettings" + }, + "links": { + "description": "List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.", + "externalDocs": { + "description": "Web Linking Specification (RFC 5988)", + "url": "https://datatracker.ietf.org/doc/html/rfc5988" + }, + "items": { + "$ref": "#/components/schemas/Link" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "UserToDNMapping": { + "description": "User-to-Distinguished Name (DN) map that MongoDB Cloud uses to transform a Lightweight Directory Access Protocol (LDAP) username into an LDAP DN.", + "properties": { + "ldapQuery": { + "description": "Lightweight Directory Access Protocol (LDAP) query template that inserts the LDAP name that the regular expression matches into an LDAP query Uniform Resource Identifier (URI). The formatting for the query must conform to [RFC 4515](https://datatracker.ietf.org/doc/html/rfc4515) and [RFC 4516](https://datatracker.ietf.org/doc/html/rfc4516).", + "type": "string" + }, + "match": { + "description": "Regular expression that MongoDB Cloud uses to match against the provided Lightweight Directory Access Protocol (LDAP) username. Each parenthesis-enclosed section represents a regular expression capture group that the substitution or `ldapQuery` template uses.", + "example": "(.*)", + "type": "string" + }, + "substitution": { + "description": "Lightweight Directory Access Protocol (LDAP) Distinguished Name (DN) template that converts the LDAP username that matches regular expression in the *match* parameter into an LDAP Distinguished Name (DN).", + "example": "CN={0},CN=Users,DC=my-atlas-ldap-server,DC=example,DC=com", + "type": "string" + } + }, + "required": [ + "match" + ], + "title": "User to Distinguished Name Mapping", + "type": "object" + }, + "VectorSearchHostStatusDetail": { + "properties": { + "hostname": { + "description": "Hostname that corresponds to the status detail.", + "type": "string" + }, + "mainIndex": { + "$ref": "#/components/schemas/VectorSearchIndexStatusDetail" + }, + "queryable": { + "description": "Flag that indicates whether the index is queryable on the host.", + "type": "boolean" + }, + "stagedIndex": { + "$ref": "#/components/schemas/VectorSearchIndexStatusDetail" + }, + "status": { + "description": "Condition of the search index when you made this request.\n\n | Status | Index Condition |\n |---|---|\n | DELETING | The index is being deleted. |\n | FAILED | The index build failed. Indexes can enter the FAILED state due to an invalid index definition. |\n | STALE | The index is queryable but has stopped replicating data from the indexed collection. Searches on the index may return out-of-date data. |\n | PENDING | Atlas has not yet started building the index. |\n | BUILDING | Atlas is building or re-building the index after an edit. |\n | READY | The index is ready and can support queries. |\n", + "enum": [ + "DELETING", + "FAILED", + "STALE", + "PENDING", + "BUILDING", + "READY", + "DOES_NOT_EXIST" + ], + "type": "string" + } + }, + "title": "Vector Search Host Status Detail", + "type": "object" + }, + "VectorSearchIndex": { + "allOf": [ + { + "$ref": "#/components/schemas/ClusterSearchIndex" + }, + { + "properties": { + "fields": { + "description": "Settings that configure the fields, one per object, to index. You must define at least one \"vector\" type field. You can optionally define \"filter\" type fields also.", + "externalDocs": { + "description": "Vector Search Fields", + "url": "https://dochub.mongodb.org/core/avs-vector-type" + }, + "items": { + "$ref": "#/components/schemas/BasicDBObject" + }, + "type": "array" + } + }, + "type": "object" + } + ], + "required": [ + "collectionName", + "database", + "name" + ], + "type": "object" + }, + "VectorSearchIndexCreateRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/SearchIndexCreateRequest" + }, + { + "properties": { + "definition": { + "$ref": "#/components/schemas/VectorSearchIndexDefinition" + } + }, + "type": "object" + } + ], + "description": "Vector Search Index Create Request", + "required": [ + "collectionName", + "database", + "definition", + "name" + ], + "type": "object" + }, + "VectorSearchIndexDefinition": { + "description": "The vector search index definition set by the user.", + "properties": { + "fields": { + "description": "Settings that configure the fields, one per object, to index. You must define at least one \"vector\" type field. You can optionally define \"filter\" type fields also.", + "externalDocs": { + "description": "Vector Search Fields", + "url": "https://dochub.mongodb.org/core/avs-vector-type" + }, + "items": { + "$ref": "#/components/schemas/BasicDBObject" + }, + "type": "array" + } + }, + "title": "Vector Search Index Definition", + "type": "object" + }, + "VectorSearchIndexResponse": { + "allOf": [ + { + "$ref": "#/components/schemas/SearchIndexResponse" + }, + { + "properties": { + "latestDefinition": { + "$ref": "#/components/schemas/VectorSearchIndexDefinition" + }, + "statusDetail": { + "description": "List of documents detailing index status on each host.", + "items": { + "$ref": "#/components/schemas/VectorSearchHostStatusDetail" + }, + "type": "array" + } + }, + "type": "object" + } + ], + "title": "Vector Search Index Response", + "type": "object" + }, + "VectorSearchIndexStatusDetail": { + "description": "Contains status information about a vector search index.", + "properties": { + "definition": { + "$ref": "#/components/schemas/VectorSearchIndexDefinition" + }, + "definitionVersion": { + "$ref": "#/components/schemas/SearchIndexDefinitionVersion" + }, + "message": { + "description": "Optional message describing an error.", + "type": "string" + }, + "queryable": { + "description": "Flag that indicates whether the index generation is queryable on the host.", + "type": "boolean" + }, + "status": { + "description": "Condition of the search index when you made this request.\n\n | Status | Index Condition |\n |---|---|\n | DELETING | The index is being deleted. |\n | FAILED | The index build failed. Indexes can enter the FAILED state due to an invalid index definition. |\n | STALE | The index is queryable but has stopped replicating data from the indexed collection. Searches on the index may return out-of-date data. |\n | PENDING | Atlas has not yet started building the index. |\n | BUILDING | Atlas is building or re-building the index after an edit. |\n | READY | The index is ready and can support queries. |\n", + "enum": [ + "DELETING", + "FAILED", + "STALE", + "PENDING", + "BUILDING", + "READY", + "DOES_NOT_EXIST" + ], + "type": "string" + } + }, + "title": "Vector Search Index Status Detail", + "type": "object" + }, + "VictorOps": { + "description": "Details to integrate one Splunk On-Call account with one MongoDB Cloud project.", + "properties": { + "apiKey": { + "description": "Key that allows MongoDB Cloud to access your VictorOps account.\n\n**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:\n\n* View or edit the alert through the Atlas UI.\n\n* Query the alert for the notification through the Atlas Administration API.", + "example": "********************************9abc", + "type": "string" + }, + "id": { + "description": "Integration id.", + "nullable": true, + "type": "string" + }, + "routingKey": { + "description": "Routing key associated with your Splunk On-Call account.", + "example": "test routing", + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud. The value must match the third-party service integration type.", + "enum": [ + "VICTOR_OPS" + ], + "type": "string" + } + }, + "required": [ + "apiKey" + ], + "title": "VICTOR_OPS", + "type": "object" + }, + "VictorOpsNotification": { + "description": "VictorOps notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "integrationId": { + "description": "The id of the associated integration, the credentials of which to use for requests.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "VICTOR_OPS" + ], + "type": "string" + }, + "victorOpsApiKey": { + "description": "API key that MongoDB Cloud needs to send alert notifications to Splunk On-Call. The resource requires this parameter when `\"notifications.[n].typeName\" : \"VICTOR_OPS\"`. If the key later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.\n\n**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:\n\n* View or edit the alert through the Atlas UI.\n\n* Query the alert for the notification through the Atlas Administration API.", + "example": "********************************9abc", + "type": "string" + }, + "victorOpsRoutingKey": { + "description": "Routing key that MongoDB Cloud needs to send alert notifications to Splunk On-Call. The resource requires this parameter when `\"notifications.[n].typeName\" : \"VICTOR_OPS\"`. If the key later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.", + "example": "test routing", + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "VictorOps Notification", + "type": "object" + }, + "Webhook": { + "description": "Details to integrate one webhook with one MongoDB Cloud project.", + "properties": { + "id": { + "description": "Integration id.", + "nullable": true, + "type": "string" + }, + "secret": { + "description": "An optional field returned if your webhook is configured with a secret.\n\n**NOTE**: When you view or edit the alert for a webhook notification, the secret appears completely redacted.", + "example": "******", + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud. The value must match the third-party service integration type.", + "enum": [ + "WEBHOOK" + ], + "type": "string" + }, + "url": { + "description": "Endpoint web address to which MongoDB Cloud sends notifications.\n\n**NOTE**: When you view or edit the alert for a webhook notification, the URL appears partially redacted.", + "example": "https://webhook.com/****", + "type": "string" + } + }, + "required": [ + "url" + ], + "title": "WEBHOOK", + "type": "object" + }, + "WebhookNotification": { + "description": "Webhook notification configuration for MongoDB Cloud to send information when an event triggers an alert condition.", + "properties": { + "delayMin": { + "description": "Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.", + "format": "int32", + "type": "integer" + }, + "integrationId": { + "description": "The id of the associated integration, the credentials of which to use for requests.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "intervalMin": { + "description": "Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.\n\nPagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.", + "format": "int32", + "minimum": 5, + "type": "integer" + }, + "notifierId": { + "description": "The notifierId is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.", + "example": "32b6e34b3d91647abb20e7b8", + "type": "string" + }, + "typeName": { + "description": "Human-readable label that displays the alert notification type.", + "enum": [ + "WEBHOOK" + ], + "type": "string" + }, + "webhookSecret": { + "description": "Authentication secret for a webhook-based alert.\n\nAtlas returns this value if you set `\"notifications.[n].typeName\" :\"WEBHOOK\"` and either:\n* You set `notification.[n].webhookSecret` to a non-empty string\n* You set a default webhookSecret either on the [Integrations](https://www.mongodb.com/docs/atlas/tutorial/third-party-service-integrations/#std-label-third-party-integrations) page, or with the [Integrations API](#tag/Third-Party-Service-Integrations/operation/createIntegration)\n\n**NOTE**: When you view or edit the alert for a webhook notification, the secret appears completely redacted.", + "example": "******", + "type": "string" + }, + "webhookUrl": { + "description": "Target URL for a webhook-based alert.\n\nAtlas returns this value if you set `\"notifications.[n].typeName\" :\"WEBHOOK\"` and either:\n* You set `notification.[n].webhookURL` to a non-empty string\n* You set a default webhookUrl either on the [Integrations](https://www.mongodb.com/docs/atlas/tutorial/third-party-service-integrations/#std-label-third-party-integrations) page, or with the [Integrations API](#tag/Third-Party-Service-Integrations/operation/createIntegration)\n\n**NOTE**: When you view or edit the alert for a Webhook URL notification, the URL appears partially redacted.", + "example": "https://webhook.com/****", + "type": "string" + } + }, + "required": [ + "typeName" + ], + "title": "Webhook Notification", + "type": "object" + }, + "WeeklyScheduleView": { + "allOf": [ + { + "$ref": "#/components/schemas/OnlineArchiveSchedule" + }, + { + "properties": { + "dayOfWeek": { + "description": "Day of the week when the scheduled archive starts. The week starts with Monday (`1`) and ends with Sunday (`7`).", + "format": "int32", + "maximum": 7, + "minimum": 1, + "type": "integer" + }, + "endHour": { + "description": "Hour of the day when the scheduled window to run one online archive ends.", + "format": "int32", + "maximum": 23, + "minimum": 0, + "type": "integer" + }, + "endMinute": { + "description": "Minute of the hour when the scheduled window to run one online archive ends.", + "format": "int32", + "maximum": 59, + "minimum": 0, + "type": "integer" + }, + "startHour": { + "description": "Hour of the day when the when the scheduled window to run one online archive starts.", + "format": "int32", + "maximum": 23, + "minimum": 0, + "type": "integer" + }, + "startMinute": { + "description": "Minute of the hour when the scheduled window to run one online archive starts.", + "format": "int32", + "maximum": 59, + "minimum": 0, + "type": "integer" + } + }, + "type": "object" + } + ], + "required": [ + "type" + ], + "type": "object" + }, + "Weights": { + "additionalProperties": { + "description": "Relative importance to place upon provided index parameters. This object expresses this as key/value pairs of index parameter and weight to apply to that parameter. You can specify weights for some or all the indexed parameters. The weight must be an integer between 1 and 99,999. MongoDB 5.0 and later can apply **weights** to **text** indexes only.", + "type": "object" + }, + "description": "Relative importance to place upon provided index parameters. This object expresses this as key/value pairs of index parameter and weight to apply to that parameter. You can specify weights for some or all the indexed parameters. The weight must be an integer between 1 and 99,999. MongoDB 5.0 and later can apply **weights** to **text** indexes only.", + "type": "object" + }, + "X509Certificate": { + "properties": { + "notAfter": { + "description": "Latest date that the certificate is valid.", + "format": "date-time", + "type": "string" + }, + "notBefore": { + "description": "Earliest date that the certificate is valid.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "X509CertificateUpdate": { + "properties": { + "content": { + "description": "Certificate content.", + "type": "string" + }, + "notAfter": { + "description": "Latest date that the certificate is valid.", + "format": "date-time", + "type": "string" + }, + "notBefore": { + "description": "Earliest date that the certificate is valid.", + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "ZoneMapping": { + "description": "Human-readable label that identifies the subset of a global cluster.", + "properties": { + "location": { + "description": "Code that represents a location that maps to a zone in your global cluster. MongoDB Cloud represents this location with a ISO 3166-2 location and subdivision codes when possible.", + "type": "string" + }, + "zone": { + "description": "Human-readable label that identifies the zone in your global cluster. This zone maps to a location code.", + "type": "string" + } + }, + "required": [ + "location", + "zone" + ], + "title": "Global Cluster Zone", + "type": "object" + }, + "charFilterhtmlStrip": { + "description": "Filter that strips out HTML constructs.", + "properties": { + "ignoredTags": { + "description": "The HTML tags that you want to exclude from filtering.", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "description": "Human-readable label that identifies this character filter type.", + "enum": [ + "htmlStrip" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "htmlStrip", + "type": "object" + }, + "charFiltericuNormalize": { + "description": "Filter that processes normalized text with the ICU Normalizer. It is based on Lucene's ICUNormalizer2CharFilter.", + "externalDocs": { + "description": "ICUNormalizer2CharFilter", + "url": "https://lucene.apache.org/core/8_3_0/analyzers-icu/org/apache/lucene/analysis/icu/ICUNormalizer2CharFilter.html" + }, + "properties": { + "type": { + "description": "Human-readable label that identifies this character filter type.", + "enum": [ + "icuNormalize" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "icuNormalize", + "type": "object" + }, + "charFiltermapping": { + "description": "Filter that applies normalization mappings that you specify to characters.", + "properties": { + "mappings": { + "description": "Comma-separated list of mappings. A mapping indicates that one character or group of characters should be substituted for another, using the following format:\n\n`\u003coriginal\u003e : \u003creplacement\u003e`", + "properties": { + "additionalProperties": { + "type": "string" + } + }, + "type": "object" + }, + "type": { + "description": "Human-readable label that identifies this character filter type.", + "enum": [ + "mapping" + ], + "type": "string" + } + }, + "required": [ + "mappings", + "type" + ], + "title": "mapping", + "type": "object" + }, + "charFilterpersian": { + "description": "Filter that replaces instances of a zero-width non-joiner with an ordinary space. It is based on Lucene's PersianCharFilter.", + "externalDocs": { + "description": "PersianCharFilter", + "url": "https://lucene.apache.org/core/8_0_0/analyzers-common/org/apache/lucene/analysis/fa/PersianCharFilter.html" + }, + "properties": { + "type": { + "description": "Human-readable label that identifies this character filter type.", + "enum": [ + "persian" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "persian", + "type": "object" + }, + "raw": { + "description": "Additional meta information captured about this event. The response returns this parameter as a JSON object when the query parameter `includeRaw=true`. The list of fields in the raw document may change. Don't rely on raw values for formal monitoring.", + "properties": { + "_t": { + "description": "Unique identifier of event type.", + "example": "ALERT_AUDIT", + "type": "string" + }, + "alertConfigId": { + "description": "Unique 24-hexadecimal digit string that identifies the alert configuration related to the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "cid": { + "description": "Unique 24-hexadecimal digit string that identifies the project in which the event occurred.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "cre": { + "description": "Date and time when this event occurred. This parameter expresses its value in the \u003ca href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eISO 8601\u003c/a\u003e timestamp format in UTC.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Description of the event.", + "example": "Alert Acknowledged", + "type": "string" + }, + "gn": { + "description": "Human-readable label that identifies the project.", + "example": "Test Project", + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "id": { + "description": "Unique 24-hexadecimal digit string that identifies the event.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "orgId": { + "description": "Unique 24-hexadecimal digit string that identifies the organization to which these events apply.", + "example": "32b6e34b3d91647abb20e7b8", + "maxLength": 24, + "minLength": 24, + "pattern": "^([a-f0-9]{24})$", + "readOnly": true, + "type": "string" + }, + "orgName": { + "description": "Human-readable label that identifies the organization that contains the project.", + "example": "Test Organization", + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "severity": { + "description": "Severity of the event.", + "enum": [ + "INFO", + "WARNING", + "ERROR", + "CRITICAL" + ], + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "tokenFilterasciiFolding": { + "description": "Filter that converts alphabetic, numeric, and symbolic Unicode characters that are not in the Basic Latin Unicode block to their ASCII equivalents, if available.", + "externalDocs": { + "description": "Basic Latin Unicode block", + "url": "https://en.wikipedia.org/wiki/Basic_Latin_(Unicode_block)" + }, + "properties": { + "originalTokens": { + "default": "omit", + "description": "Value that indicates whether to include or omit the original tokens in the output of the token filter.\n\nChoose `include` if you want to support queries on both the original tokens as well as the converted forms.\n\n Choose `omit` if you want to query only on the converted forms of the original tokens.", + "enum": [ + "omit", + "include" + ], + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "asciiFolding" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "asciiFolding", + "type": "object" + }, + "tokenFilterdaitchMokotoffSoundex": { + "description": "Filter that creates tokens for words that sound the same based on the Daitch-Mokotoff Soundex phonetic algorithm. This filter can generate multiple encodings for each input, where each encoded token is a 6 digit number.\n\n**NOTE**: Don't use the **daitchMokotoffSoundex** token filter in:\n\n-Synonym or autocomplete mapping definitions\n- Operators where **fuzzy** is enabled. Atlas Search supports the **fuzzy** option only for the **autocomplete**, **term**, and **text** operators.", + "externalDocs": { + "description": "Daitch-Mokotoff Soundex phonetic algorithm", + "url": "https://en.wikipedia.org/wiki/Daitch%E2%80%93Mokotoff_Soundex" + }, + "properties": { + "originalTokens": { + "default": "include", + "description": "Value that indicates whether to include or omit the original tokens in the output of the token filter.\n\nChoose `include` if you want to support queries on both the original tokens as well as the converted forms.\n\n Choose `omit` if you want to query only on the converted forms of the original tokens.", + "enum": [ + "omit", + "include" + ], + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "daitchMokotoffSoundex" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "daitchMokotoffSoundex", + "type": "object" + }, + "tokenFilteredgeGram": { + "description": "Filter that tokenizes input from the left side, or \"edge\", of a text input into n-grams of configured sizes. You can't use this token filter in synonym or autocomplete mapping definitions.", + "properties": { + "maxGram": { + "description": "Value that specifies the maximum length of generated n-grams. This value must be greater than or equal to **minGram**.", + "type": "integer" + }, + "minGram": { + "description": "Value that specifies the minimum length of generated n-grams. This value must be less than or equal to **maxGram**.", + "type": "integer" + }, + "termNotInBounds": { + "default": "omit", + "description": "Value that indicates whether to index tokens shorter than **minGram** or longer than **maxGram**.", + "enum": [ + "omit", + "include" + ], + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "edgeGram" + ], + "type": "string" + } + }, + "required": [ + "maxGram", + "minGram", + "type" + ], + "title": "edgeGram", + "type": "object" + }, + "tokenFiltericuFolding": { + "description": "Filter that applies character folding from Unicode Technical Report #30.", + "externalDocs": { + "description": "Unicode Technical Report #30", + "url": "http://www.unicode.org/reports/tr30/tr30-4.html" + }, + "properties": { + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "icuFolding" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "icuFolding", + "type": "object" + }, + "tokenFiltericuNormalizer": { + "description": "Filter that normalizes tokens using a standard Unicode Normalization Mode.", + "externalDocs": { + "description": "Unicode Normalization Mode", + "url": "https://unicode.org/reports/tr15/" + }, + "properties": { + "normalizationForm": { + "default": "nfc", + "description": "Normalization form to apply.", + "enum": [ + "nfd", + "nfc", + "nfkd", + "nfkc" + ], + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "icuNormalizer" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "icuNormalizer", + "type": "object" + }, + "tokenFilterlength": { + "description": "Filter that removes tokens that are too short or too long.", + "properties": { + "max": { + "default": 255, + "description": "Number that specifies the maximum length of a token. Value must be greater than or equal to **min**.", + "type": "integer" + }, + "min": { + "default": 0, + "description": "Number that specifies the minimum length of a token. This value must be less than or equal to **max**.", + "type": "integer" + }, + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "length" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "length", + "type": "object" + }, + "tokenFilterlowercase": { + "description": "Filter that normalizes token text to lowercase.", + "properties": { + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "lowercase" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "lowercase", + "type": "object" + }, + "tokenFilternGram": { + "description": "Filter that tokenizes input into n-grams of configured sizes. You can't use this token filter in synonym or autocomplete mapping definitions.", + "properties": { + "maxGram": { + "description": "Value that specifies the maximum length of generated n-grams. This value must be greater than or equal to **minGram**.", + "type": "integer" + }, + "minGram": { + "description": "Value that specifies the minimum length of generated n-grams. This value must be less than or equal to **maxGram**.", + "type": "integer" + }, + "termNotInBounds": { + "default": "omit", + "description": "Value that indicates whether to index tokens shorter than **minGram** or longer than **maxGram**.", + "enum": [ + "omit", + "include" + ], + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "nGram" + ], + "type": "string" + } + }, + "required": [ + "maxGram", + "minGram", + "type" + ], + "title": "nGram", + "type": "object" + }, + "tokenFilterregex": { + "description": "Filter that applies a regular expression to each token, replacing matches with a specified string.", + "properties": { + "matches": { + "description": "Value that indicates whether to replace only the first matching pattern or all matching patterns.", + "enum": [ + "all", + "first" + ], + "type": "string" + }, + "pattern": { + "description": "Regular expression pattern to apply to each token.", + "type": "string" + }, + "replacement": { + "description": "Replacement string to substitute wherever a matching pattern occurs.", + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "regex" + ], + "type": "string" + } + }, + "required": [ + "matches", + "pattern", + "replacement", + "type" + ], + "title": "regex", + "type": "object" + }, + "tokenFilterreverse": { + "description": "Filter that reverses each string token.", + "properties": { + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "reverse" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "reverse", + "type": "object" + }, + "tokenFiltershingle": { + "description": "Filter that constructs shingles (token n-grams) from a series of tokens. You can't use this token filter in synonym or autocomplete mapping definitions.", + "properties": { + "maxShingleSize": { + "description": "Value that specifies the maximum number of tokens per shingle. This value must be greater than or equal to **minShingleSize**.", + "type": "integer" + }, + "minShingleSize": { + "description": "Value that specifies the minimum number of tokens per shingle. This value must be less than or equal to **maxShingleSize**.", + "type": "integer" + }, + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "shingle" + ], + "type": "string" + } + }, + "required": [ + "maxShingleSize", + "minShingleSize", + "type" + ], + "title": "shingle", + "type": "object" + }, + "tokenFiltersnowballStemming": { + "description": "Filter that stems tokens using a Snowball-generated stemmer.", + "externalDocs": { + "description": "Snowball-generated stemmer", + "url": "https://snowballstem.org/" + }, + "properties": { + "stemmerName": { + "description": "Snowball-generated stemmer to use.", + "enum": [ + "arabic", + "armenian", + "basque", + "catalan", + "danish", + "dutch", + "english", + "finnish", + "french", + "german", + "german2", + "hungarian", + "irish", + "italian", + "kp", + "lithuanian", + "lovins", + "norwegian", + "porter", + "portuguese", + "romanian", + "russian", + "spanish", + "swedish", + "turkish" + ], + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "snowballStemming" + ], + "type": "string" + } + }, + "required": [ + "stemmerName", + "type" + ], + "title": "snowballStemming", + "type": "object" + }, + "tokenFilterstopword": { + "description": "Filter that removes tokens that correspond to the specified stop words. This token filter doesn't analyze the stop words that you specify.", + "properties": { + "ignoreCase": { + "default": true, + "description": "Flag that indicates whether to ignore the case of stop words when filtering the tokens to remove.", + "type": "boolean" + }, + "tokens": { + "description": "The stop words that correspond to the tokens to remove. Value must be one or more stop words.", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "stopword" + ], + "type": "string" + } + }, + "required": [ + "tokens", + "type" + ], + "title": "stopword", + "type": "object" + }, + "tokenFiltertrim": { + "description": "Filter that trims leading and trailing whitespace from tokens.", + "properties": { + "type": { + "description": "Human-readable label that identifies this token filter type.", + "enum": [ + "trim" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "trim", + "type": "object" + }, + "tokenizeredgeGram": { + "description": "Tokenizer that splits input from the left side, or \"edge\", of a text input into n-grams of given sizes. You can't use the edgeGram tokenizer in synonym or autocomplete mapping definitions.", + "properties": { + "maxGram": { + "description": "Characters to include in the longest token that Atlas Search creates.", + "type": "integer" + }, + "minGram": { + "description": "Characters to include in the shortest token that Atlas Search creates.", + "type": "integer" + }, + "type": { + "description": "Human-readable label that identifies this tokenizer type.", + "enum": [ + "edgeGram" + ], + "type": "string" + } + }, + "required": [ + "maxGram", + "minGram", + "type" + ], + "title": "edgeGram", + "type": "object" + }, + "tokenizerkeyword": { + "description": "Tokenizer that combines the entire input as a single token.", + "properties": { + "type": { + "description": "Human-readable label that identifies this tokenizer type.", + "enum": [ + "keyword" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "keyword", + "type": "object" + }, + "tokenizernGram": { + "description": "Tokenizer that splits input into text chunks, or \"n-grams\", of into given sizes. You can't use the nGram tokenizer in synonym or autocomplete mapping definitions.", + "properties": { + "maxGram": { + "description": "Characters to include in the longest token that Atlas Search creates.", + "type": "integer" + }, + "minGram": { + "description": "Characters to include in the shortest token that Atlas Search creates.", + "type": "integer" + }, + "type": { + "description": "Human-readable label that identifies this tokenizer type.", + "enum": [ + "edgeGram" + ], + "type": "string" + } + }, + "required": [ + "maxGram", + "minGram", + "type" + ], + "title": "nGram", + "type": "object" + }, + "tokenizerregexCaptureGroup": { + "description": "Tokenizer that uses a regular expression pattern to extract tokens.", + "properties": { + "group": { + "description": "Index of the character group within the matching expression to extract into tokens. Use `0` to extract all character groups.", + "type": "integer" + }, + "pattern": { + "description": "Regular expression to match against.", + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies this tokenizer type.", + "enum": [ + "regexCaptureGroup" + ], + "type": "string" + } + }, + "required": [ + "group", + "pattern", + "type" + ], + "title": "regexCaptureGroup", + "type": "object" + }, + "tokenizerregexSplit": { + "description": "Tokenizer that splits tokens using a regular-expression based delimiter.", + "properties": { + "pattern": { + "description": "Regular expression to match against.", + "type": "string" + }, + "type": { + "description": "Human-readable label that identifies this tokenizer type.", + "enum": [ + "regexSplit" + ], + "type": "string" + } + }, + "required": [ + "pattern", + "type" + ], + "title": "regexSplit", + "type": "object" + }, + "tokenizerstandard": { + "description": "Tokenizer that splits tokens based on word break rules from the Unicode Text Segmentation algorithm.", + "externalDocs": { + "description": "Unicode Text Segmentation Algorithm", + "url": "https://www.unicode.org/L2/L2019/19034-uax29-34-draft.pdf" + }, + "properties": { + "maxTokenLength": { + "default": 255, + "description": "Maximum number of characters in a single token. Tokens greater than this length are split at this length into multiple tokens.", + "type": "integer" + }, + "type": { + "description": "Human-readable label that identifies this tokenizer type.", + "enum": [ + "standard" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "standard", + "type": "object" + }, + "tokenizeruaxUrlEmail": { + "description": "Tokenizer that creates tokens from URLs and email addresses. Although this tokenizer uses word break rules from the Unicode Text Segmentation algorithm, we recommend using it only when the indexed field value includes URLs and email addresses. For fields that don't include URLs or email addresses, use the **standard** tokenizer to create tokens based on word break rules.", + "externalDocs": { + "description": "Unicode Text Segmentation Algorithm", + "url": "https://www.unicode.org/L2/L2019/19034-uax29-34-draft.pdf" + }, + "properties": { + "maxTokenLength": { + "default": 255, + "description": "Maximum number of characters in a single token. Tokens greater than this length are split at this length into multiple tokens.", + "type": "integer" + }, + "type": { + "description": "Human-readable label that identifies this tokenizer type.", + "enum": [ + "uaxUrlEmail" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "uaxUrlEmail", + "type": "object" + }, + "tokenizerwhitespace": { + "description": "Tokenizer that creates tokens based on occurrences of whitespace between words.", + "properties": { + "maxTokenLength": { + "default": 255, + "description": "Maximum number of characters in a single token. Tokens greater than this length are split at this length into multiple tokens.", + "type": "integer" + }, + "type": { + "description": "Human-readable label that identifies this tokenizer type.", + "enum": [ + "whitespace" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "title": "whitespace", + "type": "object" + } + }, + "securitySchemes": { + "DigestAuth": { + "scheme": "digest", + "type": "http" + } + } + } +} diff --git a/tools/foas/test/data/exemptions/invalid_exemptions.yaml b/tools/foas/test/data/exemptions/invalid_exemptions.yaml new file mode 100644 index 0000000000..4ca0f07334 --- /dev/null +++ b/tools/foas/test/data/exemptions/invalid_exemptions.yaml @@ -0,0 +1,11 @@ +# Invalid exemptions +# Exemptions are valid if they have the following fields: +- "breaking_change_description": "removed the schema 'GroupName' [api-schema-removed]" + "hide_from_changelog": "true" +- "breaking_change_description": "GET /api/atlas/v2/groups/{groupId}/clusters/provider/regions removed the 'GSP' enum value from the 'results/items/provider' response property for the response status '200' [response-property-enum-value-removed]." + "exempt_until": "3000-03-27" + "hide_from_changelog": "true" +- "breaking_change_description": "GET /api/atlas/v1.0/groups/{groupId}/clusters/provider/regions removed the 'GSP' enum value from the 'results/items/provider' response property for the response status '200' [response-property-enum-value-removed]." + "reason": "spec correction" + "hide_from_changelog": "true" + \ No newline at end of file diff --git a/tools/foas/test/data/exemptions/test_exemptions_expired.yaml b/tools/foas/test/data/exemptions/test_exemptions_expired.yaml new file mode 100644 index 0000000000..dd4efc77f1 --- /dev/null +++ b/tools/foas/test/data/exemptions/test_exemptions_expired.yaml @@ -0,0 +1,6 @@ +- breaking_change_description: "API PATCH /api/atlas/v1.0/testGroups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId} removed the 'replicaSet' enum value from the 'type' response property for the response status '200' [response-property-enum-value-removed]." + exempt_until: "1995-06-14" + reason: "spec correction" +- breaking_change_description: "API POST /api/atlas/v2/testGroups/{groupId}/clusters/{clusterName}/backup/snapshots removed the 'replicaSet' enum value from the 'type' response property for the response status '200' [response-property-enum-value-removed]." + exempt_until: "2003-06-14" + reason: "spec correction" diff --git a/tools/foas/test/data/exemptions/test_exemptions_schema.yaml b/tools/foas/test/data/exemptions/test_exemptions_schema.yaml new file mode 100644 index 0000000000..6a4ae9bb50 --- /dev/null +++ b/tools/foas/test/data/exemptions/test_exemptions_schema.yaml @@ -0,0 +1,3 @@ +- breaking_change_description: "removed the schema 'SamlIdentityProviderUpdate' [api-schema-removed]" + exempt_until: "2100-06-14" + reason: "spec correction" diff --git a/tools/foas/test/data/exemptions/test_exemptions_v2_duplication.yaml b/tools/foas/test/data/exemptions/test_exemptions_v2_duplication.yaml new file mode 100644 index 0000000000..8751b49c6d --- /dev/null +++ b/tools/foas/test/data/exemptions/test_exemptions_v2_duplication.yaml @@ -0,0 +1,10 @@ +- breaking_change_description: "API PATCH /api/atlas/v1.0/testGroups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId} removed the 'replicaSet' enum value from the 'type' response property for the response status '200' [response-property-enum-value-removed]." + exempt_until: "2100-06-14" + reason: "spec correction" +- breaking_change_description: "API POST /api/atlas/v2/testGroups/{groupId}/clusters/{clusterName}/backup/snapshots removed the 'replicaSet' enum value from the 'type' response property for the response status '200' [response-property-enum-value-removed]." + exempt_until: "2100-06-14" + reason: "spec correction" +- breaking_change_description: "API GET /api/atlas/v2/testGroups/{groupId}/clusters/{clusterName}/backup/snapshots/shardedCluster/{snapshotId} removed the 'shardedCluster' enum value from the 'type' response property for the response status '200' [response-property-enum-value-removed]." + exempt_until: "2100-06-14" + reason: "spec correction" + hide_from_changelog: "true" diff --git a/tools/foas/test/data/exemptions/valid_exemptions.yaml b/tools/foas/test/data/exemptions/valid_exemptions.yaml new file mode 100644 index 0000000000..c3dda09ea0 --- /dev/null +++ b/tools/foas/test/data/exemptions/valid_exemptions.yaml @@ -0,0 +1,14 @@ +# Valid exemptions +# Exemptions are valid if they have the following fields: +- "breaking_change_description": "removed the schema 'GroupName' [api-schema-removed]" + "exempt_until": "3000-03-06" + "reason": "spec correction" + "hide_from_changelog": "true" +- "breaking_change_description": "GET /api/atlas/v2/groups/{groupId}/clusters/provider/regions removed the 'GSP' enum value from the 'results/items/provider' response property for the response status '200' [response-property-enum-value-removed]." + "exempt_until": "3000-03-27" + "reason": "spec correction" + "hide_from_changelog": "true" +- "breaking_change_description": "GET /api/atlas/v1.0/groups/{groupId}/clusters/provider/regions removed the 'GSP' enum value from the 'results/items/provider' response property for the response status '200' [response-property-enum-value-removed]." + "exempt_until": "3000-03-27" + "reason": "spec correction" + "hide_from_changelog": "true" \ No newline at end of file diff --git a/tools/go.work.sum b/tools/go.work.sum index e3b8962cda..3dbda54417 100644 --- a/tools/go.work.sum +++ b/tools/go.work.sum @@ -30,6 +30,8 @@ github.com/envoyproxy/protoc-gen-validate v1.2.1 h1:DEo3O99U8j4hBFwbJfrz9VtgcDfU github.com/envoyproxy/protoc-gen-validate v1.2.1/go.mod h1:d/C80l/jxXLdfEIhX1W2TmLfsJ31lvEjwamM4DxlWXU= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= +github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= +github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k= github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0= github.com/go-jose/go-jose/v4 v4.0.5 h1:M6T8+mKZl/+fNNuFHvGIzDz7BTLQPIounk/b9dw3AaE= @@ -62,6 +64,8 @@ github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10/go.mod h1 github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/sagikazarmark/locafero v0.12.0 h1:/NQhBAkUb4+fH1jivKHWusDYFjMOOKU88eegjfxfHb4= github.com/sagikazarmark/locafero v0.12.0/go.mod h1:sZh36u/YSZ918v0Io+U9ogLYQJ9tLLBmM4eneO6WwsI= +github.com/sourcegraph/conc v0.3.1-0.20240121214520-5f936abd7ae8 h1:+jumHNA0Wrelhe64i8F6HNlS8pkoyMv5sreGx2Ry5Rw= +github.com/sourcegraph/conc v0.3.1-0.20240121214520-5f936abd7ae8/go.mod h1:3n1Cwaq1E1/1lhQhtRK2ts/ZwZEhjcQeJQ1RuC6Q/8U= github.com/spf13/cast v1.10.0 h1:h2x0u2shc1QuLHfxi+cTJvs30+ZAHOGRic8uyGTDWxY= github.com/spf13/cast v1.10.0/go.mod h1:jNfB8QC9IA6ZuY2ZjDp0KtFO2LZZlg4S/7bzP6qqeHo= github.com/spf13/viper v1.21.0 h1:x5S+0EU27Lbphp4UKm1C+1oQO+rKx36vfCoaVebLFSU= @@ -98,12 +102,18 @@ golang.org/x/mod v0.36.0 h1:JJjpVx6myfUsUdAzZuOSTTmRE0PfZeNWzzvKrP7amb4= golang.org/x/mod v0.36.0/go.mod h1:moc6ELqsWcOw5Ef3xVprK5ul/MvtVvkIXLziUOICjUQ= golang.org/x/net v0.43.0 h1:lat02VYK2j4aLzMzecihNvTlJNQUq316m2Mr9rnM6YE= golang.org/x/net v0.43.0/go.mod h1:vhO1fvI4dGsIjh73sWfUVjj3N7CA9WkKJNQm2svM6Jg= +golang.org/x/net v0.54.0 h1:2zJIZAxAHV/OHCDTCOHAYehQzLfSXuf/5SoL/Dv6w/w= +golang.org/x/net v0.54.0/go.mod h1:Sj4oj8jK6XmHpBZU/zWHw3BV3abl4Kvi+Ut7cQcY+cQ= golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI= golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU= golang.org/x/sync v0.21.0 h1:HLII4xRRTtCRkxYp4HNFF0Js/Og6q2i++KXbg0gHCwM= golang.org/x/sync v0.21.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0= golang.org/x/sys v0.43.0 h1:Rlag2XtaFTxp19wS8MXlJwTvoh8ArU6ezoyFsMyCTNI= golang.org/x/sys v0.43.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= +golang.org/x/sys v0.44.0 h1:ildZl3J4uzeKP07r2F++Op7E9B29JRUy+a27EibtBTQ= +golang.org/x/sys v0.44.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= +golang.org/x/telemetry v0.0.0-20260508192327-42602be52be6 h1:HjU6IWBiAgRIdAJ9/y1rwCn+UELEmwV+VsTLzj/W4sE= +golang.org/x/telemetry v0.0.0-20260508192327-42602be52be6/go.mod h1:Eqhaxk/wZsWEH8CRxLwj6xzEJbz7k1EFGqx7nyCoabE= golang.org/x/time v0.12.0 h1:ScB/8o8olJvc+CQPWrK3fPZNfh7qgwCrY0zJmoEQLSE= golang.org/x/time v0.12.0/go.mod h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg= golang.org/x/tools v0.45.0 h1:18qN3FAooORvApf5XjCXgsuayZOEtXf6JK18I3+ONa8=