---
title: "Get item details"
method: POST
path: "/api/v3/checkout/items"
tags: ["checkoutItemDetails"]
---

# Get item details

`POST /api/v3/checkout/items`

## Request

- Base URL: `https://marketplace.appdirect.com/api`
- URL: `https://marketplace.appdirect.com/api/api/v3/checkout/items`
- Auth: none declared
- TypeScript: <https://skmtc.dev/appdirect/apis/companies/docs/api/v3/checkout/items/post.ts> (a function with typed inputs; its response is checked against the schema)

Retrieves product details such as branding, pricing, and so on.

## Request body

- CheckoutItemsDetailsRequest: Items Details request
  - `ownerUserId` string, required: The owner user ID. The owner owns the product after the purchase is complete.
  - `ownerCompanyId` string, required: The owner's company's ID.
  - `buyerUserId` string, required: The buyer user ID. The buyer is the person who is making the purchase. In assisted sales or reseller scenarios, the buyer can be different than the owner.
  - `buyerCompanyId` string, required: The buyer's company's ID. In assisted sales or reseller scenarios, the buyer's company can be different than the owner's company.
  - `currency` string, required: Three-letter code, such as USD, that determines the currency in which to display item pricing details.
  - `productIds` string[], required: List of product IDs to retrieve details for.
  - `pricingPlanIds` string[]: List of pricing plan IDs to retrieve details for.
  - `bundleIds` string[]: List of bundle IDs to retrieve details for. (Currently not supported)
  - `subscriptionIds` string[]: List of subscription IDs to retrieve details for. (Currently not supported)

## Response `200`

Item details retrieved successfully

- CheckoutItemDetails: Checkout item details
  - `id` string: Product ID
  - `type` 'PRODUCT' | 'ADDON' | 'BUNDLE': Checkout item type
  - `stacked` boolean: Indicates whether the product is stacked. Customers can have multiple subscriptions to stacked products.
  - `branding` Branding: Branding
    - `name` string: Product name
    - `vendor` string: Product vendor
    - `desc` string: Product description
    - `iconUrl` string, uri: Product icon URL
    - `href` string, uri: URL of the API to use to retrieve detailed product information
    - `storefrontUrl` string, uri: URL of the product profile in the marketplace
  - `editions` Edition[]: List of editions of the product
    - `id` string: Edition ID
    - `name` string: Edition name
    - `revenueModel` 'FREE' | 'ONE_TIME' | 'RECURRING' | 'TIERED': Revenue model
    - `freeTrialTerms` FreeTrialTerms: Free Trial terms
      - `freeTrialDuration` integer: Duration of free trial, in days or months depending on the specified period
      - `freeTrialDurationPeriod` 'DAY' | 'MONTH': Free trial duration period
      - `freeTrialGracePeriod` integer: Length of grace period after free trial expiration, in days
    - `pricingPlans` EditionPricingPlan[]: List of edition pricing plans
      - `id` string: Pricing plan ID
      - `currency` string: Pricing plan currency
      - `pricingPeriod` 'ONE_TIME' | 'DAILY' | 'MONTHLY' | 'QUARTERLY' | 'SIX_MONTHS' | 'YEARLY' | 'TWO_YEARS' | 'THREE_YEARS': The pricing period. The billing frequency for the pricing plan.
      - `pricingSources` PricingSource[]: The source of the pricing plan
        - `source` 'PURCHASE_CHANNEL' | 'PURCHASE_RESELLER_COMPANY' | 'RESELLER_COMPANY_CATALOG' | 'CHANNEL_CATALOG' | 'BASE_CATALOG'
        - `pricingDefinitions` PricingDefinition[]: The details of the pricing plan definition
          - `costTypeCategory` 'RECURRING' | 'ONE_TIME': Category of cost
          - `costType` 'RECURRING_FLAT' | 'ONE_TIME_FLAT' | 'INCLUDED' | 'SETUP_PER_UNIT' | 'RECURRING_PER_UNIT' | 'ONE_TIME_PER_UNIT' | 'SETUP_FEE' | 'CONTRACT_FEE' | 'DISCOUNT_PER_UNIT' | 'DISCOUNT_FLAT' | 'METERED_USAGE': Type of cost
          - `pricingStrategy` 'FREE' | 'FLAT' | 'UNIT' | 'TIERED' | 'VOLUME' | 'VARIABLE_PRICE_STRATEGIES' | 'UNLIMITED' | 'CUSTOM': Pricing strategy
          - `unit` string: The unit type, USER, CARTRIDGE, and so on
          - `priceRanges` PriceRange[]: Price ranges
            - `min` number, required
            - `max` number
            - `price` number, required
            - `salePrice` string, amount: Regular sale price
            - `wholesalePrice` string, amount: Wholesale sale price
          - `unitAllowsDecimals` boolean: Indicates whether decimals are allowed when purchasing units
          - `increment` number: The minimum increment in number of units to purchase
          - `allowsMeteredUsage` boolean: Indicates whether metered usage is allowed
          - `displaysPricePerIncrement` boolean: Indicates whether to display the price per unit increment

## Changes

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

[Operation history](https://skmtc.dev/appdirect/apis/companies/changes/api/v3/checkout/items/post.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)
