Skip to main content

Player marketplace

The player marketplace API is available only through registered persisted operations. Send a documentId and a variables object; arbitrary GraphQL documents are not accepted.

Common rules​

  • Money and game quantities are decimal strings such as "1250.000000". Clients must not convert them to Float.
  • Every mutation requestId is a UUIDv7. Reuse it only with the exact same canonical payload to retry one operation safely.
  • after, nextCursor, and previousCursor are opaque cursors.
  • Public operations take gameServerId. Authenticated player operations use the selected game server.
  • Item names, additional names, grades, and images match the selected server's current catalog.
  • HTTP 200 does not imply GraphQL success. Inspect errors and errors[].extensions.code.

Common error codes:

CodeMeaning
MARKETPLACE_DISABLEDMarketplace is disabled or not configured.
MARKETPLACE_RESTRICTEDA player restriction blocks the action.
MARKETPLACE_REQUEST_CONFLICTThe requestId was used with another payload.
MARKETPLACE_OPERATION_IN_PROGRESSThe same operation is already running.
MARKETPLACE_OPERATION_RECOVERY_REQUIREDAn external result requires operator review.
MARKETPLACE_ITEM_NOT_FOUNDThe item or its parsed catalog entry is missing.
MARKETPLACE_OFFER_UNAVAILABLEThe offer is sold out, reserved, or ended.
MARKETPLACE_INSUFFICIENT_BALANCEThe selected payment source has insufficient funds.
MARKETPLACE_INVALID_PINPIN verification failed.
MARKETPLACE_RATE_LIMIT_EXCEEDEDThe operation rate limit was exceeded.

Configuration​

QuerydocumentId: marketplaceConfigurationauth: public

marketplaceConfiguration​

Returns the published marketplace configuration for one game server: currency, sections, listing rules, payment sources, seller tiers, transfers, and withdrawal methods.

FieldTypeRequiredDescription
gameServerIdInt!✓A game server in the current project.

Result: MarketplaceConfiguration.

Request
documentId: marketplaceConfiguration
{
"documentId": "marketplaceConfiguration",
"variables": {
"gameServerId": 1
}
}
Response
200 OK
{
"data": {
"marketplaceConfiguration": {
"enabled": true,
"gameServerId": 1,
"currency": {
"code": "CREDITS",
"name": "Credits",
"symbol": "CR"
},
"version": "2026-07-31T18:30:00.000000Z",
"listingPolicy": {
"sellerFeeBasisPoints": 500,
"minimumPrice": "1.000000",
"maximumPrice": "1000000.000000",
"maximumAssetsPerListing": 12,
"maximumActiveListings": 30,
"itemModerationRequired": false,
"characterModerationRequired": true,
"stackableItemsAllowed": true,
"augmentedItemsAllowed": true,
"attributedItemsAllowed": true,
"sellerTiersEnabled": true
},
"paymentSources": [
{
"source": "MAIN_BALANCE",
"default": true
},
{
"source": "MARKETPLACE_WALLET",
"default": false
}
],
"sections": [
{
"code": "weapons",
"assetType": "ITEM",
"name": "Weapons",
"description": "Weapons and equipment",
"iconClass": "ti ti-sword"
},
{
"code": "characters",
"assetType": "CHARACTER",
"name": "Characters",
"description": "Character listings",
"iconClass": "ti ti-user"
}
],
"sellerTiers": [
{
"code": "starter",
"name": "Starter",
"minimumLifetimeSales": "0.000000",
"maximumAssetsPerListing": 6,
"maximumActiveListings": 10,
"sellerFeeBasisPoints": 700
}
],
"transfers": {
"mainBalanceEnabled": true
},
"withdrawals": {
"enabled": true,
"minimumAmount": "50.000000",
"feeBasisPoints": 300,
"conversionRate": "1.000000",
"methods": [
{
"code": "BANK_CARD",
"name": "Bank card",
"instructions": "Enter the recipient card",
"destinationKind": "BANK_CARD",
"destinationFields": [
{
"key": "card_number",
"type": "TEXT",
"label": "Card number",
"placeholder": "0000 0000 0000 0000",
"required": true,
"minimumLength": 16,
"maximumLength": 19,
"pattern": "^[0-9 ]+$",
"options": []
}
],
"minimumAmount": "100.000000",
"maximumAmount": "50000.000000",
"feeBasisPoints": 250,
"payoutCurrencyCode": "RUB"
}
]
}
}
}
}

