1개의 제공자에 대해 1개의 비공개 엔드포인트 서비스 만들기

POST /api/atlas/v2/groups/{groupId}/privateEndpoint/endpointService

지정된 클라우드 서비스 제공자에 대한 비공개 엔드포인트 서비스 한 개를 생성합니다. 이 클라우드 서비스 제공자는 프로젝트의 비공개 엔드포인트 서비스를 관리합니다. 비공개 엔드포인트 서비스를 생성할 때, 비공개 엔드포인트 서비스를 생성하는 클라우드 공급자에 대한 네트워크 컨테이너가 아직 존재하지 않는 경우 MongoDB Cloud는 프로젝트에 네트워크 컨테이너를 생성합니다. MongoDB Cloud의 비공개 엔드포인트 용어에 대해 자세히 알아보려면 비공개 엔드포인트 개념을 참조하세요. 이 리소스를 사용하려면, 요청하는 서비스 계정 또는 API 키에 프로젝트 소유자 역할이 있어야 합니다.

비공개 엔드포인트 개념

경로 매개변수

  • groupId 문자열 필수 사항

    프로젝트 식별하는 고유한 24-16진수 문자열입니다. 인증된 사용자가 액세스 할 수 있는 모든 프로젝트를 조회 하려면 /groups 엔드포인트를 사용합니다.

    참고: 그룹과 프로젝트는 동의어입니다. 그룹 ID는 프로젝트 ID와 동일합니다. 기존 그룹의 경우, 그룹/프로젝트 ID는 동일하게 유지됩니다. 리소스 및 해당 엔드포인트는 그룹이라는 용어를 사용합니다.

    형식은 ^([a-f0-9]{24})$ 패턴 과 일치해야 합니다.

쿼리 매개변수

  • envelope 부울

    애플리케이션이 응답을 envelope JSON 객체로 래핑할지 여부를 나타내는 플래그입니다. 일부 API 클라이언트는 HTTP 응답 헤더 또는 상태 코드에 액세스할 수 없습니다. 이 문제를 해결하려면 쿼리에서 envelope=true를 설정합니다. 결과 목록을 반환하는 엔드포인트는 결과 객체를 엔벨로프로 사용합니다. 애플리케이션은 응답 본문에 상태 매개변수를 추가합니다.

    기본값은 false 입니다.

  • pretty 부울

    응답 본문이 프리티프린트 형식이어야 하는지 여부를 나타내는 플래그입니다.

    기본값은 false 입니다.

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

body 필수 사항

지정된 클라우드 서비스 제공자에 대한 비공개 엔드포인트 한 개를 생성합니다.

  • providerName 문자열 필수 사항

    비공개 엔드포인트 서비스를 생성하려는 클라우드 서비스 제공자를 식별하는 사람이 읽을 수 있는 레이블입니다.

    값은 AWS, AZURE 또는 GCP입니다.

  • 리전 문자열 필수 사항

    비공개 엔드포인트 서비스를 생성하려는 클라우드 공급자 리전입니다. 값으로 허용되는 리전은 Amazon Web Services, Google Cloud PlatformMicrosoft Azure에 따라 다릅니다.

응답

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

    확인

    다음 중 하나입니다.
  • 400 application/json

    잘못된 요청입니다.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

  • 401 application/json

    승인되지 않았습니다.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

  • 403 application/json

    Forbidden.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

  • 404 application/json

    찾을 수 없습니다.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

  • 500 application/json

    내부 서버 오류입니다.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

POST /API/Atlas/v2/groups/{groupId}/privateEndpoint/endpointService
atlas api privateEndpointServices createGroupPrivateEndpointEndpointService --help
import (
	"os"
	"context"
	"log"
	sdk "go.mongodb.org/atlas-sdk/v20250312001/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.2025-03-12+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.2025-03-12+json" \
  --header "Content-Type: application/json" \
  -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/privateEndpoint/endpointService" \
  -d '{ <Payload> }'
요청 예시
{
  "providerName": "AWS",
  "region": "string"
}
응답 예시(200)
{
  "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"
  ],
  "serviceAttachmentNames": [
    "string"
  ]
}
응답 예시(400)
{
  "error": 400,
  "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  "reason": "Bad Request",
  "errorCode": "VALIDATION_ERROR"
}
응답 예시(401)
{
  "error": 401,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Unauthorized",
  "errorCode": "NOT_ORG_GROUP_CREATOR"
}
응답 예시(403)
{
  "error": 403,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Forbidden",
  "errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
응답 예시(404)
{
  "error": 404,
  "detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
  "reason": "Not Found",
  "errorCode": "RESOURCE_NOT_FOUND"
}
응답 예시(500)
{
  "error": 500,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Internal Server Error",
  "errorCode": "UNEXPECTED_ERROR"
}