Skip to main content

Pricing API

Download OpenAPI specification:Download

wappier Pricing API allows customers to integrate with wappier Pricing products.

API users should have access to wappier Applications portal to register their application and get their APIKey and SecurityToken.

Once register their applications, users can utilize the provided APIKey and token to authenticate their API requests. Using the headers:

X-Wappier-Api-key: <APIKey>

X-Wappier-token: <token>

purchaseReports

This set of endpoints allows the caller to get detailed Purchase Reports about all the transactions that have been tracked on wappier's platform.

Purchase Reports by date range

This endpoint queries the available Purchase Reports by the specified date range and returns the matched documents using pagination.

Request Body schema: application/json
start
number

pagination parameter, the first document to fetch in the response. In the first page request, the value is by default 0.

end
number

pagination parameter, the last document to fetch in the response. If end - start exceeds the page limit then an error is returned.

object

Responses

Request samples

Content type
application/json
{
  • "start": 0,
  • "end": 0,
  • "dates": {
    }
}

Response samples

Content type
application/json
{
  • "total": 0,
  • "next_start": 0,
  • "purchaseReports": {
    }
}

Purchase Reports by multiple receiptIds

This endpoint queries the available Purchase Reports by multiple receiptIds and returns the matched documents.

Request Body schema: application/json
receipts
Array of strings
onlyValid
boolean

flag to return only tracked purchases that have been validated using Purchase validation functionality default value is true.

Responses

Request samples

Content type
application/json
{
  • "receipts": [
    ],
  • "onlyValid": "bool"
}

Response samples

Content type
application/json
{
  • "total": 0,
  • "purchaseReports": {
    }
}

Purchase Report for specific receiptId

This endpoint queries the available Purchase Reports for this specific receiptId and returns the matched documents.

path Parameters
receiptId
required
string

The receipt id

query Parameters
onlyValid
boolean

flag to return only tracked purchases that have been validated using Purchase validation functionality default value is true.

Responses

Response samples

Content type
application/json
{
  • "purchaseReports": {
    }
}

priceSuggestions

This set of endpoints allows the caller to interact with price suggestions. Price suggestions are generated whenever wappier platform decides to modify the SKU prices for an application.

Price suggestions

This endpoint returns information about all the available price suggestion documents for this application.

Responses

Response samples

Content type
application/json
{
  • "apiKey": "32b6bfa5-4296-4409-a090-d99ed9bdb9ff",
  • "package": "com.wappier.game",
  • "priceSuggestions": [
    ]
}

Price suggestion by id

This endpoint returns detailed information about the specific price suggestion document.

path Parameters
suggestionId
required
string

price suggestion doc id

Responses

Response samples

Content type
application/json
Example
{
  • "id": "62ab0fffa6002d316096172f",
  • "status": "pending",
  • "platform": "android",
  • "apiKey": "aa59f030-d3c9-4f8e-b361-7933b496d8ac",
  • "package": "com.xanadu.demo.qa",
  • "pendingAt": "2022-05-12T09:32:14.518Z",
  • "createdAt": "2022-05-12T09:32:14.518Z",
  • "skuPrices": {
    }
}

Pending price suggestion

This endpoint returns detailed information about any pending price suggestion document for this application.

Responses

Response samples

Content type
application/json
{
  • "id": "62ab0fffa6002d316096172f",
  • "status": "pending",
  • "platform": "android",
  • "apiKey": "aa59f030-d3c9-4f8e-b361-7933b496d8ac",
  • "package": "com.xanadu.demo.qa",
  • "pendingAt": "2022-05-12T09:32:14.518Z",
  • "createdAt": "2022-05-12T09:32:14.518Z",
  • "skuPrices": {
    }
}

Reject price suggestion

This endpoint updates the status and history of the specific price suggestions document to rejected

Request Body schema: application/json
id
string

the suggestionId we want to reject (update).

comment
string

the reason for rejection

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "comment": "string"
}

Response samples

Content type
application/json
{
  • "id": "62ab0fffa6002d316096172f",
  • "status": "rejected",
  • "apiKey": "aa59f030-d3c9-4f8e-b361-7933b496d8ac",
  • "platform": "android",
  • "package": "com.xanadu.demo.qa",
  • "rejectedAt": "2022-05-12T09:32:14.518Z",
  • "createdAt": "2022-05-12T09:32:14.518Z",
  • "skuPrices": {
    }
}

Approve price suggestion

This endpoint updates the status and history of the specific price suggestions document to approved

Request Body schema: application/json
id
string

the suggestionId we want to approve (update).

Responses

Request samples

Content type
application/json
{
  • "id": "string"
}

Response samples

Content type
application/json
{
  • "id": "62ab0fffa6002d316096172f",
  • "status": "approved",
  • "platform": "android",
  • "apiKey": "aa59f030-d3c9-4f8e-b361-7933b496d8ac",
  • "package": "com.xanadu.demo.qa",
  • "approvedAt": "2022-05-12T09:32:14.518Z",
  • "createdAt": "2022-05-12T09:32:14.518Z",
  • "skuPrices": {
    }
}

stateful

This set of endpoints allows the calling application to integrate with wappier Global Pricing and Promotional Pricing services. It works in a user-centric way requiring wappier to maintain a full state for application users (events, transactions, etc.).

User status

