FinOps Open Cost and Usage Specification(FOCUS)는 기술 청구 데이터 세트에 대한 통일된 요구 사항을 제시합니다. MongoDB Atlas는 FOCUS 1에 비용 청구 및 사용 데이터를 제공합니다.3 형식. Atlas 컨솔의 Invoices 페이지 또는 FOCUS 데이터 API를 사용하여 FOCUS 보고서를 생성할 수 있습니다.
FOCUS 에 대하여
역사적으로 Atlas 청구 데이터는 MongoDB 특정 형식으로 제공되었습니다. Atlas 고객, 특히 대규모 엔터프라이즈와 제휴하는 것은 Atlas 크레딧 단위(ACU)를 청구 통화로 변환하는 데 수동으로 노력해야 합니다.
FOCUS는 일반적인 어휘와 청구 구조를 제공하여 Atlas 청구 데이터를 FinOps 및 다중 벤더 비용 관리 도구와 이해하고, 조정하고, 통합하는 데 도움을 줍니다.
PDF 및 CSV 사용 요약은 MongoDB 특정 형식으로 인보이스를 제시합니다. FOCUS 비용 및 사용 보고서는 표준화된 FOCUS 형식으로 동일한 청구 기간을 제시합니다. Atlas console의 Invoices 페이지에서 세 가지 모두를 다운로드할 수 있습니다.
Atlas 콘솔에서 FOCUS 보고서 다운로드
청구서에 대한 FOCUS 비용 및 사용량 보고서는 Atlas 콘솔의 Invoices 페이지에서 다운로드 할 수 있습니다. 청구서 형식을 선택할 때 CSV FOCUS Cost & Usage Report을(를) 선택합니다.
현재 청구 기간에 대한 보고서를 다운로드 하려면 현재 청구서 다운로드를 참조하세요. 과거 청구 기간에 대한 보고서를 다운로드 하려면 과거 청구서 다운로드를 참조하세요.
참고
청구 데이터를 보고 다운로드 Organization Billing Admin 하려면, Organization Owner 또는 역할 Organization Billing Viewer 있어야 합니다.
초점 데이터 API 역량
FOCUS 데이터 API는 FOCUS 형식의 비용 및 사용 데이터에 대한 프로그래밍 액세스를 제공합니다.
FOCUS 데이터 API를 사용하면 다음을 수행할 수 있습니다.
청구 통화로 비용 보기: 수동 변환 없이
BilledCost및EffectiveCost에 직접 청구 통화로 액세스합니다.크레딧 유형 식별:
Contract Applied필드를 통해 크레딧이 선불, 프로모션 또는 유동적인지 확인합니다.완전한 문맥으로 비용 분석:
Region,UsageDate,ServiceCategory등의 필드를 사용하여 세부적인 비용 분석을 수행합니다.표준 산업 텀과 함께 사용:
groupName등의 내부 API 텀 대신SubAccountName및 기타 직관적인 FOCUS 텀을 사용합니다.
FOCUS 열 차트 참조
다음 표에는 FOCUS 데이터 API 응답에서 반환되는 열과 해당하는 레거시 청구 필드가 나와 있습니다.
초점 1.3 열 ID | 정의 | 현재 CSV 대응 필드 | 현재 JSON 대응 필드 |
|---|---|---|---|
| 현재 청구 기간 동안 청구되는 청구 통화의 비용입니다. | N/A | N/A |
| 이 인스트루먼트에 대한 Atlas 조직 ID입니다. | 조직 ID | N/A |
| 이 인보이스에 대한 Atlas 조직 이름입니다. | 조직 이름 | N/A |
| 이 요금에 대한 청구 통화입니다. | N/A | N/A |
| 청구 기간의 종료 일입니다. 청구 기간에는 종료 일이 포함되지 않습니다. | N/A | "endDate" (인보이스) |
| 청구 기간의 시작 날짜입니다. 청구 기간에는 시작 일이 포함됩니다. | N/A | "created" (인보이스) |
| 청구 방식의 성격에 따른 요금 분류. 예를 들어 "사용"은 서비스 또는 리소스 소비량에 기초한 요금을 나타냅니다. | N/A | N/A |
| 요금에 대한 고수준 설명입니다. | 설명 | N/A |
| 요금이 발생한 기간의 마지막입니다. 청구 기간에는 종료 일이 포함되지 않습니다. | N/A | "endDate" (항목) |
| 요금이 발생한 기간의 시작입니다. 청구 기간에는 시작 일이 포함됩니다. | 사용 날짜 | "startDate" (lineItems) |
| 소비된 단위에 기초하여 사용된 리소스 또는 서비스에 연결된 주어진 SKU의 볼륨입니다. | 수량 | "수량" |
| 주어진 SKU를 측정하는 데 사용되는 단위입니다. | 단위 | "unit" |
| 하나 이상의 계약 약속과 과금을 연결하는 속성 세트입니다. 소비된 사용량을 총당하는 데 사용되는 Atlas 크레딟의 이름을 식별합니다. | N/A | N/A |
| 계약된 단가와 해당 가격 수량을 곱하여 계산된 비용을 나타냅니다. 이 필드는 청구 통화로 표시됩니다. | N/A | N/A |
| 할인이 포함된 관련 SKU의 단일 가격 단위에 대한 합의된 단가. 이 가격은 청구 통화로 표시됩니다. | N/A | N/A |
| 모든 할인률 및 할인을 적용한 후 청구의 상각 비용을 나타냅니다. 이 필드는 청구 통화로 표시됩니다. | N/A | N/A |
| 서비스 제공자가 리소스와 서비스를 배포하는 기본 인프라스트럭처를 제공하는 개체의 이름입니다. 예: Amazon Web Services, Azure, GCP. | N/A | N/A |
| 소비된 리소스 또는 서비스에 대한 인스턴스 청구서 발행 책임자. 예시: MongoDB와 직접 거래하는 고객을 위한 MongoDB 또는 마켓플레이스를 통해 Atlas와 거래하는 고객을 위한 마켓플레이스. | N/A | N/A |
| 목록 단가와 해당 가격 수량을 곱하여 계산된 비용을 나타냅니다. 이 필드는 청구 통화로 표시됩니다. | N/A | N/A |
| 연결된 SKU의 단일 가격 단위에 대한 제안된 제공자 공개 단가(할인 제외). 이 가격은 청구 통화로 표시됩니다. | N/A | N/A |
| 이 요금에 대한 계측 통화는 Atlas 크레딧 등입니다. | N/A | N/A |
| 할인이 포함된 관련 SKU의 단일 가격 단위에 대한 합의된 단가. 이 가격은 가격 통화로 표시됩니다. | N/A | N/A |
| 모든 할인률 및 할인을 적용한 후 청구의 상각 비용을 나타냅니다. 이 필드는 가격 통화로 표시됩니다. | 금액 | "totalPriceCents" |
| 목록 단가와 해당 가격 수량을 곱하여 계산된 비용을 나타냅니다. 이 필드는 가격 통화로 표시됩니다. | 단위 가격 | "unitPriceDollars" |
| 가격 단위를 기반으로 사용되거나 구매한 리소스 또는 서비스와 관련된 주어진 SKU의 볼륨을 나타냅니다. | N/A | N/A |
| 단위 가격을 결정하는 단위를 나타냅니다. 예시: GB-시간. | N/A | N/A |
| 리소스가 프로비저닝되거나 서비스가 제공되는 경리된 지역의 식별자입니다. 예를 들어 | N/A | N/A |
| 리소스가 프로비저닝되거나 서비스가 제공되는 격리된 지리적 영역을 나타내는 이름입니다. 예를 들어 | 리전 | N/A |
| Atlas의 경우 이것은 클러스터 이름입니다. | 클러스터 | "clusterName" |
| FOCUS에 의해 정의된 최고 수준 분류. MongoDB Atlas의 경우 이는 "데이터베이스"입니다. | N/A | N/A |
| 서비스 제공자에서 구매할 수 있는 제공을 나타냅니다(예시: MongoDB Atlas). | N/A | N/A |
| 사용 또는 구매할 수 있는 리소스 또는 서비스를 제공하는 개체 이름 예시: MongoDB. | N/A | N/A |
| 고유한 주식 관리 단위(SKU)의 식별자이며, 각 청구 가능한 구성을 나타냅니다. | N/A | N/A |
| 연관 SKU의 측정 단위로, 측정되는 것을 나타냅니다(예: | N/A | N/A |
| 요금이 청구된 가격 점의 가격 차원은 JSON의 키-값 쌍입니다. 청구에 가격 점이 없거나 가격 점에 차원이 지정되지 않은 경우 이 열은 비어 있습니다. | N/A | N/A |
| 요금이 청구된 가격 점의 고유 식별자입니다. | N/A | N/A |
| 조직 구조에 기초한 그룹프인 부계정에 할당된 식별자입니다. 이는 MongoDB Atlas의 프로젝트와 동일합니다. | 프로젝트 ID | "groupId" |
| 부계정의 표시 이름입니다. 이는 MongoDB Atlas의 프로젝트와 동일합니다. | 프로젝트 | "groupName" |
| 연결된 리소스에 지정된 태그. | 태그/애플리케이션 | "tags" |
| 청구되는 Atlas SKU. | SKU | "sku" |
| MongoDB가 요금을 청구한 기간의 마지막입니다. | 날짜 | "created" (lineItems) |
| MongoDB가 요금을 청구한 기간의 시작입니다. | N/A | N/A |
| Atlas 크레딟의 "가격"입니다. 이 요금을 적용하여 청구 통화로 Atlas 크레딟의 비용을 찾으세요. | N/A | N/A |
| 연결된 Atlas SKU의 최고 수준 분류입니다. 예: | N/A | N/A |
엔드포인트
FOCUS 데이터 API는 세 개의 엔드포인트로 Atlas Administration API를 확장합니다.
조직에 대한 인보이스 목록 에는 조직에 대해 사용 가능한 인보이스가 나열되어 있습니다.
FOCUS 보고서 요청은 FOCUS 형식의 청구 보고서 생성을 요청합니다.
FOCUS 보고서 조회는 해당 보고서의 상태를 반환하고, 보고서가 준비되면 다운로드할 URL을 반환합니다.
참고
모든 엔드포인트에는 Organization Billing Admin, Organization Owner 또는 Organization Billing Viewer 역할이 필요합니다.
조직의 청구서 목록
사용 가능한 청구서 ID 목록을 조회합니다. 조직 간 청구의 경우, 이 엔드포인트는 모든 연결된 조직의 청구서를 식별합니다.
기본 URL: /api/atlas/v2/orgs/{orgId}/associatedInvoices
GET /api/atlas/v2/orgs/{orgId}/associatedInvoices
요청 경로 매개변수
이름 | 유형 | 필요성 | 설명 |
|---|---|---|---|
| 문자열 | 필수 사항 | 조직을 식별하는 고유한 24자리 16진수 문자열입니다. |
요청 쿼리 매개변수
다음 쿼리 매개변수는 선택 사항입니다.
이름 | 유형 | 필요성 | 설명 | 기본값 |
|---|---|---|---|---|
| integer | 옵션 | 조회할 인보이스 월(1-12). | 현재 월 |
| integer | 옵션 | 조회할 인보이스의 연도입니다. >= 2000 이어야 합니다. | 현재 년도 |
| 부울 | 옵션 | 연결된 조직의 청구서를 포함할지 여부를 나타내는 플래그입니다. |
|
요청 예시
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \ --digest \ --header "Accept: application/vnd.atlas.2025-03-12+json" \ --request GET "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/associatedInvoices"
응답
{ "associatedInvoices": [ { "invoiceId": "string", "orgId": "string" } ], "month": "06", "year": "2026" }
응답 요소
이름 | 유형 | 설명 |
|---|---|---|
| 배열 | 지정된 기간에 대한 조직과 연결된 인보이스 목록. |
| 문자열 | 청구서의 고유한 24자리 16진수 식별자. |
| 문자열 | 조직 의 고유한 24-16진수 식별자입니다. |
| 문자열 | 연결된 인보이스의 월을 나타내는 두 자리 숫자(예시: |
| 문자열 | 연관된 인보이스의 연도를 나타내는 4자리 숫자입니다(예시: |
FOCUS 보고서 요청
FOCUS 표준 형식의 청구서 생성을 요청합니다. Atlas는 보고서를 비동기적으로 생성하고 보고서 상태를 폴링하는 데 사용하는 보고서 ID를 반환합니다.
기본 URL: /api/atlas/v2/orgs/{orgId}/invoices/{invoiceId}/reports
POST /api/atlas/v2/orgs/{orgId}/invoices/{invoiceId}/reports
요청 경로 매개변수
이름 | 유형 | 필요성 | 설명 |
|---|---|---|---|
| 문자열 | 필수 사항 | 조직을 식별하는 고유한 24자리 16진수 문자열입니다. |
| 문자열 | 필수 사항 | 고유한 24자리 16진수 string으로 청구서를 식별합니다. |
요청 본문 매개변수
이름 | 유형 | 필요성 | 설명 |
|---|---|---|---|
| 문자열 | 필수 사항 | 생성할 보고서 유형입니다. |
| 문자열 | 필수 사항 | 보고서의 형식입니다. 허용되는 값: |
| 문자열 | 옵션 | 보고서 형식 사양의 버전입니다. 예시: |
요청 예시
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \ --digest \ --header "Accept: application/vnd.atlas.2025-03-12+json" \ --header "Content-Type: application/json" \ --request POST "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/invoices/{invoiceId}/reports" \ --data '{ "reportType": "FOCUS", "reportFormat": "CSV", "formatSpecVersion": "1.3" }'
응답
성공 시 보고서 ID 및 보고서의 초기 상태를 포함하는 201 Created을(를) 반환합니다.
{ "invoiceId": "32b6e34b3d91647abb20e7b8", "reportFormat": "CSV", "reportId": "5f5f4c9e2b8f4b3a1c2d3e4f", "reportType": "FOCUS", "state": "PENDING" }
보고서를 다운로드하려면 반환된 reportId을 조회 엔드포인트로 전달합니다.
FOCUS 보고서 조회
요청한 FOCUS 보고서의 상태와 세부 정보를 반환합니다. state이 SUCCEEDED 또는 FAILED일 때까지 이 엔드포인트를 폴링합니다.
5초마다 한 번 이하로 폴링하세요. 보고서 생성에 시간이 오래 걸리면 요청 간격을 기하급수적으로 늘리세요. 대부분의 보고서는 수초 내에 완료되지만, 대규모 인보이스의 보고서는 수분이 걸릴 수 있습니다.
기본 URL: /api/atlas/v2/orgs/{orgId}/invoices/{invoiceId}/reports/{reportId}
GET /api/atlas/v2/orgs/{orgId}/invoices/{invoiceId}/reports/{reportId}
요청 경로 매개변수
이름 | 유형 | 필요성 | 설명 |
|---|---|---|---|
| 문자열 | 필수 사항 | 조직을 식별하는 고유한 24자리 16진수 문자열입니다. |
| 문자열 | 필수 사항 | 고유한 24자리 16진수 string으로 청구서를 식별합니다. |
| 문자열 | 필수 사항 | 보고서를 식별하는 고유한 24-16진수 숫자 string. |
요청 예시
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \ --digest \ --header "Accept: application/vnd.atlas.2025-03-12+json" \ --request GET "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/invoices/{invoiceId}/reports/{reportId}"
응답
성공하면 보고서의 현재 상태가 포함된 200 OK이 반환됩니다. state이 SUCCEEDED인 경우 응답에는 다운로드 URL 및 만료 시간도 포함됩니다.
{ "downloadUrl": "https://<presigned-url>", "expiresAt": "2026-08-17T18:30:00Z", "formatSpecVersion": "1.3", "invoiceId": "32b6e34b3d91647abb20e7b8", "reportFormat": "CSV", "reportId": "5f5f4c9e2b8f4b3a1c2d3e4f", "reportType": "FOCUS", "state": "SUCCEEDED" }
보고서 상태
상태 | 설명 |
|---|---|
| Atlas는 요청을 수락했지만 아직 보고서 생성을 시작하지 않았습니다. |
| Atlas가 보고서를 생성하고 있습니다. |
| 보고서가 완료되었습니다. 응답에는 |
| Atlas가 보고서를 생성할 수 없습니다. 응답에는 |
응답 요소
이름 | 유형 | 설명 |
|---|---|---|
| 문자열 | 보고서를 다운로드할 URL입니다. 이 매개변수는 |
| 문자열 |
|
| 문자열 | 보고서 실패 사유. 이 매개변수는 |
| 문자열 | 보고서 형식 사양의 버전입니다. |
| 문자열 | 고유한 24자리 16진수 string으로 청구서를 식별합니다. |
| 문자열 | 생성된 보고서의 형식입니다. |
| 문자열 | 보고서를 식별하는 고유한 24-16진수 숫자 string. |
| 문자열 | 생성된 보고서의 유형입니다. |
| 문자열 | 보고서 생성의 현재 상태. |
보고서 가용성
각 downloadUrl은 15 분 동안 유효합니다. URL이 만료된 후 보고서를 다운로드하려면 동일한 reportId로 이 엔드포인트를 다시 호출합니다. Atlas는 새 downloadUrl과 새 expiresAt 시간을 반환합니다.
요청한 후 7일 동안 보고서를 사용할 수 있습니다. 7일 후에는 새 보고서를 요청하여 동일한 인스털먼트 데이터를 다운로드합니다.
데이터 동작 및 성능
다음 섹션에서는 FOCUS 데이터 API가 대기 데이터를 처리하고 대규모 보고서를 생성하는 방법을 설명합니다.
대기 중인 월 가시성
"대기 중"(현재) 월의 데이터를 쿼리할 수 있습니다. While Atlas associates usage with credits in real-time to offer cost estimates, these values are not final until the invoice closes. Atlas는 실시간으로 사용량을 크레딧과 연결하여 비용 추정치를 제공하지만, 이 값은 인보이스가 마감될 때까지 입니다. 월이 마감된 후 데이터를 다시 가져와 최종 청구 값을 확인합니다.
대용량 데이터의 파일 처리
FOCUS 데이터 API는 대규모 청구 데이터를 처리하도록 고안된 방식으로 보고서를 생성하고 전달합니다.
비동기 생성: 보고서 생성이 요청을 차단하지 않습니다. 요청 엔드포인트는
reportId을 즉시 반환하며, 보고서 상태를 조회하려면 조회 엔드포인트를 폴링합니다.CSV 형식: 보고서는 CSV 파일로 생성됩니다.
시간 제한 다운로드 URL: 보고서가 성공하면 조회 엔드포인트는 15 분 동안 유효한
downloadUrl을 반환합니다. 보고서는 7일 동안 사용할 수 있습니다. 만료된 URL을 새로 고침하는 방법은 보고서 가용성을 참조하세요.단일 조직 범위: 각 요청은 하나의 조직에 대한 데이터를 반환합니다. 조직 간 청구서를 사용하는 경우 리스트 엔드포인트에서 반환되는 각
invoiceId에 대한 보고서를 요청합니다.
제한 사항
이 엔드포인트는 사용량 기반 비용만 포함합니다. 현재 포함되지 않는 내용:
부족액 수수료(월별/플렉스 약정 차이).
세금 항목.
조정 또는 환불.
Atlas 컨솔에서 전체 세금계산서를 보려면 세금계산서 관리를 참조하세요.
지원 및 피드백
FOCUS 데이터 API에 대한 질문은 MongoDB 계정 팀에 문의하세요. 동료 개발자에게 질문하고 토론에 참여하려면 Stack Overflow 또는 Reddit에서 MongoDB 커뮤니티를 참조하세요.