Overview​

QuerydocumentId: marketplaceOverviewauth: public

marketplaceOverview​

Returns sections with available offer counts and the latest published offers.

FieldTypeRequiredDescription
gameServerIdInt!✓Project game server.
firstInt-Latest offer count, defaults to 12.

Result: MarketplaceOverview!.

Request
documentId: marketplaceOverview
{
"documentId": "marketplaceOverview",
"variables": {
"gameServerId": 1,
"first": 6
}
}
Response
200 OK
{
"data": {
"marketplaceOverview": {
"sections": [
{
"code": "weapons",
"assetType": "ITEM",
"name": "Weapons",
"description": "Weapons and equipment",
"iconClass": "ti ti-sword",
"availableOfferCount": 18
}
],
"latestOffers": [
{
"id": "0198f1be-2d43-7e88-b8c0-33ec87179fd1",
"listingId": "0198f1bd-f4f9-770a-8f5d-5bdf9d3cc220",
"section": {
"code": "weapons",
"name": "Weapons",
"iconClass": "ti ti-sword"
},
"saleMode": "INDIVIDUAL",
"title": "Forgotten Blade +7",
"description": "Fire attribute",
"unitPrice": "320.000000",
"currencyCode": "CREDITS",
"availableUnits": "1",
"minimumPurchaseUnits": "1",
"maximumPurchaseUnits": "1",
"asset": {
"type": "ITEM",
"itemId": "6364",
"name": "Forgotten Blade",
"additionalName": "Health",
"gradeCode": "S80",
"icon": "/styles/default/media/icon/1/weapon_forgotten_blade_i00.webp",
"panelIcon": null,
"enchantLevel": 7
},
"publishedAt": "2026-07-31T15:20:00.000000Z"
}
]
}
}
}

Catalog​

QuerydocumentId: marketplaceCatalogauth: public

marketplaceCatalog​

Returns a cursor-paginated list of published offers.

input fieldTypeDescription
sectionCodeStringSection code.
searchStringItem name, character name, or exact item ID.
minimumPrice / maximumPriceStringExact price range.
minimumEnchantLevelIntMinimum enchant level.
gradeCodeStringItem grade.
firstIntPage size, defaults to 24.
afterStringOpaque next-page cursor.

Result: MarketplaceCatalogConnection!.

Request
documentId: marketplaceCatalog
{
"documentId": "marketplaceCatalog",
"variables": {
"gameServerId": 1,
"input": {
"sectionCode": "weapons",
"search": "Forgotten",
"minimumPrice": "100.000000",
"maximumPrice": "500.000000",
"minimumEnchantLevel": 3,
"gradeCode": "S80",
"first": 24,
"after": null
}
}
}
Response
200 OK
{
"data": {
"marketplaceCatalog": {
"nodes": [
{
"id": "0198f1be-2d43-7e88-b8c0-33ec87179fd1",
"listingId": "0198f1bd-f4f9-770a-8f5d-5bdf9d3cc220",
"section": {
"code": "weapons",
"name": "Weapons",
"iconClass": "ti ti-sword"
},
"saleMode": "INDIVIDUAL",
"title": "Forgotten Blade +7",
"description": "Fire attribute",
"unitPrice": "320.000000",
"currencyCode": "CREDITS",
"availableUnits": "1",
"minimumPurchaseUnits": "1",
"maximumPurchaseUnits": "1",
"asset": {
"type": "ITEM",
"itemId": "6364",
"name": "Forgotten Blade",
"additionalName": "Health",
"gradeCode": "S80",
"icon": "/styles/default/media/icon/1/weapon_forgotten_blade_i00.webp",
"panelIcon": null,
"enchantLevel": 7
},
"publishedAt": "2026-07-31T15:20:00.000000Z"
}
],
"pageInfo": {
"nextCursor": null,
"previousCursor": null,
"hasNextPage": false
},
"totalCount": 42,
"filteredCount": 1
}
}
}

