빌드 이 작업 공간으로 승격

POST /api/v1/projects/{id}/workspaces/{workspace_id}/promotions

기존에 성공한 빌드의 이미지를 동일한 조직의 다른 작업 공간에서 이 작업 공간으로 복사하고 배포 가능한 빌드 만듭니다. 소스 빌드의 프로젝트 와 대상 프로젝트 모두에서 배포서버 관리 필요합니다. force 에는 대상 프로젝트 소유자 역할 추가로 필요합니다. 처리는 비동기식입니다 — 준비되거나 실패할 때까지 반환된 프로모션을 폴링합니다.

경로 매개변수

  • id 문자열 필수 사항

    대상 프로젝트 ID

  • Workspace_id 문자열 필수 사항

    대상 작업 공간 ID

application/json

body 필수 사항

프로모션 요청

  • 확인된 부울 필수 사항

    Confirmed must be true: 프로모션은 아티팩트를 다른 프로젝트 로 복사하므로 API CLI/ UI 사용자로부터 수집하는 명시적인 확인을 요구합니다.

  • force 부울

    강제는 ECP의 배포 방지 게이트를 우회합니다. 대상 프로젝트 소유자 역할 필요합니다.

  • source_build_id 문자열 필수 사항

    SourceBuildID는 승격할 성공한 빌드 식별합니다. 호출자 조직의 모든 프로젝트 에 있을 수 있습니다.

응답

  • 지원되지 않거나 잘못된 API 버전, 선택한 게시된 계약에서 사용할 수 없는 작업 또는 허용되지 않는 표현(지원되지 않는 미디어 유형 매개변수 또는 제외된 SSE 포함). 기존 인증, 권한 부여 및 속도 제한 실패가 우선적으로 적용됩니다.

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

      표준 오류 스키마 에 정의된 선택적 유효성 검사 세부 정보입니다. API 협상 오류는 이 필드 내보내지 않습니다.

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

        유효성 검사 에 실패한 필드입니다.

        필드 속성 숨기기 필드 속성 표시 객체

        필드 및 해당 유효성 검사 실패.

        • description 문자열 필수 사항

          사람이 읽을 수 있는 유효성 검사 실패.

        • 필드 문자열 필수 사항

          잘못된 요청 필드 의 이름 또는 경로입니다.

    • 세부 정보 문자열 필수 사항

      사람이 읽을 수 있는 오류 세부 정보.

    • 오류 integer 필수 사항

      HTTP status code.

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

      기계가 읽을 수 있는 오류 코드입니다.

    • 매개변수 array[string]

      오류와 관련된 요청 매개변수 이름입니다. 적용 않는 경우 생략됩니다.

    • 이유 문자열 필수 사항

      HTTP 상태 이유 구문입니다.

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

      표준 오류 스키마 에 정의된 선택적 유효성 검사 세부 정보입니다. API 협상 오류는 이 필드 내보내지 않습니다.

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

        유효성 검사 에 실패한 필드입니다.

        필드 속성 숨기기 필드 속성 표시 객체

        필드 및 해당 유효성 검사 실패.

        • description 문자열 필수 사항

          사람이 읽을 수 있는 유효성 검사 실패.

        • 필드 문자열 필수 사항

          잘못된 요청 필드 의 이름 또는 경로입니다.

    • 세부 정보 문자열 필수 사항

      사람이 읽을 수 있는 오류 세부 정보.

    • 오류 integer 필수 사항

      HTTP status code.

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

      기계가 읽을 수 있는 오류 코드입니다.

    • 매개변수 array[string]

      오류와 관련된 요청 매개변수 이름입니다. 적용 않는 경우 생략됩니다.

    • 이유 문자열 필수 사항

      HTTP 상태 이유 구문입니다.

  • 202

    수락됨

    응답 속성 숨기기 응답 속성 표시 객체
    • created_at 문자열
    • Failure_reason 문자열
    • Finished_at 문자열
    • force 부울
    • Initiated_by 문자열
    • org_id 문자열
    • 프로모션 ID 문자열
    • source_build_id 문자열
    • 상태 문자열

      상태는 보류 중, 복사 중, 준비됨 또는 실패 중 하나입니다. 준비 상태와 실패 상태는 최종 결과입니다. 대기 중 및 복사 중은 관찰 가능한 비단말 폴링 상태입니다.

      값은 pending, copying, ready 또는 failed입니다.

    • target_build_id 문자열
    • target_project_id 문자열
    • target_workspace_id 문자열
    응답 속성 숨기기 응답 속성 표시 객체
    • created_at 문자열
    • Failure_reason 문자열
    • Finished_at 문자열
    • force 부울
    • Initiated_by 문자열
    • org_id 문자열
    • 프로모션 ID 문자열
    • source_build_id 문자열
    • 상태 문자열

      상태는 보류 중, 복사 중, 준비됨 또는 실패 중 하나입니다. 준비 상태와 실패 상태는 최종 결과입니다. 대기 중 및 복사 중은 관찰 가능한 비단말 폴링 상태입니다.

      값은 pending, copying, ready 또는 failed입니다.

    • target_build_id 문자열
    • target_project_id 문자열
    • target_workspace_id 문자열
  • 잘못된 요청

    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
  • Forbidden

    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
  • 찾을 수 없습니다.

    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
  • 충돌

    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
  • 엔터티가 너무 큼 요청

    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
  • 429

    요청이 너무 많음

    헤더 속성 숨기기 헤더 속성 표시
    • 재시도 후 문자열

      재시도 전 대기 시간(초)

    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
  • 내부 서버 오류

    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
  • 잘못된 게이트웨이

    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
  • 503

    서비스를 사용할 수 없음

    헤더 속성 숨기기 헤더 속성 표시
    • 재시도 후 문자열

      용량 거부 후 재시도 전 대기 시간(초)

    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
    응답 속성 숨기기 응답 속성 표시 객체
    • 코드 문자열
    • 오류 문자열
    • Success 부울
