Skip to main content

PlayerUsageCharge

One posted player usage charge: a (player, app, closed clock hour) row. amountCents = platformCents + markupCents — players see what the platform charges and what the studio adds (06 §4). The UNIQUE hour key makes the billing tick idempotent.

type PlayerUsageCharge {
chargeId: BigInt!
userId: BigInt!
appId: BigInt!
periodStart: DateTime!
periodEnd: DateTime!
amountCents: BigInt!
platformCents: BigInt!
markupCents: BigInt!
currency: String!
usageSnapshotJson: String!
createdAt: DateTime!
}

Fields

PlayerUsageCharge.chargeId ● BigInt! non-null scalar

Charge id.

PlayerUsageCharge.userId ● BigInt! non-null scalar

The owning player user id.

PlayerUsageCharge.appId ● BigInt! non-null scalar

The app the usage ran in.

PlayerUsageCharge.periodStart ● DateTime! non-null scalar

Billed hour start (inclusive).

PlayerUsageCharge.periodEnd ● DateTime! non-null scalar

Billed hour end (exclusive).

PlayerUsageCharge.amountCents ● BigInt! non-null scalar

Total debited cents.

PlayerUsageCharge.platformCents ● BigInt! non-null scalar

Platform component (base rate card).

PlayerUsageCharge.markupCents ● BigInt! non-null scalar

Studio markup component (the app's player_rate_markup_bps).

PlayerUsageCharge.currency ● String! non-null scalar

ISO currency code.

PlayerUsageCharge.usageSnapshotJson ● String! non-null scalar

JSON per-metric usage/billing snapshot for the hour.

PlayerUsageCharge.createdAt ● DateTime! non-null scalar

When the charge posted.

Returned By

playerUsageCharges query