Listing details​

QuerydocumentId: marketplaceListingauth: public

marketplaceListing​

Returns one published listing, its offers, and every offer asset.

FieldTypeRequired
gameServerIdInt!✓
listingIdID!✓

Result: MarketplaceListing!.

Request
documentId: marketplaceListing
{
"documentId": "marketplaceListing",
"variables": {
"gameServerId": 1,
"listingId": "0198f1bd-f4f9-770a-8f5d-5bdf9d3cc220"
}
}
Response
200 OK
{
"data": {
"marketplaceListing": {
"id": "0198f1bd-f4f9-770a-8f5d-5bdf9d3cc220",
"section": {
"code": "weapons",
"assetType": "ITEM",
"name": "Weapons",
"iconClass": "ti ti-sword"
},
"saleMode": "INDIVIDUAL",
"publicationState": "PUBLISHED",
"moderationState": "NOT_REQUIRED",
"title": "Forgotten Blade +7",
"description": "Fire attribute",
"sellerFeeBasisPoints": 500,
"offers": [
{
"id": "0198f1be-2d43-7e88-b8c0-33ec87179fd1",
"unitPrice": "320.000000",
"currencyCode": "CREDITS",
"availableUnits": "1",
"minimumPurchaseUnits": "1",
"maximumPurchaseUnits": "1",
"assets": [
{
"quantityPerUnit": "1",
"asset": {
"type": "ITEM",
"itemId": "6364",
"name": "Forgotten Blade",
"additionalName": "Health",
"gradeCode": "S80",
"icon": "/styles/default/media/icon/1/weapon_forgotten_blade_i00.webp",
"panelIcon": null,
"enchantLevel": 7
}
}
]
}
],
"publishedAt": "2026-07-31T15:20:00.000000Z"
}
}
}

Viewer state​

QuerydocumentId: marketplaceViewerauth: Bearer session

marketplaceViewer​

The authoritative source for player capabilities, restrictions, seller limits, marketplace wallets, and personal statistics.

Result: MarketplaceViewer!.

Request
documentId: marketplaceViewer
{
"documentId": "marketplaceViewer",
"variables": {}
}
Response
200 OK
{
"data": {
"marketplaceViewer": {
"gameServerId": 1,
"addonActive": true,
"configurationPresent": true,
"configurationEnabled": true,
"currency": {
"code": "CREDITS",
"name": "Credits",
"symbol": "CR"
},
"capabilities": {
"browse": {
"allowed": true,
"reason": null
},
"createListing": {
"allowed": true,
"reason": null
},
"purchase": {
"allowed": true,
"reason": null
},
"cancelListing": {
"allowed": true,
"reason": null
},
"transferToMainBalance": {
"allowed": true,
"reason": null
},
"requestWithdrawal": {
"allowed": true,
"reason": null
}
},
"restrictions": [],
"seller": {
"activeListingCount": 3,
"maximumActiveListings": 30,
"maximumAssetsPerListing": 12,
"sellerFeeBasisPoints": 500,
"lifetimeSalesAmount": "8450.000000",
"tier": {
"code": "pro",
"name": "Professional"
}
},
"wallets": [
{
"currencyCode": "CREDITS",
"availableBalance": "847.500000",
"reservedBalance": "150.000000",
"lifetimeSalesAmount": "8450.000000",
"lifetimePurchaseAmount": "2130.000000",
"completedSalesCount": "14",
"completedPurchaseCount": "8"
}
],
"statistics": {
"activeListings": 3,
"pendingModerationListings": 1,
"endedListings": 19,
"openSales": 1,
"completedSales": 14,
"cancelledSales": 2,
"openPurchases": 0,
"completedPurchases": 8,
"cancelledPurchases": 1,
"postedSalesGrossAmount": "8450.000000",
"postedSalesFeeAmount": "422.500000",
"postedSalesNetAmount": "8027.500000"
}
}
}
}

