---
title: "Get Google Play Products"
method: GET
path: "/v2/products/google-play"
tags: ["Products V2"]
---

# Get Google Play Products

`GET /v2/products/google-play`

Returns Google Play configuration status and not-yet-imported products for an Android application.

## Query parameters

- `application_id` string, required — ID of the Android application to inspect in Google Play

## Response `200`

Success

- object
  - `status` string, required — One of `success`, `not_android`, `play_not_configured`, or `api_error` describing the Google Play lookup outcome
  - `error_message` string
  - `products` object[], required — Google Play import candidates (one per subscription base plan) that have not been imported into the project yet
    - `product_id` string, required — Google Play product identifier
    - `name` string, required — Localized listing title, falling back to the product identifier
    - `type` 'subscription' | 'one_time', required — Whether the Google Play product is a subscription or a one-time product
    - `active` boolean, required — Whether the candidate's base plan (for subscriptions) or any purchase option (for one-time products) is active
    - `state` string — Google Play state of the candidate: the base-plan state for subscriptions (DRAFT, ACTIVE, INACTIVE), the purchase-option state for one-time products (DRAFT, ACTIVE, INACTIVE, INACTIVE_PUBLISHED), or the normalized legacy in-app product status; STATE_UNSPECIFIED when Google Play reports none. Google Play has no per-product review states — app releases are reviewed, products are not
    - `base_plan_id` string, nullable, required — Base plan ID of this candidate — subscriptions emit one candidate per base plan (or the automatic purchase-option selector for one-time products); null when the subscription has no identifiable base plan
    - `period` object, nullable, required — Billing period derived from the candidate's base plan, when derivable
      - `interval` 'day' | 'week' | 'month' | 'year', required — Billing period for the subscription
      - `interval_count` number, required
  - `product_info_by_identifier` object, required — Google Play state of the products already imported into this application, keyed by the Superwall product identifier (`productId:basePlanId:offer`) — the Android counterpart of `product_info_by_identifier` on the App Store Connect response. Identifiers that aren't composite Play identifiers, and identifiers whose base plan or product is no longer in the Google Play catalog, are omitted

## Other responses

- `400` — The request did not match the expected schema
- `401` — No API key was provided in the request
- `403` — The API key does not have permission to perform this action
- `404` — The requested resource was not found
- `429` — Too many requests have been made in a short period
- `500` — An unexpected error occurred on the server

---

[API](https://skmtc.dev/superwall/apis/superwall-api-v2.md) · [All operations](https://skmtc.dev/superwall/apis/superwall-api-v2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/superwall/superwall-api-v2/revisions/44900ad77d2c/schema)
