---
title: "Retrieve a product context for the current user"
method: GET
path: "/billing/v1/userProductContext/{applicationId}"
tags: ["ProductContext"]
---

# Retrieve a product context for the current user

`GET /billing/v1/userProductContext/{applicationId}`

## Request

- Base URL: `https://marketplace.appdirect.com/api`
- URL: `https://marketplace.appdirect.com/api/billing/v1/userProductContext/{applicationId}`
- Auth: none declared
- TypeScript: <https://skmtc.dev/appdirect/apis/companies/docs/billing/v1/userProductContext/:applicationId/get.ts> (a function with typed inputs; its response is checked against the schema)

Retrieve a product context for the current user

## Path parameters

- `applicationId` number, required

## Response `200`

OK

- UserProductContextWS, nullable
  - `assigned` boolean: True when the subscription has users assigned to it.
  - `editionId` number, nullable: The pricing plan ID of the subscription.
  - `freeTrialAllowed` boolean: True if a free trial is allowed for this edition or if the current subscription is in a free trial.
  - `freeTrialDaysLeft` number, nullable: The number of days remaining in the free trial for the application. Not present if there is no free trial for the edition, if the free trial is over, or if the free trial has been activated to a paid subscription.
  - `maxUsers` number, nullable: Maximum number of users that can be assigned to the application. Not present when unlimited.
  - `numAssignedUsers` number, nullable: Number of users assigned to the subscription.
  - `owner` LinkWS, nullable
    - `href` string
    - `id` string
  - `partOfExistingBundle` boolean: True if this application was bought as part of a bundle.
  - `paymentPlan` LinkWS, nullable
    - `href` string
    - `id` string
  - `pendingEventType` string, nullable: If the subscription is blocked due to communication with a third party, this field represents the latest event type that was blocked. Can be one of: SUBSCRIPTION_ORDER, SUBSCRIPTION_CHANGE, SUBSCRIPTION_CANCEL, SUBSCRIPTION_NOTICE, USER_ASSIGNMENT, USER_UNASSIGNMENT, USER_UPDATED, ADDON_ORDER, ADDON_CHANGE, ADDON_CANCEL, ADDON_BIND, ADDON_UNBIND
  - `purchaseRestriction` PurchaseRestrictionWS[]: Products that the user cannot buy due to restrictions of a currently/previously owned product or because other products are required.
    - `appId` number: Non-purchasable application ID
    - `appName` string: Non-purchasable application name
    - `browsedEditionId` number: Browsed edition ID If browsedEdition is null, then restrict the entire app.
    - `ownedEditionId` number: Owned edition ID
    - `ownedEditionName` string: Owned edition name
    - `requiredAppEdition` AppEditionWS[]: Editions required to purchase the browsed edition
      - `appId` number: Application ID
      - `appName` string: Application name
      - `editionId` number: Edition ID
      - `editionName` string: Edition name
    - `restrictionType` string: The type of restriction applied. Null if the type is unknown. For example, if the account is in transition.
    - `upcomingSubscription` boolean: Is upcoming subscription
  - `status` string, nullable: The subscription status for the product owned by the requested user. Can be one of: INITIALIZED, FAILED, FREE_TRIAL, FREE_TRIAL_EXPIRED, ACTIVE, SUSPENDED, CANCELLED;
  - `subscription` LinkWS, nullable
    - `href` string
    - `id` string

## Other responses

- `404`: Application Not Found

## Changes

- **2026-11-06** `1fc240f06971`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/appdirect/apis/companies/changes/billing/v1/userProductContext/:applicationId/get.md)

---

[API](https://skmtc.dev/appdirect/apis/companies.md) - [All operations](https://skmtc.dev/appdirect/apis/companies/llms.txt) - [OpenAPI document](https://skmtc.dev/appdirect/apis/companies/revisions/1fc240f06971?raw)