POST /api/v1/projects/{id}/workspaces/{workspace_id}/promotions
curl \
 --request POST 'https://agentengine.mongodb.com/api/v1/projects/{id}/workspaces/{workspace_id}/promotions' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '{
  "confirmed": true,
  "force": true,
  "source_build_id": "string"
}'
요청 예시
{
  "confirmed": true,
  "force": true,
  "source_build_id": "string"
}
응답 예시(406)
{
  "detail": "This operation is not available in API version 2026-09-20-preview.",
  "error": 406,
  "errorCode": "OPERATION_NOT_IN_API_VERSION",
  "parameters": [
    "Accept"
  ],
  "reason": "Not Acceptable"
}
{
  "detail": "This operation supports text/event-stream, which the Accept header excludes. Remove unsupported media-type parameters or accept this type with a positive q value.",
  "error": 406,
  "errorCode": "UNACCEPTABLE_MEDIA_TYPE",
  "parameters": [
    "Accept"
  ],
  "reason": "Not Acceptable"
}
{
  "detail": "The requested API version is not supported. Supported versions: 2026-09-20-preview.",
  "error": 406,
  "errorCode": "UNSUPPORTED_API_VERSION",
  "parameters": [
    "Accept"
  ],
  "reason": "Not Acceptable"
}
응답 예시(406)
{
  "detail": "This operation is not available in API version 2026-09-20-preview.",
  "error": 406,
  "errorCode": "OPERATION_NOT_IN_API_VERSION",
  "parameters": [
    "Accept"
  ],
  "reason": "Not Acceptable"
}
응답 예시(202)
{
  "created_at": "string",
  "failure_reason": "string",
  "finished_at": "string",
  "force": true,
  "initiated_by": "string",
  "org_id": "string",
  "promotion_id": "string",
  "source_build_id": "string",
  "status": "pending",
  "target_build_id": "string",
  "target_project_id": "string",
  "target_workspace_id": "string"
}
응답 예시(202)
{
  "created_at": "string",
  "failure_reason": "string",
  "finished_at": "string",
  "force": true,
  "initiated_by": "string",
  "org_id": "string",
  "promotion_id": "string",
  "source_build_id": "string",
  "status": "pending",
  "target_build_id": "string",
  "target_project_id": "string",
  "target_workspace_id": "string"
}
응답 예시(400)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(400)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(403)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(403)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(404)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(404)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(409)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(409)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(413)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(413)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(429)
# Headers
Retry-After: string

# Payload
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(429)
# Headers
Retry-After: string

# Payload
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(500)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(500)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(502)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(502)
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(503)
# Headers
Retry-After: string

# Payload
{
  "code": "string",
  "error": "string",
  "success": true
}
응답 예시(503)
# Headers
Retry-After: string

# Payload
{
  "code": "string",
  "error": "string",
  "success": true
}