Seller listings​

QuerydocumentId: marketplaceSellerListingsauth: Bearer session

marketplaceSellerListings​

Returns the current player's listings with cursor pagination.

input fieldTypeDescription
publicationStates[MarketplaceListingPublicationState!]Publication filter.
moderationStates[MarketplaceListingModerationState!]Moderation filter.
saleModes[MarketplaceListingSaleMode!]Sale modes.
first / afterInt / StringCursor page.

Result: MarketplaceSellerListingConnection!.

Request
documentId: marketplaceSellerListings
{
"documentId": "marketplaceSellerListings",
"variables": {
"input": {
"publicationStates": [
"PUBLISHED"
],
"first": 20,
"after": null
}
}
}
Response
200 OK
{
"data": {
"marketplaceSellerListings": {
"nodes": [
{
"id": "0198f1bd-f4f9-770a-8f5d-5bdf9d3cc220",
"section": {
"code": "weapons",
"assetType": "ITEM",
"name": "Weapons",
"iconClass": "ti ti-sword"
},
"saleMode": "INDIVIDUAL",
"publicationState": "PUBLISHED",
"moderationState": "NOT_REQUIRED",
"endedReason": null,
"title": "Forgotten Blade +7",
"description": "Fire attribute",
"moderationNote": null,
"sellerFeeBasisPoints": 500,
"canCancel": true,
"assets": [
{
"asset": {
"type": "ITEM",
"itemId": "6364",
"name": "Forgotten Blade",
"additionalName": "Health",
"gradeCode": "S80",
"icon": "/styles/default/media/icon/1/weapon_forgotten_blade_i00.webp",
"panelIcon": null,
"enchantLevel": 7
},
"originalQuantity": "1",
"reservedQuantity": "0",
"deliveredQuantity": "0",
"returnedQuantity": "0"
}
],
"offers": [
{
"id": "0198f1be-2d43-7e88-b8c0-33ec87179fd1",
"unitPrice": "320.000000",
"currencyCode": "CREDITS",
"totalUnits": "1",
"reservedUnits": "0",
"soldUnits": "0",
"availableUnits": "1",
"minimumPurchaseUnits": "1",
"maximumPurchaseUnits": "1",
"primaryAsset": {
"type": "ITEM",
"itemId": "6364",
"name": "Forgotten Blade",
"additionalName": "Health",
"gradeCode": "S80",
"icon": "/styles/default/media/icon/1/weapon_forgotten_blade_i00.webp",
"panelIcon": null,
"enchantLevel": 7
},
"assets": []
}
],
"publishedAt": "2026-07-31T15:20:00.000000Z",
"suspendedAt": null,
"endedAt": null,
"createdAt": "2026-07-31T15:19:58.000000Z",
"updatedAt": "2026-07-31T15:20:00.000000Z"
}
],
"pageInfo": {
"nextCursor": null,
"previousCursor": null,
"hasNextPage": false
}
}
}
}

Orders​

QuerydocumentId: marketplaceOrdersauth: Bearer session

marketplaceOrders​

Returns purchases and sales with independent payment, delivery, and settlement lifecycles.

input fieldTypeDescription
roleMarketplaceOrderRoleALL, BUYER, or SELLER.
outcomes[MarketplaceOrderOutcome!]OPEN, COMPLETED, or CANCELLED.
first / afterInt / StringCursor page.

Result: MarketplaceOrderConnection!.

