Skip to main content

PlayerCodeListing

A marketplace code listing as seen in-game (replica of the management catalog). Every listing is FREE in P4a; carrying both server and client artifact sets makes it a bundle.

type PlayerCodeListing {
listingId: String!
appId: BigInt!
ownerKind: PlayerCodeOwnerKind!
ownerRef: BigInt!
name: String!
description: String!
mediaJson: String!
licenseMode: PlayerCodeLicenseMode!
acquisitionMode: PlayerCodeAcquisitionMode!
priceCents: Int
rentIntervalDays: Int
windowDays: Int
unitBudget: BigInt
status: PlayerCodeListingStatus!
admissionState: PlayerCodeAdmissionState!
latestVersionId: String
createdAt: DateTime!
}

Fields

PlayerCodeListing.listingId ● String! non-null scalar

UUID of the listing.

PlayerCodeListing.appId ● BigInt! non-null scalar

App the listing belongs to.

PlayerCodeListing.ownerKind ● PlayerCodeOwnerKind! non-null enum

Whether a player user or an org owns this listing.

PlayerCodeListing.ownerRef ● BigInt! non-null scalar

User id or org id of the owner, per ownerKind.

PlayerCodeListing.name ● String! non-null scalar

Display name.

PlayerCodeListing.description ● String! non-null scalar

Store description.

PlayerCodeListing.mediaJson ● String! non-null scalar

JSON array of media refs.

PlayerCodeListing.licenseMode ● PlayerCodeLicenseMode! non-null enum

Source-access mode for new versions.

PlayerCodeListing.acquisitionMode ● PlayerCodeAcquisitionMode! non-null enum

Acquisition mode: FREE, or a paid mode (BUY / RENT / TIME_LIMITED / COST_LIMITED; P4b). Free listings carry no price.

PlayerCodeListing.priceCents ● Int scalar

Price in cents for paid modes; null when FREE.

PlayerCodeListing.rentIntervalDays ● Int scalar

Rent billing interval in days (RENT mode).

PlayerCodeListing.windowDays ● Int scalar

Fixed access window in days (TIME_LIMITED mode).

PlayerCodeListing.unitBudget ● BigInt scalar

Compute-unit budget per purchase (COST_LIMITED mode).

PlayerCodeListing.status ● PlayerCodeListingStatus! non-null enum

Catalog status (active / delisted / killed).

PlayerCodeListing.admissionState ● PlayerCodeAdmissionState! non-null enum

The listing's admission standing in this app. In implicit_allow apps this is always ADMITTED; in allow_list apps PENDING listings can be acquired but not installed.

PlayerCodeListing.latestVersionId ● String scalar

UUID of the newest published version; null before first publish.

PlayerCodeListing.createdAt ● DateTime! non-null scalar

When the listing was created.

Returned By

playerCodeListings query ● publishPlayerCode mutation