> ## Documentation Index
> Fetch the complete documentation index at: https://docs.stigg.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Check entitlement (beta)

> Experimental — request and response shapes may change without notice. Same semantics as `Check entitlement`, plus an optional `dimensions` query param that resolves to per-entity governance limits surfaced as `chains` on the response. Deprecated: use `GET /api/v1/customers/{id}/entitlements/check`.



## OpenAPI

````yaml /openapi/stigg-api.documented.yml get /api/v1-beta/customers/{id}/entitlements/check
openapi: 3.0.0
info:
  title: Stigg API
  description: Stigg API documentation
  version: 8.181.0
  contact: {}
servers:
  - url: https://api.stigg.io
    description: Production
security:
  - ApiKeyAuth: []
tags:
  - name: Customers
    description: Operations related to customers
  - name: Subscriptions
    description: Operations related to subscriptions
  - name: Coupons
    description: Operations related to coupons
  - name: Bulk Import
    description: Operations related to import of customers and subscriptions
  - name: Usage
    description: Operations related to usage & metering
  - name: Promotional Entitlements
    description: Operations related to promotional entitlements
  - name: Products
    description: Operations related to products
  - name: Features
    description: Operations related to features
  - name: Addons
    description: Operations related to addons
  - name: Plans
    description: Operations related to plans
  - name: Credit grants
    description: Operations related to credit grants
  - name: Credit ledger
    description: Operations related to credit ledger
  - name: Custom currencies
    description: Operations related to custom currencies