Request
documentId: marketplaceOrders
{
"documentId": "marketplaceOrders",
"variables": {
"input": {
"role": "BUYER",
"outcomes": [
"COMPLETED"
],
"first": 20
}
}
}
Response
200 OK
{
"data": {
"marketplaceOrders": {
"nodes": [
{
"id": "0198f1c5-2a0c-7e43-b45f-4f54b5be6031",
"role": "BUYER",
"outcome": "COMPLETED",
"currencyCode": "CREDITS",
"grossAmount": "320.000000",
"sellerFeeAmount": "16.000000",
"sellerNetAmount": "304.000000",
"cancellationReason": null,
"payment": {
"source": "MARKETPLACE_WALLET",
"state": "CAPTURED",
"amount": "320.000000",
"currencyCode": "CREDITS",
"capturedAt": "2026-07-31T16:00:01.000000Z",
"refundStartedAt": null,
"refundedAt": null,
"cancelledAt": null
},
"lines": [
{
"listingId": "0198f1bd-f4f9-770a-8f5d-5bdf9d3cc220",
"offerId": "0198f1be-2d43-7e88-b8c0-33ec87179fd1",
"units": "1",
"unitPrice": "320.000000",
"grossAmount": "320.000000",
"sellerFeeBasisPoints": 500,
"sellerFeeAmount": "16.000000",
"sellerNetAmount": "304.000000",
"assets": [],
"settlement": {
"state": "POSTED",
"postedAt": "2026-07-31T16:00:03.000000Z",
"reversalStartedAt": null,
"reversedAt": null,
"cancelledAt": null
}
}
],
"completedAt": "2026-07-31T16:00:03.000000Z",
"cancelledAt": null,
"createdAt": "2026-07-31T16:00:00.000000Z",
"updatedAt": "2026-07-31T16:00:03.000000Z"
}
],
"pageInfo": {
"nextCursor": null,
"previousCursor": null,
"hasNextPage": false
}
}
}
}

Wallet entries​

QuerydocumentId: marketplaceWalletEntriesauth: Bearer session

marketplaceWalletEntries​

Returns the immutable available/reserved marketplace wallet ledger.

input fieldTypeDescription
currencyCodeStringWallet currency.
types[MarketplaceWalletEntryType!]Entry types.
first / afterInt / StringCursor page.

Result: MarketplaceWalletEntryConnection!.

Request
documentId: marketplaceWalletEntries
{
"documentId": "marketplaceWalletEntries",
"variables": {
"input": {
"currencyCode": "CREDITS",
"types": [
"SALE_CREDIT"
],
"first": 20
}
}
}
Response
200 OK
{
"data": {
"marketplaceWalletEntries": {
"nodes": [
{
"type": "SALE_CREDIT",
"sourceType": "SETTLEMENT",
"sourceReference": "0198f1c5-2a0c-7e43-b45f-4f54b5be6031",
"availableDelta": "304.000000",
"reservedDelta": "0.000000",
"availableBalanceAfter": "847.500000",
"reservedBalanceAfter": "150.000000",
"currencyCode": "CREDITS",
"occurredAt": "2026-07-31T16:00:03.000000Z"
}
],
"pageInfo": {
"nextCursor": null,
"previousCursor": null,
"hasNextPage": false
}
}
}
}

Main-balance transfers​

QuerydocumentId: marketplaceBalanceTransfersauth: Bearer session

marketplaceBalanceTransfers​

Returns transfers from the marketplace wallet to the main balance.

Request
documentId: marketplaceBalanceTransfers
{
"documentId": "marketplaceBalanceTransfers",
"variables": {
"input": {
"states": [
"COMPLETED"
],
"first": 20
}
}
}
Response
200 OK
{
"data": {
"marketplaceBalanceTransfers": {
"nodes": [
{
"id": "0198f1cc-34ec-7894-9957-05637d388ced",
"state": "COMPLETED",
"amount": "100.000000",
"currencyCode": "CREDITS",
"completedAt": "2026-07-31T16:30:02.000000Z",
"reversalStartedAt": null,
"reversedAt": null,
"createdAt": "2026-07-31T16:30:00.000000Z",
"updatedAt": "2026-07-31T16:30:02.000000Z"
}
],
"pageInfo": {
"nextCursor": null,
"previousCursor": null,
"hasNextPage": false
}
}
}
}
QuerydocumentId: marketplaceBalanceTransferauth: Bearer session

