---
title: "Get plan entitlement"
method: GET
path: "/plan-entitlements/{plan_entitlement_id}"
tags: ["entitlements"]
---

# Get plan entitlement

`GET /plan-entitlements/{plan_entitlement_id}`

## Path parameters

- `plan_entitlement_id` string, required

## Response `200`

OK

- object
  - `data` PlanEntitlementResponseData, required
    - `billing_linked_resource` BillingLinkedResourceResponseData
      - `billing_provider` 'metronome' | 'orb' | 'schematic' | 'stripe', required
      - `external_resource_id` string, required
      - `originator` 'metronome' | 'orb' | 'schematic' | 'stripe', required
    - `billing_threshold` integer, nullable
    - `consumption_rate` number, double, nullable
    - `created_at` string, date-time, required
    - `currency_prices` EntitlementCurrencyPricesResponseData[], required
      - `currency` string, required
      - `monthly_price` BillingPriceView
        - `billing_scheme` 'per_unit' | 'tiered', required
        - `created_at` string, date-time, required
        - `currency` string, required
        - `id` string, required
        - `interval` 'day' | 'month' | 'one-time' | 'year', required
        - `interval_count` integer, required
        - `is_active` boolean, required
        - `meter_event_name` string, nullable
        - `meter_event_payload_key` string, nullable
        - `meter_id` string, nullable
        - `nickname` string, nullable
        - `package_size` integer, required
        - `price` integer, required
        - `price_decimal` string, nullable
        - `price_external_id` string, required
        - `price_id` string, required
        - `price_tier` BillingProductPriceTierResponseData[], required
          - `flat_amount` integer, nullable
          - `per_unit_price` integer, nullable
          - `per_unit_price_decimal` string, nullable
          - `up_to` integer, nullable
        - `product_external_id` string, required
        - `product_id` string, required
        - `product_name` string, required
        - `provider_type` 'metronome' | 'orb' | 'schematic' | 'stripe', required
        - `tiers_mode` 'graduated' | 'volume'
        - `updated_at` string, date-time, required
        - `usage_type` 'licensed' | 'metered', required
      - `quarterly_price` BillingPriceView
        - `billing_scheme` 'per_unit' | 'tiered', required
        - `created_at` string, date-time, required
        - `currency` string, required
        - `id` string, required
        - `interval` 'day' | 'month' | 'one-time' | 'year', required
        - `interval_count` integer, required
        - `is_active` boolean, required
        - `meter_event_name` string, nullable
        - `meter_event_payload_key` string, nullable
        - `meter_id` string, nullable
        - `nickname` string, nullable
        - `package_size` integer, required
        - `price` integer, required
        - `price_decimal` string, nullable
        - `price_external_id` string, required
        - `price_id` string, required
        - `price_tier` BillingProductPriceTierResponseData[], required
          - `flat_amount` integer, nullable
          - `per_unit_price` integer, nullable
          - `per_unit_price_decimal` string, nullable
          - `up_to` integer, nullable
        - `product_external_id` string, required
        - `product_id` string, required
        - `product_name` string, required
        - `provider_type` 'metronome' | 'orb' | 'schematic' | 'stripe', required
        - `tiers_mode` 'graduated' | 'volume'
        - `updated_at` string, date-time, required
        - `usage_type` 'licensed' | 'metered', required
      - `yearly_price` BillingPriceView
        - `billing_scheme` 'per_unit' | 'tiered', required
        - `created_at` string, date-time, required
        - `currency` string, required
        - `id` string, required
        - `interval` 'day' | 'month' | 'one-time' | 'year', required
        - `interval_count` integer, required
        - `is_active` boolean, required
        - `meter_event_name` string, nullable
        - `meter_event_payload_key` string, nullable
        - `meter_id` string, nullable
        - `nickname` string, nullable
        - `package_size` integer, required
        - `price` integer, required
        - `price_decimal` string, nullable
        - `price_external_id` string, required
        - `price_id` string, required
        - `price_tier` BillingProductPriceTierResponseData[], required
          - `flat_amount` integer, nullable
          - `per_unit_price` integer, nullable
          - `per_unit_price_decimal` string, nullable
          - `up_to` integer, nullable
        - `product_external_id` string, required
        - `product_id` string, required
        - `product_name` string, required
        - `provider_type` 'metronome' | 'orb' | 'schematic' | 'stripe', required
        - `tiers_mode` 'graduated' | 'volume'
        - `updated_at` string, date-time, required
        - `usage_type` 'licensed' | 'metered', required
    - `environment_id` string, required
    - `feature` FeatureResponseData
      - `created_at` string, date-time, required
      - `description` string, required
      - `event_subtype` string, nullable
      - `feature_type` 'boolean' | 'event' | 'license' | 'trait', required
      - `icon` string, required
      - `id` string, required
      - `license_id` string, nullable — The license sold through this feature. Set only on features of type license, and created automatically with them.
      - `lifecycle_phase` 'add_on' | 'alpha' | 'beta' | 'deprecated' | 'ga' | 'inactive' | 'in_plan' | 'internal_testing' | 'legacy'
      - `maintainer_account_member_id` string, nullable
      - `name` string, required
      - `plural_name` string, nullable
      - `singular_name` string, nullable
      - `trait_id` string, nullable
      - `updated_at` string, date-time, required
      - `usage_limit_trait_id` string, nullable — Set when the feature carries a pay-in-advance quantity. Provisioned lazily for other feature types, and at creation for license features.
    - `feature_id` string, required
    - `id` string, required
    - `metered_monthly_price` BillingPriceView
      - `billing_scheme` 'per_unit' | 'tiered', required
      - `created_at` string, date-time, required
      - `currency` string, required
      - `id` string, required
      - `interval` 'day' | 'month' | 'one-time' | 'year', required
      - `interval_count` integer, required
      - `is_active` boolean, required
      - `meter_event_name` string, nullable
      - `meter_event_payload_key` string, nullable
      - `meter_id` string, nullable
      - `nickname` string, nullable
      - `package_size` integer, required
      - `price` integer, required
      - `price_decimal` string, nullable
      - `price_external_id` string, required
      - `price_id` string, required
      - `price_tier` BillingProductPriceTierResponseData[], required
        - `flat_amount` integer, nullable
        - `per_unit_price` integer, nullable
        - `per_unit_price_decimal` string, nullable
        - `up_to` integer, nullable
      - `product_external_id` string, required
      - `product_id` string, required
      - `product_name` string, required
      - `provider_type` 'metronome' | 'orb' | 'schematic' | 'stripe', required
      - `tiers_mode` 'graduated' | 'volume'
      - `updated_at` string, date-time, required
      - `usage_type` 'licensed' | 'metered', required
    - `metered_quarterly_price` BillingPriceView
      - `billing_scheme` 'per_unit' | 'tiered', required
      - `created_at` string, date-time, required
      - `currency` string, required
      - `id` string, required
      - `interval` 'day' | 'month' | 'one-time' | 'year', required
      - `interval_count` integer, required
      - `is_active` boolean, required
      - `meter_event_name` string, nullable
      - `meter_event_payload_key` string, nullable
      - `meter_id` string, nullable
      - `nickname` string, nullable
      - `package_size` integer, required
      - `price` integer, required
      - `price_decimal` string, nullable
      - `price_external_id` string, required
      - `price_id` string, required
      - `price_tier` BillingProductPriceTierResponseData[], required
        - `flat_amount` integer, nullable
        - `per_unit_price` integer, nullable
        - `per_unit_price_decimal` string, nullable
        - `up_to` integer, nullable
      - `product_external_id` string, required
      - `product_id` string, required
      - `product_name` string, required
      - `provider_type` 'metronome' | 'orb' | 'schematic' | 'stripe', required
      - `tiers_mode` 'graduated' | 'volume'
      - `updated_at` string, date-time, required
      - `usage_type` 'licensed' | 'metered', required
    - `metered_yearly_price` BillingPriceView
      - `billing_scheme` 'per_unit' | 'tiered', required
      - `created_at` string, date-time, required
      - `currency` string, required
      - `id` string, required
      - `interval` 'day' | 'month' | 'one-time' | 'year', required
      - `interval_count` integer, required
      - `is_active` boolean, required
      - `meter_event_name` string, nullable
      - `meter_event_payload_key` string, nullable
      - `meter_id` string, nullable
      - `nickname` string, nullable
      - `package_size` integer, required
      - `price` integer, required
      - `price_decimal` string, nullable
      - `price_external_id` string, required
      - `price_id` string, required
      - `price_tier` BillingProductPriceTierResponseData[], required
        - `flat_amount` integer, nullable
        - `per_unit_price` integer, nullable
        - `per_unit_price_decimal` string, nullable
        - `up_to` integer, nullable
      - `product_external_id` string, required
      - `product_id` string, required
      - `product_name` string, required
      - `provider_type` 'metronome' | 'orb' | 'schematic' | 'stripe', required
      - `tiers_mode` 'graduated' | 'volume'
      - `updated_at` string, date-time, required
      - `usage_type` 'licensed' | 'metered', required
    - `metric_period` 'all_time' | 'current_day' | 'current_month' | 'current_week'
    - `metric_period_month_reset` 'billing_cycle' | 'first_of_month'
    - `plan` PlanResponseData
      - `audience_type` string, nullable
      - `company_id` string, nullable
      - `copied_from_plan_id` string, nullable
      - `created_at` string, date-time, required
      - `description` string, required
      - `icon` 'amber' | 'blue' | 'blueGray' | 'blueGreen' | 'cyan' | 'emerald' | 'fuchsia' | 'gray' | 'green' | 'indigo' | 'lightBlue' | 'lime' | 'orange' | 'pink' | 'purple' | 'red' | 'redOrange' | 'rose' | 'sky' | 'slate' | 'teal' | 'trueGray' | 'violet' | 'warmGray' | 'yellow', required
      - `id` string, required
      - `name` string, required
      - `plan_type` 'plan' | 'add_on', required
      - `updated_at` string, date-time, required
    - `plan_id` string, required
    - `price_behavior` 'credit_burndown' | 'overage' | 'pay_as_you_go' | 'pay_in_advance' | 'tier'
    - `rule_id` string, required
    - `rule_id_usage_exceeded` string, nullable
    - `soft_limit` integer, nullable
    - `updated_at` string, date-time, required
    - `usage_based_product` BillingProductResponseData
      - `account_id` string, required
      - `created_at` string, date-time, required
      - `currency` string, nullable — Deprecated; currencies are associated with prices, not products
      - `environment_id` string, required
      - `external_id` string, required
      - `is_active` boolean, required
      - `name` string, required
      - `price` number, double, required
      - `price_decimal` string, nullable
      - `product_id` string, required
      - `provider_type` 'metronome' | 'orb' | 'schematic' | 'stripe', required
      - `quantity` number, double, required
      - `updated_at` string, date-time, required
    - `usage_quantity` integer, nullable — The committed unit quantity for this entitlement. For custom plans this is the quantity the company is contractually committed to; for standard plans it is the quantity pre-filled when subscribing. Only applies to pay-in-advance entitlements. Note: this is not yet enforced/auto-provisioned as a true default — it is currently stored for downstream billing use.
    - `value_bool` boolean, nullable
    - `value_credit` BillingCreditResponseData
      - `burn_strategy` 'expiration_priority' | 'first_in_first_out' | 'last_in_first_out' | 'plan_first_then_credit_bundles_first_in_first_out', required
      - `cost_editable` boolean, required
      - `created_at` string, date-time, required
      - `currency_prices` CreditCurrencyPriceResponseData[], required
        - `currency` string, required
        - `price` BillingPriceResponseData
          - `currency` string, required
          - `external_price_id` string, required
          - `id` string, required
          - `interval` 'day' | 'month' | 'one-time' | 'year', required
          - `interval_count` integer, required
          - `nickname` string, nullable
          - `price` integer, required
          - `price_decimal` string, nullable
          - `provider_type` 'metronome' | 'orb' | 'schematic' | 'stripe', required
          - `scheme` 'per_unit' | 'tiered', required
      - `default_expiry_unit` 'billing_periods' | 'days', required
      - `default_expiry_unit_count` integer, nullable
      - `default_rollover_policy` 'expire' | 'none' | 'rollover', required
      - `description` string, required
      - `icon` string, nullable
      - `id` string, required
      - `name` string, required
      - `plural_name` string, nullable
      - `price` BillingPriceResponseData
        - `currency` string, required
        - `external_price_id` string, required
        - `id` string, required
        - `interval` 'day' | 'month' | 'one-time' | 'year', required
        - `interval_count` integer, required
        - `nickname` string, nullable
        - `price` integer, required
        - `price_decimal` string, nullable
        - `provider_type` 'metronome' | 'orb' | 'schematic' | 'stripe', required
        - `scheme` 'per_unit' | 'tiered', required
      - `product` BillingProductResponseData
        - `account_id` string, required
        - `created_at` string, date-time, required
        - `currency` string, nullable — Deprecated; currencies are associated with prices, not products
        - `environment_id` string, required
        - `external_id` string, required
        - `is_active` boolean, required
        - `name` string, required
        - `price` number, double, required
        - `price_decimal` string, nullable
        - `product_id` string, required
        - `provider_type` 'metronome' | 'orb' | 'schematic' | 'stripe', required
        - `quantity` number, double, required
        - `updated_at` string, date-time, required
      - `singular_name` string, nullable
      - `updated_at` string, date-time, required
    - `value_numeric` integer, nullable
    - `value_trait` EntityTraitDefinitionResponseData
      - `created_at` string, date-time, required
      - `display_name` string, required
      - `entity_type` 'company' | 'user', required
      - `hierarchy` string[], required
      - `id` string, required
      - `trait_type` 'boolean' | 'currency' | 'date' | 'number' | 'string' | 'url', required
      - `updated_at` string, date-time, required
    - `value_trait_id` string, nullable
    - `value_type` 'boolean' | 'credit' | 'numeric' | 'trait' | 'unknown' | 'unlimited', required
    - `warning_tiers` WarningTierResponseData[], required
      - `id` string, required
      - `key` string, required
      - `value` integer, required
  - `params` object, required — Input parameters

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not found
- `500` — Server error

---

[API](https://skmtc.net/schematichq/apis/schematic-api.md) · [All operations](https://skmtc.net/schematichq/apis/schematic-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/schematichq/schematic-api/versions/873fb318b08a/schema)
