Use this page with AI
Copy this into your coding assistant and add your request.
Read https://openiap.dev/docs/types/product-request and https://openiap.dev/llms.txt. Follow the reading instructions, detailed reference, and linked guides relevant to my task before making changes.
Inspect my existing project and reuse its framework and conventions. Ask me for missing product decisions. Implement the requested behavior and run the applicable checks.
Show the working result, the commands and actual test results, and any remaining limitations. Keep your explanation brief.
My request: [describe what customers should be able to do]ProductRequest
ProductRequest#
Parameters for fetching products from the store via fetchProducts().
Input to fetchProducts. iOS: passed to Product.products(for:) (Apple docs). Android: passed to BillingClient.queryProductDetailsAsync (Google docs).
Native references: Apple · Product.products(for:) · Google · QueryProductDetailsParams
Fields#
| Name | Summary |
|---|---|
skus | Array of product identifiers to fetch |
type | Product type filter (optional): "in-app" (default), "subs", or "all" |
Usage Example#
swift
// Fetch in-app purchases (default)
let inappProducts = try await OpenIapModule.shared.fetchProducts(
ProductRequest(skus: ["product1", "product2"])
)
// Fetch only subscriptions
let subscriptions = try await OpenIapModule.shared.fetchProducts(
ProductRequest(skus: ["sub1", "sub2"], type: .subs)
)
// Fetch all products (both in-app and subscriptions)
let allProducts = try await OpenIapModule.shared.fetchProducts(
ProductRequest(skus: ["product1", "sub1"], type: .all)
)