paths:
  /api/v1-beta/customers/{id}/entitlements/check:
    get:
      tags:
        - Governance Entitlements Check (v1-beta)
      summary: Check entitlement (beta)
      description: >-
        Experimental — request and response shapes may change without notice.
        Same semantics as `Check entitlement`, plus an optional `dimensions`
        query param that resolves to per-entity governance limits surfaced as
        `chains` on the response. Deprecated: use `GET
        /api/v1/customers/{id}/entitlements/check`.
      operationId: EntitlementCheckController_checkEntitlement
      parameters:
        - name: id
          required: true
          in: path
          description: The unique identifier of the entity
          schema:
            minLength: 1
            maxLength: 255
            type: string
        - name: featureId
          required: false
          in: query
          description: Feature ID (refId) to check. Mutually exclusive with `currencyId`.
          schema:
            minLength: 1
            maxLength: 255
            type: string
        - name: currencyId
          required: false
          in: query
          description: >-
            Currency ID (refId) to check for credit entitlements. Mutually
            exclusive with `featureId`.
          schema:
            minLength: 1
            maxLength: 255
            type: string
        - name: resourceId
          required: false
          in: query
          description: Resource ID to scope the entitlement check to a specific resource
          schema:
            minLength: 1
            maxLength: 255
            type: string
        - name: requestedUsage
          required: false
          in: query
          description: >-
            Requested usage amount to evaluate against the entitlement limit
            (numeric features only)
          schema:
            minimum: 0
            type: integer
        - name: requestedValues
          required: false
          in: query
          description: >-
            Requested values to evaluate against allowed values (enum features
            only)
          schema:
            type: array
            items:
              type: string
        - name: dimensions
          required: false
          in: query
          description: >-
            Attribution map of the entities the usage is attributed to (e.g.
            `dimensions[userId]=u1`). When provided, their governance budgets
            are checked too and the response includes `chains`.
          schema:
            additionalProperties:
              type: string
            type: object
        - name: X-ACCOUNT-ID
          in: header
          description: >-
            Account ID — optional when authenticating with a user JWT (Bearer
            token); falls back to the user's first membership. Ignored for
            API-key auth.
          required: false
          schema:
            type: string
        - name: X-ENVIRONMENT-ID
          in: header
          description: >-
            Environment ID — required when authenticating with a user JWT
            (Bearer token) on environment-scoped endpoints. Ignored for API-key
            auth (env is intrinsic to the key).
          required: false
          schema:
            type: string
      responses:
        '200':
          description: >-
            The single entitlement with optional `chains` array carrying
            per-entity governance limits when `dimensions` was provided.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CheckEntitlementResponseBetaDto'
              examples:
                default:
                  value:
                    data:
                      isGranted: true
                      type: FEATURE
                      accessDeniedReason: null
                      feature:
                        id: feature-api-calls
                        displayName: API Calls
                        featureType: NUMBER
                        featureStatus: ACTIVE
                      usageLimit: 10000
                      hasUnlimitedUsage: false
                      resetPeriod: MONTH
                      currentUsage: 2500
                      chains:
                        - - entityId: user-u1
                            scopeEntityIds: []
                            usageLimit: 1000
                            currentUsage: 50
                            isGranted: true
                          - entityId: user-u1
                            scopeEntityIds:
                              - model-a
                            usageLimit: 500
                            currentUsage: 30
                            isGranted: true
        '400':
          description: bad request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadInputErrorResponseDto'
        '401':
          description: User is not authenticated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthenticatedErrorResponseDto'
        '403':
          description: User is not allowed to access this resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenErrorResponseDto'
        '404':
          description: Entitlement not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundErrorResponseDto'
        '429':
          description: Too many requests.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TooManyRequestsErrorResponseDto'
      deprecated: true
      x-codeSamples:
        - lang: JavaScript
          source: >-
            import Stigg from '@stigg/typescript';


            const client = new Stigg({
              apiKey: process.env['STIGG_API_KEY'], // This is the default and can be omitted
            });


            const response = await
            client.v1Beta.customers.entitlements.check('x');


            console.log(response.data);
        - lang: Python
          source: |-
            import os
            from stigg import Stigg

            client = Stigg(
                api_key=os.environ.get("STIGG_API_KEY"),  # This is the default and can be omitted
            )
            response = client.v1_beta.customers.entitlements.check(
                id="x",
            )
            print(response.data)
        - lang: Go
          source: "package main\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\n\t\"github.com/stiggio/stigg-go\"\n\t\"github.com/stiggio/stigg-go/option\"\n)\n\nfunc main() {\n\tclient := stigg.NewClient(\n\t\toption.WithAPIKey(\"My API Key\"),\n\t)\n\tresponse, err := client.V1Beta.Customers.Entitlements.Check(\n\t\tcontext.TODO(),\n\t\t\"x\",\n\t\tstigg.V1BetaCustomerEntitlementCheckParams{},\n\t)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\tfmt.Printf(\"%+v\\n\", response.Data)\n}\n"
        - lang: Java
          source: >-
            package io.stigg.example;


            import io.stigg.client.StiggClient;

            import io.stigg.client.okhttp.StiggOkHttpClient;

            import
            io.stigg.models.v1beta.customers.entitlements.EntitlementCheckParams;

            import
            io.stigg.models.v1beta.customers.entitlements.EntitlementCheckResponse;


            public final class Main {
                private Main() {}

                public static void main(String[] args) {
                    StiggClient client = StiggOkHttpClient.fromEnv();

                    EntitlementCheckResponse response = client.v1Beta().customers().entitlements().check("x");
                }
            }
        - lang: Ruby
          source: |-
            require "stigg"

            stigg = Stigg::Client.new(api_key: "My API Key")

            response = stigg.v1_beta.customers.entitlements.check("x")

            puts(response)
        - lang: C#
          source: >-
            using System;

            using Stigg.Client;

            using Stigg.Client.Models.V1Beta.Customers.Entitlements;


            StiggClient client = new();


            EntitlementCheckParams parameters = new() { ID = "x" };


            var response = await
            client.V1Beta.Customers.Entitlements.Check(parameters);


            Console.WriteLine(response);
        - lang: CLI
          source: |-
            stigg v1-beta:customers:entitlements check \
              --api-key 'My API Key' \
              --id x