This endpoint returns pricing status for the specific userId for this application.

path Parameters
userId
required
string

The user's id

Responses

Response samples

Content type
application/json
{
  • "isTarget": true,
  • "isInScope": true
}

Global Pricing for specific user

This endpoint queries the available Global Pricing configuration for the specific userId and returns an SKUMap with the data found.

path Parameters
userId
required
string

The user's id

Responses

Response samples

Content type
application/json
{
  • "isTarget": true,
  • "isInScope": true,
  • "uuid": "f2db8bfb-bc89-5a3d-92d6-52d3c4032f64",
  • "country": "GR",
  • "data": [
    ]
}

Promotional Pricing offers for specific user

This endpoint queries the available Promotional Pricing configuration for the specific userId and returns a map with data found that matches the given tags.

path Parameters
userId
required
string

The user's id

Request Body schema: application/json
tags
Array of strings

personalized pricing offers that contain request body tags will be found

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "isTarget": true,
  • "isInScope": true,
  • "uuid": "f2db8bfb-bc89-5a3d-92d6-52d3c4032f64",
  • "country": "GR",
  • "data": [
    ]
}

stateless

This set of endpoints allows the calling application to integrate with wappier Global Pricing service only. It works in a user agnostic way without keeping any state for application users.

Global Pricing for all countries

This endpoint returns an SKUMap for all countries configured for this application.

Responses

Response samples

Content type
application/json
{
  • "uuid": "f2db8bfb-bc89-5a3d-92d6-52d3c4032f64",
  • "data": [
    ]
}

Global Pricing for a country

This endpoint returns an SKUMap for the specific country for this application (given country is enabled).

path Parameters
country
required
string

The country's code (ISO 2-letter code)

Responses

Response samples

Content type
application/json
{
  • "uuid": "f2db8bfb-bc89-5a3d-92d6-52d3c4032f64",
  • "data": [
    ]
}

Global Pricing for a user

This endpoint returns an SKUMap for the specific country and userId for this application. This call is only available for Global Pricing and doesn't depend on any state for the given user and the caller has to specify the country.

path Parameters
country
required
string

The country's code (ISO 2-letter code)

userId
required
string

User's id

Responses

Response samples

Content type
application/json
{
  • "isTarget": true,
  • "isInScope": true,
  • "uuid": "f2db8bfb-bc89-5a3d-92d6-52d3c4032f64",
  • "country": "GR",
  • "data": [
    ]
}

User status for a user

This endpoint returns pricing status for a given country and userId for this application, doesn't depend on any state for the given user and the caller has to specify the country..

path Parameters
country
required
string

The country's code (ISO 2-letter code)

userId
required
string

User's id

Responses

Response samples

Content type
application/json
{
  • "isTarget": true,
  • "isInScope": true
}

serviceAccount

These APIs allows the calling application to setup the specific store service account details. The service account is used by wappier manage application IAP using the store specific API.

Google service account

This endpoint sets the service account for Google Play Console for this application. This enables wappier platform to perform operation on the application listing on Google Play Console using the provided API.

Request Body schema: application/json
client_x509_cert_url
string

value from google json key.

auth_provider_x509_cert_url
string

value from google json key.

token_uri
string

value from google json key.

auth_uri
string

value from google json key.

client_id
string

value from google json key.

client_email
string

value from google json key.

private_key
string

value from google json key.

private_key_id
string

value from google json key.

project_id
string

value from google json key.

type
string

value from google json key.

Responses

Request samples

Content type
application/json
{
  • "client_x509_cert_url": "string",
  • "auth_provider_x509_cert_url": "string",
  • "token_uri": "string",
  • "auth_uri": "string",
  • "client_id": "string",
  • "client_email": "string",
  • "private_key": "string",
  • "private_key_id": "string",
  • "project_id": "string",
  • "type": "string"
}

Response samples

Content type
application/json
{
  • "message": "googleServiceAccount updated successfully"
}

Google service account by uploading file.

This endpoint sets the service account for Google Play Console for this application. This enables wappier platform to perform operation on the application listing on Google Play Console using the provided API.

Request Body schema: multipart/form-data

The Request Body of this request is a form containing .

fileName
string <binary>

Responses

Response samples

Content type
application/json
{
  • "message": "appleServiceAccount updated successfully"
}

Apple service account

This endpoint sets the service account for App Store Connect API for this application. This enables wappier platform to perform operation on the application listing on Apple App Store.

Request Body schema: multipart/form-data

The Request Body of this request is a form containing .

issuerId
string
apiKeyId
string
appId
string
privateKey
string <binary>
reviewScreenshot
string <binary>

Responses

Response samples

Content type
application/json
{
  • "message": "appleServiceAccount updated successfully"
}

pricingConfig

This endpoint allows the calling application to set the specific configuration parameters needed for the correct operation of wappier Pricing services.

Mailing list

This endpoint sets the mailing list to receive email notifications for price suggestion updates for this application.

Request Body schema: application/json
Array
string

Responses

Request samples

Content type
application/json
[
  • "mail1@org1.com",
  • "mail2@org1.com"
]

Response samples

Content type
application/json
{
  • "message": "Mailing list updated successfully"
}

Get billing sku from pricing config

Get billing sku from pricing config

Responses

Response samples

Content type
application/json
{
  • "sku": "string"
}