Crea un servicio de punto final privado para el proveedor de servicios en la nube especificado. Este proveedor administra el servicio de punto final privado del proyecto. Al crear un servicio de punto final privado, MongoDB Cloud crea un contenedor de red en el proyecto para el proveedor de servicios en la nube para el que se creó el servicio, si aún no existe. Para obtener más información sobre la terminología de puntos finales privados en MongoDB Cloud, consulte Conceptos de puntos finales privados. Para usar este recurso, la cuenta de servicio o la clave API solicitantes deben tener el rol de propietario del proyecto.
Parámetros de ruta
-
Cadena 24hexadecimal única que identifica su proyecto. Utilice el punto de conexión /groups para recuperar todos los proyectos a los que el usuario autenticado tiene acceso.
NOTA: Grupos y proyectos son términos sinónimos. El ID de tu grupo es el mismo que el de tu proyecto. Para los grupos existentes, el ID de tu grupo/proyecto permanece igual. El recurso y los puntos finales correspondientes usan el término "grupos".
El formato debe coincidir con el siguiente patrón:
^([a-f0-9]{24})$.
Parámetros de consulta
-
Indicador que indica si la aplicación encapsula la respuesta en un objeto JSON
envelope. Algunos clientes de la API no pueden acceder a los encabezados de respuesta HTTP ni al código de estado. Para solucionar esto, configure envelope=true en la consulta. Los endpoints que devuelven una lista de resultados utilizan el objeto de resultados como encapsulado. La aplicación añade el parámetro de estado al cuerpo de la respuesta.El valor predeterminado es
false. -
Bandera que indica si el cuerpo de la respuesta debe estar en formato prettyprint.
El valor predeterminado es
false.Impresión bonita
Cuerpo
Requerido
Crea un punto final privado para el proveedor de servicios en la nube especificado.
-
Marca que indica si este servicio de punto final utiliza la asignación de puertos PSC. Esto solo aplica a los servicios de punto final privados de GCP.
El valor predeterminado es
false. -
Etiqueta legible por humanos que identifica al proveedor de servicios en la nube para el que desea crear el servicio de punto final privado.
Los valores son
AWS,AZUREoGCP. -
Región del proveedor de nube donde desea crear el servicio de punto de conexión privado. Las regiones aceptadas como valores difieren para Amazon Web Services, Google Cloud Platform y Microsoft Azure.
atlas api privateEndpointServices createPrivateEndpointService --help
import (
"os"
"context"
"log"
sdk "go.mongodb.org/atlas-sdk/v20230201001/admin"
)
func main() {
ctx := context.Background()
clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupPrivateEndpointEndpointServiceApiParams{}
sdkResp, httpResp, err := client.PrivateEndpointServicesApi.
CreateGroupPrivateEndpointEndpointServiceWithParams(ctx, params).
Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2023-02-01+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/privateEndpoint/endpointService" \
-d '{ <Payload> }'
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2023-02-01+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/privateEndpoint/endpointService" \
-d '{ <Payload> }'
{
"portMappingEnabled": false,
"providerName": "AWS",
"region": "string"
}
{
"cloudProvider": "AWS",
"errorMessage": "string",
"id": "32b6e34b3d91647abb20e7b8",
"regionName": "string",
"status": "INITIATING",
"endpointServiceName": "string",
"interfaceEndpoints": [
"32b6e34b3d91647abb20e7b8"
]
}
{
"cloudProvider": "AZURE",
"errorMessage": "string",
"id": "32b6e34b3d91647abb20e7b8",
"regionName": "string",
"status": "INITIATING",
"privateEndpoints": [
"string"
],
"privateLinkServiceName": "string",
"privateLinkServiceResourceId": "/subscriptions/ae349d51-d12b-ee3d-2a27-7d53f6479cf0/resourcegroups/KObGGz/providers/Microsoft.Network/privateLinkServices/pls_d1820713f8153388d533e9de"
}
{
"cloudProvider": "GCP",
"errorMessage": "string",
"id": "32b6e34b3d91647abb20e7b8",
"regionName": "string",
"status": "INITIATING",
"endpointGroupNames": [
"string"
],
"portMappingEnabled": true,
"serviceAttachmentNames": [
"string"
]
}
{
"error": 400,
"detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
"reason": "Bad Request",
"errorCode": "VALIDATION_ERROR"
}
{
"error": 401,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Unauthorized",
"errorCode": "NOT_ORG_GROUP_CREATOR"
}
{
"error": 403,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Forbidden",
"errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
{
"error": 404,
"detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
"reason": "Not Found",
"errorCode": "RESOURCE_NOT_FOUND"
}
{
"error": 500,
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"reason": "Internal Server Error",
"errorCode": "UNEXPECTED_ERROR"
}