components:
  schemas:
    CheckEntitlementResponseBetaDto:
      type: object
      properties:
        data:
          discriminator:
            propertyName: type
          oneOf:
            - type: object
              properties:
                isGranted:
                  type: boolean
                type:
                  type: string
                  enum:
                    - FEATURE
                accessDeniedReason:
                  type: string
                  enum:
                    - FeatureNotFound
                    - CustomerNotFound
                    - CustomerIsArchived
                    - CustomerResourceNotFound
                    - NoActiveSubscription
                    - NoFeatureEntitlementInSubscription
                    - RequestedUsageExceedingLimit
                    - RequestedValuesMismatch
                    - BudgetExceeded
                    - Unknown
                    - FeatureTypeMismatch
                    - Revoked
                    - InsufficientCredits
                    - EntitlementNotFound
                  nullable: true
                feature:
                  type: object
                  properties:
                    id:
                      type: string
                      maxLength: 255
                      description: The unique reference ID of the entitlement.
                    displayName:
                      type: string
                      maxLength: 255
                      description: >-
                        The human-readable name of the entitlement, shown in UI
                        elements.
                    featureType:
                      type: string
                      enum:
                        - BOOLEAN
                        - NUMBER
                        - ENUM
                      description: The type of feature associated with the entitlement.
                    featureStatus:
                      type: string
                      enum:
                        - NEW
                        - SUSPENDED
                        - ACTIVE
                      description: The current status of the feature.
                  required:
                    - id
                    - displayName
                    - featureType
                    - featureStatus
                usageLimit:
                  type: number
                  minimum: 0
                  nullable: true
                hasUnlimitedUsage:
                  type: boolean
                resetPeriod:
                  type: string
                  enum:
                    - YEAR
                    - MONTH
                    - WEEK
                    - DAY
                    - HOUR
                  nullable: true
                currentUsage:
                  type: number
                  minimum: 0
                usagePeriodAnchor:
                  type: string
                  format: date-time
                  description: >-
                    The anchor for calculating the usage period for metered
                    entitlements with a reset period configured
                usagePeriodStart:
                  type: string
                  format: date-time
                  description: >-
                    The start date of the usage period for metered entitlements
                    with a reset period configured
                usagePeriodEnd:
                  type: string
                  format: date-time
                  description: >-
                    The end date of the usage period for metered entitlements
                    with a reset period configured
                entitlementUpdatedAt:
                  type: string
                  format: date-time
                  description: >-
                    Timestamp of the last update to the entitlement grant or
                    configuration.
                validUntil:
                  type: string
                  format: date-time
                  description: The next time the entitlement should be recalculated
                chains:
                  type: array
                  items:
                    type: array
                    items:
                      type: object
                      properties:
                        entityId:
                          type: string
                          maxLength: 255
                          description: External id of the entity within the customer.
                        scopeEntityIds:
                          type: array
                          items:
                            type: string
                            maxLength: 255
                            description: >-
                              External ids of the entities this budget is scoped
                              to. Empty (`[]`) is the node-wide budget; a
                              non-empty set is the dimension-scoped budget that
                              matched this request — use it to tell apart
                              multiple budgets on the same entity.
                          description: >-
                            External ids of the entities this budget is scoped
                            to. Empty (`[]`) is the node-wide budget; a
                            non-empty set is the dimension-scoped budget that
                            matched this request — use it to tell apart multiple
                            budgets on the same entity.
                        usageLimit:
                          type: number
                          minimum: 0
                          description: >-
                            Hard usage limit for this node; null when the entity
                            has no entity entitlement.
                          nullable: true
                        currentUsage:
                          type: number
                          minimum: 0
                          description: >-
                            Amount consumed by this entity in the current
                            cadence period.
                        isGranted:
                          type: boolean
                          description: Whether this node alone permits the requested usage.
                      required:
                        - entityId
                        - scopeEntityIds
                        - usageLimit
                        - currentUsage
                        - isGranted
                      title: BetaChainNode
                      description: >-
                        Per-entity governance node — limit and current usage for
                        a single resolved entity.
                  title: BetaChains
                  description: >-
                    Per-entity rollups, one chain per resolved dimension.
                    Omitted when dimensions was not provided.
              required:
                - isGranted
                - type
                - accessDeniedReason
              title: BetaFeatureEntitlement
              description: Feature entitlement with optional governance chains attached.
            - type: object
              properties:
                isGranted:
                  type: boolean
                type:
                  type: string
                  enum:
                    - CREDIT
                accessDeniedReason:
                  type: string
                  enum:
                    - FeatureNotFound
                    - CustomerNotFound
                    - CustomerIsArchived
                    - CustomerResourceNotFound
                    - NoActiveSubscription
                    - NoFeatureEntitlementInSubscription
                    - RequestedUsageExceedingLimit
                    - RequestedValuesMismatch
                    - BudgetExceeded
                    - Unknown
                    - FeatureTypeMismatch
                    - Revoked
                    - InsufficientCredits
                    - EntitlementNotFound
                  nullable: true
                usageLimit:
                  type: number
                  minimum: 0
                currentUsage:
                  type: number
                  minimum: 0
                usageUpdatedAt:
                  type: string
                  format: date-time
                  description: Timestamp of the last update to the credit usage.
                currency:
                  type: object
                  properties:
                    currencyId:
                      type: string
                      maxLength: 255
                      description: The unique identifier of the custom currency.
                    displayName:
                      type: string
                      maxLength: 255
                      description: The display name of the currency.
                    description:
                      type: string
                      maxLength: 255
                      description: A description of the currency.
                      nullable: true
                    unitSingular:
                      type: string
                      maxLength: 255
                      description: The singular form of the currency unit.
                      nullable: true
                    unitPlural:
                      type: string
                      maxLength: 255
                      description: The plural form of the currency unit.
                      nullable: true
                    metadata:
                      type: object
                      additionalProperties:
                        type: string
                      description: Additional metadata associated with the currency.
                      nullable: true
                  required:
                    - currencyId
                    - displayName
                  description: The currency associated with a credit entitlement.
                entitlementUpdatedAt:
                  type: string
                  format: date-time
                  description: >-
                    Timestamp of the last update to the entitlement grant or
                    configuration.
                validUntil:
                  type: string
                  format: date-time
                  description: The next time the entitlement should be recalculated
                usagePeriodEnd:
                  type: string
                  format: date-time
                  description: >-
                    The end date of the current billing period for recurring
                    credit grants.
                reserved:
                  type: number
                  minimum: 0
                  description: >-
                    Credits held by open reservations on active grants. Already
                    included in currentUsage, so usageLimit - currentUsage is
                    the available balance.
                reservedOnExpiredGrants:
                  type: number
                  minimum: 0
                  description: >-
                    Credits still held by open reservations on grants that
                    expired during the hold. They can still be released, but are
                    not part of currentUsage or the balance and must not be
                    subtracted from it.
                reservation:
                  type: object
                  properties:
                    id:
                      type: string
                      maxLength: 255
                      description: The client-provided reservation ID.
                    amount:
                      type: number
                      minimum: 0
                      exclusiveMinimum: true
                      description: The amount of credits held.
                    status:
                      type: string
                      enum:
                        - ACTIVE
                        - RELEASED
                        - EXPIRED
                      description: The status of the reservation.
                    expiresAt:
                      type: string
                      format: date-time
                      description: >-
                        When the reservation expires. Unreleased credits return
                        to the balance at this time.
                  required:
                    - id
                    - amount
                    - status
                    - expiresAt
                  description: >-
                    The reservation created by this request, when it asked to
                    reserve credits and was granted.
                  nullable: true
                chains:
                  type: array
                  items:
                    type: array
                    items:
                      type: object
                      properties:
                        entityId:
                          type: string
                          maxLength: 255
                          description: External id of the entity within the customer.
                        scopeEntityIds:
                          type: array
                          items:
                            type: string
                            maxLength: 255
                            description: >-
                              External ids of the entities this budget is scoped
                              to. Empty (`[]`) is the node-wide budget; a
                              non-empty set is the dimension-scoped budget that
                              matched this request — use it to tell apart
                              multiple budgets on the same entity.
                          description: >-
                            External ids of the entities this budget is scoped
                            to. Empty (`[]`) is the node-wide budget; a
                            non-empty set is the dimension-scoped budget that
                            matched this request — use it to tell apart multiple
                            budgets on the same entity.
                        usageLimit:
                          type: number
                          minimum: 0
                          description: >-
                            Hard usage limit for this node; null when the entity
                            has no entity entitlement.
                          nullable: true
                        currentUsage:
                          type: number
                          minimum: 0
                          description: >-
                            Amount consumed by this entity in the current
                            cadence period.
                        isGranted:
                          type: boolean
                          description: Whether this node alone permits the requested usage.
                      required:
                        - entityId
                        - scopeEntityIds
                        - usageLimit
                        - currentUsage
                        - isGranted
                      title: BetaChainNode
                      description: >-
                        Per-entity governance node — limit and current usage for
                        a single resolved entity.
                  title: BetaChains
                  description: >-
                    Per-entity rollups, one chain per resolved dimension.
                    Omitted when dimensions was not provided.
              required:
                - isGranted
                - type
                - accessDeniedReason
                - usageLimit
                - currentUsage
                - usageUpdatedAt
                - currency
              title: BetaCreditEntitlement
              description: Credit entitlement with optional governance chains attached.
      required:
        - data
      title: Response
      description: Response object
    BadInputErrorResponseDto:
      type: object
      properties:
        message:
          type: string
        code:
          type: string
          enum:
            - BadUserInput
            - EntityNotFound
            - EntityTypeNotFound
            - EntityTypeArchived
            - EntityTypeHasActiveEntities
            - EnvironmentMismatch
            - BillingContractOperationRejected
            - DuplicateIntegrationNotAllowed
            - EntityIsArchivedError
            - IntegrityViolation
            - FreePlanCantHaveCompatiblePackageGroupError
            - SubscriptionMustHaveSinglePlanError
            - AddonIsCompatibleWithPlan
            - AddonIsCompatibleWithGroup
            - DuplicateAddonProvisionedError
            - ScheduledMigrationAlreadyExistsError
            - SubscriptionAlreadyOnLatestPlan
            - EntityIdDifferentFromRefIdError
            - UnsupportedFeatureType
            - UnsupportedVendorIdentifier
            - UnsupportedSubscriptionScheduleType
            - InvalidEntitlementResetPeriod
            - IncompatibleSubscriptionAddon
            - UnPublishedPackage
            - MeteringNotAvailableForFeatureType
            - AuthCustomerMismatch
            - AuthCustomerReadonly
            - FetchAllCountriesPricesNotAllowed
            - MemberInvitationError
            - PlansCircularDependencyError
            - NoFeatureEntitlementInSubscription
            - CheckoutIsNotSupported
            - UnsupportedParameter
            - PricingModelNotSupportedByBillingIntegration
            - BillingIntegrationMissing
            - BillingIntegrationAlreadyExistsError
            - InvalidMemberDelete
            - PackageAlreadyPublished
            - DraftPlanCantBeArchived
            - DraftAddonCantBeArchived
            - PlanWithChildCantBeDeleted
            - PlanCannotBePublishWhenBasePlanIsDraft
            - PlanCannotBePublishWhenCompatibleAddonIsDraft
            - PlanIsUsedAsDefaultStartPlan
            - PlanIsUsedAsDowngradePlan
            - InvalidAddressError
            - InvalidQuantity
            - BillingPeriodMissingError
            - DowngradeBillingPeriodNotSupportedError
            - CustomerAlreadyUsesCouponError
            - CustomerAlreadyHaveCustomerCoupon
            - SubscriptionAlreadyCanceledOrExpired
            - TrialMustBeCancelledImmediately
            - SubscriptionDoesNotHaveBillingPeriod
            - InvalidCancellationDate
            - FailedToImportCustomer
            - FailedToImportSubscriptions
            - PackagePricingTypeNotSet
            - InvalidSubscriptionStatus
            - InvalidArgumentError
            - EditAllowedOnDraftPackageOnlyError
            - ResyncAlreadyInProgress
            - ArchivedCouponCantBeApplied
            - ImportAlreadyInProgress
            - AddonHasToHavePriceError
            - SelectedBillingModelDoesntMatchImportedItemError
            - CannotArchiveProductError
            - CannotUnarchiveProductError
            - CannotDeleteCustomerError
            - CannotRemovePaymentMethodFromCustomerError
            - CannotDeleteFeatureError
            - CannotArchiveFeatureError
            - InvalidUpdatePriceUnitAmountError
            - ExperimentAlreadyRunning
            - ExperimentStatusError
            - OperationNotAllowedDuringInProgressExperiment
            - EntitlementsMustBelongToSamePackage
            - CanNotUpdateEntitlementsFeatureGroup
            - MeterMustBeAssociatedToMeteredFeature
            - CannotUpdateMeterOfFeatureInUse
            - CannotEditPackageInNonDraftMode
            - CannotAddOverrideEntitlementToPlan
            - MissingEntityIdError
            - NoProductsAvailable
            - PromotionCodeNotForCustomer
            - PromotionCodeNotActive
            - PromotionCodeMaxRedemptionsReached
            - PromotionCodeMinimumAmountNotReached
            - PromotionCodeCustomerNotFirstPurchase
            - AddonWithDraftCannotBeDeletedError
            - CannotReportUsageForEntitlementWithMeterError
            - RecalculateEntitlementsError
            - ImportSubscriptionsBulkError
            - InvalidMetadataError
            - CannotUpsertToPackageThatHasDraft
            - IntegrationValidationError
            - AwsMarketplaceIntegrationValidationError
            - AwsMarketplaceIntegrationError
            - DataExportIntegrationError
            - HubspotIntegrationError
            - DuplicateProductValidationError
            - AmountTooLarge
            - CustomerHasNoEmailAddress
            - MergeEnvironmentValidationError
            - EntitlementUsageOutOfRangeError
            - UsageMeasurementDiffOutOfRangeError
            - AddonQuantityExceedsLimitError
            - AddonDependencyMissingError
            - PackageGroupMinItemsError
            - CannotUpdateUnitTransformationError
            - SingleSubscriptionCantBeAutoCancellationTargetError
            - MultiSubscriptionCantBeAutoCancellationSourceError
            - ChangingPayingCustomerIsNotSupportedError
            - RequiredSsoAuthenticationError
            - InvalidDoggoSignatureError
            - InvalidReceivedSignatureError
            - CannotDeleteDefaultIntegration
            - CannotChangeBillingIntegration
            - FailedToResolveBillingIntegration
            - WorkflowTriggerNotFound
            - DeprecatedEstimateSubscriptionError
            - FeatureConfigurationExceededLimitError
            - FeatureNotBelongToFeatureGroupError
            - FeatureGroupMissingFeaturesError
            - VersionExceedsMaxValueError
            - CannotUpdateExpireAtForExpiredCreditGrantError
            - ExpireAtMustBeLaterThanEffectiveAtError
            - OfferAlreadyExists
            - DraftAlreadyExists
            - CreditGrantAlreadyVoided
            - CreditGrantCannotBeVoided
            - FeatureNotEnabled
            - InvalidTaxId
            - ObjectAlreadyBeingUsedByAnotherRequestError
            - TooManySubscriptionsPerCustomer
            - TooManyCustomCurrencies
            - StripeError
            - SchedulingAtEndOfBillingPeriod
            - ApiKeyExpired
            - ApiKeyHasExpiry
            - OveragePriceNotSupportedOnAddon
            - OveragePriceRequiresUsageLimit
            - InvalidCreditOverageBillingModel
            - CreditOveragePriceCurrencyNotFound
            - InvoicePreviewNotAvailableForDraftContract
          nullable: true
        reason:
          type: string
          maxLength: 255
          description: >-
            The billing side's machine-readable code for a billing-contract
            refusal. Present only when the code is
            BillingContractOperationRejected and the refusal carried one.
      required:
        - message
        - code
    UnauthenticatedErrorResponseDto:
      type: object
      properties:
        message:
          type: string
        code:
          type: string
          enum:
            - Unauthenticated
          nullable: true
      required:
        - message
        - code
    ForbiddenErrorResponseDto:
      type: object
      properties:
        message:
          type: string
        code:
          type: string
          enum:
            - IdentityForbidden
            - AccessDeniedError
            - NoFeatureEntitlementError
            - EntitlementLimitExceededError
            - GovernanceNotEnabled
          nullable: true
      required:
        - message
        - code
    NotFoundErrorResponseDto:
      type: object
      properties:
        message:
          type: string
        code:
          type: string
          enum:
            - CustomerNotFound
            - CustomCurrencyNotFound
            - CreditGrantNotFound
            - ReservationNotFound
            - ContractNotFound
            - InvoiceNotFound
            - MemberNotFound
            - PackageGroupNotFound
            - AddonNotFound
            - AddonsNotFound
            - EnvironmentMissing
            - IntegrationNotFound
            - VendorIsNotSupported
            - CouponNotFound
            - FutureUpdateNotFound
            - CustomerNoBillingId
            - SubscriptionNoBillingId
            - StripeCustomerIsDeleted
            - InitStripePaymentMethodError
            - PreparePaymentMethodFormError
            - AccountNotFoundError
            - ExperimentNotFoundError
            - NoDraftOfferFound
            - PromotionCodeNotFound
            - FailedToCreateCheckoutSessionError
            - PaymentMethodNotFoundError
            - ProductNotFoundError
            - ProductNotPublishedError
            - MissingBillingInvoiceError
            - BillingInvoiceStatusError
            - FeatureGroupNotFoundError
            - CannotArchiveFeatureGroupError
            - OfferNotFound
            - CustomerResourceNotFound
            - FeatureNotFound
            - PriceNotFound
            - NoActiveSubscriptionForCustomer
            - PlanNotFound
            - PromotionalEntitlementNotFoundError
            - SubscriptionNotFound
            - ApiKeyNotFound
          nullable: true
      required:
        - message
        - code
    TooManyRequestsErrorResponseDto:
      type: object
      properties:
        message:
          type: string
        code:
          type: string
          enum:
            - RateLimitExceeded
          nullable: true
      required:
        - message
        - code
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY
      description: Server API Key

````

## Related topics

- [Ruby](https://docs.stigg.io/api-and-sdks/changelog/backend-rest/ruby.md)
- [Go](https://docs.stigg.io/api-and-sdks/changelog/backend-rest/go.md)
- [Java](https://docs.stigg.io/api-and-sdks/changelog/backend-rest/java.md)
- [Python](https://docs.stigg.io/api-and-sdks/changelog/backend-rest/python.md)
- [TypeScript](https://docs.stigg.io/api-and-sdks/changelog/backend-rest/typescript.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.