marketplaceBalanceTransfer​

Returns one transfer owned by the current player.

FieldTypeRequired
idID!✓

Result: MarketplaceBalanceTransfer.

Request
documentId: marketplaceBalanceTransfer
{
"documentId": "marketplaceBalanceTransfer",
"variables": {
"id": "0198f1cc-34ec-7894-9957-05637d388ced"
}
}
Response
200 OK
{
"data": {
"marketplaceBalanceTransfer": {
"id": "0198f1cc-34ec-7894-9957-05637d388ced",
"state": "COMPLETED",
"amount": "100.000000",
"currencyCode": "CREDITS",
"completedAt": "2026-07-31T16:30:02.000000Z",
"reversalStartedAt": null,
"reversedAt": null,
"createdAt": "2026-07-31T16:30:00.000000Z",
"updatedAt": "2026-07-31T16:30:02.000000Z"
}
}
}

Withdrawals​

QuerydocumentId: marketplaceWithdrawalsauth: Bearer session

marketplaceWithdrawals​

Returns the current player's withdrawal requests.

input fieldTypeDescription
methodCodeStringWithdrawal method.
reviewStates[MarketplaceWithdrawalReviewState!]Review states.
payoutStates[MarketplaceWithdrawalPayoutState!]Payout states.
fundsStates[MarketplaceWithdrawalFundsState!]Funds states.
first / afterInt / StringCursor page.
Request
documentId: marketplaceWithdrawals
{
"documentId": "marketplaceWithdrawals",
"variables": {
"input": {
"methodCode": "BANK_CARD",
"reviewStates": [
"APPROVED"
],
"first": 20
}
}
}
Response
200 OK
{
"data": {
"marketplaceWithdrawals": {
"nodes": [
{
"id": "0198f1d2-b2a8-74db-aef4-d443f1b45dc5",
"method": {
"code": "BANK_CARD",
"name": "Bank card"
},
"reviewState": "APPROVED",
"payoutState": "PROCESSING",
"fundsState": "RESERVED",
"sourceAmount": "500.000000",
"feeAmount": "12.500000",
"netSourceAmount": "487.500000",
"conversionRate": "90.000000",
"payoutAmount": "43875.000000",
"sourceCurrencyCode": "CREDITS",
"payoutCurrencyCode": "RUB",
"destinationPreview": "**** 4242",
"reviewReasonCode": null,
"payoutReference": null,
"reviewedAt": "2026-07-31T17:05:00.000000Z",
"payoutStartedAt": "2026-07-31T17:10:00.000000Z",
"paidAt": null,
"cancelledAt": null,
"createdAt": "2026-07-31T17:00:00.000000Z",
"updatedAt": "2026-07-31T17:10:00.000000Z"
}
],
"pageInfo": {
"nextCursor": null,
"previousCursor": null,
"hasNextPage": false
}
}
}
}
QuerydocumentId: marketplaceWithdrawalauth: Bearer session

marketplaceWithdrawal​

Returns one withdrawal request owned by the current player.

FieldTypeRequired
idID!✓

Result: MarketplaceWithdrawal.

