Suger Report API
Access to revenue or usage metering Report resources
Access to revenue or usage metering Report resources
openapi: 3.0.1
info:
contact:
email: support@suger.io
name: Suger Support
url: https://www.suger.io/support
description: CRUD operations on a set of resources, including organizations, products, offers, entitlements, usage record groups for meterting, etc.
title: Suger API Report API
version: '1.0'
servers:
- url: https://api.suger.cloud
tags:
- description: Access to revenue or usage metering Report resources
name: Report
paths:
/org/{orgId}/dailyRevenueRecord:
get:
description: list daily revenue records for the given organization, partner, entitlement, or buyer, within the given date range.
operationId: ListDailyRevenueRecords
parameters:
- description: Organization ID
explode: false
in: path
name: orgId
required: true
schema:
type: string
style: simple
- description: Cloud Partner
explode: true
in: query
name: partner
required: false
schema:
enum:
- AWS
- AZURE
- GCP
type: string
style: form
- description: Filter daily revenue records by the given product ID
explode: true
in: query
name: productId
required: false
schema:
type: string
style: form
- description: Filter daily revenue records by the given buyer ID
explode: true
in: query
name: buyerId
required: false
schema:
type: string
style: form
- description: Filter daily revenue records by the given entitlement ID
explode: true
in: query
name: entitlementId
required: false
schema:
type: string
style: form
- description: start date (UTC) in YYYY-MM-DD format, default is 30 days before the endDate
explode: true
in: query
name: startDate
required: false
schema:
type: string
style: form
- description: end date (UTC) in YYYY-MM-DD format, default is today
explode: true
in: query
name: endDate
required: false
schema:
type: string
style: form
responses:
'200':
content:
application/json:
schema:
items:
$ref: '#/components/schemas/RevenueRecord'
type: array
description: OK
'400':
content:
application/json:
schema:
type: string
description: Bad request error
'500':
content:
application/json:
schema:
type: string
description: Internal server error
security:
- APIKeyAuth: []
summary: List Daily Revenue Records
tags:
- Report
/org/{orgId}/partner/{partner}/revenueRecord:
get:
description: list the revenue records for the given organization, product, entitlement, or buyer.
operationId: ListRevenueRecords
parameters:
- description: Organization ID
explode: false
in: path
name: orgId
required: true
schema:
type: string
style: simple
- description: Cloud Partner
explode: false
in: path
name: partner
required: true
schema:
enum:
- AWS
- AZURE
- GCP
type: string
style: simple
- description: Filter revenue records by the given product ID
explode: true
in: query
name: productId
required: false
schema:
type: string
style: form
- description: Filter revenue records by the given entitlement ID
explode: true
in: query
name: entitlementId
required: false
schema:
type: string
style: form
- description: Filter revenue records by the given buyer ID
explode: true
in: query
name: buyerId
required: false
schema:
type: string
style: form
- description: start date (UTC) in YYYY-MM-DD format, default is 30 days before the endDate
explode: true
in: query
name: startDate
required: false
schema:
type: string
style: form
- description: end date (UTC) in YYYY-MM-DD format, default is today
explode: true
in: query
name: endDate
required: false
schema:
type: string
style: form
- description: List pagination size, default 1000, max value is 1000
explode: true
in: query
name: limit
required: false
schema:
type: integer
style: form
- description: List pagination offset, default 0
explode: true
in: query
name: offset
required: false
schema:
type: integer
style: form
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ListRevenueRecordsResponse'
description: OK
'400':
content:
application/json:
schema:
type: string
description: Bad request error
'500':
content:
application/json:
schema:
type: string
description: Internal server error
security:
- APIKeyAuth: []
summary: List Revenue Records
tags:
- Report
/org/{orgId}/partner/{partner}/revenueRecordDetail:
get:
description: list the raw revenue record details for the given organization, partner, product, entitlement, or buyer.
operationId: ListRevenueRecordDetails
parameters:
- description: Organization ID
explode: false
in: path
name: orgId
required: true
schema:
type: string
style: simple
- description: Cloud Partner
explode: false
in: path
name: partner
required: true
schema:
enum:
- AWS
- AZURE
- GCP
type: string
style: simple
- description: Filter revenue record details by the given product ID
explode: true
in: query
name: productId
required: false
schema:
type: string
style: form
- description: Filter revenue record details by the given buyer ID
explode: true
in: query
name: buyerId
required: false
schema:
type: string
style: form
- description: Filter revenue record details by the given entitlement ID
explode: true
in: query
name: entitlementId
required: false
schema:
type: string
style: form
- description: start date (UTC) in YYYY-MM-DD format, default is 30 days before the endDate
explode: true
in: query
name: startDate
required: false
schema:
type: string
style: form
- description: end date (UTC) in YYYY-MM-DD format, default is today
explode: true
in: query
name: endDate
required: false
schema:
type: string
style: form
- description: List pagination size, default 1000, max value is 1000
explode: true
in: query
name: limit
required: false
schema:
type: integer
style: form
- description: List pagination offset, default 0
explode: true
in: query
name: offset
required: false
schema:
type: integer
style: form
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ListRevenueRecordDetailsResponse'
description: OK
'400':
content:
application/json:
schema:
type: string
description: Bad request error
'500':
content:
application/json:
schema:
type: string
description: Internal server error
security:
- APIKeyAuth: []
summary: List Revenue Record Details
tags:
- Report
/org/{orgId}/partner/{partner}/usageMeteringDailyRecord:
get:
description: list the daily records of the usage metering from the cloud marketplace for the given organization, entitlement, or buyer.
operationId: ListUsageMeteringDailyRecords
parameters:
- description: Organization ID
explode: false
in: path
name: orgId
required: true
schema:
type: string
style: simple
- description: Filter by the Cloud Partner
explode: false
in: path
name: partner
required: true
schema:
enum:
- AWS
- AZURE
- GCP
type: string
style: simple
- description: Filter usage metering daily records by the given buyer ID
explode: true
in: query
name: buyerId
required: false
schema:
type: string
style: form
- description: Filter usage metering daily records by the given entitlement ID
explode: true
in: query
name: entitlementId
required: false
schema:
type: string
style: form
- description: start date (UTC) in YYYY-MM-DD format, default is 30 days before the endDate
explode: true
in: query
name: startDate
required: false
schema:
type: string
style: form
- description: end date (UTC) in YYYY-MM-DD format, default is today
explode: true
in: query
name: endDate
required: false
schema:
type: string
style: form
- description: List pagination size, default 1000, max value is 1000
explode: true
in: query
name: limit
required: false
schema:
type: integer
style: form
- description: List pagination offset, default 0
explode: true
in: query
name: offset
required: false
schema:
type: integer
style: form
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ListUsageMeteringDailyRecordsResponse'
description: OK
'400':
content:
application/json:
schema:
type: string
description: Bad request error
'500':
content:
application/json:
schema:
type: string
description: Internal server error
security:
- APIKeyAuth: []
summary: List Usage Metering Daily Records
tags:
- Report
/org/{orgId}/revenueReport:
post:
description: Get the revenue report of the given organization, product, entitlement, or buyer.
operationId: GetRevenueReport
parameters:
- description: Organization ID
explode: false
in: path
name: orgId
required: true
schema:
type: string
style: simple
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/GetRevenueReportParams'
description: Get Revenue Report Params
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/RevenueReport'
description: OK
'400':
content:
application/json:
schema:
type: string
description: Bad request error
'500':
content:
application/json:
schema:
type: string
description: Internal server error
security:
- APIKeyAuth: []
summary: Get Revenue Report
tags:
- Report
x-codegen-request-body-name: data
components:
schemas:
RevenueReport:
example:
organizationID: organizationID
reportType: GrossAmount
partner: partner
productID: productID
reportDate: 2000-01-23 04:56:07+00:00
service: service
entitlementID: entitlementID
groupBy: '{}'
revenueRecords:
- date: 2000-01-23 04:56:07+00:00
amount: 0.8008281904610115
productID: productID
refundDisburseAmount: 9.965781217890562
entitlementID: entitlementID
invoiceAmount: 5.025004791520295
buyerID: buyerID
invoiceDate: 2000-01-23 04:56:07+00:00
collectableAmount: 6.027456183070403
disburseDate: 2000-01-23 04:56:07+00:00
refundInvoiceDate: 2000-01-23 04:56:07+00:00
refundDisburseDate: 2000-01-23 04:56:07+00:00
organizationID: organizationID
paymentDueDate: 2000-01-23 04:56:07+00:00
refundInvoiceAmount: 9.369310271410669
partner: partner
currency: currency
disburseAmount: 1.4658129805029452
id: id
taxAmount: 6.683562403749608
info:
awsRevenueRecords:
- brokerID: brokerID
usagePeriodStartDate:
valid: true
time: time
productID: productID
insertDate:
valid: true
time: time
toAccountID: toAccountID
usagePeriodEndDate:
valid: true
time: time
parentBillingEventID: parentBillingEventID
disbursementBillingEventID: disbursementBillingEventID
action: action
offerID: offerID
currency: currency
invoiceID: invoiceID
id: id
balanceImpacting: 5
amount: 5.962133916683182
endUserAccountID: endUserAccountID
dataFeedProductID: dataFeedProductID
entitlementID: entitlementID
buyerID: buyerID
invoiceDate:
valid: true
time: time
transactionReferenceID: transactionReferenceID
organizationID: organizationID
transactionType: transactionType
paymentDueDate:
valid: true
time: time
fromAccountID: fromAccountID
agreementID: agreementID
billingAddressID: billingAddressID
bankTraceID: bankTraceID
- brokerID: brokerID
usagePeriodStartDate:
valid: true
time: time
productID: productID
insertDate:
valid: true
time: time
toAccountID: toAccountID
usagePeriodEndDate:
valid: true
time: time
parentBillingEventID: parentBillingEventID
disbursementBillingEventID: disbursementBillingEventID
action: action
offerID: offerID
currency: currency
invoiceID: invoiceID
id: id
balanceImpacting: 5
amount: 5.962133916683182
endUserAccountID: endUserAccountID
dataFeedProductID: dataFeedProductID
entitlementID: entitlementID
buyerID: buyerID
invoiceDate:
valid: true
time: time
transactionReferenceID: transactionReferenceID
organizationID: organizationID
transactionType: transactionType
paymentDueDate:
valid: true
time: time
fromAccountID: fromAccountID
agreementID: agreementID
billingAddressID: billingAddressID
bankTraceID: bankTraceID
resellerName: resellerName
resource: resource
billingModel: SubscriptionBased
channel: '{}'
idSource: idSource
earningId: earningId
resellerId: resellerId
disbursementNotificationSent: true
azureRevenueRecords:
- purchaseRecordID: purchaseRecordID
productID: productID
termEndDate: termEndDate
azureCustomerID: azureCustomerID
billingModel: billingModel
payoutStatus: payoutStatus
resellerCity: resellerCity
resellerID: resellerID
programName: programName
resellerState: resellerState
azureAssetID: azureAssetID
offerID: offerID
earningUsd: 2.3021358869347655
invoiceID: invoiceID
azurePlanID: azurePlanID
paymentStatus: paymentStatus
revenueUsd: 7.061401241503109
azureBillingAccountID: azureBillingAccountID
entitlementID: entitlementID
resellerEmail: resellerEmail
buyerID: buyerID
invoiceDate:
valid: true
time: time
transactionDate:
valid: true
time: time
earningID: earningID
invoiceDueDate:
valid: true
time: time
resellerCompany: resellerCompany
organizationID: organizationID
resellerCountry: resellerCountry
paymentID: paymentID
termStartDate: termStartDate
azureOfferID: azureOfferID
estimatedPayoutMonth:
valid: true
time: time
paymentSentDate:
valid: true
time: time
- purchaseRecordID: purchaseRecordID
productID: productID
termEndDate: termEndDate
azureCustomerID: azureCustomerID
billingModel: billingModel
payoutStatus: payoutStatus
resellerCity: resellerCity
resellerID: resellerID
programName: programName
resellerState: resellerState
azureAssetID: azureAssetID
offerID: offerID
earningUsd: 2.3021358869347655
invoiceID: invoiceID
azurePlanID: azurePlanID
paymentStatus: paymentStatus
revenueUsd: 7.061401241503109
azureBillingAccountID: azureBillingAccountID
entitlementID: entitlementID
resellerEmail: resellerEmail
buyerID: buyerID
invoiceDate:
valid: true
time: time
transactionDate:
valid: true
time: time
earningID: earningID
invoiceDueDate:
valid: true
time: time
resellerCompany: resellerCompany
organizationID: organizationID
resellerCountry: resellerCountry
paymentID: paymentID
termStartDate: termStartDate
azureOfferID: azureOfferID
estimatedPayoutMonth:
valid: true
time: time
paymentSentDate:
valid: true
time: time
paymentId: paymentId
disbursementBillingEventId: disbursementBillingEventId
bankTraceId: bankTraceId
creditAmount: 9.301444243932576
gcpRevenueRecords:
- productID: productID
usage: 1.1730742509559433
withheld: 4.965218492984954
paymentType: paymentType
accountID: accountID
refundBalanceOutstanding: 1.4894159098541704
reportDate: reportDate
trialUse: 7.457744773683766
paymentSchedule: paymentSchedule
offerID: offerID
currency: currency
prepayCredits: 1.2315135367772556
abandoned: 3.616076749251911
sku: sku
released: 6.84685269835264
usedBy: usedBy
insightAccountID: insightAccountID
dueVendor: 4.145608029883936
resource: resource
googleEntity: googleEntity
refundReason: refundReason
entitlementID: entitlementID
buyerID: buyerID
organizationID: organizationID
charges: 2.027123023002322
unit: unit
refundBalanceDeductedThisMonth: 1.0246457001441578
ordinal: 7
- productID: productID
usage: 1.1730742509559433
withheld: 4.965218492984954
paymentType: paymentType
accountID: accountID
refundBalanceOutstanding: 1.4894159098541704
reportDate: reportDate
trialUse: 7.457744773683766
paymentSchedule: paymentSchedule
offerID: offerID
currency: currency
prepayCredits: 1.2315135367772556
abandoned: 3.616076749251911
sku: sku
released: 6.84685269835264
usedBy: usedBy
insightAccountID: insightAccountID
dueVendor: 4.145608029883936
resource: resource
googleEntity: googleEntity
refundReason: refundReason
entitlementID: entitlementID
buyerID: buyerID
organizationID: organizationID
charges: 2.027123023002322
unit: unit
refundBalanceDeductedThisMonth: 1.0246457001441578
ordinal: 7
- date: 2000-01-23 04:56:07+00:00
amount: 0.8008281904610115
productID: productID
refundDisburseAmount: 9.965781217890562
entitlementID: entitlementID
invoiceAmount: 5.025004791520295
buyerID: buyerID
invoiceDate: 2000-01-23 04:56:07+00:00
collectableAmount: 6.027456183070403
disburseDate: 2000-01-23 04:56:07+00:00
refundInvoiceDate: 2000-01-23 04:56:07+00:00
refundDisburseDate: 2000-01-23 04:56:07+00:00
organizationID: organizationID
paymentDueDate: 2000-01-23 04:56:07+00:00
refundInvoiceAmount: 9.369310271410669
partner: partner
currency: currency
disburseAmount: 1.4658129805029452
id: id
taxAmount: 6.683562403749608
info:
awsRevenueRecords:
- brokerID: brokerID
usagePeriodStartDate:
valid: true
time: time
productID: productID
insertDate:
valid: true
time: time
toAccountID: toAccountID
usagePeriodEndDate:
valid: true
time: time
parentBillingEventID: parentBillingEventID
disbursementBillingEventID: disbursementBillingEventID
action: action
offerID: offerID
currency: currency
invoiceID: invoiceID
id: id
balanceImpacting: 5
amount: 5.962133916683182
endUserAccountID: endUserAccountID
dataFeedProductID: dataFeedProductID
entitlementID: entitlementID
buyerID: buyerID
invoiceDate:
valid: true
time: time
transactionReferenceID: transactionReferenceID
organizationID: organizationID
transactionType: transactionType
paymentDueDate:
valid: true
time: time
fromAccountID: fromAccountID
agreementID: agreementID
billingAddressID: billingAddressID
bankTraceID: bankTraceID
- brokerID: brokerID
usagePeriodStartDate:
valid: true
time: time
productID: productID
insertDate:
valid: true
time: time
toAccountID: toAccountID
usagePeriodEndDate:
valid: true
time: time
parentBillingEventID: parentBillingEventID
disbursementBillingEventID: disbursementBillingEventID
action: action
offerID: offerID
currency: currency
invoiceID: invoiceID
id: id
balanceImpacting: 5
amount: 5.962133916683182
endUserAccountID: endUserAccountID
dataFeedProductID: dataFeedProductID
entitlementID: entitlementID
buyerID: buyerID
invoiceDate:
valid: true
time: time
transactionReferenceID: transactionReferenceID
organizationID: organizationID
transactionType: transactionType
paymentDueDate:
valid: true
time: time
fromAccountID: fromAccountID
agreementID: agreementID
billingAddressID: billingAddressID
bankTraceID: bankTraceID
resellerName: resellerName
resource: resource
billingModel: SubscriptionBased
channel: '{}'
idSource: idSource
earningId: earningId
resellerId: resellerId
disbursementNotificationSent: true
azureRevenueRecords:
- purchaseRecordID: purchaseRecordID
productID: productID
termEndDate: termEndDate
azureCustomerID: azureCustomerID
billingModel: billingModel
payoutStatus: payoutStatus
resellerCity: resellerCity
resellerID: resellerID
programName: programName
resellerState: resellerState
azureAssetID: azureAssetID
offerID: offerID
earningUsd: 2.3021358869347655
invoiceID: invoiceID
azurePlanID: azurePlanID
paymentStatus: paymentStatus
revenueUsd: 7.061401241503109
azureBillingAccountID: azureBillingAccountID
entitlementID: entitlementID
resellerEmail: resellerEmail
buyerID: buyerID
invoiceDate:
valid: true
time: time
transactionDate:
valid: true
time: time
earningID: earningID
invoiceDueDate:
valid: true
time: time
resellerCompany: resellerCompany
organizationID: organizationID
resellerCountry: resellerCountry
paymentID: paymentID
termStartDate: termStartDate
azureOfferID: azureOfferID
estimatedPayoutMonth:
valid: true
time: time
paymentSentDate:
valid: true
time: time
- purchaseRecordID: purchaseRecordID
productID: productID
termEndDate: termEndDate
azureCustomerID: azureCustomerID
billingModel: billingModel
payoutStatus: payoutStatus
resellerCity: resellerCity
resellerID: resellerID
programName: programName
resellerState: resellerState
azureAssetID: azureAssetID
offerID: offerID
earningUsd: 2.3021358869347655
invoiceID: invoiceID
azurePlanID: azurePlanID
paymentStatus: paymentStatus
revenueUsd: 7.061401241503109
azureBillingAccountID: azureBillingAccountID
entitlementID: entitlementID
resellerEmail: resellerEmail
buyerID: buyerID
invoiceDate:
valid: true
time: time
transactionDate:
valid: true
time: time
earningID: earningID
invoiceDueDate:
valid: true
time: time
resellerCompany: resellerCompany
organizationID: organizationID
resellerCountry: resellerCountry
paymentID: paymentID
termStartDate: termStartDate
azureOfferID: azureOfferID
estimatedPayoutMonth:
valid: true
time: time
paymentSentDate:
valid: true
time: time
paymentId: paymentId
disbursementBillingEventId: disbursementBillingEventId
bankTraceId: bankTraceId
creditAmount: 9.301444243932576
gcpRevenueRecords:
- productID: productID
usage: 1.1730742509559433
withheld: 4.965218492984954
paymentType: paymentType
accountID: accountID
refundBalanceOutstanding: 1.4894159098541704
reportDate: reportDate
trialUse: 7.457744773683766
paymentSchedule: paymentSchedule
offerID: offerID
currency: currency
prepayCredits: 1.2315135367772556
abandoned: 3.616076749251911
sku: sku
released: 6.84685269835264
usedBy: usedBy
insightAccountID: insightAccountID
dueVendor: 4.145608029883936
resource: resource
googleEntity: googleEntity
refundReason: refundReason
entitlementID: entitlementID
buyerID: buyerID
organizationID: organizationID
charges: 2.027123023002322
unit: unit
refundBalanceDeductedThisMonth: 1.0246457001441578
ordinal: 7
- productID: productID
usage: 1.1730742509559433
withheld: 4.965218492984954
paymentType: paymentType
accountID: accountID
refundBalanceOutstanding: 1.4894159098541704
reportDate: reportDate
trialUse: 7.457744773683766
paymentSchedule: paymentSchedule
offerID: offerID
currency: currency
prepayCredits: 1.2315135367772556
abandoned: 3.616076749251911
sku: sku
released: 6.84685269835264
usedBy: usedBy
insightAccountID: insightAccountID
dueVendor: 4.145608029883936
resource: resource
googleEntity: googleEntity
refundReason: refundReason
entitlementID: entitlementID
buyerID: buyerID
organizationID: organizationID
charges: 2.027123023002322
unit: unit
refundBalanceDeductedThisMonth: 1.0246457001441578
ordinal: 7
buyerID: buyerID
properties:
buyerID:
type: string
entitlementID:
type: string
groupBy:
allOf:
- $ref: '#/components/schemas/GroupByInterval'
description: The group by of the revenue report.
type: object
organizationID:
type: string
partner:
type: string
productID:
type: string
reportDate:
format: date-time
type: string
reportType:
$ref: '#/components/schemas/RevenueReportType'
revenueRecords:
items:
$ref: '#/components/schemas/RevenueRecord'
type: array
service:
type: string
type: object
UsageMeteringDailyRecord:
exam
# --- truncated at 32 KB (86 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/suger/refs/heads/main/openapi/suger-report-api-openapi.yml