Schematic components API

The components API from Schematic — 4 operation(s) for components.

Documentation

Specifications

SDKs

Schemas & Data

Other Resources

OpenAPI Specification

schematic-components-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Schematic accesstokens Components API
  version: '0.1'
  description: Schematic API
  x-rules-engine-schema-version: v97288f60
servers:
- url: https://api.schematichq.com
security:
- ApiKeyAuth: []
tags:
- name: components
paths:
  /components:
    get:
      operationId: listComponents
      summary: List components
      tags:
      - components
      parameters:
      - name: q
        in: query
        schema:
          type: string
          maxLength: 512
      - name: limit
        in: query
        description: Page limit (default 100)
        schema:
          type: integer
          description: Page limit (default 100)
          format: int64
          example: '100'
      - name: offset
        in: query
        description: Page offset (default 0)
        schema:
          type: integer
          description: Page offset (default 0)
          format: int64
          example: '0'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/ComponentResponseData'
                    title: ListComponentsResponseData
                    maxItems: 250
                  params:
                    type: object
                    description: Input parameters
                    properties:
                      limit:
                        type: integer
                        description: Page limit (default 100)
                        format: int64
                        example: '100'
                      offset:
                        type: integer
                        description: Page offset (default 0)
                        format: int64
                        example: '0'
                      q:
                        type: string
                        maxLength: 512
                    title: ListComponentsParams
                required:
                - data
                - params
                title: ListComponentsResponse
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
    post:
      operationId: createComponent
      summary: Create component
      tags:
      - components
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateComponentRequestBody'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/ComponentResponseData'
                  params:
                    type: object
                    description: Input parameters
                    title: CreateComponentParams
                required:
                - data
                - params
                title: CreateComponentResponse
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
  /components/{component_id}:
    get:
      operationId: getComponent
      summary: Get component
      tags:
      - components
      parameters:
      - name: component_id
        in: path
        description: component_id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/ComponentResponseData'
                  params:
                    type: object
                    description: Input parameters
                    title: GetComponentParams
                required:
                - data
                - params
                title: GetComponentResponse
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
    put:
      operationId: updateComponent
      summary: Update component
      tags:
      - components
      parameters:
      - name: component_id
        in: path
        description: component_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateComponentRequestBody'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/ComponentResponseData'
                  params:
                    type: object
                    description: Input parameters
                    title: UpdateComponentParams
                required:
                - data
                - params
                title: UpdateComponentResponse
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
    delete:
      operationId: deleteComponent
      summary: Delete component
      tags:
      - components
      parameters:
      - name: component_id
        in: path
        description: component_id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/DeleteResponse'
                  params:
                    type: object
                    description: Input parameters
                    title: DeleteComponentParams
                required:
                - data
                - params
                title: DeleteComponentResponse
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
  /components/count:
    get:
      operationId: countComponents
      summary: Count components
      tags:
      - components
      parameters:
      - name: q
        in: query
        schema:
          type: string
          maxLength: 512
      - name: limit
        in: query
        description: Page limit (default 100)
        schema:
          type: integer
          description: Page limit (default 100)
          format: int64
          example: '100'
      - name: offset
        in: query
        description: Page offset (default 0)
        schema:
          type: integer
          description: Page offset (default 0)
          format: int64
          example: '0'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/CountResponse'
                  params:
                    type: object
                    description: Input parameters
                    properties:
                      limit:
                        type: integer
                        description: Page limit (default 100)
                        format: int64
                        example: '100'
                      offset:
                        type: integer
                        description: Page offset (default 0)
                        format: int64
                        example: '0'
                      q:
                        type: string
                        maxLength: 512
                    title: CountComponentsParams
                required:
                - data
                - params
                title: CountComponentsResponse
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
  /components/preview-data:
    get:
      operationId: previewComponentData
      summary: Preview component data
      tags:
      - components
      parameters:
      - name: company_id
        in: query
        schema:
          type: string
      - name: component_id
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/ComponentPreviewResponseData'
                  params:
                    type: object
                    description: Input parameters
                    properties:
                      company_id:
                        type: string
                      component_id:
                        type: string
                    title: PreviewComponentDataParams
                required:
                - data
                - params
                title: PreviewComponentDataResponse
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/ServerError'
components:
  schemas:
    Rule:
      type: object
      properties:
        account_id:
          type: string
        condition_groups:
          type: array
          items:
            $ref: '#/components/schemas/ConditionGroup'
          maxItems: 1000
        conditions:
          type: array
          items:
            $ref: '#/components/schemas/Condition'
          maxItems: 1000
        environment_id:
          type: string
        flag_id:
          type:
          - string
          - 'null'
        id:
          type: string
        name:
          type: string
        priority:
          type: integer
          format: int64
        rule_type:
          $ref: '#/components/schemas/RuleType'
        value:
          type: boolean
      required:
      - id
      - account_id
      - environment_id
      - rule_type
      - name
      - priority
      - conditions
      - condition_groups
      - value
      title: Rule
    CompanyDetailResponseData:
      type: object
      properties:
        add_ons:
          type: array
          items:
            $ref: '#/components/schemas/CompanyPlanWithBillingSubView'
          maxItems: 1000
        billing_credit_balances:
          additionalProperties:
            type: number
          type:
          - object
          - 'null'
        billing_subscription:
          $ref: '#/components/schemas/BillingSubscriptionView'
        billing_subscriptions:
          type: array
          items:
            $ref: '#/components/schemas/BillingSubscriptionView'
          maxItems: 1000
        created_at:
          type: string
          format: date-time
        custom_plan_billings:
          type: array
          items:
            $ref: '#/components/schemas/CustomPlanBillingResponseData'
          maxItems: 1000
        default_payment_method:
          $ref: '#/components/schemas/PaymentMethodResponseData'
        entitlements:
          type: array
          items:
            $ref: '#/components/schemas/FeatureEntitlement'
          maxItems: 1000
        entity_traits:
          type: array
          items:
            $ref: '#/components/schemas/EntityTraitDetailResponseData'
          maxItems: 1000
        environment_id:
          type: string
        id:
          type: string
        keys:
          type: array
          items:
            $ref: '#/components/schemas/EntityKeyDetailResponseData'
          maxItems: 1000
        last_seen_at:
          type:
          - string
          - 'null'
          format: date-time
        logo_url:
          type:
          - string
          - 'null'
        metrics:
          type: array
          items:
            $ref: '#/components/schemas/CompanyEventPeriodMetricsResponseData'
          maxItems: 1000
        name:
          type: string
        payment_methods:
          type: array
          items:
            $ref: '#/components/schemas/PaymentMethodResponseData'
          maxItems: 1000
        plan:
          $ref: '#/components/schemas/CompanyPlanWithBillingSubView'
        plans:
          type: array
          items:
            $ref: '#/components/schemas/GenericPreviewObject'
          maxItems: 1000
        rules:
          type: array
          items:
            $ref: '#/components/schemas/Rule'
          maxItems: 1000
        scheduled_downgrade:
          $ref: '#/components/schemas/ScheduledDowngradeResponseData'
        traits:
          type: object
          description: A map of trait names to trait values
        updated_at:
          type: string
          format: date-time
        user_count:
          type: integer
          format: int64
      required:
      - created_at
      - environment_id
      - id
      - name
      - updated_at
      - add_ons
      - billing_subscriptions
      - custom_plan_billings
      - entitlements
      - entity_traits
      - keys
      - metrics
      - payment_methods
      - plans
      - rules
      - user_count
      title: CompanyDetailResponseData
    CustomPlanBillingResponseData:
      type: object
      properties:
        activation_strategy:
          $ref: '#/components/schemas/CustomPlanActivationStrategy'
        company_id:
          type: string
        created_at:
          type: string
          format: date-time
        days_until_due:
          type: integer
          format: int64
        id:
          type: string
        paid_at:
          type:
          - string
          - 'null'
          format: date-time
        plan_id:
          type: string
        published_at:
          type:
          - string
          - 'null'
          format: date-time
        status:
          $ref: '#/components/schemas/CustomPlanBillingStatus'
        stripe_invoice_url:
          type:
          - string
          - 'null'
        updated_at:
          type: string
          format: date-time
      required:
      - activation_strategy
      - company_id
      - created_at
      - days_until_due
      - id
      - plan_id
      - status
      - updated_at
      title: CustomPlanBillingResponseData
    FeatureResponseData:
      type: object
      properties:
        created_at:
          type: string
          format: date-time
        description:
          type: string
        event_subtype:
          type:
          - string
          - 'null'
        feature_type:
          $ref: '#/components/schemas/FeatureType'
        icon:
          type: string
        id:
          type: string
        lifecycle_phase:
          allOf:
          - $ref: '#/components/schemas/FeatureLifecyclePhase'
        maintainer_account_member_id:
          type:
          - string
          - 'null'
        name:
          type: string
        plural_name:
          type:
          - string
          - 'null'
        singular_name:
          type:
          - string
          - 'null'
        trait_id:
          type:
          - string
          - 'null'
        updated_at:
          type: string
          format: date-time
      required:
      - id
      - name
      - description
      - feature_type
      - icon
      - created_at
      - updated_at
      title: FeatureResponseData
    DeleteResponse:
      type: object
      properties:
        deleted:
          type: boolean
          description: Whether the delete was successful
    CreditCurrencyPrice:
      type: object
      properties:
        currency:
          type: string
        price:
          $ref: '#/components/schemas/BillingPriceView'
      required:
      - currency
      title: CreditCurrencyPrice
    PreviewObject:
      type: object
      properties:
        description:
          type:
          - string
          - 'null'
        id:
          type: string
        image_url:
          type:
          - string
          - 'null'
        name:
          type: string
      required:
      - id
      - name
      title: PreviewObject
    ComponentState:
      type: string
      enum:
      - draft
      - live
    CustomPlanConfig:
      type: object
      properties:
        cta_text:
          type: string
        cta_web_site:
          type: string
        price_text:
          type: string
      required:
      - cta_web_site
      - cta_text
      - price_text
      title: CustomPlanConfig
    MetricPeriodMonthReset:
      type: string
      enum:
      - billing_cycle
      - first_of_month
    CustomPlanActivationStrategy:
      type: string
      enum:
      - on_payment
      - on_publish
    BillingPriceView:
      type: object
      properties:
        billing_scheme:
          $ref: '#/components/schemas/BillingPriceScheme'
        created_at:
          type: string
          format: date-time
        currency:
          type: string
        id:
          type: string
        interval:
          $ref: '#/components/schemas/BillingProductPriceInterval'
        is_active:
          type: boolean
        meter_event_name:
          type:
          - string
          - 'null'
        meter_event_payload_key:
          type:
          - string
          - 'null'
        meter_id:
          type:
          - string
          - 'null'
        nickname:
          type:
          - string
          - 'null'
        package_size:
          type: integer
          format: int64
        price:
          type: integer
          format: int64
        price_decimal:
          type:
          - string
          - 'null'
        price_external_id:
          type: string
        price_id:
          type: string
        price_tier:
          type: array
          items:
            $ref: '#/components/schemas/BillingProductPriceTierResponseData'
          maxItems: 100
        product_external_id:
          type: string
        product_id:
          type: string
        product_name:
          type: string
        provider_type:
          $ref: '#/components/schemas/BillingProviderType'
        tiers_mode:
          allOf:
          - $ref: '#/components/schemas/BillingTiersMode'
        updated_at:
          type: string
          format: date-time
        usage_type:
          $ref: '#/components/schemas/BillingPriceUsageType'
      required:
      - id
      - billing_scheme
      - created_at
      - currency
      - interval
      - is_active
      - package_size
      - price
      - price_external_id
      - product_external_id
      - provider_type
      - updated_at
      - usage_type
      - price_id
      - product_id
      - product_name
      - price_tier
      title: BillingPriceView
    CompanyOverrideResponseData:
      type: object
      properties:
        company:
          $ref: '#/components/schemas/CompanyDetailResponseData'
        company_id:
          type: string
        consumption_rate:
          type:
          - number
          - 'null'
        created_at:
          type: string
          format: date-time
        environment_id:
          type: string
        expiration_date:
          type:
          - string
          - 'null'
          format: date-time
        feature:
          $ref: '#/components/schemas/FeatureResponseData'
        feature_id:
          type: string
        id:
          type: string
        metric_period:
          allOf:
          - $ref: '#/components/schemas/MetricPeriod'
        metric_period_month_reset:
          allOf:
          - $ref: '#/components/schemas/MetricPeriodMonthReset'
        notes:
          type: array
          items:
            $ref: '#/components/schemas/CompanyOverrideNoteResponseData'
          maxItems: 1000
        rule_id:
          type:
          - string
          - 'null'
        rule_id_usage_exceeded:
          type:
          - string
          - 'null'
        updated_at:
          type: string
          format: date-time
        value_bool:
          type:
          - boolean
          - 'null'
        value_numeric:
          type:
          - integer
          - 'null'
          format: int64
        value_trait:
          $ref: '#/components/schemas/EntityTraitDefinitionResponseData'
        value_trait_id:
          type:
          - string
          - 'null'
        value_type:
          $ref: '#/components/schemas/EntitlementValueType'
      required:
      - company_id
      - created_at
      - environment_id
      - feature_id
      - id
      - updated_at
      - value_type
      - notes
      title: CompanyOverrideResponseData
    FeatureType:
      type: string
      enum:
      - boolean
      - event
      - trait
    PlanEntitlementResponseData:
      type: object
      properties:
        billing_linked_resource:
          $ref: '#/components/schemas/BillingLinkedResourceResponseData'
        billing_threshold:
          type:
          - integer
          - 'null'
          format: int64
        consumption_rate:
          type:
          - number
          - 'null'
        created_at:
          type: string
          format: date-time
        currency_prices:
          type: array
          items:
            $ref: '#/components/schemas/EntitlementCurrencyPricesResponseData'
          maxItems: 1000
        environment_id:
          type: string
        feature:
          $ref: '#/components/schemas/FeatureResponseData'
        feature_id:
          type: string
        id:
          type: string
        metered_monthly_price:
          $ref: '#/components/schemas/BillingPriceView'
        metered_yearly_price:
          $ref: '#/components/schemas/BillingPriceView'
        metric_period:
          allOf:
          - $ref: '#/components/schemas/MetricPeriod'
        metric_period_month_reset:
          allOf:
          - $ref: '#/components/schemas/MetricPeriodMonthReset'
        plan:
          $ref: '#/components/schemas/PlanResponseData'
        plan_id:
          type: string
        price_behavior:
          allOf:
          - $ref: '#/components/schemas/EntitlementPriceBehavior'
        rule_id:
          type: string
        rule_id_usage_exceeded:
          type:
          - string
          - 'null'
        soft_limit:
          type:
          - integer
          - 'null'
          format: int64
        updated_at:
          type: string
          format: date-time
        usage_based_product:
          $ref: '#/components/schemas/BillingProductResponseData'
        value_bool:
          type:
          - boolean
          - 'null'
        value_credit:
          $ref: '#/components/schemas/BillingCreditResponseData'
        value_numeric:
          type:
          - integer
          - 'null'
          format: int64
        value_trait:
          $ref: '#/components/schemas/EntityTraitDefinitionResponseData'
        value_trait_id:
          type:
          - string
          - 'null'
        value_type:
          $ref: '#/components/schemas/EntitlementValueType'
      required:
      - created_at
      - currency_prices
      - environment_id
      - feature_id
      - id
      - plan_id
      - rule_id
      - updated_at
      - value_type
      title: PlanEntitlementResponseData
    BillingCreditRolloverPolicy:
      type: string
      enum:
      - expire
      - none
      - rollover
    BillingSubscriptionView:
      type: object
      properties:
        application_id:
          type:
          - string
          - 'null'
        cancel_at:
          type:
          - integer
          - 'null'
          format: int64
        cancel_at_period_end:
          type: boolean
        company_id:
          type:
          - string
          - 'null'
        created_at:
          type: string
          format: date-time
        currency:
          type: string
        customer_external_id:
          type: string
        default_payment_method_id:
          type:
          - string
          - 'null'
        discounts:
          type: array
          items:
            $ref: '#/components/schemas/BillingSubscriptionDiscountView'
          maxItems: 1000
        expired_at:
          type:
          - string
          - 'null'
          format: date-time
        id:
          type: string
        interval:
          type: string
        latest_invoice:
          $ref: '#/components/schemas/InvoiceResponseData'
        metadata:
          type: object
        payment_method:
          $ref: '#/components/schemas/PaymentMethodResponseData'
        period_end:
          type: integer
          format: int64
        period_start:
          type: integer
          format: int64
        products:
          type: array
          items:
            $ref: '#/components/schemas/BillingProductForSubscriptionResponseData'
          maxItems: 1000
        provider_type:
          $ref: '#/components/schemas/BillingProviderType'
        status:
          type: string
        subscription_external_id:
          type: string
        total_price:
          type: integer
          format: int64
        trial_end:
          type:
          - integer
          - 'null'
          format: int64
        trial_end_setting:
          allOf:
          - $ref: '#/components/schemas/BillingSubscriptionTrialEndSetting'
      required:
      - cancel_at_period_end
      - created_at
      - currency
      - customer_external_id
      - subscription_external_id
      - id
      - interval
      - period_end
      - period_start
      - total_price
      - provider_type
      - status
      - products
      - discounts
      title: BillingSubscriptionView
    CustomPlanBillingStatus:
      type: string
      enum:
      - active
      - expired
      - paid
      - pending
    EntityTraitDefinitionResponseData:
      type: object
      properties:
        created_at:
          type: string
          format: date-time
        display_name:
          type: string
        entity_type:
          $ref: '#/components/schemas/EntityType'
        hierarchy:
          type: array
          items:
            type: string
          maxItems: 1000
        id:
          type: string
        trait_type:
          $ref: '#/components/schemas/TraitType'
        updated_at:
          type: string
          format: date-time
      required:
      - created_at
      - display_name
      - entity_type
      - hierarchy
      - id
      - trait_type
      - updated_at
      title: EntityTraitDefinitionResponseData
    ComparableOperator:
      type: string
      enum:
      - eq
      - gt
      - gte
      - is_empty
      - lt
      - lte
      - not_empty
      - ne
    PlanCreditGrantView:
      type: object
      properties:
        billing_credit_auto_topup_amount:
          type:
          - integer
          - 'null'
          format: int64
        billing_credit_auto_topup_amount_type:
          type:
          - string
          - 'null'
        billing_credit_auto_topup_enabled:
          type: boolean
        billing_credit_auto_topup_expiry_type:
          allOf:
          - $ref: '#/components/schemas/BillingCreditExpiryType'
        billing_credit_auto_topup_expiry_unit:
          allOf:
          - $ref: '#/components/schemas/BillingCreditExpiryUnit'
        billing_credit_auto_topup_expiry_unit_count:
          type:
          - integer
          - 'null'
          format: int64
        billing_credit_auto_topup_threshold_credits:
          type:
          - integer
          - 'null'
          format: int64
        billing_credit_auto_topup_threshold_percent:
          type:
          - integer
          - 'null'
          format: int64
        created_at:
          type: string
          format: date-time
        credit:
          $ref: '#/components/schemas/BillingCreditView'
        credit_amount:
          type: integer
          format: int64
        credit_description:
          type: string
          description: Deprecated field, will be removed in the future. Use Credit.Description instead.
          deprecated: true
        credit_icon:
          type:
          - string
          - 'null'
          description: Deprecated field, will be removed in the future. Use Credit.Icon instead.
          deprecated: true
        credit_id:
          type: string
        credit_name:
          type: string
          description: Deprecated field, will be removed in the future. Use Credit.Name instead.
          deprecated: true
        expiry_type:
          allOf:
          - $ref: '#/components/schemas/BillingCreditExpiryType'
        expiry_unit:
          allOf:
          - $ref: '#/components/schemas/BillingCreditExpiryUnit'
        expiry_unit_count:
          type:
          - integer
          - 'null'
          format: int64
        id:
          type: string
        plan:
          $ref: '#/components/schemas/GenericPreviewObject'
        plan_id:
          type: string
        plan_version_id:
          type:
          - string
          - 'null'
        plural_name:
          type:
          - string
          - 'null'
          description: Deprecated field, will be removed in the future. Use Credit.PluralName instead.
          deprecated: true
        reset_cadence:
          allOf:
          - $ref: '#/components/schemas/BillingPlanCreditGrantResetCadence'
        reset_start:
          allOf:
          - $ref: '#/components/schemas/BillingPlanCreditGrantResetStart'
        reset_type:
          $ref: '#/components/schemas/BillingPlanCreditGrantResetType'
        singular_name:
          type:
          - string
          - 'null'
          description: Deprecated field, will be removed in the future. Use Credit.SingularName instead.
          deprecated: true
        updated_at:
          type: string
          format: date-time
      required:
      - id
      - credit_id
      - plan_id
      - credit_amount
      - credit_name
      - credit_description
      - reset_type
      - billing_credit_auto_topup_enabled
      - created_at
      - updated_at
      title: PlanCreditGrantView
    ComponentResponseData:
      type: object
      properties:
        ast:
          additionalProperties:
            type: number
          type: object
        created_at:
          type: string
          format: date-time
        id:
          type: string
        name:
          type: string
        state:
          $ref: '#/components/schemas/ComponentState'
        type:
          $ref: '#/components/schemas/ComponentEntityType'
        updated_at:
          type: string
          format: date-time
      required:
      - id
      - name
      - type
      - state
      - created_at
      - updated_at
      title: ComponentResponseData
    CreditCurrencyPriceResponseData:
      type: object
      properties:
        currency:
          type: string
        price:
          $ref: '#/components/schemas/BillingPriceResponseData'
      required:
      - currency
      title: CreditCurrencyPriceResponseData
    CompanyPlanDetailResponseData:
      type: object
      properties:
        active_version:
          $ref: '#/components/schemas/PlanVersionResponseData'
        audience_type:
          type:
          - string
          - 'null'

# --- truncated at 32 KB (103 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/schematic/refs/heads/main/openapi/schematic-components-api-openapi.yml