Request
documentId: marketplaceWithdrawal
{
"documentId": "marketplaceWithdrawal",
"variables": {
"id": "0198f1d2-b2a8-74db-aef4-d443f1b45dc5"
}
}
Response
200 OK
{
"data": {
"marketplaceWithdrawal": {
"id": "0198f1d2-b2a8-74db-aef4-d443f1b45dc5",
"method": {
"code": "BANK_CARD",
"name": "Bank card"
},
"reviewState": "APPROVED",
"payoutState": "PROCESSING",
"fundsState": "RESERVED",
"sourceAmount": "500.000000",
"feeAmount": "12.500000",
"netSourceAmount": "487.500000",
"conversionRate": "90.000000",
"payoutAmount": "43875.000000",
"sourceCurrencyCode": "CREDITS",
"payoutCurrencyCode": "RUB",
"destinationPreview": "**** 4242",
"reviewReasonCode": null,
"payoutReference": null,
"reviewedAt": "2026-07-31T17:05:00.000000Z",
"payoutStartedAt": "2026-07-31T17:10:00.000000Z",
"paidAt": null,
"cancelledAt": null,
"createdAt": "2026-07-31T17:00:00.000000Z",
"updatedAt": "2026-07-31T17:10:00.000000Z"
}
}
}

Create an item listing​

MutationdocumentId: createMarketplaceItemListingauth: Bearer session

createMarketplaceItemListing​

Creates a listing and holds the selected items until purchase or cancellation.

input fieldTypeRequired
requestIdID!✓
sectionCodeString!✓
saleModeMarketplaceItemSaleMode!✓
accountLogin / characterNameString!✓
title / descriptionString-
assets[MarketplaceItemListingAssetInput!]!✓
assets[].objectIdString!✓
assets[].quantity / unitPriceString!✓
pinString-
termsAcceptedBoolean!✓
Request
documentId: createMarketplaceItemListing
{
"documentId": "createMarketplaceItemListing",
"variables": {
"input": {
"requestId": "0198f1da-87d2-7c91-a8a5-2cbd68c25578",
"sectionCode": "resources",
"saleMode": "INDIVIDUAL",
"accountLogin": "player01",
"characterName": "Elysia",
"title": "Adena",
"description": "Lots of 100,000",
"assets": [
{
"objectId": "200057",
"quantity": "500000",
"unitPrice": "0.000010"
}
],
"pin": "1234",
"termsAccepted": true
}
}
}
Response
200 OK
{
"data": {
"createMarketplaceItemListing": {
"requestId": "0198f1da-87d2-7c91-a8a5-2cbd68c25578",
"listingId": "0198f1da-a147-7943-a3c5-0549e22aedc6",
"publicationState": "PUBLISHED",
"moderationState": "NOT_REQUIRED",
"offerIds": [
"0198f1da-a190-728a-937b-69fccf48a6b3"
]
}
}
}

Create a character listing​

MutationdocumentId: createMarketplaceCharacterListingauth: Bearer session

createMarketplaceCharacterListing​

Creates a character listing with its inventory and holds the character until purchase or cancellation.

Request
documentId: createMarketplaceCharacterListing
{
"documentId": "createMarketplaceCharacterListing",
"variables": {
"input": {
"requestId": "0198f1dc-0efd-7ff9-9af7-7ec2bc130f1c",
"sectionCode": "characters",
"accountLogin": "player01",
"characterName": "Elysia",
"unitPrice": "2500.000000",
"title": "Eva's Saint 85",
"description": "Equipped character",
"pin": "1234",
"termsAccepted": true
}
}
}
Response
200 OK
{
"data": {
"createMarketplaceCharacterListing": {
"requestId": "0198f1dc-0efd-7ff9-9af7-7ec2bc130f1c",
"listingId": "0198f1dc-2ea6-7cb4-8275-b7f190e58f71",
"publicationState": "UNPUBLISHED",
"moderationState": "PENDING",
"offerIds": [
"0198f1dc-2eee-7a34-b9b0-a5254ce2a270"
]
}
}
}

Purchase​

MutationdocumentId: purchaseMarketplaceOfferauth: Bearer session

purchaseMarketplaceOffer​

Pays from the selected source, delivers the items or character, and credits the seller's net amount after fees.

