---
title: "Get Product Contract"
method: GET
path: "/product_contracts/{contract_id}"
tags: ["Product Contracts"]
---

# Get Product Contract

`GET /product_contracts/{contract_id}`

## Request

- Base URL: `https://sandbox.api.lemon.markets/v1`
- URL: `https://sandbox.api.lemon.markets/v1/product_contracts/{contract_id}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/lemon/apis/lemon-markets-brokerage-api/docs/product_contracts/:contract_id/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns a single active product contract, together with the instruments eligible under it.  Draft, retired and unknown contracts result in a <code>404</code> response.

## Path parameters

- `contract_id` string, required

## Headers

- `LMG-Data-Privacy-Access-Principal` string, required
- `LMG-Data-Privacy-Access-Justification` string, required

## Response `200`

Successful Response

- ProductContractResponse
  - `id` string, required: The product contract identifier. Pass it as <code>contract</code> when creating a retirement product via <code>POST /accounts/{account_id}/products</code>.
  - `type` 'brokerage' | 'retirement', required: The type of product a contract belongs to. <ul> <li><code>brokerage</code>: the lemon.markets brokerage product. <li><code>retirement</code>: the lemon.markets retirement account (Altersvorsorgedepot) product. </ul>
  - `contract_name` string, required: The name of the contract.
  - `contract_type` 'standarddepot' | 'self_directed', required: The type of the contract. <ul> <li><code>standarddepot</code>: a standard depot contract. <li><code>self_directed</code>: a self-directed contract. </ul>
  - `certification_number` string, required: The certification number of the contract.
  - `provider_number` string, required: The number of the contract provider.
  - `provider_name` string, required: The name of the contract provider.
  - `provider_model` 'external' | 'lmb', required: Who provides the contract. <ul> <li><code>external</code>: an external provider. <li><code>lmb</code>: lemon.markets. </ul>
  - `status` 'active', required: The status of the contract. Only active contracts are returned.
  - `valid_from` string, date-time, required: The time from which the contract is valid.
  - `valid_until` string, date-time, nullable, required: The time until which the contract is valid, or <code>null</code> if it has no end date.
  - `fee_annual_payin_aum_pct` string, number, required: The annual fee charged on assets under management, as a percentage (<code>1.00</code> is 1%) for payin phase.
  - `fee_annual_payout_aum_pct` string, number, required: The annual fee charged on assets under management, as a percentage (<code>1.00</code> is 1%) for payout phase.
  - `fee_provider_switch_amount` string, number, required: The one time fee for switching depot providers, in EUR.
  - `fee_transaction_buy_amount` string, number, required: The fee charged per buy transaction, in EUR.
  - `fee_transaction_sell_amount` string, number, required: The fee charged per sell transaction, in EUR.
  - `instruments` ProductContractInstrumentResponse[], required: The instruments eligible under the contract.
    - `instrument` string, required: The ISIN of an instrument that is eligible under the contract.
    - `risk_class` integer, required: The risk class of the instrument within the contract, from <code>1</code> (lowest) to <code>7</code> (highest).

## Other responses

- `401`: Unauthorized
- `404`: Not Found
- `422`: Unprocessable Entity
- `5XX`: Server Error

## Changes

- **2026-11-03** `1f1df208c0e4`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/lemon/apis/lemon-markets-brokerage-api/changes/product_contracts/:contract_id/get.md)

---

[API](https://skmtc.dev/lemon/apis/lemon-markets-brokerage-api.md) - [All operations](https://skmtc.dev/lemon/apis/lemon-markets-brokerage-api/llms.txt) - [OpenAPI document](https://skmtc.dev/lemon/apis/lemon-markets-brokerage-api/revisions/1f1df208c0e4?raw)
