From fb978e49d1ce6a3341d07fc7313928e19be13368 Mon Sep 17 00:00:00 2001 From: dinosoeren Date: Fri, 20 Feb 2026 21:52:46 -0700 Subject: [PATCH] feat(confirm): add email --- docs/gen/redoc.v1.html | 12 +++------ docs/gen/swagger.v1.json | 38 ++++++--------------------- server/shop/purchase/v1/service.proto | 6 +---- 3 files changed, 13 insertions(+), 43 deletions(-) diff --git a/docs/gen/redoc.v1.html b/docs/gen/redoc.v1.html index 0ce1423..0cb524e 100644 --- a/docs/gen/redoc.v1.html +++ b/docs/gen/redoc.v1.html @@ -542,21 +542,17 @@ " class="sc-eVqvcJ sc-fszimp kIppRw drqpJr">

Customer IP address for fraud prevention and compliance

region
string

Region/country code using ISO-3166-1 alpha-2 code (e.g., 'US', 'CA', 'GB')

+
userEmail
string

Customer email for the purchase

emailMarketingOptIn
boolean

Optional flag indicating if customer opted in to email marketing

-
extraInGameCurrency
integer <int64>

Optional extra in-game currency bonus

-
extraLoyaltyPoints
integer <int64>

Optional extra loyalty points bonus

-
extraLoyaltyCredits
integer <int64>

Optional extra loyalty credits bonus

Array of objects (Bonus Item)

Optional list of bonus items to be granted with the purchase

Responses

Request samples

Content type
application/json
{
  • "playerId": "string",
  • "transactionId": "string",
  • "checkoutLinkId": "string",
  • "environment": "PAYMENT_ENVIRONMENT_UNSPECIFIED",
  • "currency": "string",
  • "tax": 0,
  • "total": 0,
  • "timeMillis": "string",
  • "paymentMethodType": "PAYMENT_METHOD_TYPE_UNSPECIFIED",
  • "items": [
    ],
  • "platform": "PURCHASE_PLATFORM_UNSPECIFIED",
  • "browser": "string",
  • "deviceId": "string",
  • "source": "PURCHASE_SOURCE_UNSPECIFIED",
  • "ipAddress": "string",
  • "region": "string",
  • "emailMarketingOptIn": true,
  • "extraInGameCurrency": 0,
  • "extraLoyaltyPoints": 0,
  • "extraLoyaltyCredits": 0,
  • "bonusItems": [
    ]
}

Response samples

Content type
application/json
{
  • "results": [
    ]
}

Register payment intent

Request samples

Content type
application/json
{
  • "playerId": "string",
  • "transactionId": "string",
  • "checkoutLinkId": "string",
  • "environment": "PAYMENT_ENVIRONMENT_UNSPECIFIED",
  • "currency": "string",
  • "tax": 0,
  • "total": 0,
  • "timeMillis": "string",
  • "paymentMethodType": "PAYMENT_METHOD_TYPE_UNSPECIFIED",
  • "items": [
    ],
  • "platform": "PURCHASE_PLATFORM_UNSPECIFIED",
  • "browser": "string",
  • "deviceId": "string",
  • "source": "PURCHASE_SOURCE_UNSPECIFIED",
  • "ipAddress": "string",
  • "region": "string",
  • "userEmail": "string",
  • "emailMarketingOptIn": true,
  • "bonusItems": [
    ]
}

Response samples

Content type
application/json
{
  • "results": [
    ]
}

Register payment intent

Step 1: Registers a purchase intent with the game backend. The game backend is expected to reserve inventory for the purchase. IMPORTANT: Always expects HTTP 200 OK response with inline error codes in the body.

Authorizations:
hmac
Request Body schema: application/json
required

Request to register a purchase intent with the game backend, at which point the game backend is expected to reserve the inventory for the purchase.

@@ -592,7 +588,7 @@ " class="sc-eVqvcJ sc-fszimp sc-etsjJW kIppRw jnwENr ljKHqG">

An unexpected error response.

Request samples

Content type
application/json
{
  • "playerId": "string",
  • "transactionId": "string",
  • "checkoutLinkId": "string",
  • "environment": "PAYMENT_ENVIRONMENT_UNSPECIFIED",
  • "currency": "string",
  • "registrations": [
    ],
  • "platform": "PURCHASE_PLATFORM_UNSPECIFIED",
  • "browser": "string",
  • "deviceId": "string",
  • "source": "PURCHASE_SOURCE_UNSPECIFIED",
  • "ipAddress": "string",
  • "region": "string"
}

Response samples

Content type
application/json
{
  • "statuses": [
    ]
}