Request
documentId: purchaseMarketplaceOffer
{
"documentId": "purchaseMarketplaceOffer",
"variables": {
"input": {
"requestId": "0198f1de-33d7-7db8-ac96-0f10ff51bbdb",
"offerId": "0198f1be-2d43-7e88-b8c0-33ec87179fd1",
"units": "1",
"paymentSource": "MARKETPLACE_WALLET",
"accountLogin": "buyer01",
"characterName": "Aeris",
"pin": "1234"
}
}
}
Response
200 OK
{
"data": {
"purchaseMarketplaceOffer": {
"requestId": "0198f1de-33d7-7db8-ac96-0f10ff51bbdb",
"orderId": "0198f1de-5192-76af-8d45-75f4b9733ca4",
"outcome": "COMPLETED",
"paymentState": "CAPTURED",
"settlementState": "POSTED"
}
}
}

Cancel a listing​

MutationdocumentId: cancelMarketplaceListingauth: Bearer session

cancelMarketplaceListing​

Ends a listing owned by the current player and returns every unsold asset.

Request
documentId: cancelMarketplaceListing
{
"documentId": "cancelMarketplaceListing",
"variables": {
"input": {
"requestId": "0198f1e0-88ad-7752-bf90-7c3052971548",
"listingId": "0198f1da-a147-7943-a3c5-0549e22aedc6",
"pin": "1234"
}
}
}
Response
200 OK
{
"data": {
"cancelMarketplaceListing": {
"requestId": "0198f1e0-88ad-7752-bf90-7c3052971548",
"listingId": "0198f1da-a147-7943-a3c5-0549e22aedc6",
"publicationState": "ENDED",
"endedReason": "WITHDRAWN_BY_SELLER",
"returnedAssetCount": 1,
"returnedQuantity": "500000"
}
}
}

Transfer marketplace balance​

MutationdocumentId: transferMarketplaceBalanceauth: Bearer session

transferMarketplaceBalance​

Transfers an exact amount from the marketplace wallet to the main balance when the configuration allows it.

Request
documentId: transferMarketplaceBalance
{
"documentId": "transferMarketplaceBalance",
"variables": {
"input": {
"requestId": "0198f1e2-6ef3-7666-99fd-4569bcd13aeb",
"amount": "100.000000",
"pin": "1234"
}
}
}
Response
200 OK
{
"data": {
"transferMarketplaceBalance": {
"requestId": "0198f1e2-6ef3-7666-99fd-4569bcd13aeb",
"transferId": "0198f1e2-8e01-7382-9f5b-72953f80d18a",
"state": "COMPLETED",
"amount": "100.000000",
"currencyCode": "CREDITS"
}
}
}

Request a withdrawal​

MutationdocumentId: requestMarketplaceWithdrawalauth: Bearer session

requestMarketplaceWithdrawal​

Calculates the selected method's fee and conversion, reserves funds, and creates a review request.

input fieldTypeRequired
requestIdID!✓
methodCodeString!✓
amountString!✓
destinationJSON!✓
pinString-

destination may contain only fields published in marketplaceConfiguration.withdrawals.methods[].destinationFields.

Request
documentId: requestMarketplaceWithdrawal
{
"documentId": "requestMarketplaceWithdrawal",
"variables": {
"input": {
"requestId": "0198f1e4-6359-76b8-8160-7440f4268fb8",
"methodCode": "BANK_CARD",
"amount": "500.000000",
"destination": {
"card_number": "4242 4242 4242 4242"
},
"pin": "1234"
}
}
}
Response
200 OK
{
"data": {
"requestMarketplaceWithdrawal": {
"requestId": "0198f1e4-6359-76b8-8160-7440f4268fb8",
"withdrawalId": "0198f1e4-82c6-7c2f-a037-d2d9f92a98a5",
"reviewState": "PENDING",
"payoutState": "NOT_STARTED",
"fundsState": "RESERVED",
"sourceAmount": "500.000000",
"feeAmount": "12.500000",
"netSourceAmount": "487.500000",
"conversionRate": "90.000000",
"payoutAmount": "43875.000000",
"sourceCurrencyCode": "CREDITS",
"payoutCurrencyCode": "RUB",
"destinationPreview": "**** 4242"
}
}
}

See the complete type, lifecycle, and cursor reference in Game account and marketplace types.