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

# Get billing account

> One consolidated view of the organization's commercial account: plan and terms, effective pricing, intelligence usage, credit/prepay balance, agreements, child accounts, and the single next action (if any) needed to become or remain paid. Org-admin only; child-account requests resolve to the parent organization.



## OpenAPI

````yaml /v2/buyer-api-v2.yaml get /billing/account
openapi: 3.0.0
info:
  title: Scope3 Buyer API
  version: 2.0.0
  description: |-
    REST API for advertisers to manage advertisers, campaigns, and reporting.

    ## Authentication

    All endpoints require a Bearer token in the Authorization header:
    ```
    Authorization: Bearer your-api-key
    ```

    ## Base URL

    `https://api.interchange.io/api/v2/buyer`

    ## For AI Agents

    AI agents can use the MCP endpoint at `/mcp/v2/buyer` with three tools:
    - `initialize`: Start an MCP session
    - `api_call`: Make REST API calls
    - `ask_about_capability`: Learn about API features
servers:
  - url: https://api.interchange.io/api/v2/buyer
    description: Production server
security: []
tags:
  - name: Signup
    description: Request reviewed access to Interchange
  - name: Account
    description: Account management, service tokens, and preferences
  - name: Asks
    description: >-
      What you are waiting on Scope3 for — support, product, and supply asks in
      one list
  - name: Advertisers
    description: Manage advertisers
  - name: Product Discovery
    description: Discover and select products
  - name: Campaigns
    description: Manage advertising campaigns
  - name: Creatives
    description: Build, manage, and sync campaign creatives via AdCP Creative Protocol
  - name: Reporting
    description: Access performance metrics
  - name: Event Sources
    description: >-
      Manage event source configurations and log conversion/marketing events for
      attribution
  - name: Property Lists
    description: Validate property lists against AAO registry
  - name: Sales Agents
    description: View and connect sales agents
  - name: Measurement
    description: Measurement sources, records, context, and freshness
  - name: Syndication
    description: Syndicate resources to ADCP agents
  - name: Tasks
    description: Track async operation status
  - name: Buyer Billing
    description: >-
      Consolidated invoicing for buyers — invoices and pending invoice items
      issued by Scope3 across the buyer customer.
  - name: MCP
    description: Model Context Protocol endpoints for AI agents
paths:
  /billing/account:
    servers:
      - url: https://api.interchange.io/api/v2
        description: Production server
    get:
      tags:
        - Buyer Billing
      summary: Get billing account
      description: >-
        One consolidated view of the organization's commercial account: plan and
        terms, effective pricing, intelligence usage, credit/prepay balance,
        agreements, child accounts, and the single next action (if any) needed
        to become or remain paid. Org-admin only; child-account requests resolve
        to the parent organization.
      operationId: getBillingAccount
      parameters:
        - in: query
          name: customerId
          schema:
            type: integer
            minimum: 0
            exclusiveMinimum: true
            maximum: 9007199254740991
      responses:
        '200':
          description: Get billing account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetBillingAccountResponse'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: ACCESS_DENIED (caller is not an org admin / eligible service token).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - bearerAuth: []
components:
  schemas:
    GetBillingAccountResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/BillingAccountDocument'
      required:
        - data
      additionalProperties: false
    ErrorResponse:
      type: object
      properties:
        data:
          type: string
          nullable: true
          enum:
            - null
        error:
          $ref: '#/components/schemas/ApiError'
      required:
        - data
        - error
      additionalProperties: false
      description: Standard error response
    BillingAccountDocument:
      type: object
      properties:
        organization:
          $ref: '#/components/schemas/BillingOrganization'
        scope:
          $ref: '#/components/schemas/BillingScope'
        standing:
          $ref: '#/components/schemas/BillingStanding'
        plan:
          $ref: '#/components/schemas/BillingPlan'
        pricing:
          $ref: '#/components/schemas/BillingPricing'
        usage:
          $ref: '#/components/schemas/BillingUsage'
        payment:
          $ref: '#/components/schemas/BillingPayment'
        contracts:
          $ref: '#/components/schemas/BillingContracts'
        enterpriseContracts:
          $ref: '#/components/schemas/BillingEnterpriseContracts'
        accounts:
          type: array
          items:
            $ref: '#/components/schemas/BillingAccountChild'
          description: >-
            The org’s child accounts (billing dimension only), capped at 50
            entries — `totalAccounts` carries the uncapped count.
        totalAccounts:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: >-
            Total number of child accounts in the org, regardless of the
            `accounts[]` cap.
        nextAction:
          $ref: '#/components/schemas/NextAction'
        permissions:
          $ref: '#/components/schemas/BillingPermissions'
      required:
        - organization
        - scope
        - standing
        - plan
        - pricing
        - usage
        - payment
        - contracts
        - enterpriseContracts
        - accounts
        - totalAccounts
        - nextAction
        - permissions
      additionalProperties: false
      description: >-
        The consolidated commercial-account read model — GET
        /api/v2/billing/account.
    ApiError:
      type: object
      properties:
        code:
          type: string
          description: Machine-readable error code
        message:
          type: string
          description: Human-readable error message
        field:
          description: Field path associated with the error
          type: string
        details:
          description: Additional error context
          type: object
          additionalProperties: {}
      required:
        - code
        - message
      additionalProperties: false
      description: Structured error object
    BillingOrganization:
      type: object
      properties:
        customerId:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        name:
          type: string
        roles:
          type: array
          items:
            type: string
            enum:
              - BUYER
              - SELLER
          description: >-
            The org's OWN customer role(s). Empty when unresolved. Today this is
            a single role (the core schema carries one `customerRole` per
            customer); the array shape is forward-compatible with a multi-role
            org. Does NOT include children's roles — see `capabilities` for the
            org-wide derivation.
        capabilities:
          $ref: '#/components/schemas/BillingCapabilities'
        currency:
          description: >-
            The currency every money figure on this document is denominated in
            (the org’s ledger/standing currency).
          allOf:
            - $ref: '#/components/schemas/LedgerCurrency'
      required:
        - customerId
        - name
        - roles
        - capabilities
        - currency
      additionalProperties: false
    BillingScope:
      type: object
      properties:
        boundary:
          type: string
          enum:
            - ORG
            - ACCOUNT
          description: >-
            Whose money this document describes. Always `ORG` today — `ACCOUNT`
            appears once per-account `OWN` delegation ships (spec §10, open
            question).
        delegatedFrom:
          nullable: true
          description: >-
            Set to the parent customerId when this document is a delegated
            child’s own boundary (`OWN`). Always null today — no delegation
            configuration exists yet.
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - boundary
        - delegatedFrom
      additionalProperties: false
    BillingStanding:
      type: object
      properties:
        posture:
          type: string
          enum:
            - PREPAY
            - CREDIT
          description: >-
            `CREDIT` when the org has a Scope3-granted credit line
            (`creditLimitMinor` > 0); `PREPAY` otherwise (must fund a balance to
            spend).
        creditLimitMinor:
          type: string
          description: Scope3-granted credit ceiling, minor units (0 = none).
        currency:
          $ref: '#/components/schemas/LedgerCurrency'
        paymentTerms:
          nullable: true
          description: >-
            Effective post-pay terms granted for this account. Null for
            card/prepay accounts.
          type: string
          enum:
            - net_15
            - net_30
            - net_45
            - net_60
            - net_90
        verificationLevel:
          type: string
          enum:
            - none
            - screened
            - kyb_verified
            - legacy_grandfathered
        holds:
          type: array
          items:
            $ref: '#/components/schemas/BillingHold'
      required:
        - posture
        - creditLimitMinor
        - currency
        - paymentTerms
        - verificationLevel
        - holds
      additionalProperties: false
    BillingPlan:
      type: object
      properties:
        requiredTosVersion:
          type: string
          description: >-
            The current platform Terms of Service version. Portable human-owned
            surfaces use this server value when the next action is ACCEPT_TOS;
            clients must not guess or hardcode it.
        tosUrl:
          type: string
          description: >-
            Review URL for the current platform Terms of Service. Human-owned
            portable surfaces open this before accepting.
        tosVersion:
          nullable: true
          type: string
        tosAcceptedAt:
          nullable: true
          type: string
        tosAcceptedByEmail:
          nullable: true
          type: string
        contractStatus:
          type: string
          enum:
            - active
            - no_contract
            - inherited_active
            - inherited_hidden
            - organization_contract_missing
            - awaiting_acceptance
        rateCardType:
          nullable: true
          type: string
          enum:
            - STANDARD
            - CUSTOM
            - INHERITED
        effectiveDate:
          nullable: true
          type: string
        endDate:
          nullable: true
          type: string
        autoRenewal:
          nullable: true
          description: >-
            Not exposed by the composed contract-service.ts surface today
            (`ContractInfo` has no `autoRenewal` field) — always null pending
            that field surfacing one layer up from
            `agentic-contract-service.ts`.
          type: boolean
        subscriptions:
          type: array
          items: {}
          description: Empty until AI-2897 (account-subscriptions) lands.
      required:
        - requiredTosVersion
        - tosUrl
        - tosVersion
        - tosAcceptedAt
        - tosAcceptedByEmail
        - contractStatus
        - rateCardType
        - effectiveDate
        - endDate
        - autoRenewal
        - subscriptions
      additionalProperties: false
    BillingPricing:
      type: object
      properties:
        effective:
          $ref: '#/components/schemas/BillingRateCard'
        publicList:
          nullable: true
          description: Null until AI-2964 (public pricing / price book) lands.
          allOf:
            - $ref: '#/components/schemas/BillingRateCard'
        provenance:
          nullable: true
          type: string
          enum:
            - STANDARD
            - CUSTOM
            - INHERITED
      required:
        - effective
        - publicList
        - provenance
      additionalProperties: false
    BillingUsage:
      type: object
      properties:
        intelligence:
          $ref: '#/components/schemas/BillingIntelligenceUsage'
        creditBalance:
          $ref: '#/components/schemas/CreditBalanceSummary'
        orgPosition:
          $ref: '#/components/schemas/BillingOrgFinancialPosition'
        iuAccount:
          $ref: '#/components/schemas/BillingIuAccount'
        iuActivity:
          nullable: true
          description: >-
            IU activity explanation for iuAccount, or null whenever the IU
            account experience is disabled or unavailable.
          allOf:
            - $ref: '#/components/schemas/BillingIuActivityUsage'
      required:
        - intelligence
        - creditBalance
        - orgPosition
        - iuAccount
        - iuActivity
      additionalProperties: false
    BillingPayment:
      type: object
      properties:
        billingInfo:
          $ref: '#/components/schemas/BillingBillingInfo'
        paymentMethod:
          $ref: '#/components/schemas/BillingPaymentMethod'
        cardCollectionEnabled:
          type: boolean
          description: >-
            Whether `buyer-card-collection` is on for this org (AI-3078,
            parent-inherited, fail-closed). The card door renders whenever this
            is true, independent of funding status or `nextAction` — a funded
            org still gets the "Add a card" option (spec
            docs/spec/payments/buyer-card-collection.md §12 ruling 8).
        payoutSetupRequired:
          type: boolean
          description: >-
            Whether this seller uses Interchange for payout disbursement and
            must provide payout bank details. Official sales-adapter storefronts
            settle directly and are false.
        storefrontBilling:
          $ref: '#/components/schemas/BillingStorefrontBillingSummary'
        creditApplications:
          type: array
          items:
            $ref: '#/components/schemas/CreditApplicationResponseV2'
          description: >-
            The org’s credit-application history. `reviewerNotes` is nulled for
            every principal except a Scope3 superadmin — reviewer notes are
            internal; the buyer-authored `justification` stays visible.
        deposits:
          type: array
          items:
            $ref: '#/components/schemas/BillingDeposit'
          description: >-
            Recent prepay deposits, newest first, capped at 10 — projected from
            ledger DEPOSIT entries (spec §10 ruling 3; the funding rail shipped
            with AI-2959).
        invoices:
          type: array
          items: {}
          description: Empty until an invoicing model exists.
      required:
        - billingInfo
        - paymentMethod
        - cardCollectionEnabled
        - payoutSetupRequired
        - storefrontBilling
        - creditApplications
        - deposits
        - invoices
      additionalProperties: false
    BillingContracts:
      type: object
      properties:
        agreements:
          type: array
          items:
            $ref: '#/components/schemas/BillingAgreement'
        documents:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              title:
                type: string
              downloadUrl:
                nullable: true
                type: string
                format: uri
              sharepointLink:
                nullable: true
                type: string
                format: uri
              gcpLink:
                nullable: true
                type: string
                format: uri
            required:
              - id
              - title
              - downloadUrl
              - sharepointLink
              - gcpLink
            additionalProperties: false
          description: >-
            Agreement documents. For a service-token caller the
            download/sharepoint/GCP links are nulled (document metadata stays) —
            retrieving contract files is a human-admin action.
        mediaRateCard:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/BillingRateCard'
      required:
        - agreements
        - documents
        - mediaRateCard
      additionalProperties: false
    BillingEnterpriseContracts:
      type: object
      properties:
        commercialState:
          $ref: '#/components/schemas/BillingEnterpriseCommercialState'
        packages:
          type: array
          items:
            $ref: '#/components/schemas/BillingEnterpriseContractPackage'
        visibility:
          type: string
          enum:
            - visible
            - redacted
        redactedFields:
          type: array
          items:
            type: string
            enum:
              - proposal
              - selectedPaymentOption
      required:
        - commercialState
        - packages
        - visibility
        - redactedFields
      additionalProperties: false
      description: >-
        The authoritative Enterprise Contract position shared by Plan & Billing
        and MCP: pending Offer, customer-safe Rate Card acceptance lineage,
        purchased product rights, premium support, renewal state, and lifecycle
        reason codes. visibility/redactedFields distinguish service-token
        redaction from absent terms.
    BillingAccountChild:
      type: object
      properties:
        customerId:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        name:
          type: string
        company:
          nullable: true
          type: string
        delegation:
          type: string
          enum:
            - NONE
            - VIEW
            - OWN
          description: >-
            Always `NONE` today — no delegation configuration exists yet (spec
            §10, open question 1).
        periodFees:
          nullable: true
          description: Null until AI-2897 (per-account fees) lands.
          type: number
        intelligenceUsage:
          nullable: true
          deprecated: true
          description: >-
            Deprecated compatibility field. It remains null; use customerIuUsage
            for unit-safe child-account IU attribution.
          type: number
        customerIuUsage:
          description: >-
            Customer Intelligence Unit usage attributed to this child during the
            organization billing cycle. Zero is reported explicitly when
            accepted rating terms exist but the child had no rated activity;
            null means the IU experience or accepted rating terms are
            unavailable.
          nullable: true
          type: object
          properties:
            quantity:
              type: number
              minimum: 0
            unit:
              type: string
              enum:
                - IU
            periodStart:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            periodEnd:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
          required:
            - quantity
            - unit
            - periodStart
            - periodEnd
          additionalProperties: false
      required:
        - customerId
        - name
        - company
        - delegation
        - periodFees
        - intelligenceUsage
      additionalProperties: false
    NextAction:
      type: object
      properties:
        type:
          type: string
          enum:
            - ACCEPT_TOS
            - ACCEPT_GOVERNING_AGREEMENT
            - SELECT_IU_PLAN
            - CONTACT_SCOPE3
            - ADD_BILLING_INFO
            - ADD_PAYMENT_METHOD
            - FUND_PREPAY
            - APPLY_FOR_CREDIT
            - RESOLVE_HOLD
            - UPDATE_PAYMENT_METHOD
            - NONE
        message:
          type: string
          description: Human sentence describing the action, for direct display.
        docsUrl:
          nullable: true
          description: mintlify/v2 page explaining this action, when one exists.
          type: string
        route:
          nullable: true
          description: >-
            The REST method + path that resolves this action (e.g. "POST
            /api/v2/accept-tos"), when a self-serve route exists today AND is
            reachable by the caller. For APPLY_FOR_CREDIT the route is only
            emitted when the `customer-credit-prepay` flag is on for the
            customer (the credit-applications surface is gated by it); the enum
            value is returned either way.
          type: string
        taskId:
          nullable: true
          description: >-
            The MCP tool/Task name that resolves this action, when a bounded
            agent Task exists today.
          type: string
      required:
        - type
        - message
        - docsUrl
        - route
        - taskId
      additionalProperties: false
      description: >-
        The single most-important action needed to become or remain paid,
        derived server-side — never stored.
    BillingPermissions:
      type: object
      properties:
        canAcceptTos:
          type: boolean
        canEditBillingInfo:
          type: boolean
        canSetPayoutPayee:
          type: boolean
          description: >-
            True only when the active context is a seller billing organization
            and the caller may route payout funds. Child contexts and buyer-only
            organizations are false even when the caller can read the parent
            billing document.
        canReadPayoutPayees:
          type: boolean
          description: >-
            True when the customer can call GET
            /api/v2/storefront/billing/payees. Mirrors
            createCustomerRoleGuard("SELLER"): requires customerRole SELLER and
            customerType not PARENT. Parent-type orgs are org containers — the
            storefront route guard rejects them even when they carry a SELLER
            role.
        canApplyForCredit:
          type: boolean
      required:
        - canAcceptTos
        - canEditBillingInfo
        - canSetPayoutPayee
        - canReadPayoutPayees
        - canApplyForCredit
      additionalProperties: false
    BillingCapabilities:
      type: object
      properties:
        seller:
          type: boolean
          description: >-
            Whether the org has SELLER capability — its own `roles` OR at least
            one of its child accounts' roles (AI-3378). A parent org whose
            Seller Accounts live only in child accounts (agency/reseller shape)
            still gets `true` here, unlike `roles` which only reflects the org's
            own customer row.
        buyer:
          type: boolean
          description: >-
            Whether the org has BUYER capability — its own `roles` OR at least
            one of its child accounts' roles (AI-3378).
      required:
        - seller
        - buyer
      additionalProperties: false
      description: >-
        Capability derived from the org's own role UNION its children's roles.
        Always present — computed server-side so no consumer decides capability
        from `roles` alone. `roles` is left unchanged for existing consumers
        that specifically want the org's OWN role.
    LedgerCurrency:
      type: string
      enum:
        - USD
        - EUR
        - GBP
        - JPY
        - CAD
        - AUD
        - CHF
        - CNY
        - INR
        - BRL
        - MXN
        - SGD
        - HKD
        - NZD
        - SEK
        - NOK
        - DKK
        - ZAR
        - KRW
        - PLN
      description: >-
        ISO 4217 currency code supported by the ledger. Mirrors the
        ledger.iso_currency ENUM.
    BillingHold:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
          enum:
            - PAYMENT_FAILED
          description: >-
            `PAYMENT_FAILED` is projected here for a dunning-backed card failure
            that remains unresolved. Internal cap-only holds are not projected
            because they have no pay-now recovery path. `PAYMENT_DISPUTED` (a
            chargeback) is reserved.
        reason:
          type: string
        createdAt:
          type: string
      required:
        - id
        - type
        - reason
        - createdAt
      additionalProperties: false
      description: >-
        An unresolved, dunning-backed payment hold. It is currently a
        billing-status signal: no production spend, campaign, subscription, or
        entitlement authorization path consumes it.
    BillingRateCard:
      type: object
      properties:
        type:
          nullable: true
          type: string
          enum:
            - STANDARD
            - CUSTOM
            - INHERITED
        rates:
          type: array
          items:
            type: object
            properties:
              customerRole:
                type: string
                enum:
                  - BUYER
                  - SELLER
              billingType:
                type: string
                enum:
                  - DECISIONED
                  - ROUTED
              pricingType:
                type: string
                enum:
                  - MARGIN
                  - UNIT
              feeRatePercent:
                nullable: true
                type: number
              unitPrice:
                nullable: true
                type: number
              unit:
                nullable: true
                type: string
                enum:
                  - CPM
                  - RECORD
                  - FLAT_RATE
              currency:
                nullable: true
                type: string
            required:
              - customerRole
              - billingType
              - pricingType
              - feeRatePercent
              - unitPrice
              - unit
              - currency
            additionalProperties: false
      required:
        - type
        - rates
      additionalProperties: false
    BillingIntelligenceUsage:
      type: object
      properties:
        periodStart:
          type: string
          description: Start of the current usage period (ISO 8601 date).
        byFeature:
          type: array
          items:
            type: object
            properties:
              bucket:
                type: string
              inputTokens:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              outputTokens:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              cacheCreationInputTokens:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              cacheReadInputTokens:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              costMicroUsd:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              costUsd:
                type: number
                minimum: 0
              callCount:
                type: integer
                minimum: 0
                maximum: 9007199254740991
            required:
              - bucket
              - inputTokens
              - outputTokens
              - cacheCreationInputTokens
              - cacheReadInputTokens
              - costMicroUsd
              - costUsd
              - callCount
            additionalProperties: false
        byDay:
          type: array
          items:
            type: object
            properties:
              bucket:
                type: string
              inputTokens:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              outputTokens:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              cacheCreationInputTokens:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              cacheReadInputTokens:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              costMicroUsd:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              costUsd:
                type: number
                minimum: 0
              callCount:
                type: integer
                minimum: 0
                maximum: 9007199254740991
            required:
              - bucket
              - inputTokens
              - outputTokens
              - cacheCreationInputTokens
              - cacheReadInputTokens
              - costMicroUsd
              - costUsd
              - callCount
            additionalProperties: false
        totalCostMicroUsd:
          type: integer
          minimum: 0
          maximum: 9007199254740991
      required:
        - periodStart
        - byFeature
        - byDay
        - totalCostMicroUsd
      additionalProperties: false
    CreditBalanceSummary:
      type: object
      properties:
        effectiveCustomerId:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: >-
            The credit-bearing customer the position is computed for (the
            caller, or its PARENT when the caller is a CHILD).
        currency:
          description: >-
            ISO 4217 currency every minor-unit field on this response is
            denominated in (the customer’s standing currency).
          allOf:
            - $ref: '#/components/schemas/LedgerCurrency'
        creditLimitMinor:
          type: string
          pattern: ^-?\d+$
          description: >-
            Scope3-granted credit ceiling in minor units (absolute, not
            monthly). `0` means the customer has no credit line (a null or zero
            `customer_standing.credit_limit`) — they must apply for credit or
            contact Scope3; only a positive value grants credit.
          example: '30000000'
        fundedBalanceMinor:
          type: string
          pattern: ^-?\d+$
          description: >-
            Prepaid funds Scope3 currently holds for the customer (the
            `buyer_funds` LIABILITY balance), in minor units. `0` when none.
          example: '10000000'
        owedBalanceMinor:
          type: string
          pattern: ^-?\d+$
          description: >-
            Amount the customer currently owes Scope3 on credit (the
            `buyer_accounts_receivable` ASSET balance), in minor units. `0` when
            none.
          example: '0'
        netBalanceMinor:
          type: string
          pattern: ^-?\d+$
          description: >-
            owed − funded, in minor units. Negative means the customer is net
            prepaid/in credit; positive means they have an outstanding balance.
          example: '-10000000'
        spendableMinor:
          type: string
          pattern: ^-?\d+$
          description: >-
            How much the customer can still spend: creditLimit + funded − owed,
            in minor units.
          example: '40000000'
        accounts:
          type: array
          items:
            $ref: '#/components/schemas/LedgerAccountBalance'
          description: >-
            Full per-account balance sheet for the customer (every financial
            account, by code). Empty when the customer has no ledger accounts
            yet.
      required:
        - effectiveCustomerId
        - currency
        - creditLimitMinor
        - fundedBalanceMinor
        - owedBalanceMinor
        - netBalanceMinor
        - spendableMinor
        - accounts
      additionalProperties: false
      description: >-
        A customer’s credit/prepay position: their ledger balance sheet plus the
        derived funded / owed / spendable figures, all in `currency` minor
        units.
    BillingOrgFinancialPosition:
      type: object
      properties:
        orgRootCustomerId:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        customerCount:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: >-
            How many customers (org root + active children) the rollup spans.
            The ids themselves are not projected — they duplicate `accounts[]`.
        currency:
          $ref: '#/components/schemas/LedgerCurrency'
        fundedMinor:
          type: string
        committedMinor:
          type: string
        creditLimitMinor:
          nullable: true
          type: string
        availableMinor:
          type: string
        overLimit:
          type: boolean
      required:
        - orgRootCustomerId
        - customerCount
        - currency
        - fundedMinor
        - committedMinor
        - creditLimitMinor
        - availableMinor
        - overLimit
      additionalProperties: false
      description: >-
        Org-wide rollup across the customer subtree (`getOrgFinancialPosition` —
        this read model is its first caller).
    BillingIuAccount:
      nullable: true
      description: >-
        IU (Intelligence Unit) account snapshot (AI-3079 slice 2a) — one pool
        per org, Seller Account and buyer usage combined. Null unless
        `iu-account-experience` is on for this org. Display-only: nothing here
        drives a charge (AI-3079 slice 2b).
      type: object
      properties:
        planKey:
          type: string
          enum:
            - metered
            - committed_1k
            - committed_3k
        isCustom:
          type: boolean
          description: >-
            True when accepted binding economics do not match a historical
            standard IU plan. Additive companion to the legacy-compatible
            planKey enum.
        commitmentMinor:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: >-
            Monthly recurring subscription amount in minor units of `currency`;
            independent of the included-IU allowance.
        currency:
          type: string
          enum:
            - USD
            - EUR
            - GBP
            - AUD
          description: >-
            Currency of commitmentMinor/perIuOverageMinor, frozen from the
            accepted Rate Card record (AI-3079 multi-currency ruling,
            2026-07-19). USD for an organization without accepted terms.
        perIuOverageMinor:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: >-
            Pay-as-you-go / overage rate in minor USD units. Uses the active
            accepted Rate Card snapshot when present; otherwise the unratified
            display default pending AI-3027.
        rolloverPolicy:
          nullable: true
          description: >-
            Accepted rollover terms for included IUs, or null when this plan
            does not roll over. Accepted values come from the immutable
            acceptance snapshot.
          type: object
          properties:
            capBasisPoints:
              type: integer
              minimum: 1
              maximum: 10000
            expiresAfterBillingPeriods:
              type: integer
              minimum: 0
              exclusiveMinimum: true
              maximum: 9007199254740991
          required:
            - capBasisPoints
            - expiresAfterBillingPeriods
          additionalProperties: false
        cycle:
          type: string
          description: Calendar-month cycle key, e.g. '2026-07'.
        cycleStart:
          type: string
        cycleEnd:
          type: string
        usedIus:
          type: number
          description: >-
            Rated, customer-bearer-only IU usage this cycle. Rated against
            accepted Rate Card activity terms when ratingTerms.source is
            "binding"; otherwise the UNRATIFIED default weights in
            iu-rating-config.ts.
        buckets:
          type: object
          properties:
            free:
              $ref: '#/components/schemas/IuBucketBalance'
            rollover:
              $ref: '#/components/schemas/IuBucketBalance'
            included:
              $ref: '#/components/schemas/IuBucketBalance'
            overage:
              $ref: '#/components/schemas/IuOverageStatus'
          required:
            - free
            - rollover
            - included
            - overage
          additionalProperties: false
        forecast:
          type: object
          properties:
            projectedIusThisCycle:
              type: number
              description: Linear run-rate projection of total IUs by cycle end.
            projectedOverageMinor:
              type: integer
              minimum: -9007199254740991
              maximum: 9007199254740991
          required:
            - projectedIusThisCycle
            - projectedOverageMinor
          additionalProperties: false
        ratingTerms:
          $ref: '#/components/schemas/BillingIuAccountRatingTerms'
      required:
        - planKey
        - isCustom
        - commitmentMinor
        - currency
        - perIuOverageMinor
        - rolloverPolicy
        - cycle
        - cycleStart
        - cycleEnd
        - usedIus
        - buckets
        - forecast
        - ratingTerms
      additionalProperties: false
    BillingIuActivityUsage:
      type: object
      properties:
        periodStart:
          type: string
        periodEnd:
          type: string
        totalIus:
          type: number
          minimum: 0
        byActivity:
          type: array
          items:
            type: object
            properties:
              activityCode:
                type: string
              displayName:
                type: string
              ius:
                type: number
                minimum: 0
                exclusiveMinimum: true
            required:
              - activityCode
              - displayName
              - ius
            additionalProperties: false
        byDay:
          type: array
          items:
            type: object
            properties:
              date:
                type: string
              ius:
                type: number
                minimum: 0
                exclusiveMinimum: true
            required:
              - date
              - ius
            additionalProperties: false
      required:
        - periodStart
        - periodEnd
        - totalIus
        - byActivity
        - byDay
      additionalProperties: false
      description: >-
        Customer IU consumption by canonical activity and UTC day. This is rated
        from the same customer-bearer activity events as usedIus; it is not
        provider-cost telemetry.
    BillingBillingInfo:
      type: object
      properties:
        contactName:
          nullable: true
          description: Billing contact / payer name
          type: string
        email:
          type: array
          items:
            type: string
          description: Email addresses invoices are sent to
        ccEmails:
          type: array
          items:
            type: string
          description: Email addresses CC’d on invoices
        phone:
          nullable: true
          description: Billing phone number
          type: string
        address:
          nullable: true
          description: Billing street address, line 1
          type: string
        address2:
          nullable: true
          description: Billing street address, line 2
          type: string
        city:
          nullable: true
          description: Billing city
          type: string
        region:
          nullable: true
          description: Billing state/province/region
          type: string
        postalCode:
          nullable: true
          description: Billing postal/ZIP code
          type: string
        countryAlpha2:
          nullable: true
          description: Billing country (ISO 3166-1 alpha-2)
          type: string
        taxId:
          nullable: true
          description: Tax/VAT identifier shown on invoices
          type: string
        visibility:
          type: string
          enum:
            - visible
            - redacted
          description: >-
            `redacted` for an org-scoped service-token caller: payment-detail
            fields (`redactedFields`) are elided — scalar fields are nulled,
            array fields (`email`, `ccEmails`) are emptied to `[]` — so an agent
            can tell "not allowed" from "empty".
        redactedFields:
          type: array
          items:
            type: string
      required:
        - contactName
        - email
        - ccEmails
        - phone
        - address
        - address2
        - city
        - region
        - postalCode
        - countryAlpha2
        - taxId
        - visibility
        - redactedFields
      additionalProperties: false
    BillingPaymentMethod:
      nullable: true
      description: >-
        The org’s active card-rail payment method (AI-3078). Null until one is
        added — never a PAN, never a PSP token.
      type: object
      properties:
        kind:
          type: string
          enum:
            - CARD
        brand:
          nullable: true
          type: string
        last4:
          nullable: true
          type: string
        expiresMonth:
          nullable: true
          type: integer
          minimum: 1
          maximum: 12
        expiresYear:
          nullable: true
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        status:
          type: string
          enum:
            - pending_verification
            - verified
            - detached
      required:
        - kind
        - brand
        - last4
        - expiresMonth
        - expiresYear
        - status
      additionalProperties: false
    BillingStorefrontBillingSummary:
      nullable: true
      description: >-
        Commercial-terms summary only — null for an org with no seller role.
        Payout bank details stay on their own surface (AI-2832), never
        duplicated here.
      type: object
      properties:
        onboardingStatus:
          type: string
          enum:
            - pending
            - complete
        platformFeePercent:
          nullable: true
          type: number
        currency:
          nullable: true
          type: string
        defaultNetDays:
          nullable: true
          type: number
      required:
        - onboardingStatus
        - platformFeePercent
        - currency
        - defaultNetDays
      additionalProperties: false
    CreditApplicationResponseV2:
      type: object
      properties:
        id:
          type: string
          description: Surrogate id of the application row (BIGINT serialized as string).
          example: '42'
        customerId:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: >-
            Credit-bearing customer the application is for (PARENT or
            STANDALONE).
        customerName:
          nullable: true
          description: >-
            Display name of the applicant account (company name, falling back to
            the customer's name). Resolved server-side from the core customer
            record; null on buyer-facing reads or when the customer cannot be
            resolved.
          type: string
        requestedCreditLimit:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: Requested limit in currency minor units.
        requestedPaymentTerms:
          nullable: true
          description: >-
            Post-pay terms requested by the buyer. Null only for applications
            created before payment terms were collected.
          type: string
          enum:
            - net_15
            - net_30
            - net_45
            - net_60
            - net_90
        currency:
          type: string
          description: ISO 4217 currency of the limits on this application.
        status:
          type: string
          enum:
            - PENDING
            - COUNTEROFFERED
            - APPROVED
            - REJECTED
            - WITHDRAWN
          description: >-
            Lifecycle state. `PENDING` until review; `COUNTEROFFERED` when
            Scope3 proposes a different limit or payment term and awaits buyer
            acceptance; `APPROVED` once the agreed standing is effective;
            `REJECTED` when declined; `WITHDRAWN` when the applicant pulls an
            open request.
        justification:
          nullable: true
          description: Free-text context supplied on submit. Null when not given.
          type: string
        grantedCreditLimit:
          nullable: true
          description: >-
            Limit granted on approval or proposed in a counteroffer, in currency
            minor units. Null until review.
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        grantedPaymentTerms:
          nullable: true
          description: >-
            Terms granted on approval or proposed in a counteroffer. Null until
            review.
          type: string
          enum:
            - net_15
            - net_30
            - net_45
            - net_60
            - net_90
        acceptedBy:
          nullable: true
          description: >-
            Buyer user id that explicitly accepted a counteroffer. Null for
            direct approvals and service-token acceptances; `acceptedAt` still
            records service-token acceptance.
          type: string
        acceptedAt:
          nullable: true
          description: >-
            When the buyer accepted a counteroffer. Null when no acceptance was
            required.
          type: string
          format: date-time
          pattern: >-
            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
        reviewedBy:
          nullable: true
          description: >-
            User id of the superadmin who decided (BIGINT serialized as string).
            Null while pending.
          type: string
        reviewerName:
          nullable: true
          description: >-
            Display name (or email) of the superadmin who decided, resolved
            server-side from the core user record. Null while pending, on
            buyer-facing reads, or when the reviewer cannot be resolved.
          type: string
        reviewedAt:
          nullable: true
          description: When the decision was recorded (ISO 8601). Null while pending.
          type: string
          format: date-time
          pattern: >-
            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
        reviewerNotes:
          nullable: true
          description: Superadmin note attached to the decision. Null while pending.
          type: string
        createdAt:
          type: string
          format: date-time
          pattern: >-
            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
          description: When the application was submitted (ISO 8601).
        updatedAt:
          type: string
          format: date-time
          pattern: >-
            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
          description: When the row was last modified (ISO 8601).
      required:
        - id
        - customerId
        - customerName
        - requestedCreditLimit
        - requestedPaymentTerms
        - currency
        - status
        - justification
        - grantedCreditLimit
        - grantedPaymentTerms
        - acceptedBy
        - acceptedAt
        - reviewedBy
        - reviewerName
        - reviewedAt
        - reviewerNotes
        - createdAt
        - updatedAt
      additionalProperties: false
      description: >-
        A versioned credit application with explicit counteroffer lifecycle
        state.
    BillingDeposit:
      type: object
      properties:
        id:
          type: string
          description: Ledger journal-entry id of the deposit.
        amountMinor:
          type: string
          description: Deposit amount credited to the org’s funds, minor units as a string.
        currency:
          type: string
        occurredAt:
          type: string
          description: When the deposit took effect (ISO 8601).
        status:
          type: string
          enum:
            - POSTED
            - REVERSED
        provider:
          nullable: true
          description: Payment provider recorded on the deposit, when known.
          type: string
        reference:
          nullable: true
          description: >-
            The payment reference supplied when the deposit was recorded (e.g. a
            wire reference).
          type: string
      required:
        - id
        - amountMinor
        - currency
        - occurredAt
        - status
        - provider
        - reference
      additionalProperties: false
      description: >-
        One prepay deposit, projected read-only from the ledger’s DEPOSIT
        journal entries.
    BillingAgreement:
      type: object
      properties:
        contractId:
          nullable: true
          type: string
        status:
          type: string
          enum:
            - active
            - no_contract
            - inherited_active
            - inherited_hidden
            - organization_contract_missing
            - awaiting_acceptance
        agreementKind:
          nullable: true
          type: string
          enum:
            - STANDARD_TOS
            - CUSTOM_CONTRACT
            - AAA
        effectiveDate:
          nullable: true
          type: string
        endDate:
          nullable: true
          type: string
        acceptedAt:
          nullable: true
          type: string
        acceptedByEmail:
          nullable: true
          type: string
      required:
        - contractId
        - status
        - agreementKind
        - effectiveDate
        - endDate
        - acceptedAt
        - acceptedByEmail
      additionalProperties: false
    BillingEnterpriseCommercialState:
      type: object
      properties:
        billingCustomerId:
          type: integer
          minimum: 0
          exclusiveMinimum: true
          maximum: 9007199254740991
        eligible:
          type: boolean
        eligibleWorkloads:
          type: array
          items:
            type: string
            enum:
              - BUYER
              - STOREFRONT
              - PARTNER
        commercialStatus:
          type: string
          enum:
            - FREE
            - PAID
        offer:
          nullable: true
          type: object
          properties:
            offerVersion:
              type: string
              pattern: ^v1:[0-9a-f]{64}$
            entitlementBundle:
              default: null
              nullable: true
              allOf:
                - $ref: '#/components/schemas/CommercialEntitlementBundleSnapshot'
            supportPackage:
              default: null
              nullable: true
              anyOf:
                - oneOf:
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 1
                        kind:
                          type: string
                          enum:
                            - UNLIMITED_NAMED_SUPPORT
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                      additionalProperties: false
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 1
                        kind:
                          type: string
                          enum:
                            - NAMED_SUPPORT_PACKAGE
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                        includedHoursPerMonth:
                          type: number
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 744
                        additionalHourIus:
                          type: number
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 1000000
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                        - includedHoursPerMonth
                        - additionalHourIus
                      additionalProperties: false
                  type: object
                - oneOf:
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 2
                        kind:
                          type: string
                          enum:
                            - UNLIMITED_NAMED_SUPPORT
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                      additionalProperties: false
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 2
                        kind:
                          type: string
                          enum:
                            - NAMED_SUPPORT_PACKAGE
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                        includedHoursPerMonth:
                          type: number
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 744
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                        - includedHoursPerMonth
                      additionalProperties: false
                  type: object
            proposal:
              default: null
              nullable: true
              oneOf:
                - type: object
                  properties:
                    schemaVersion:
                      type: number
                      enum:
                        - 1
                    documentTitle:
                      type: string
                      minLength: 1
                      maxLength: 160
                    executiveSummary:
                      type: string
                      minLength: 1
                      maxLength: 5000
                    scope:
                      type: object
                      properties:
                        included:
                          minItems: 1
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                        exclusions:
                          default: []
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                      required:
                        - included
                        - exclusions
                      additionalProperties: false
                    term:
                      type: object
                      properties:
                        serviceStart:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - ON_ACCEPTANCE
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - FIXED_DATE
                                date:
                                  type: string
                                  format: date
                                  pattern: >-
                                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                              required:
                                - kind
                                - date
                              additionalProperties: false
                          type: object
                        initialTermMonths:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 120
                        renewal:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - NO_AUTOMATIC_RENEWAL
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - AUTOMATIC
                                renewalTermMonths:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 120
                                nonRenewalNoticeDays:
                                  type: integer
                                  minimum: 0
                                  maximum: 365
                              required:
                                - kind
                                - renewalTermMonths
                                - nonRenewalNoticeDays
                              additionalProperties: false
                          type: object
                        terminationForConvenience:
                          nullable: true
                          type: object
                          properties:
                            noticeDays:
                              type: integer
                              minimum: 0
                              maximum: 365
                          required:
                            - noticeDays
                          additionalProperties: false
                      required:
                        - serviceStart
                        - initialTermMonths
                        - renewal
                        - terminationForConvenience
                      additionalProperties: false
                    paymentOptions:
                      minItems: 1
                      maxItems: 4
                      type: array
                      items:
                        oneOf:
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - MONTHLY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              monthlyAmountMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - monthlyAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - TERM_PREPAY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              prepaidAmountMinor:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - prepaidAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                        type: object
                    templateKey:
                      type: string
                      enum:
                        - ENTERPRISE_V1
                        - PARTNER_ENTERPRISE_V1
                    organizationNameAtIssue:
                      type: string
                      minLength: 1
                      maxLength: 160
                  required:
                    - schemaVersion
                    - documentTitle
                    - executiveSummary
                    - scope
                    - term
                    - paymentOptions
                    - templateKey
                    - organizationNameAtIssue
                  additionalProperties: false
                - type: object
                  properties:
                    schemaVersion:
                      type: number
                      enum:
                        - 2
                    documentTitle:
                      type: string
                      minLength: 1
                      maxLength: 160
                    executiveSummary:
                      type: string
                      minLength: 1
                      maxLength: 5000
                    scope:
                      type: object
                      properties:
                        included:
                          minItems: 1
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                        exclusions:
                          default: []
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                      required:
                        - included
                        - exclusions
                      additionalProperties: false
                    term:
                      type: object
                      properties:
                        serviceStart:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - ON_ACCEPTANCE
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - FIXED_DATE
                                date:
                                  type: string
                                  format: date
                                  pattern: >-
                                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                              required:
                                - kind
                                - date
                              additionalProperties: false
                          type: object
                        initialTermMonths:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 120
                        renewal:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - NO_AUTOMATIC_RENEWAL
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - AUTOMATIC
                                renewalTermMonths:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 120
                                nonRenewalNoticeDays:
                                  type: integer
                                  minimum: 0
                                  maximum: 365
                              required:
                                - kind
                                - renewalTermMonths
                                - nonRenewalNoticeDays
                              additionalProperties: false
                          type: object
                        terminationForConvenience:
                          nullable: true
                          type: object
                          properties:
                            noticeDays:
                              type: integer
                              minimum: 0
                              maximum: 365
                          required:
                            - noticeDays
                          additionalProperties: false
                      required:
                        - serviceStart
                        - initialTermMonths
                        - renewal
                        - terminationForConvenience
                      additionalProperties: false
                    paymentOptions:
                      minItems: 1
                      maxItems: 4
                      type: array
                      items:
                        oneOf:
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - MONTHLY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              monthlyAmountMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - monthlyAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - TERM_PREPAY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              prepaidAmountMinor:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - prepaidAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                        type: object
                    defaultPaymentOptionKey:
                      type: string
                      minLength: 1
                      maxLength: 120
                      pattern: ^[a-z0-9][a-z0-9._-]*$
                    planOrigin:
                      type: object
                      properties:
                        rateCardId:
                          type: string
                          pattern: ^\d+$
                        rateCardPublicVersion:
                          type: string
                          minLength: 1
                          maxLength: 80
                        planId:
                          type: string
                          pattern: ^\d+$
                        planCode:
                          type: string
                          pattern: ^[A-Z][A-Z0-9_]{1,63}$
                      required:
                        - rateCardId
                        - rateCardPublicVersion
                        - planId
                        - planCode
                      additionalProperties: false
                    customization:
                      oneOf:
                        - type: object
                          properties:
                            posture:
                              type: string
                              enum:
                                - EXACT
                          required:
                            - posture
                          additionalProperties: false
                        - type: object
                          properties:
                            posture:
                              type: string
                              enum:
                                - CUSTOMIZED
                            reason:
                              type: string
                              minLength: 10
                              maxLength: 1000
                          required:
                            - posture
                            - reason
                          additionalProperties: false
                      type: object
                    organizationNameAtIssue:
                      type: string
                      minLength: 1
                      maxLength: 160
                  required:
                    - schemaVersion
                    - documentTitle
                    - executiveSummary
                    - scope
                    - term
                    - paymentOptions
                    - defaultPaymentOptionKey
                    - planOrigin
                    - customization
                    - organizationNameAtIssue
                  additionalProperties: false
              type: object
            serviceStart:
              anyOf:
                - type: string
                  enum:
                    - ON_ACCEPTANCE
                - type: object
                  properties:
                    kind:
                      type: string
                      enum:
                        - FIXED_DATE
                    date:
                      type: string
                      format: date
                      pattern: >-
                        ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                  required:
                    - kind
                    - date
                  additionalProperties: false
            initialTermMonths:
              type: integer
              minimum: 1
              maximum: 120
            activityTerms:
              type: array
              items:
                type: object
                properties:
                  activityCode:
                    type: string
                    enum:
                      - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                  displayName:
                    type: string
                    minLength: 1
                    maxLength: 120
                  iuAmountMilli:
                    type: integer
                    minimum: 1
                    maximum: 2147483647
                  billingPeriodMonths:
                    type: number
                    enum:
                      - 1
                  includedBackfillMonths:
                    type: integer
                    minimum: 0
                    maximum: 120
                required:
                  - activityCode
                  - displayName
                  - iuAmountMilli
                  - billingPeriodMonths
                  - includedBackfillMonths
                additionalProperties: false
            activitySchedule:
              $ref: '#/components/schemas/IuRateCardActivityScheduleResponse'
            effectiveRateCard:
              type: object
              properties:
                version:
                  type: string
                  pattern: ^erc-v1:[0-9a-f]{64}$
                visibility:
                  type: string
                  enum:
                    - PUBLIC
                    - PRIVATE
                displayName:
                  type: string
                  minLength: 1
                  maxLength: 160
                adjustmentSource:
                  type: string
                  enum:
                    - RATE_CARD_DEFAULT
                    - LEGACY_DISCOUNT
                    - DIRECT
                    - PROMOTION_CODE
                    - REFERRAL_CODE
                renewalBehavior:
                  default: PIN_EXACT
                  type: string
                  enum:
                    - PIN_EXACT
                    - REVIEW_REQUIRED
                adjustments:
                  type: object
                  properties:
                    price:
                      default: null
                      nullable: true
                      oneOf:
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - PERCENT
                            basisPoints:
                              type: integer
                              minimum: 1
                              maximum: 9999
                          required:
                            - kind
                            - basisPoints
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - PACKAGE
                            monthlyCommitmentMinor:
                              type: integer
                              minimum: 0
                              maximum: 9007199254740991
                            includedIus:
                              type: integer
                              minimum: 0
                              maximum: 9007199254740991
                            overageUnitAmountMinor:
                              type: integer
                              minimum: 0
                              maximum: 9007199254740991
                            currency:
                              default: USD
                              type: string
                              enum:
                                - USD
                                - EUR
                                - GBP
                                - AUD
                          required:
                            - kind
                            - monthlyCommitmentMinor
                            - includedIus
                            - overageUnitAmountMinor
                            - currency
                          additionalProperties: false
                      type: object
                    platform:
                      default: null
                      nullable: true
                      type: object
                      properties:
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                        monthlyFeeMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        currency:
                          type: string
                          enum:
                            - USD
                            - EUR
                            - GBP
                            - AUD
                        entitlementBundleKey:
                          type: string
                          minLength: 1
                          maxLength: 120
                          pattern: ^[a-z0-9][a-z0-9._-]*$
                      required:
                        - displayName
                        - monthlyFeeMinor
                        - currency
                        - entitlementBundleKey
                      additionalProperties: false
                    activityTerms:
                      default: []
                      type: array
                      items:
                        type: object
                        properties:
                          activityCode:
                            anyOf:
                              - type: string
                                enum:
                                  - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                                  - SIMPLE_PROPOSAL_EVALUATION
                                  - COMPLEX_PROPOSAL_EVALUATION
                                  - MERCHANDISING_BRIEF_RESPONSE
                                  - MURPH_AI_SUPPORT_SESSION
                                  - HUMAN_EXPERT_SUPPORT_HOUR
                                  - GENERATED_IMAGE
                                  - GENERATED_VIDEO_SECONDS
                                  - ANALYZE_ACCOUNT
                                  - CAMPAIGN_OPTIMIZATION_MONTH
                                  - MANAGED_MEDIA_BUY_MONTH
                                  - STANDARD_DOCUMENT_UNDERSTANDING
                                  - LARGE_DOCUMENT_UNDERSTANDING
                                  - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                                  - CUSTOM_BIGQUERY_GIB
                                  - MODULAR_SOURCE_MANAGEMENT_MONTH
                                  - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                                  - COMPLETED_INTERCHANGE_MERCHANDISING_CYCLE
                                  - SOCIAL_ACCOUNT_INTELLIGENCE_BILLING_PERIOD
                                  - INTERCHANGE_MEDIA_BUY_BILLING_PERIOD
                              - type: string
                                enum:
                                  - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                                  - MULTI_SELLER_PRODUCT_RANKING
                                  - PROPOSAL_EVALUATION_PASS
                                  - COMPARATIVE_PROPOSAL_RANKING_PASS
                                  - MURPH_WORKING_SESSION
                                  - SIMPLE_PROPOSAL_EVALUATION
                                  - COMPLEX_PROPOSAL_EVALUATION
                                  - MERCHANDISING_BRIEF_RESPONSE
                                  - MURPH_AI_SUPPORT_SESSION
                                  - HUMAN_EXPERT_SUPPORT_HOUR
                                  - GENERATED_IMAGE
                                  - GENERATED_VIDEO_SECONDS
                                  - ANALYZE_ACCOUNT
                                  - CAMPAIGN_OPTIMIZATION_MONTH
                                  - MANAGED_MEDIA_BUY_MONTH
                                  - STANDARD_DOCUMENT_UNDERSTANDING
                                  - LARGE_DOCUMENT_UNDERSTANDING
                                  - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                                  - CUSTOM_BIGQUERY_GIB
                                  - MODULAR_SOURCE_MANAGEMENT_MONTH
                                  - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                          displayName:
                            type: string
                            minLength: 1
                            maxLength: 120
                          billingPosture:
                            type: string
                            enum:
                              - INCLUDED
                              - IU_PRICE
                          iuAmountMilli:
                            nullable: true
                            type: integer
                            minimum: 0
                            exclusiveMinimum: true
                            maximum: 9007199254740991
                        required:
                          - activityCode
                          - displayName
                          - billingPosture
                          - iuAmountMilli
                        additionalProperties: false
                    setupCredit:
                      default: null
                      nullable: true
                      type: object
                      properties:
                        program:
                          type: string
                          enum:
                            - STOREFRONT_SETUP
                      required:
                        - program
                      additionalProperties: false
                  required:
                    - price
                    - platform
                    - activityTerms
                    - setupCredit
                  additionalProperties: false
                rateCardSnapshot:
                  default: null
                  nullable: true
                  type: object
                  properties:
                    schemaVersion:
                      type: number
                      enum:
                        - 1
                    activityCatalogVersion:
                      anyOf:
                        - type: number
                          enum:
                            - 0
                        - type: number
                          enum:
                            - 1
                        - type: number
                          enum:
                            - 2
                        - type: number
                          enum:
                            - 3
                        - type: number
                          enum:
                            - 4
                    plan:
                      type: object
                      properties:
                        planCode:
                          type: string
                        displayName:
                          type: string
                        displayOrder:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        visibility:
                          type: string
                          enum:
                            - PUBLIC
                            - PRIVATE
                        publicListingApplicability:
                          default:
                            products:
                              - BUYER
                              - PARTNER
                              - SELLER
                          type: object
                          properties:
                            products:
                              minItems: 1
                              maxItems: 3
                              type: array
                              items:
                                type: string
                                enum:
                                  - BUYER
                                  - SELLER
                                  - PARTNER
                            requiredProducts:
                              minItems: 1
                              maxItems: 3
                              type: array
                              items:
                                type: string
                                enum:
                                  - BUYER
                                  - SELLER
                                  - PARTNER
                            sellerProducts:
                              minItems: 1
                              maxItems: 2
                              type: array
                              items:
                                type: string
                                enum:
                                  - LISTING_ONLY
                                  - AGENTIC_MEDIA_COMPANY
                          required:
                            - products
                          additionalProperties: false
                        monthlyCommitmentMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        includedIus:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        overageUnitAmountMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        currency:
                          type: string
                          enum:
                            - USD
                        billingPeriodMonths:
                          type: number
                          enum:
                            - 1
                        commitmentBillingTiming:
                          type: string
                          enum:
                            - PERIOD_START
                        usageBillingTiming:
                          type: string
                          enum:
                            - PERIOD_END
                        resetInterval:
                          type: string
                          enum:
                            - MONTH
                        rolloverPolicy:
                          nullable: true
                          type: object
                          properties:
                            capBasisPoints:
                              type: integer
                              minimum: 1
                              maximum: 5000
                            expiresAfterBillingPeriods:
                              type: number
                              enum:
                                - 1
                          required:
                            - capBasisPoints
                            - expiresAfterBillingPeriods
                          additionalProperties: false
                        paymentTermsDays:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 9007199254740991
                        renewalPosture:
                          type: string
                          enum:
                            - STANDARD_ROLLING
                            - PINNED
                        prices:
                          type: array
                          items:
                            type: object
                            properties:
                              currency:
                                type: string
                                enum:
                                  - EUR
                                  - GBP
                                  - AUD
                              monthlyCommitmentMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              overageUnitAmountMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                            required:
                              - currency
                              - monthlyCommitmentMinor
                              - overageUnitAmountMinor
                            additionalProperties: false
                      required:
                        - planCode
                        - displayName
                        - displayOrder
                        - visibility
                        - publicListingApplicability
                        - monthlyCommitmentMinor
                        - includedIus
                        - overageUnitAmountMinor
                        - currency
                        - billingPeriodMonths
                        - commitmentBillingTiming
                        - usageBillingTiming
                        - resetInterval
                        - rolloverPolicy
                        - paymentTermsDays
                        - renewalPosture
                        - prices
                      additionalProperties: false
                    activityTerms:
                      $ref: '#/components/schemas/IuRateCardActivityScheduleResponse'
                    setupGrant:
                      nullable: true
                      type: object
                      properties:
                        grantedIus:
                          default: 100
                          type: integer
                          minimum: 1
                          maximum: 1000000
                        validForDays:
                          default: 60
                          type: integer
                          minimum: 1
                          maximum: 3650
                        rolloverEnabled:
                          default: false
                          type: boolean
                          enum:
                            - false
                        automatic:
                          default: true
                          type: boolean
                          enum:
                            - true
                      required:
                        - grantedIus
                        - validForDays
                        - rolloverEnabled
                        - automatic
                      additionalProperties: false
                    source:
                      type: object
                      properties:
                        rateCardPublicVersion:
                          type: string
                          minLength: 1
                          maxLength: 80
                      required:
                        - rateCardPublicVersion
                      additionalProperties: false
                  required:
                    - schemaVersion
                    - activityCatalogVersion
                    - plan
                    - activityTerms
                    - setupGrant
                    - source
                  additionalProperties: false
              required:
                - version
                - visibility
                - displayName
                - adjustmentSource
                - renewalBehavior
                - adjustments
                - rateCardSnapshot
              additionalProperties: false
            rateCard:
              type: object
              properties:
                name:
                  type: string
                publicVersion:
                  type: string
                effectiveDate:
                  type: string
                  format: date-time
                  pattern: >-
                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                endDate:
                  nullable: true
                  type: string
                  format: date-time
                  pattern: >-
                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                publishedAt:
                  type: string
                  format: date-time
                  pattern: >-
                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
              required:
                - name
                - publicVersion
                - effectiveDate
                - endDate
                - publishedAt
              additionalProperties: false
            agreement:
              type: object
              properties:
                kind:
                  type: string
                  enum:
                    - STANDARD_TOS
                    - CUSTOM_CONTRACT
                    - AAA
                tosVersion:
                  nullable: true
                  type: string
                termsUrl:
                  nullable: true
                  type: string
                  pattern: ^https?:\/\/
                acceptedAt:
                  nullable: true
                  type: string
                  format: date-time
                  pattern: >-
                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
              required:
                - kind
                - tosVersion
                - termsUrl
                - acceptedAt
              additionalProperties: false
            discount:
              nullable: true
              type: object
              properties:
                basisPoints:
                  type: integer
                  minimum: 1
                  maximum: 9999
                percent:
                  type: number
                  minimum: 0
                  exclusiveMinimum: true
                  maximum: 99.99
                effectiveDate:
                  type: string
                  format: date-time
                  pattern: >-
                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                endDate:
                  nullable: true
                  type: string
                  format: date-time
                  pattern: >-
                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
              required:
                - basisPoints
                - percent
                - effectiveDate
                - endDate
              additionalProperties: false
            plans:
              minItems: 1
              type: array
              items:
                type: object
                properties:
                  planCode:
                    type: string
                  displayName:
                    type: string
                  displayOrder:
                    type: integer
                    minimum: 0
                    maximum: 9007199254740991
                  includedIus:
                    type: integer
                    minimum: 0
                    maximum: 9007199254740991
                  currency:
                    type: string
                    enum:
                      - USD
                      - EUR
                      - GBP
                      - AUD
                  billingPeriodMonths:
                    type: number
                    enum:
                      - 1
                  commitmentBillingTiming:
                    type: string
                    enum:
                      - PERIOD_START
                  usageBillingTiming:
                    type: string
                    enum:
                      - PERIOD_END
                  resetInterval:
                    type: string
                    enum:
                      - MONTH
                  rolloverPolicy:
                    nullable: true
                    type: object
                    properties:
                      capBasisPoints:
                        type: integer
                        minimum: 1
                        maximum: 5000
                      expiresAfterBillingPeriods:
                        type: number
                        enum:
                          - 1
                    required:
                      - capBasisPoints
                      - expiresAfterBillingPeriods
                    additionalProperties: false
                  paymentTermsDays:
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 9007199254740991
                  renewalPosture:
                    type: string
                    enum:
                      - STANDARD_ROLLING
                      - PINNED
                  pricing:
                    type: object
                    properties:
                      listCommitmentMinor:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                      listOverageUnitAmountMinor:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                      discountBasisPoints:
                        type: integer
                        minimum: 0
                        maximum: 9999
                      netCommitmentMinor:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                      netOverageUnitAmountMinor:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                    required:
                      - listCommitmentMinor
                      - listOverageUnitAmountMinor
                      - discountBasisPoints
                      - netCommitmentMinor
                      - netOverageUnitAmountMinor
                    additionalProperties: false
                required:
                  - planCode
                  - displayName
                  - displayOrder
                  - includedIus
                  - currency
                  - billingPeriodMonths
                  - commitmentBillingTiming
                  - usageBillingTiming
                  - resetInterval
                  - rolloverPolicy
                  - paymentTermsDays
                  - renewalPosture
                  - pricing
                additionalProperties: false
          required:
            - offerVersion
            - entitlementBundle
            - supportPackage
            - proposal
            - serviceStart
            - initialTermMonths
            - activityTerms
            - activitySchedule
            - rateCard
            - agreement
            - discount
            - plans
          additionalProperties: false
        currentBinding:
          nullable: true
          type: object
          properties:
            id:
              type: string
              pattern: ^\d+$
            agreementKind:
              type: string
              enum:
                - STANDARD_TOS
                - CUSTOM_CONTRACT
                - AAA
            tosVersion:
              nullable: true
              type: string
            rateCardPublicVersion:
              type: string
            planCode:
              type: string
            planName:
              type: string
            renewalPosture:
              type: string
              enum:
                - STANDARD_ROLLING
                - PINNED
            predecessorBindingId:
              nullable: true
              type: string
              pattern: ^\d+$
            offerVersion:
              type: string
              minLength: 1
            entitlementBundle:
              default: null
              nullable: true
              allOf:
                - $ref: '#/components/schemas/CommercialEntitlementBundleSnapshot'
            supportPackage:
              default: null
              nullable: true
              anyOf:
                - oneOf:
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 1
                        kind:
                          type: string
                          enum:
                            - UNLIMITED_NAMED_SUPPORT
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                      additionalProperties: false
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 1
                        kind:
                          type: string
                          enum:
                            - NAMED_SUPPORT_PACKAGE
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                        includedHoursPerMonth:
                          type: number
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 744
                        additionalHourIus:
                          type: number
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 1000000
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                        - includedHoursPerMonth
                        - additionalHourIus
                      additionalProperties: false
                  type: object
                - oneOf:
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 2
                        kind:
                          type: string
                          enum:
                            - UNLIMITED_NAMED_SUPPORT
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                      additionalProperties: false
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 2
                        kind:
                          type: string
                          enum:
                            - NAMED_SUPPORT_PACKAGE
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                        includedHoursPerMonth:
                          type: number
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 744
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                        - includedHoursPerMonth
                      additionalProperties: false
                  type: object
            proposal:
              default: null
              nullable: true
              oneOf:
                - type: object
                  properties:
                    schemaVersion:
                      type: number
                      enum:
                        - 1
                    documentTitle:
                      type: string
                      minLength: 1
                      maxLength: 160
                    executiveSummary:
                      type: string
                      minLength: 1
                      maxLength: 5000
                    scope:
                      type: object
                      properties:
                        included:
                          minItems: 1
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                        exclusions:
                          default: []
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                      required:
                        - included
                        - exclusions
                      additionalProperties: false
                    term:
                      type: object
                      properties:
                        serviceStart:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - ON_ACCEPTANCE
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - FIXED_DATE
                                date:
                                  type: string
                                  format: date
                                  pattern: >-
                                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                              required:
                                - kind
                                - date
                              additionalProperties: false
                          type: object
                        initialTermMonths:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 120
                        renewal:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - NO_AUTOMATIC_RENEWAL
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - AUTOMATIC
                                renewalTermMonths:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 120
                                nonRenewalNoticeDays:
                                  type: integer
                                  minimum: 0
                                  maximum: 365
                              required:
                                - kind
                                - renewalTermMonths
                                - nonRenewalNoticeDays
                              additionalProperties: false
                          type: object
                        terminationForConvenience:
                          nullable: true
                          type: object
                          properties:
                            noticeDays:
                              type: integer
                              minimum: 0
                              maximum: 365
                          required:
                            - noticeDays
                          additionalProperties: false
                      required:
                        - serviceStart
                        - initialTermMonths
                        - renewal
                        - terminationForConvenience
                      additionalProperties: false
                    paymentOptions:
                      minItems: 1
                      maxItems: 4
                      type: array
                      items:
                        oneOf:
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - MONTHLY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              monthlyAmountMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - monthlyAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - TERM_PREPAY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              prepaidAmountMinor:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - prepaidAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                        type: object
                    templateKey:
                      type: string
                      enum:
                        - ENTERPRISE_V1
                        - PARTNER_ENTERPRISE_V1
                    organizationNameAtIssue:
                      type: string
                      minLength: 1
                      maxLength: 160
                  required:
                    - schemaVersion
                    - documentTitle
                    - executiveSummary
                    - scope
                    - term
                    - paymentOptions
                    - templateKey
                    - organizationNameAtIssue
                  additionalProperties: false
                - type: object
                  properties:
                    schemaVersion:
                      type: number
                      enum:
                        - 2
                    documentTitle:
                      type: string
                      minLength: 1
                      maxLength: 160
                    executiveSummary:
                      type: string
                      minLength: 1
                      maxLength: 5000
                    scope:
                      type: object
                      properties:
                        included:
                          minItems: 1
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                        exclusions:
                          default: []
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                      required:
                        - included
                        - exclusions
                      additionalProperties: false
                    term:
                      type: object
                      properties:
                        serviceStart:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - ON_ACCEPTANCE
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - FIXED_DATE
                                date:
                                  type: string
                                  format: date
                                  pattern: >-
                                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                              required:
                                - kind
                                - date
                              additionalProperties: false
                          type: object
                        initialTermMonths:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 120
                        renewal:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - NO_AUTOMATIC_RENEWAL
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - AUTOMATIC
                                renewalTermMonths:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 120
                                nonRenewalNoticeDays:
                                  type: integer
                                  minimum: 0
                                  maximum: 365
                              required:
                                - kind
                                - renewalTermMonths
                                - nonRenewalNoticeDays
                              additionalProperties: false
                          type: object
                        terminationForConvenience:
                          nullable: true
                          type: object
                          properties:
                            noticeDays:
                              type: integer
                              minimum: 0
                              maximum: 365
                          required:
                            - noticeDays
                          additionalProperties: false
                      required:
                        - serviceStart
                        - initialTermMonths
                        - renewal
                        - terminationForConvenience
                      additionalProperties: false
                    paymentOptions:
                      minItems: 1
                      maxItems: 4
                      type: array
                      items:
                        oneOf:
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - MONTHLY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              monthlyAmountMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - monthlyAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - TERM_PREPAY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              prepaidAmountMinor:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - prepaidAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                        type: object
                    defaultPaymentOptionKey:
                      type: string
                      minLength: 1
                      maxLength: 120
                      pattern: ^[a-z0-9][a-z0-9._-]*$
                    planOrigin:
                      type: object
                      properties:
                        rateCardId:
                          type: string
                          pattern: ^\d+$
                        rateCardPublicVersion:
                          type: string
                          minLength: 1
                          maxLength: 80
                        planId:
                          type: string
                          pattern: ^\d+$
                        planCode:
                          type: string
                          pattern: ^[A-Z][A-Z0-9_]{1,63}$
                      required:
                        - rateCardId
                        - rateCardPublicVersion
                        - planId
                        - planCode
                      additionalProperties: false
                    customization:
                      oneOf:
                        - type: object
                          properties:
                            posture:
                              type: string
                              enum:
                                - EXACT
                          required:
                            - posture
                          additionalProperties: false
                        - type: object
                          properties:
                            posture:
                              type: string
                              enum:
                                - CUSTOMIZED
                            reason:
                              type: string
                              minLength: 10
                              maxLength: 1000
                          required:
                            - posture
                            - reason
                          additionalProperties: false
                      type: object
                    organizationNameAtIssue:
                      type: string
                      minLength: 1
                      maxLength: 160
                  required:
                    - schemaVersion
                    - documentTitle
                    - executiveSummary
                    - scope
                    - term
                    - paymentOptions
                    - defaultPaymentOptionKey
                    - planOrigin
                    - customization
                    - organizationNameAtIssue
                  additionalProperties: false
              type: object
            selectedPaymentOption:
              default: null
              nullable: true
              oneOf:
                - type: object
                  properties:
                    kind:
                      type: string
                      enum:
                        - MONTHLY
                    optionKey:
                      type: string
                      minLength: 1
                      maxLength: 120
                      pattern: ^[a-z0-9][a-z0-9._-]*$
                    displayName:
                      type: string
                      minLength: 1
                      maxLength: 120
                    currency:
                      type: string
                      enum:
                        - USD
                        - EUR
                        - GBP
                        - AUD
                    monthlyAmountMinor:
                      type: integer
                      minimum: 0
                      maximum: 9007199254740991
                    termMonths:
                      type: integer
                      minimum: 0
                      exclusiveMinimum: true
                      maximum: 120
                    paymentTermsDays:
                      type: integer
                      minimum: 0
                      maximum: 365
                    collectionMethods:
                      minItems: 1
                      maxItems: 3
                      type: array
                      items:
                        type: string
                        enum:
                          - ACH
                          - CARD
                          - INVOICE
                  required:
                    - kind
                    - optionKey
                    - displayName
                    - currency
                    - monthlyAmountMinor
                    - termMonths
                    - paymentTermsDays
                    - collectionMethods
                  additionalProperties: false
                - type: object
                  properties:
                    kind:
                      type: string
                      enum:
                        - TERM_PREPAY
                    optionKey:
                      type: string
                      minLength: 1
                      maxLength: 120
                      pattern: ^[a-z0-9][a-z0-9._-]*$
                    displayName:
                      type: string
                      minLength: 1
                      maxLength: 120
                    currency:
                      type: string
                      enum:
                        - USD
                        - EUR
                        - GBP
                        - AUD
                    prepaidAmountMinor:
                      type: integer
                      minimum: 0
                      exclusiveMinimum: true
                      maximum: 9007199254740991
                    termMonths:
                      type: integer
                      minimum: 0
                      exclusiveMinimum: true
                      maximum: 120
                    paymentTermsDays:
                      type: integer
                      minimum: 0
                      maximum: 365
                    collectionMethods:
                      minItems: 1
                      maxItems: 3
                      type: array
                      items:
                        type: string
                        enum:
                          - ACH
                          - CARD
                          - INVOICE
                  required:
                    - kind
                    - optionKey
                    - displayName
                    - currency
                    - prepaidAmountMinor
                    - termMonths
                    - paymentTermsDays
                    - collectionMethods
                  additionalProperties: false
              type: object
            termStart:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            termEnd:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            listCommitmentMinor:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            listOverageUnitAmountMinor:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            includedIus:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            discountBasisPoints:
              type: integer
              minimum: 0
              maximum: 9999
            netCommitmentMinor:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            netOverageUnitAmountMinor:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            currency:
              type: string
              enum:
                - USD
                - EUR
                - GBP
                - AUD
            billingPeriodMonths:
              type: number
              enum:
                - 1
            rolloverPolicy:
              nullable: true
              type: object
              properties:
                capBasisPoints:
                  type: integer
                  minimum: 1
                  maximum: 5000
                expiresAfterBillingPeriods:
                  type: number
                  enum:
                    - 1
              required:
                - capBasisPoints
                - expiresAfterBillingPeriods
              additionalProperties: false
            paymentTermsDays:
              type: integer
              minimum: 0
              exclusiveMinimum: true
              maximum: 9007199254740991
            acceptedAt:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            acceptanceSource:
              type: string
              enum:
                - SIGNUP
                - PLAN_BILLING
                - MCP_APP
                - ADMIN_ORDER_FORM
                - AUTO_RENEWAL
            activityTerms:
              type: array
              items:
                type: object
                properties:
                  activityCode:
                    type: string
                    enum:
                      - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                  displayName:
                    type: string
                    minLength: 1
                    maxLength: 120
                  iuAmountMilli:
                    type: integer
                    minimum: 1
                    maximum: 2147483647
                  billingPeriodMonths:
                    type: number
                    enum:
                      - 1
                  includedBackfillMonths:
                    type: integer
                    minimum: 0
                    maximum: 120
                required:
                  - activityCode
                  - displayName
                  - iuAmountMilli
                  - billingPeriodMonths
                  - includedBackfillMonths
                additionalProperties: false
            activitySchedule:
              $ref: '#/components/schemas/IuRateCardActivityScheduleResponse'
            effectiveRateCard:
              type: object
              properties:
                version:
                  type: string
                  pattern: ^erc-v1:[0-9a-f]{64}$
                visibility:
                  type: string
                  enum:
                    - PUBLIC
                    - PRIVATE
                displayName:
                  type: string
                  minLength: 1
                  maxLength: 160
                adjustmentSource:
                  type: string
                  enum:
                    - RATE_CARD_DEFAULT
                    - LEGACY_DISCOUNT
                    - DIRECT
                    - PROMOTION_CODE
                    - REFERRAL_CODE
                renewalBehavior:
                  default: PIN_EXACT
                  type: string
                  enum:
                    - PIN_EXACT
                    - REVIEW_REQUIRED
                adjustments:
                  type: object
                  properties:
                    price:
                      default: null
                      nullable: true
                      oneOf:
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - PERCENT
                            basisPoints:
                              type: integer
                              minimum: 1
                              maximum: 9999
                          required:
                            - kind
                            - basisPoints
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - PACKAGE
                            monthlyCommitmentMinor:
                              type: integer
                              minimum: 0
                              maximum: 9007199254740991
                            includedIus:
                              type: integer
                              minimum: 0
                              maximum: 9007199254740991
                            overageUnitAmountMinor:
                              type: integer
                              minimum: 0
                              maximum: 9007199254740991
                            currency:
                              default: USD
                              type: string
                              enum:
                                - USD
                                - EUR
                                - GBP
                                - AUD
                          required:
                            - kind
                            - monthlyCommitmentMinor
                            - includedIus
                            - overageUnitAmountMinor
                            - currency
                          additionalProperties: false
                      type: object
                    platform:
                      default: null
                      nullable: true
                      type: object
                      properties:
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                        monthlyFeeMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        currency:
                          type: string
                          enum:
                            - USD
                            - EUR
                            - GBP
                            - AUD
                        entitlementBundleKey:
                          type: string
                          minLength: 1
                          maxLength: 120
                          pattern: ^[a-z0-9][a-z0-9._-]*$
                      required:
                        - displayName
                        - monthlyFeeMinor
                        - currency
                        - entitlementBundleKey
                      additionalProperties: false
                    activityTerms:
                      default: []
                      type: array
                      items:
                        type: object
                        properties:
                          activityCode:
                            anyOf:
                              - type: string
                                enum:
                                  - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                                  - SIMPLE_PROPOSAL_EVALUATION
                                  - COMPLEX_PROPOSAL_EVALUATION
                                  - MERCHANDISING_BRIEF_RESPONSE
                                  - MURPH_AI_SUPPORT_SESSION
                                  - HUMAN_EXPERT_SUPPORT_HOUR
                                  - GENERATED_IMAGE
                                  - GENERATED_VIDEO_SECONDS
                                  - ANALYZE_ACCOUNT
                                  - CAMPAIGN_OPTIMIZATION_MONTH
                                  - MANAGED_MEDIA_BUY_MONTH
                                  - STANDARD_DOCUMENT_UNDERSTANDING
                                  - LARGE_DOCUMENT_UNDERSTANDING
                                  - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                                  - CUSTOM_BIGQUERY_GIB
                                  - MODULAR_SOURCE_MANAGEMENT_MONTH
                                  - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                                  - COMPLETED_INTERCHANGE_MERCHANDISING_CYCLE
                                  - SOCIAL_ACCOUNT_INTELLIGENCE_BILLING_PERIOD
                                  - INTERCHANGE_MEDIA_BUY_BILLING_PERIOD
                              - type: string
                                enum:
                                  - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                                  - MULTI_SELLER_PRODUCT_RANKING
                                  - PROPOSAL_EVALUATION_PASS
                                  - COMPARATIVE_PROPOSAL_RANKING_PASS
                                  - MURPH_WORKING_SESSION
                                  - SIMPLE_PROPOSAL_EVALUATION
                                  - COMPLEX_PROPOSAL_EVALUATION
                                  - MERCHANDISING_BRIEF_RESPONSE
                                  - MURPH_AI_SUPPORT_SESSION
                                  - HUMAN_EXPERT_SUPPORT_HOUR
                                  - GENERATED_IMAGE
                                  - GENERATED_VIDEO_SECONDS
                                  - ANALYZE_ACCOUNT
                                  - CAMPAIGN_OPTIMIZATION_MONTH
                                  - MANAGED_MEDIA_BUY_MONTH
                                  - STANDARD_DOCUMENT_UNDERSTANDING
                                  - LARGE_DOCUMENT_UNDERSTANDING
                                  - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                                  - CUSTOM_BIGQUERY_GIB
                                  - MODULAR_SOURCE_MANAGEMENT_MONTH
                                  - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                          displayName:
                            type: string
                            minLength: 1
                            maxLength: 120
                          billingPosture:
                            type: string
                            enum:
                              - INCLUDED
                              - IU_PRICE
                          iuAmountMilli:
                            nullable: true
                            type: integer
                            minimum: 0
                            exclusiveMinimum: true
                            maximum: 9007199254740991
                        required:
                          - activityCode
                          - displayName
                          - billingPosture
                          - iuAmountMilli
                        additionalProperties: false
                    setupCredit:
                      default: null
                      nullable: true
                      type: object
                      properties:
                        program:
                          type: string
                          enum:
                            - STOREFRONT_SETUP
                      required:
                        - program
                      additionalProperties: false
                  required:
                    - price
                    - platform
                    - activityTerms
                    - setupCredit
                  additionalProperties: false
                rateCardSnapshot:
                  default: null
                  nullable: true
                  type: object
                  properties:
                    schemaVersion:
                      type: number
                      enum:
                        - 1
                    activityCatalogVersion:
                      anyOf:
                        - type: number
                          enum:
                            - 0
                        - type: number
                          enum:
                            - 1
                        - type: number
                          enum:
                            - 2
                        - type: number
                          enum:
                            - 3
                        - type: number
                          enum:
                            - 4
                    plan:
                      type: object
                      properties:
                        planCode:
                          type: string
                        displayName:
                          type: string
                        displayOrder:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        visibility:
                          type: string
                          enum:
                            - PUBLIC
                            - PRIVATE
                        publicListingApplicability:
                          default:
                            products:
                              - BUYER
                              - PARTNER
                              - SELLER
                          type: object
                          properties:
                            products:
                              minItems: 1
                              maxItems: 3
                              type: array
                              items:
                                type: string
                                enum:
                                  - BUYER
                                  - SELLER
                                  - PARTNER
                            requiredProducts:
                              minItems: 1
                              maxItems: 3
                              type: array
                              items:
                                type: string
                                enum:
                                  - BUYER
                                  - SELLER
                                  - PARTNER
                            sellerProducts:
                              minItems: 1
                              maxItems: 2
                              type: array
                              items:
                                type: string
                                enum:
                                  - LISTING_ONLY
                                  - AGENTIC_MEDIA_COMPANY
                          required:
                            - products
                          additionalProperties: false
                        monthlyCommitmentMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        includedIus:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        overageUnitAmountMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        currency:
                          type: string
                          enum:
                            - USD
                        billingPeriodMonths:
                          type: number
                          enum:
                            - 1
                        commitmentBillingTiming:
                          type: string
                          enum:
                            - PERIOD_START
                        usageBillingTiming:
                          type: string
                          enum:
                            - PERIOD_END
                        resetInterval:
                          type: string
                          enum:
                            - MONTH
                        rolloverPolicy:
                          nullable: true
                          type: object
                          properties:
                            capBasisPoints:
                              type: integer
                              minimum: 1
                              maximum: 5000
                            expiresAfterBillingPeriods:
                              type: number
                              enum:
                                - 1
                          required:
                            - capBasisPoints
                            - expiresAfterBillingPeriods
                          additionalProperties: false
                        paymentTermsDays:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 9007199254740991
                        renewalPosture:
                          type: string
                          enum:
                            - STANDARD_ROLLING
                            - PINNED
                        prices:
                          type: array
                          items:
                            type: object
                            properties:
                              currency:
                                type: string
                                enum:
                                  - EUR
                                  - GBP
                                  - AUD
                              monthlyCommitmentMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              overageUnitAmountMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                            required:
                              - currency
                              - monthlyCommitmentMinor
                              - overageUnitAmountMinor
                            additionalProperties: false
                      required:
                        - planCode
                        - displayName
                        - displayOrder
                        - visibility
                        - publicListingApplicability
                        - monthlyCommitmentMinor
                        - includedIus
                        - overageUnitAmountMinor
                        - currency
                        - billingPeriodMonths
                        - commitmentBillingTiming
                        - usageBillingTiming
                        - resetInterval
                        - rolloverPolicy
                        - paymentTermsDays
                        - renewalPosture
                        - prices
                      additionalProperties: false
                    activityTerms:
                      $ref: '#/components/schemas/IuRateCardActivityScheduleResponse'
                    setupGrant:
                      nullable: true
                      type: object
                      properties:
                        grantedIus:
                          default: 100
                          type: integer
                          minimum: 1
                          maximum: 1000000
                        validForDays:
                          default: 60
                          type: integer
                          minimum: 1
                          maximum: 3650
                        rolloverEnabled:
                          default: false
                          type: boolean
                          enum:
                            - false
                        automatic:
                          default: true
                          type: boolean
                          enum:
                            - true
                      required:
                        - grantedIus
                        - validForDays
                        - rolloverEnabled
                        - automatic
                      additionalProperties: false
                    source:
                      type: object
                      properties:
                        rateCardPublicVersion:
                          type: string
                          minLength: 1
                          maxLength: 80
                      required:
                        - rateCardPublicVersion
                      additionalProperties: false
                  required:
                    - schemaVersion
                    - activityCatalogVersion
                    - plan
                    - activityTerms
                    - setupGrant
                    - source
                  additionalProperties: false
              required:
                - version
                - visibility
                - displayName
                - adjustmentSource
                - renewalBehavior
                - adjustments
                - rateCardSnapshot
              additionalProperties: false
          required:
            - id
            - agreementKind
            - tosVersion
            - rateCardPublicVersion
            - planCode
            - planName
            - renewalPosture
            - predecessorBindingId
            - offerVersion
            - entitlementBundle
            - supportPackage
            - proposal
            - selectedPaymentOption
            - termStart
            - termEnd
            - listCommitmentMinor
            - listOverageUnitAmountMinor
            - includedIus
            - discountBasisPoints
            - netCommitmentMinor
            - netOverageUnitAmountMinor
            - currency
            - billingPeriodMonths
            - rolloverPolicy
            - paymentTermsDays
            - acceptedAt
            - acceptanceSource
            - activityTerms
            - activitySchedule
          additionalProperties: false
        upcomingBinding:
          nullable: true
          type: object
          properties:
            id:
              type: string
              pattern: ^\d+$
            agreementKind:
              type: string
              enum:
                - STANDARD_TOS
                - CUSTOM_CONTRACT
                - AAA
            tosVersion:
              nullable: true
              type: string
            rateCardPublicVersion:
              type: string
            planCode:
              type: string
            planName:
              type: string
            renewalPosture:
              type: string
              enum:
                - STANDARD_ROLLING
                - PINNED
            predecessorBindingId:
              nullable: true
              type: string
              pattern: ^\d+$
            offerVersion:
              type: string
              minLength: 1
            entitlementBundle:
              default: null
              nullable: true
              allOf:
                - $ref: '#/components/schemas/CommercialEntitlementBundleSnapshot'
            supportPackage:
              default: null
              nullable: true
              anyOf:
                - oneOf:
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 1
                        kind:
                          type: string
                          enum:
                            - UNLIMITED_NAMED_SUPPORT
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                      additionalProperties: false
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 1
                        kind:
                          type: string
                          enum:
                            - NAMED_SUPPORT_PACKAGE
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                        includedHoursPerMonth:
                          type: number
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 744
                        additionalHourIus:
                          type: number
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 1000000
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                        - includedHoursPerMonth
                        - additionalHourIus
                      additionalProperties: false
                  type: object
                - oneOf:
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 2
                        kind:
                          type: string
                          enum:
                            - UNLIMITED_NAMED_SUPPORT
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                      additionalProperties: false
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 2
                        kind:
                          type: string
                          enum:
                            - NAMED_SUPPORT_PACKAGE
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                        includedHoursPerMonth:
                          type: number
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 744
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                        - includedHoursPerMonth
                      additionalProperties: false
                  type: object
            proposal:
              default: null
              nullable: true
              oneOf:
                - type: object
                  properties:
                    schemaVersion:
                      type: number
                      enum:
                        - 1
                    documentTitle:
                      type: string
                      minLength: 1
                      maxLength: 160
                    executiveSummary:
                      type: string
                      minLength: 1
                      maxLength: 5000
                    scope:
                      type: object
                      properties:
                        included:
                          minItems: 1
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                        exclusions:
                          default: []
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                      required:
                        - included
                        - exclusions
                      additionalProperties: false
                    term:
                      type: object
                      properties:
                        serviceStart:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - ON_ACCEPTANCE
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - FIXED_DATE
                                date:
                                  type: string
                                  format: date
                                  pattern: >-
                                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                              required:
                                - kind
                                - date
                              additionalProperties: false
                          type: object
                        initialTermMonths:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 120
                        renewal:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - NO_AUTOMATIC_RENEWAL
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - AUTOMATIC
                                renewalTermMonths:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 120
                                nonRenewalNoticeDays:
                                  type: integer
                                  minimum: 0
                                  maximum: 365
                              required:
                                - kind
                                - renewalTermMonths
                                - nonRenewalNoticeDays
                              additionalProperties: false
                          type: object
                        terminationForConvenience:
                          nullable: true
                          type: object
                          properties:
                            noticeDays:
                              type: integer
                              minimum: 0
                              maximum: 365
                          required:
                            - noticeDays
                          additionalProperties: false
                      required:
                        - serviceStart
                        - initialTermMonths
                        - renewal
                        - terminationForConvenience
                      additionalProperties: false
                    paymentOptions:
                      minItems: 1
                      maxItems: 4
                      type: array
                      items:
                        oneOf:
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - MONTHLY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              monthlyAmountMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - monthlyAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - TERM_PREPAY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              prepaidAmountMinor:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - prepaidAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                        type: object
                    templateKey:
                      type: string
                      enum:
                        - ENTERPRISE_V1
                        - PARTNER_ENTERPRISE_V1
                    organizationNameAtIssue:
                      type: string
                      minLength: 1
                      maxLength: 160
                  required:
                    - schemaVersion
                    - documentTitle
                    - executiveSummary
                    - scope
                    - term
                    - paymentOptions
                    - templateKey
                    - organizationNameAtIssue
                  additionalProperties: false
                - type: object
                  properties:
                    schemaVersion:
                      type: number
                      enum:
                        - 2
                    documentTitle:
                      type: string
                      minLength: 1
                      maxLength: 160
                    executiveSummary:
                      type: string
                      minLength: 1
                      maxLength: 5000
                    scope:
                      type: object
                      properties:
                        included:
                          minItems: 1
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                        exclusions:
                          default: []
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                      required:
                        - included
                        - exclusions
                      additionalProperties: false
                    term:
                      type: object
                      properties:
                        serviceStart:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - ON_ACCEPTANCE
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - FIXED_DATE
                                date:
                                  type: string
                                  format: date
                                  pattern: >-
                                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                              required:
                                - kind
                                - date
                              additionalProperties: false
                          type: object
                        initialTermMonths:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 120
                        renewal:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - NO_AUTOMATIC_RENEWAL
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - AUTOMATIC
                                renewalTermMonths:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 120
                                nonRenewalNoticeDays:
                                  type: integer
                                  minimum: 0
                                  maximum: 365
                              required:
                                - kind
                                - renewalTermMonths
                                - nonRenewalNoticeDays
                              additionalProperties: false
                          type: object
                        terminationForConvenience:
                          nullable: true
                          type: object
                          properties:
                            noticeDays:
                              type: integer
                              minimum: 0
                              maximum: 365
                          required:
                            - noticeDays
                          additionalProperties: false
                      required:
                        - serviceStart
                        - initialTermMonths
                        - renewal
                        - terminationForConvenience
                      additionalProperties: false
                    paymentOptions:
                      minItems: 1
                      maxItems: 4
                      type: array
                      items:
                        oneOf:
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - MONTHLY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              monthlyAmountMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - monthlyAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - TERM_PREPAY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              prepaidAmountMinor:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - prepaidAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                        type: object
                    defaultPaymentOptionKey:
                      type: string
                      minLength: 1
                      maxLength: 120
                      pattern: ^[a-z0-9][a-z0-9._-]*$
                    planOrigin:
                      type: object
                      properties:
                        rateCardId:
                          type: string
                          pattern: ^\d+$
                        rateCardPublicVersion:
                          type: string
                          minLength: 1
                          maxLength: 80
                        planId:
                          type: string
                          pattern: ^\d+$
                        planCode:
                          type: string
                          pattern: ^[A-Z][A-Z0-9_]{1,63}$
                      required:
                        - rateCardId
                        - rateCardPublicVersion
                        - planId
                        - planCode
                      additionalProperties: false
                    customization:
                      oneOf:
                        - type: object
                          properties:
                            posture:
                              type: string
                              enum:
                                - EXACT
                          required:
                            - posture
                          additionalProperties: false
                        - type: object
                          properties:
                            posture:
                              type: string
                              enum:
                                - CUSTOMIZED
                            reason:
                              type: string
                              minLength: 10
                              maxLength: 1000
                          required:
                            - posture
                            - reason
                          additionalProperties: false
                      type: object
                    organizationNameAtIssue:
                      type: string
                      minLength: 1
                      maxLength: 160
                  required:
                    - schemaVersion
                    - documentTitle
                    - executiveSummary
                    - scope
                    - term
                    - paymentOptions
                    - defaultPaymentOptionKey
                    - planOrigin
                    - customization
                    - organizationNameAtIssue
                  additionalProperties: false
              type: object
            selectedPaymentOption:
              default: null
              nullable: true
              oneOf:
                - type: object
                  properties:
                    kind:
                      type: string
                      enum:
                        - MONTHLY
                    optionKey:
                      type: string
                      minLength: 1
                      maxLength: 120
                      pattern: ^[a-z0-9][a-z0-9._-]*$
                    displayName:
                      type: string
                      minLength: 1
                      maxLength: 120
                    currency:
                      type: string
                      enum:
                        - USD
                        - EUR
                        - GBP
                        - AUD
                    monthlyAmountMinor:
                      type: integer
                      minimum: 0
                      maximum: 9007199254740991
                    termMonths:
                      type: integer
                      minimum: 0
                      exclusiveMinimum: true
                      maximum: 120
                    paymentTermsDays:
                      type: integer
                      minimum: 0
                      maximum: 365
                    collectionMethods:
                      minItems: 1
                      maxItems: 3
                      type: array
                      items:
                        type: string
                        enum:
                          - ACH
                          - CARD
                          - INVOICE
                  required:
                    - kind
                    - optionKey
                    - displayName
                    - currency
                    - monthlyAmountMinor
                    - termMonths
                    - paymentTermsDays
                    - collectionMethods
                  additionalProperties: false
                - type: object
                  properties:
                    kind:
                      type: string
                      enum:
                        - TERM_PREPAY
                    optionKey:
                      type: string
                      minLength: 1
                      maxLength: 120
                      pattern: ^[a-z0-9][a-z0-9._-]*$
                    displayName:
                      type: string
                      minLength: 1
                      maxLength: 120
                    currency:
                      type: string
                      enum:
                        - USD
                        - EUR
                        - GBP
                        - AUD
                    prepaidAmountMinor:
                      type: integer
                      minimum: 0
                      exclusiveMinimum: true
                      maximum: 9007199254740991
                    termMonths:
                      type: integer
                      minimum: 0
                      exclusiveMinimum: true
                      maximum: 120
                    paymentTermsDays:
                      type: integer
                      minimum: 0
                      maximum: 365
                    collectionMethods:
                      minItems: 1
                      maxItems: 3
                      type: array
                      items:
                        type: string
                        enum:
                          - ACH
                          - CARD
                          - INVOICE
                  required:
                    - kind
                    - optionKey
                    - displayName
                    - currency
                    - prepaidAmountMinor
                    - termMonths
                    - paymentTermsDays
                    - collectionMethods
                  additionalProperties: false
              type: object
            termStart:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            termEnd:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            listCommitmentMinor:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            listOverageUnitAmountMinor:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            includedIus:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            discountBasisPoints:
              type: integer
              minimum: 0
              maximum: 9999
            netCommitmentMinor:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            netOverageUnitAmountMinor:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            currency:
              type: string
              enum:
                - USD
                - EUR
                - GBP
                - AUD
            billingPeriodMonths:
              type: number
              enum:
                - 1
            rolloverPolicy:
              nullable: true
              type: object
              properties:
                capBasisPoints:
                  type: integer
                  minimum: 1
                  maximum: 5000
                expiresAfterBillingPeriods:
                  type: number
                  enum:
                    - 1
              required:
                - capBasisPoints
                - expiresAfterBillingPeriods
              additionalProperties: false
            paymentTermsDays:
              type: integer
              minimum: 0
              exclusiveMinimum: true
              maximum: 9007199254740991
            acceptedAt:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            acceptanceSource:
              type: string
              enum:
                - SIGNUP
                - PLAN_BILLING
                - MCP_APP
                - ADMIN_ORDER_FORM
                - AUTO_RENEWAL
            activityTerms:
              type: array
              items:
                type: object
                properties:
                  activityCode:
                    type: string
                    enum:
                      - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                  displayName:
                    type: string
                    minLength: 1
                    maxLength: 120
                  iuAmountMilli:
                    type: integer
                    minimum: 1
                    maximum: 2147483647
                  billingPeriodMonths:
                    type: number
                    enum:
                      - 1
                  includedBackfillMonths:
                    type: integer
                    minimum: 0
                    maximum: 120
                required:
                  - activityCode
                  - displayName
                  - iuAmountMilli
                  - billingPeriodMonths
                  - includedBackfillMonths
                additionalProperties: false
            activitySchedule:
              $ref: '#/components/schemas/IuRateCardActivityScheduleResponse'
            effectiveRateCard:
              type: object
              properties:
                version:
                  type: string
                  pattern: ^erc-v1:[0-9a-f]{64}$
                visibility:
                  type: string
                  enum:
                    - PUBLIC
                    - PRIVATE
                displayName:
                  type: string
                  minLength: 1
                  maxLength: 160
                adjustmentSource:
                  type: string
                  enum:
                    - RATE_CARD_DEFAULT
                    - LEGACY_DISCOUNT
                    - DIRECT
                    - PROMOTION_CODE
                    - REFERRAL_CODE
                renewalBehavior:
                  default: PIN_EXACT
                  type: string
                  enum:
                    - PIN_EXACT
                    - REVIEW_REQUIRED
                adjustments:
                  type: object
                  properties:
                    price:
                      default: null
                      nullable: true
                      oneOf:
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - PERCENT
                            basisPoints:
                              type: integer
                              minimum: 1
                              maximum: 9999
                          required:
                            - kind
                            - basisPoints
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - PACKAGE
                            monthlyCommitmentMinor:
                              type: integer
                              minimum: 0
                              maximum: 9007199254740991
                            includedIus:
                              type: integer
                              minimum: 0
                              maximum: 9007199254740991
                            overageUnitAmountMinor:
                              type: integer
                              minimum: 0
                              maximum: 9007199254740991
                            currency:
                              default: USD
                              type: string
                              enum:
                                - USD
                                - EUR
                                - GBP
                                - AUD
                          required:
                            - kind
                            - monthlyCommitmentMinor
                            - includedIus
                            - overageUnitAmountMinor
                            - currency
                          additionalProperties: false
                      type: object
                    platform:
                      default: null
                      nullable: true
                      type: object
                      properties:
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                        monthlyFeeMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        currency:
                          type: string
                          enum:
                            - USD
                            - EUR
                            - GBP
                            - AUD
                        entitlementBundleKey:
                          type: string
                          minLength: 1
                          maxLength: 120
                          pattern: ^[a-z0-9][a-z0-9._-]*$
                      required:
                        - displayName
                        - monthlyFeeMinor
                        - currency
                        - entitlementBundleKey
                      additionalProperties: false
                    activityTerms:
                      default: []
                      type: array
                      items:
                        type: object
                        properties:
                          activityCode:
                            anyOf:
                              - type: string
                                enum:
                                  - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                                  - SIMPLE_PROPOSAL_EVALUATION
                                  - COMPLEX_PROPOSAL_EVALUATION
                                  - MERCHANDISING_BRIEF_RESPONSE
                                  - MURPH_AI_SUPPORT_SESSION
                                  - HUMAN_EXPERT_SUPPORT_HOUR
                                  - GENERATED_IMAGE
                                  - GENERATED_VIDEO_SECONDS
                                  - ANALYZE_ACCOUNT
                                  - CAMPAIGN_OPTIMIZATION_MONTH
                                  - MANAGED_MEDIA_BUY_MONTH
                                  - STANDARD_DOCUMENT_UNDERSTANDING
                                  - LARGE_DOCUMENT_UNDERSTANDING
                                  - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                                  - CUSTOM_BIGQUERY_GIB
                                  - MODULAR_SOURCE_MANAGEMENT_MONTH
                                  - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                                  - COMPLETED_INTERCHANGE_MERCHANDISING_CYCLE
                                  - SOCIAL_ACCOUNT_INTELLIGENCE_BILLING_PERIOD
                                  - INTERCHANGE_MEDIA_BUY_BILLING_PERIOD
                              - type: string
                                enum:
                                  - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                                  - MULTI_SELLER_PRODUCT_RANKING
                                  - PROPOSAL_EVALUATION_PASS
                                  - COMPARATIVE_PROPOSAL_RANKING_PASS
                                  - MURPH_WORKING_SESSION
                                  - SIMPLE_PROPOSAL_EVALUATION
                                  - COMPLEX_PROPOSAL_EVALUATION
                                  - MERCHANDISING_BRIEF_RESPONSE
                                  - MURPH_AI_SUPPORT_SESSION
                                  - HUMAN_EXPERT_SUPPORT_HOUR
                                  - GENERATED_IMAGE
                                  - GENERATED_VIDEO_SECONDS
                                  - ANALYZE_ACCOUNT
                                  - CAMPAIGN_OPTIMIZATION_MONTH
                                  - MANAGED_MEDIA_BUY_MONTH
                                  - STANDARD_DOCUMENT_UNDERSTANDING
                                  - LARGE_DOCUMENT_UNDERSTANDING
                                  - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                                  - CUSTOM_BIGQUERY_GIB
                                  - MODULAR_SOURCE_MANAGEMENT_MONTH
                                  - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                          displayName:
                            type: string
                            minLength: 1
                            maxLength: 120
                          billingPosture:
                            type: string
                            enum:
                              - INCLUDED
                              - IU_PRICE
                          iuAmountMilli:
                            nullable: true
                            type: integer
                            minimum: 0
                            exclusiveMinimum: true
                            maximum: 9007199254740991
                        required:
                          - activityCode
                          - displayName
                          - billingPosture
                          - iuAmountMilli
                        additionalProperties: false
                    setupCredit:
                      default: null
                      nullable: true
                      type: object
                      properties:
                        program:
                          type: string
                          enum:
                            - STOREFRONT_SETUP
                      required:
                        - program
                      additionalProperties: false
                  required:
                    - price
                    - platform
                    - activityTerms
                    - setupCredit
                  additionalProperties: false
                rateCardSnapshot:
                  default: null
                  nullable: true
                  type: object
                  properties:
                    schemaVersion:
                      type: number
                      enum:
                        - 1
                    activityCatalogVersion:
                      anyOf:
                        - type: number
                          enum:
                            - 0
                        - type: number
                          enum:
                            - 1
                        - type: number
                          enum:
                            - 2
                        - type: number
                          enum:
                            - 3
                        - type: number
                          enum:
                            - 4
                    plan:
                      type: object
                      properties:
                        planCode:
                          type: string
                        displayName:
                          type: string
                        displayOrder:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        visibility:
                          type: string
                          enum:
                            - PUBLIC
                            - PRIVATE
                        publicListingApplicability:
                          default:
                            products:
                              - BUYER
                              - PARTNER
                              - SELLER
                          type: object
                          properties:
                            products:
                              minItems: 1
                              maxItems: 3
                              type: array
                              items:
                                type: string
                                enum:
                                  - BUYER
                                  - SELLER
                                  - PARTNER
                            requiredProducts:
                              minItems: 1
                              maxItems: 3
                              type: array
                              items:
                                type: string
                                enum:
                                  - BUYER
                                  - SELLER
                                  - PARTNER
                            sellerProducts:
                              minItems: 1
                              maxItems: 2
                              type: array
                              items:
                                type: string
                                enum:
                                  - LISTING_ONLY
                                  - AGENTIC_MEDIA_COMPANY
                          required:
                            - products
                          additionalProperties: false
                        monthlyCommitmentMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        includedIus:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        overageUnitAmountMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        currency:
                          type: string
                          enum:
                            - USD
                        billingPeriodMonths:
                          type: number
                          enum:
                            - 1
                        commitmentBillingTiming:
                          type: string
                          enum:
                            - PERIOD_START
                        usageBillingTiming:
                          type: string
                          enum:
                            - PERIOD_END
                        resetInterval:
                          type: string
                          enum:
                            - MONTH
                        rolloverPolicy:
                          nullable: true
                          type: object
                          properties:
                            capBasisPoints:
                              type: integer
                              minimum: 1
                              maximum: 5000
                            expiresAfterBillingPeriods:
                              type: number
                              enum:
                                - 1
                          required:
                            - capBasisPoints
                            - expiresAfterBillingPeriods
                          additionalProperties: false
                        paymentTermsDays:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 9007199254740991
                        renewalPosture:
                          type: string
                          enum:
                            - STANDARD_ROLLING
                            - PINNED
                        prices:
                          type: array
                          items:
                            type: object
                            properties:
                              currency:
                                type: string
                                enum:
                                  - EUR
                                  - GBP
                                  - AUD
                              monthlyCommitmentMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              overageUnitAmountMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                            required:
                              - currency
                              - monthlyCommitmentMinor
                              - overageUnitAmountMinor
                            additionalProperties: false
                      required:
                        - planCode
                        - displayName
                        - displayOrder
                        - visibility
                        - publicListingApplicability
                        - monthlyCommitmentMinor
                        - includedIus
                        - overageUnitAmountMinor
                        - currency
                        - billingPeriodMonths
                        - commitmentBillingTiming
                        - usageBillingTiming
                        - resetInterval
                        - rolloverPolicy
                        - paymentTermsDays
                        - renewalPosture
                        - prices
                      additionalProperties: false
                    activityTerms:
                      $ref: '#/components/schemas/IuRateCardActivityScheduleResponse'
                    setupGrant:
                      nullable: true
                      type: object
                      properties:
                        grantedIus:
                          default: 100
                          type: integer
                          minimum: 1
                          maximum: 1000000
                        validForDays:
                          default: 60
                          type: integer
                          minimum: 1
                          maximum: 3650
                        rolloverEnabled:
                          default: false
                          type: boolean
                          enum:
                            - false
                        automatic:
                          default: true
                          type: boolean
                          enum:
                            - true
                      required:
                        - grantedIus
                        - validForDays
                        - rolloverEnabled
                        - automatic
                      additionalProperties: false
                    source:
                      type: object
                      properties:
                        rateCardPublicVersion:
                          type: string
                          minLength: 1
                          maxLength: 80
                      required:
                        - rateCardPublicVersion
                      additionalProperties: false
                  required:
                    - schemaVersion
                    - activityCatalogVersion
                    - plan
                    - activityTerms
                    - setupGrant
                    - source
                  additionalProperties: false
              required:
                - version
                - visibility
                - displayName
                - adjustmentSource
                - renewalBehavior
                - adjustments
                - rateCardSnapshot
              additionalProperties: false
          required:
            - id
            - agreementKind
            - tosVersion
            - rateCardPublicVersion
            - planCode
            - planName
            - renewalPosture
            - predecessorBindingId
            - offerVersion
            - entitlementBundle
            - supportPackage
            - proposal
            - selectedPaymentOption
            - termStart
            - termEnd
            - listCommitmentMinor
            - listOverageUnitAmountMinor
            - includedIus
            - discountBasisPoints
            - netCommitmentMinor
            - netOverageUnitAmountMinor
            - currency
            - billingPeriodMonths
            - rolloverPolicy
            - paymentTermsDays
            - acceptedAt
            - acceptanceSource
            - activityTerms
            - activitySchedule
          additionalProperties: false
        history:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                pattern: ^\d+$
              agreementKind:
                type: string
                enum:
                  - STANDARD_TOS
                  - CUSTOM_CONTRACT
                  - AAA
              tosVersion:
                nullable: true
                type: string
              rateCardPublicVersion:
                type: string
              planCode:
                type: string
              planName:
                type: string
              renewalPosture:
                type: string
                enum:
                  - STANDARD_ROLLING
                  - PINNED
              predecessorBindingId:
                nullable: true
                type: string
                pattern: ^\d+$
              offerVersion:
                type: string
                minLength: 1
              entitlementBundle:
                default: null
                nullable: true
                allOf:
                  - $ref: '#/components/schemas/CommercialEntitlementBundleSnapshot'
              supportPackage:
                default: null
                nullable: true
                anyOf:
                  - oneOf:
                      - type: object
                        properties:
                          schemaVersion:
                            type: number
                            enum:
                              - 1
                          kind:
                            type: string
                            enum:
                              - UNLIMITED_NAMED_SUPPORT
                          displayName:
                            type: string
                            minLength: 1
                            maxLength: 120
                        required:
                          - schemaVersion
                          - kind
                          - displayName
                        additionalProperties: false
                      - type: object
                        properties:
                          schemaVersion:
                            type: number
                            enum:
                              - 1
                          kind:
                            type: string
                            enum:
                              - NAMED_SUPPORT_PACKAGE
                          displayName:
                            type: string
                            minLength: 1
                            maxLength: 120
                          includedHoursPerMonth:
                            type: number
                            minimum: 0
                            exclusiveMinimum: true
                            maximum: 744
                          additionalHourIus:
                            type: number
                            minimum: 0
                            exclusiveMinimum: true
                            maximum: 1000000
                        required:
                          - schemaVersion
                          - kind
                          - displayName
                          - includedHoursPerMonth
                          - additionalHourIus
                        additionalProperties: false
                    type: object
                  - oneOf:
                      - type: object
                        properties:
                          schemaVersion:
                            type: number
                            enum:
                              - 2
                          kind:
                            type: string
                            enum:
                              - UNLIMITED_NAMED_SUPPORT
                          displayName:
                            type: string
                            minLength: 1
                            maxLength: 120
                        required:
                          - schemaVersion
                          - kind
                          - displayName
                        additionalProperties: false
                      - type: object
                        properties:
                          schemaVersion:
                            type: number
                            enum:
                              - 2
                          kind:
                            type: string
                            enum:
                              - NAMED_SUPPORT_PACKAGE
                          displayName:
                            type: string
                            minLength: 1
                            maxLength: 120
                          includedHoursPerMonth:
                            type: number
                            minimum: 0
                            exclusiveMinimum: true
                            maximum: 744
                        required:
                          - schemaVersion
                          - kind
                          - displayName
                          - includedHoursPerMonth
                        additionalProperties: false
                    type: object
              proposal:
                default: null
                nullable: true
                oneOf:
                  - type: object
                    properties:
                      schemaVersion:
                        type: number
                        enum:
                          - 1
                      documentTitle:
                        type: string
                        minLength: 1
                        maxLength: 160
                      executiveSummary:
                        type: string
                        minLength: 1
                        maxLength: 5000
                      scope:
                        type: object
                        properties:
                          included:
                            minItems: 1
                            maxItems: 50
                            type: array
                            items:
                              type: string
                              minLength: 1
                              maxLength: 500
                          exclusions:
                            default: []
                            maxItems: 50
                            type: array
                            items:
                              type: string
                              minLength: 1
                              maxLength: 500
                        required:
                          - included
                          - exclusions
                        additionalProperties: false
                      term:
                        type: object
                        properties:
                          serviceStart:
                            oneOf:
                              - type: object
                                properties:
                                  kind:
                                    type: string
                                    enum:
                                      - ON_ACCEPTANCE
                                required:
                                  - kind
                                additionalProperties: false
                              - type: object
                                properties:
                                  kind:
                                    type: string
                                    enum:
                                      - FIXED_DATE
                                  date:
                                    type: string
                                    format: date
                                    pattern: >-
                                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                                required:
                                  - kind
                                  - date
                                additionalProperties: false
                            type: object
                          initialTermMonths:
                            type: integer
                            minimum: 0
                            exclusiveMinimum: true
                            maximum: 120
                          renewal:
                            oneOf:
                              - type: object
                                properties:
                                  kind:
                                    type: string
                                    enum:
                                      - NO_AUTOMATIC_RENEWAL
                                required:
                                  - kind
                                additionalProperties: false
                              - type: object
                                properties:
                                  kind:
                                    type: string
                                    enum:
                                      - AUTOMATIC
                                  renewalTermMonths:
                                    type: integer
                                    minimum: 0
                                    exclusiveMinimum: true
                                    maximum: 120
                                  nonRenewalNoticeDays:
                                    type: integer
                                    minimum: 0
                                    maximum: 365
                                required:
                                  - kind
                                  - renewalTermMonths
                                  - nonRenewalNoticeDays
                                additionalProperties: false
                            type: object
                          terminationForConvenience:
                            nullable: true
                            type: object
                            properties:
                              noticeDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                            required:
                              - noticeDays
                            additionalProperties: false
                        required:
                          - serviceStart
                          - initialTermMonths
                          - renewal
                          - terminationForConvenience
                        additionalProperties: false
                      paymentOptions:
                        minItems: 1
                        maxItems: 4
                        type: array
                        items:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - MONTHLY
                                optionKey:
                                  type: string
                                  minLength: 1
                                  maxLength: 120
                                  pattern: ^[a-z0-9][a-z0-9._-]*$
                                displayName:
                                  type: string
                                  minLength: 1
                                  maxLength: 120
                                currency:
                                  type: string
                                  enum:
                                    - USD
                                    - EUR
                                    - GBP
                                    - AUD
                                monthlyAmountMinor:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                                termMonths:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 120
                                paymentTermsDays:
                                  type: integer
                                  minimum: 0
                                  maximum: 365
                                collectionMethods:
                                  minItems: 1
                                  maxItems: 3
                                  type: array
                                  items:
                                    type: string
                                    enum:
                                      - ACH
                                      - CARD
                                      - INVOICE
                              required:
                                - kind
                                - optionKey
                                - displayName
                                - currency
                                - monthlyAmountMinor
                                - termMonths
                                - paymentTermsDays
                                - collectionMethods
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - TERM_PREPAY
                                optionKey:
                                  type: string
                                  minLength: 1
                                  maxLength: 120
                                  pattern: ^[a-z0-9][a-z0-9._-]*$
                                displayName:
                                  type: string
                                  minLength: 1
                                  maxLength: 120
                                currency:
                                  type: string
                                  enum:
                                    - USD
                                    - EUR
                                    - GBP
                                    - AUD
                                prepaidAmountMinor:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 9007199254740991
                                termMonths:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 120
                                paymentTermsDays:
                                  type: integer
                                  minimum: 0
                                  maximum: 365
                                collectionMethods:
                                  minItems: 1
                                  maxItems: 3
                                  type: array
                                  items:
                                    type: string
                                    enum:
                                      - ACH
                                      - CARD
                                      - INVOICE
                              required:
                                - kind
                                - optionKey
                                - displayName
                                - currency
                                - prepaidAmountMinor
                                - termMonths
                                - paymentTermsDays
                                - collectionMethods
                              additionalProperties: false
                          type: object
                      templateKey:
                        type: string
                        enum:
                          - ENTERPRISE_V1
                          - PARTNER_ENTERPRISE_V1
                      organizationNameAtIssue:
                        type: string
                        minLength: 1
                        maxLength: 160
                    required:
                      - schemaVersion
                      - documentTitle
                      - executiveSummary
                      - scope
                      - term
                      - paymentOptions
                      - templateKey
                      - organizationNameAtIssue
                    additionalProperties: false
                  - type: object
                    properties:
                      schemaVersion:
                        type: number
                        enum:
                          - 2
                      documentTitle:
                        type: string
                        minLength: 1
                        maxLength: 160
                      executiveSummary:
                        type: string
                        minLength: 1
                        maxLength: 5000
                      scope:
                        type: object
                        properties:
                          included:
                            minItems: 1
                            maxItems: 50
                            type: array
                            items:
                              type: string
                              minLength: 1
                              maxLength: 500
                          exclusions:
                            default: []
                            maxItems: 50
                            type: array
                            items:
                              type: string
                              minLength: 1
                              maxLength: 500
                        required:
                          - included
                          - exclusions
                        additionalProperties: false
                      term:
                        type: object
                        properties:
                          serviceStart:
                            oneOf:
                              - type: object
                                properties:
                                  kind:
                                    type: string
                                    enum:
                                      - ON_ACCEPTANCE
                                required:
                                  - kind
                                additionalProperties: false
                              - type: object
                                properties:
                                  kind:
                                    type: string
                                    enum:
                                      - FIXED_DATE
                                  date:
                                    type: string
                                    format: date
                                    pattern: >-
                                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                                required:
                                  - kind
                                  - date
                                additionalProperties: false
                            type: object
                          initialTermMonths:
                            type: integer
                            minimum: 0
                            exclusiveMinimum: true
                            maximum: 120
                          renewal:
                            oneOf:
                              - type: object
                                properties:
                                  kind:
                                    type: string
                                    enum:
                                      - NO_AUTOMATIC_RENEWAL
                                required:
                                  - kind
                                additionalProperties: false
                              - type: object
                                properties:
                                  kind:
                                    type: string
                                    enum:
                                      - AUTOMATIC
                                  renewalTermMonths:
                                    type: integer
                                    minimum: 0
                                    exclusiveMinimum: true
                                    maximum: 120
                                  nonRenewalNoticeDays:
                                    type: integer
                                    minimum: 0
                                    maximum: 365
                                required:
                                  - kind
                                  - renewalTermMonths
                                  - nonRenewalNoticeDays
                                additionalProperties: false
                            type: object
                          terminationForConvenience:
                            nullable: true
                            type: object
                            properties:
                              noticeDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                            required:
                              - noticeDays
                            additionalProperties: false
                        required:
                          - serviceStart
                          - initialTermMonths
                          - renewal
                          - terminationForConvenience
                        additionalProperties: false
                      paymentOptions:
                        minItems: 1
                        maxItems: 4
                        type: array
                        items:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - MONTHLY
                                optionKey:
                                  type: string
                                  minLength: 1
                                  maxLength: 120
                                  pattern: ^[a-z0-9][a-z0-9._-]*$
                                displayName:
                                  type: string
                                  minLength: 1
                                  maxLength: 120
                                currency:
                                  type: string
                                  enum:
                                    - USD
                                    - EUR
                                    - GBP
                                    - AUD
                                monthlyAmountMinor:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                                termMonths:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 120
                                paymentTermsDays:
                                  type: integer
                                  minimum: 0
                                  maximum: 365
                                collectionMethods:
                                  minItems: 1
                                  maxItems: 3
                                  type: array
                                  items:
                                    type: string
                                    enum:
                                      - ACH
                                      - CARD
                                      - INVOICE
                              required:
                                - kind
                                - optionKey
                                - displayName
                                - currency
                                - monthlyAmountMinor
                                - termMonths
                                - paymentTermsDays
                                - collectionMethods
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - TERM_PREPAY
                                optionKey:
                                  type: string
                                  minLength: 1
                                  maxLength: 120
                                  pattern: ^[a-z0-9][a-z0-9._-]*$
                                displayName:
                                  type: string
                                  minLength: 1
                                  maxLength: 120
                                currency:
                                  type: string
                                  enum:
                                    - USD
                                    - EUR
                                    - GBP
                                    - AUD
                                prepaidAmountMinor:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 9007199254740991
                                termMonths:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 120
                                paymentTermsDays:
                                  type: integer
                                  minimum: 0
                                  maximum: 365
                                collectionMethods:
                                  minItems: 1
                                  maxItems: 3
                                  type: array
                                  items:
                                    type: string
                                    enum:
                                      - ACH
                                      - CARD
                                      - INVOICE
                              required:
                                - kind
                                - optionKey
                                - displayName
                                - currency
                                - prepaidAmountMinor
                                - termMonths
                                - paymentTermsDays
                                - collectionMethods
                              additionalProperties: false
                          type: object
                      defaultPaymentOptionKey:
                        type: string
                        minLength: 1
                        maxLength: 120
                        pattern: ^[a-z0-9][a-z0-9._-]*$
                      planOrigin:
                        type: object
                        properties:
                          rateCardId:
                            type: string
                            pattern: ^\d+$
                          rateCardPublicVersion:
                            type: string
                            minLength: 1
                            maxLength: 80
                          planId:
                            type: string
                            pattern: ^\d+$
                          planCode:
                            type: string
                            pattern: ^[A-Z][A-Z0-9_]{1,63}$
                        required:
                          - rateCardId
                          - rateCardPublicVersion
                          - planId
                          - planCode
                        additionalProperties: false
                      customization:
                        oneOf:
                          - type: object
                            properties:
                              posture:
                                type: string
                                enum:
                                  - EXACT
                            required:
                              - posture
                            additionalProperties: false
                          - type: object
                            properties:
                              posture:
                                type: string
                                enum:
                                  - CUSTOMIZED
                              reason:
                                type: string
                                minLength: 10
                                maxLength: 1000
                            required:
                              - posture
                              - reason
                            additionalProperties: false
                        type: object
                      organizationNameAtIssue:
                        type: string
                        minLength: 1
                        maxLength: 160
                    required:
                      - schemaVersion
                      - documentTitle
                      - executiveSummary
                      - scope
                      - term
                      - paymentOptions
                      - defaultPaymentOptionKey
                      - planOrigin
                      - customization
                      - organizationNameAtIssue
                    additionalProperties: false
                type: object
              selectedPaymentOption:
                default: null
                nullable: true
                oneOf:
                  - type: object
                    properties:
                      kind:
                        type: string
                        enum:
                          - MONTHLY
                      optionKey:
                        type: string
                        minLength: 1
                        maxLength: 120
                        pattern: ^[a-z0-9][a-z0-9._-]*$
                      displayName:
                        type: string
                        minLength: 1
                        maxLength: 120
                      currency:
                        type: string
                        enum:
                          - USD
                          - EUR
                          - GBP
                          - AUD
                      monthlyAmountMinor:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                      termMonths:
                        type: integer
                        minimum: 0
                        exclusiveMinimum: true
                        maximum: 120
                      paymentTermsDays:
                        type: integer
                        minimum: 0
                        maximum: 365
                      collectionMethods:
                        minItems: 1
                        maxItems: 3
                        type: array
                        items:
                          type: string
                          enum:
                            - ACH
                            - CARD
                            - INVOICE
                    required:
                      - kind
                      - optionKey
                      - displayName
                      - currency
                      - monthlyAmountMinor
                      - termMonths
                      - paymentTermsDays
                      - collectionMethods
                    additionalProperties: false
                  - type: object
                    properties:
                      kind:
                        type: string
                        enum:
                          - TERM_PREPAY
                      optionKey:
                        type: string
                        minLength: 1
                        maxLength: 120
                        pattern: ^[a-z0-9][a-z0-9._-]*$
                      displayName:
                        type: string
                        minLength: 1
                        maxLength: 120
                      currency:
                        type: string
                        enum:
                          - USD
                          - EUR
                          - GBP
                          - AUD
                      prepaidAmountMinor:
                        type: integer
                        minimum: 0
                        exclusiveMinimum: true
                        maximum: 9007199254740991
                      termMonths:
                        type: integer
                        minimum: 0
                        exclusiveMinimum: true
                        maximum: 120
                      paymentTermsDays:
                        type: integer
                        minimum: 0
                        maximum: 365
                      collectionMethods:
                        minItems: 1
                        maxItems: 3
                        type: array
                        items:
                          type: string
                          enum:
                            - ACH
                            - CARD
                            - INVOICE
                    required:
                      - kind
                      - optionKey
                      - displayName
                      - currency
                      - prepaidAmountMinor
                      - termMonths
                      - paymentTermsDays
                      - collectionMethods
                    additionalProperties: false
                type: object
              termStart:
                type: string
                format: date-time
                pattern: >-
                  ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
              termEnd:
                type: string
                format: date-time
                pattern: >-
                  ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
              listCommitmentMinor:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              listOverageUnitAmountMinor:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              includedIus:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              discountBasisPoints:
                type: integer
                minimum: 0
                maximum: 9999
              netCommitmentMinor:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              netOverageUnitAmountMinor:
                type: integer
                minimum: 0
                maximum: 9007199254740991
              currency:
                type: string
                enum:
                  - USD
                  - EUR
                  - GBP
                  - AUD
              billingPeriodMonths:
                type: number
                enum:
                  - 1
              rolloverPolicy:
                nullable: true
                type: object
                properties:
                  capBasisPoints:
                    type: integer
                    minimum: 1
                    maximum: 5000
                  expiresAfterBillingPeriods:
                    type: number
                    enum:
                      - 1
                required:
                  - capBasisPoints
                  - expiresAfterBillingPeriods
                additionalProperties: false
              paymentTermsDays:
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 9007199254740991
              acceptedAt:
                type: string
                format: date-time
                pattern: >-
                  ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
              acceptanceSource:
                type: string
                enum:
                  - SIGNUP
                  - PLAN_BILLING
                  - MCP_APP
                  - ADMIN_ORDER_FORM
                  - AUTO_RENEWAL
              activityTerms:
                type: array
                items:
                  type: object
                  properties:
                    activityCode:
                      type: string
                      enum:
                        - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                    displayName:
                      type: string
                      minLength: 1
                      maxLength: 120
                    iuAmountMilli:
                      type: integer
                      minimum: 1
                      maximum: 2147483647
                    billingPeriodMonths:
                      type: number
                      enum:
                        - 1
                    includedBackfillMonths:
                      type: integer
                      minimum: 0
                      maximum: 120
                  required:
                    - activityCode
                    - displayName
                    - iuAmountMilli
                    - billingPeriodMonths
                    - includedBackfillMonths
                  additionalProperties: false
              activitySchedule:
                $ref: '#/components/schemas/IuRateCardActivityScheduleResponse'
              effectiveRateCard:
                type: object
                properties:
                  version:
                    type: string
                    pattern: ^erc-v1:[0-9a-f]{64}$
                  visibility:
                    type: string
                    enum:
                      - PUBLIC
                      - PRIVATE
                  displayName:
                    type: string
                    minLength: 1
                    maxLength: 160
                  adjustmentSource:
                    type: string
                    enum:
                      - RATE_CARD_DEFAULT
                      - LEGACY_DISCOUNT
                      - DIRECT
                      - PROMOTION_CODE
                      - REFERRAL_CODE
                  renewalBehavior:
                    default: PIN_EXACT
                    type: string
                    enum:
                      - PIN_EXACT
                      - REVIEW_REQUIRED
                  adjustments:
                    type: object
                    properties:
                      price:
                        default: null
                        nullable: true
                        oneOf:
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - PERCENT
                              basisPoints:
                                type: integer
                                minimum: 1
                                maximum: 9999
                            required:
                              - kind
                              - basisPoints
                            additionalProperties: false
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - PACKAGE
                              monthlyCommitmentMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              includedIus:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              overageUnitAmountMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              currency:
                                default: USD
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                            required:
                              - kind
                              - monthlyCommitmentMinor
                              - includedIus
                              - overageUnitAmountMinor
                              - currency
                            additionalProperties: false
                        type: object
                      platform:
                        default: null
                        nullable: true
                        type: object
                        properties:
                          displayName:
                            type: string
                            minLength: 1
                            maxLength: 120
                          monthlyFeeMinor:
                            type: integer
                            minimum: 0
                            maximum: 9007199254740991
                          currency:
                            type: string
                            enum:
                              - USD
                              - EUR
                              - GBP
                              - AUD
                          entitlementBundleKey:
                            type: string
                            minLength: 1
                            maxLength: 120
                            pattern: ^[a-z0-9][a-z0-9._-]*$
                        required:
                          - displayName
                          - monthlyFeeMinor
                          - currency
                          - entitlementBundleKey
                        additionalProperties: false
                      activityTerms:
                        default: []
                        type: array
                        items:
                          type: object
                          properties:
                            activityCode:
                              anyOf:
                                - type: string
                                  enum:
                                    - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                                    - SIMPLE_PROPOSAL_EVALUATION
                                    - COMPLEX_PROPOSAL_EVALUATION
                                    - MERCHANDISING_BRIEF_RESPONSE
                                    - MURPH_AI_SUPPORT_SESSION
                                    - HUMAN_EXPERT_SUPPORT_HOUR
                                    - GENERATED_IMAGE
                                    - GENERATED_VIDEO_SECONDS
                                    - ANALYZE_ACCOUNT
                                    - CAMPAIGN_OPTIMIZATION_MONTH
                                    - MANAGED_MEDIA_BUY_MONTH
                                    - STANDARD_DOCUMENT_UNDERSTANDING
                                    - LARGE_DOCUMENT_UNDERSTANDING
                                    - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                                    - CUSTOM_BIGQUERY_GIB
                                    - MODULAR_SOURCE_MANAGEMENT_MONTH
                                    - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                                    - COMPLETED_INTERCHANGE_MERCHANDISING_CYCLE
                                    - SOCIAL_ACCOUNT_INTELLIGENCE_BILLING_PERIOD
                                    - INTERCHANGE_MEDIA_BUY_BILLING_PERIOD
                                - type: string
                                  enum:
                                    - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                                    - MULTI_SELLER_PRODUCT_RANKING
                                    - PROPOSAL_EVALUATION_PASS
                                    - COMPARATIVE_PROPOSAL_RANKING_PASS
                                    - MURPH_WORKING_SESSION
                                    - SIMPLE_PROPOSAL_EVALUATION
                                    - COMPLEX_PROPOSAL_EVALUATION
                                    - MERCHANDISING_BRIEF_RESPONSE
                                    - MURPH_AI_SUPPORT_SESSION
                                    - HUMAN_EXPERT_SUPPORT_HOUR
                                    - GENERATED_IMAGE
                                    - GENERATED_VIDEO_SECONDS
                                    - ANALYZE_ACCOUNT
                                    - CAMPAIGN_OPTIMIZATION_MONTH
                                    - MANAGED_MEDIA_BUY_MONTH
                                    - STANDARD_DOCUMENT_UNDERSTANDING
                                    - LARGE_DOCUMENT_UNDERSTANDING
                                    - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                                    - CUSTOM_BIGQUERY_GIB
                                    - MODULAR_SOURCE_MANAGEMENT_MONTH
                                    - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                            displayName:
                              type: string
                              minLength: 1
                              maxLength: 120
                            billingPosture:
                              type: string
                              enum:
                                - INCLUDED
                                - IU_PRICE
                            iuAmountMilli:
                              nullable: true
                              type: integer
                              minimum: 0
                              exclusiveMinimum: true
                              maximum: 9007199254740991
                          required:
                            - activityCode
                            - displayName
                            - billingPosture
                            - iuAmountMilli
                          additionalProperties: false
                      setupCredit:
                        default: null
                        nullable: true
                        type: object
                        properties:
                          program:
                            type: string
                            enum:
                              - STOREFRONT_SETUP
                        required:
                          - program
                        additionalProperties: false
                    required:
                      - price
                      - platform
                      - activityTerms
                      - setupCredit
                    additionalProperties: false
                  rateCardSnapshot:
                    default: null
                    nullable: true
                    type: object
                    properties:
                      schemaVersion:
                        type: number
                        enum:
                          - 1
                      activityCatalogVersion:
                        anyOf:
                          - type: number
                            enum:
                              - 0
                          - type: number
                            enum:
                              - 1
                          - type: number
                            enum:
                              - 2
                          - type: number
                            enum:
                              - 3
                          - type: number
                            enum:
                              - 4
                      plan:
                        type: object
                        properties:
                          planCode:
                            type: string
                          displayName:
                            type: string
                          displayOrder:
                            type: integer
                            minimum: 0
                            maximum: 9007199254740991
                          visibility:
                            type: string
                            enum:
                              - PUBLIC
                              - PRIVATE
                          publicListingApplicability:
                            default:
                              products:
                                - BUYER
                                - PARTNER
                                - SELLER
                            type: object
                            properties:
                              products:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - BUYER
                                    - SELLER
                                    - PARTNER
                              requiredProducts:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - BUYER
                                    - SELLER
                                    - PARTNER
                              sellerProducts:
                                minItems: 1
                                maxItems: 2
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - LISTING_ONLY
                                    - AGENTIC_MEDIA_COMPANY
                            required:
                              - products
                            additionalProperties: false
                          monthlyCommitmentMinor:
                            type: integer
                            minimum: 0
                            maximum: 9007199254740991
                          includedIus:
                            type: integer
                            minimum: 0
                            maximum: 9007199254740991
                          overageUnitAmountMinor:
                            type: integer
                            minimum: 0
                            maximum: 9007199254740991
                          currency:
                            type: string
                            enum:
                              - USD
                          billingPeriodMonths:
                            type: number
                            enum:
                              - 1
                          commitmentBillingTiming:
                            type: string
                            enum:
                              - PERIOD_START
                          usageBillingTiming:
                            type: string
                            enum:
                              - PERIOD_END
                          resetInterval:
                            type: string
                            enum:
                              - MONTH
                          rolloverPolicy:
                            nullable: true
                            type: object
                            properties:
                              capBasisPoints:
                                type: integer
                                minimum: 1
                                maximum: 5000
                              expiresAfterBillingPeriods:
                                type: number
                                enum:
                                  - 1
                            required:
                              - capBasisPoints
                              - expiresAfterBillingPeriods
                            additionalProperties: false
                          paymentTermsDays:
                            type: integer
                            minimum: 0
                            exclusiveMinimum: true
                            maximum: 9007199254740991
                          renewalPosture:
                            type: string
                            enum:
                              - STANDARD_ROLLING
                              - PINNED
                          prices:
                            type: array
                            items:
                              type: object
                              properties:
                                currency:
                                  type: string
                                  enum:
                                    - EUR
                                    - GBP
                                    - AUD
                                monthlyCommitmentMinor:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                                overageUnitAmountMinor:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - currency
                                - monthlyCommitmentMinor
                                - overageUnitAmountMinor
                              additionalProperties: false
                        required:
                          - planCode
                          - displayName
                          - displayOrder
                          - visibility
                          - publicListingApplicability
                          - monthlyCommitmentMinor
                          - includedIus
                          - overageUnitAmountMinor
                          - currency
                          - billingPeriodMonths
                          - commitmentBillingTiming
                          - usageBillingTiming
                          - resetInterval
                          - rolloverPolicy
                          - paymentTermsDays
                          - renewalPosture
                          - prices
                        additionalProperties: false
                      activityTerms:
                        $ref: >-
                          #/components/schemas/IuRateCardActivityScheduleResponse
                      setupGrant:
                        nullable: true
                        type: object
                        properties:
                          grantedIus:
                            default: 100
                            type: integer
                            minimum: 1
                            maximum: 1000000
                          validForDays:
                            default: 60
                            type: integer
                            minimum: 1
                            maximum: 3650
                          rolloverEnabled:
                            default: false
                            type: boolean
                            enum:
                              - false
                          automatic:
                            default: true
                            type: boolean
                            enum:
                              - true
                        required:
                          - grantedIus
                          - validForDays
                          - rolloverEnabled
                          - automatic
                        additionalProperties: false
                      source:
                        type: object
                        properties:
                          rateCardPublicVersion:
                            type: string
                            minLength: 1
                            maxLength: 80
                        required:
                          - rateCardPublicVersion
                        additionalProperties: false
                    required:
                      - schemaVersion
                      - activityCatalogVersion
                      - plan
                      - activityTerms
                      - setupGrant
                      - source
                    additionalProperties: false
                required:
                  - version
                  - visibility
                  - displayName
                  - adjustmentSource
                  - renewalBehavior
                  - adjustments
                  - rateCardSnapshot
                additionalProperties: false
            required:
              - id
              - agreementKind
              - tosVersion
              - rateCardPublicVersion
              - planCode
              - planName
              - renewalPosture
              - predecessorBindingId
              - offerVersion
              - entitlementBundle
              - supportPackage
              - proposal
              - selectedPaymentOption
              - termStart
              - termEnd
              - listCommitmentMinor
              - listOverageUnitAmountMinor
              - includedIus
              - discountBasisPoints
              - netCommitmentMinor
              - netOverageUnitAmountMinor
              - currency
              - billingPeriodMonths
              - rolloverPolicy
              - paymentTermsDays
              - acceptedAt
              - acceptanceSource
              - activityTerms
              - activitySchedule
            additionalProperties: false
        renewal:
          nullable: true
          type: object
          properties:
            version:
              type: string
              pattern: ^v1:[0-9a-f]{64}$
            status:
              type: string
              enum:
                - RENEWS
                - NON_RENEWAL_SCHEDULED
                - RENEWAL_BLOCKED
                - ENDED
                - PINNED
            targetBindingId:
              type: string
              pattern: ^\d+$
            effectiveFreeAt:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            changeAllowedUntil:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            allowedActions:
              type: array
              items:
                type: string
                enum:
                  - CANCEL_AT_TERM
                  - REINSTATE_AUTO_RENEWAL
            latestInstruction:
              nullable: true
              type: object
              properties:
                id:
                  type: string
                  pattern: ^\d+$
                bindingId:
                  type: string
                  pattern: ^\d+$
                instructionType:
                  type: string
                  enum:
                    - CANCEL_AT_TERM
                    - REINSTATE_AUTO_RENEWAL
                supersedesInstructionId:
                  nullable: true
                  type: string
                  pattern: ^\d+$
                effectiveAt:
                  type: string
                  format: date-time
                  pattern: >-
                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                changeCutoffAt:
                  type: string
                  format: date-time
                  pattern: >-
                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                source:
                  type: string
                  enum:
                    - PLAN_BILLING
                    - MCP_APP
                    - ADMIN
                recordedAt:
                  type: string
                  format: date-time
                  pattern: >-
                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
              required:
                - id
                - bindingId
                - instructionType
                - supersedesInstructionId
                - effectiveAt
                - changeCutoffAt
                - source
                - recordedAt
              additionalProperties: false
            history:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                    pattern: ^\d+$
                  bindingId:
                    type: string
                    pattern: ^\d+$
                  instructionType:
                    type: string
                    enum:
                      - CANCEL_AT_TERM
                      - REINSTATE_AUTO_RENEWAL
                  supersedesInstructionId:
                    nullable: true
                    type: string
                    pattern: ^\d+$
                  effectiveAt:
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                  changeCutoffAt:
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                  source:
                    type: string
                    enum:
                      - PLAN_BILLING
                      - MCP_APP
                      - ADMIN
                  recordedAt:
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                required:
                  - id
                  - bindingId
                  - instructionType
                  - supersedesInstructionId
                  - effectiveAt
                  - changeCutoffAt
                  - source
                  - recordedAt
                additionalProperties: false
          required:
            - version
            - status
            - targetBindingId
            - effectiveFreeAt
            - changeAllowedUntil
            - allowedActions
            - latestInstruction
            - history
          additionalProperties: false
        setupGrant:
          nullable: true
          type: object
          properties:
            grantedIus:
              type: integer
              minimum: 1
              maximum: 1000000
            rolloverEnabled:
              type: boolean
              enum:
                - false
            grantedAt:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            expiresAt:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            status:
              type: string
              enum:
                - ACTIVE
                - EXPIRED
            attributionKind:
              nullable: true
              type: string
              enum:
                - PROMOTION
                - REFERRAL
          required:
            - grantedIus
            - rolloverEnabled
            - grantedAt
            - expiresAt
            - status
            - attributionKind
          additionalProperties: false
        calibratingActivities:
          anyOf:
            - $ref: '#/components/schemas/IuRateCardActivityScheduleResponse'
            - type: array
              items:
                type: object
                properties:
                  activityCode:
                    type: string
                    enum:
                      - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                      - MULTI_SELLER_PRODUCT_RANKING
                      - PROPOSAL_EVALUATION_PASS
                      - COMPARATIVE_PROPOSAL_RANKING_PASS
                      - MURPH_WORKING_SESSION
                      - SIMPLE_PROPOSAL_EVALUATION
                      - COMPLEX_PROPOSAL_EVALUATION
                      - MERCHANDISING_BRIEF_RESPONSE
                      - MURPH_AI_SUPPORT_SESSION
                      - HUMAN_EXPERT_SUPPORT_HOUR
                      - GENERATED_IMAGE
                      - GENERATED_VIDEO_SECONDS
                      - ANALYZE_ACCOUNT
                      - CAMPAIGN_OPTIMIZATION_MONTH
                      - MANAGED_MEDIA_BUY_MONTH
                      - STANDARD_DOCUMENT_UNDERSTANDING
                      - LARGE_DOCUMENT_UNDERSTANDING
                      - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                      - CUSTOM_BIGQUERY_GIB
                      - MODULAR_SOURCE_MANAGEMENT_MONTH
                      - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                  status:
                    type: string
                    enum:
                      - CALIBRATING
                      - MEASURING
                  iuAmountMilli:
                    nullable: true
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 9007199254740991
                  unitCount:
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 9007199254740991
                  unit:
                    type: string
                    enum:
                      - ACCOUNT_MONTH
                      - ACCOUNT_BILLING_PERIOD
                      - PROPOSAL
                      - RESPONSE
                      - SESSION
                      - SUPPORT_HOUR
                      - IMAGE
                      - GENERATED_SECOND
                      - ANALYSIS
                      - CAMPAIGN_MONTH
                      - MEDIA_BUY_MONTH
                      - MEDIA_BUY_BILLING_PERIOD
                      - FILE
                      - PROCESSING_JOB
                      - UNDERSTANDING_MINUTE
                      - GIB_SCANNED
                      - ACTIVE_SOURCE_MONTH
                      - OUTPUT_SECOND
                      - RANKING
                      - EVALUATION_PASS
                      - RANKING_PASS
                required:
                  - activityCode
                  - status
                  - iuAmountMilli
                  - unitCount
                  - unit
                additionalProperties: false
        paymentSetupUrl:
          type: string
          pattern: ^https?:\/\/
        nextAction:
          type: string
          enum:
            - ACCEPT_GOVERNING_AGREEMENT
            - SELECT_IU_PLAN
            - NONE
      required:
        - billingCustomerId
        - eligible
        - eligibleWorkloads
        - commercialStatus
        - offer
        - currentBinding
        - upcomingBinding
        - history
        - renewal
        - setupGrant
        - calibratingActivities
        - paymentSetupUrl
        - nextAction
      additionalProperties: false
      description: >-
        Customer-safe Enterprise Contract commercial state. The immutable
        customer proposal is present for human admins and principal-redacted for
        service tokens; free-form renewal reasons and internal actor/database
        identifiers are excluded.
    BillingEnterpriseContractPackage:
      type: object
      properties:
        binding:
          type: object
          properties:
            id:
              type: string
              pattern: ^\d+$
            agreementKind:
              type: string
              enum:
                - STANDARD_TOS
                - CUSTOM_CONTRACT
                - AAA
            tosVersion:
              nullable: true
              type: string
            rateCardPublicVersion:
              type: string
            planCode:
              type: string
            planName:
              type: string
            renewalPosture:
              type: string
              enum:
                - STANDARD_ROLLING
                - PINNED
            predecessorBindingId:
              nullable: true
              type: string
              pattern: ^\d+$
            offerVersion:
              type: string
              minLength: 1
            entitlementBundle:
              default: null
              nullable: true
              allOf:
                - $ref: '#/components/schemas/CommercialEntitlementBundleSnapshot'
            supportPackage:
              default: null
              nullable: true
              anyOf:
                - oneOf:
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 1
                        kind:
                          type: string
                          enum:
                            - UNLIMITED_NAMED_SUPPORT
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                      additionalProperties: false
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 1
                        kind:
                          type: string
                          enum:
                            - NAMED_SUPPORT_PACKAGE
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                        includedHoursPerMonth:
                          type: number
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 744
                        additionalHourIus:
                          type: number
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 1000000
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                        - includedHoursPerMonth
                        - additionalHourIus
                      additionalProperties: false
                  type: object
                - oneOf:
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 2
                        kind:
                          type: string
                          enum:
                            - UNLIMITED_NAMED_SUPPORT
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                      additionalProperties: false
                    - type: object
                      properties:
                        schemaVersion:
                          type: number
                          enum:
                            - 2
                        kind:
                          type: string
                          enum:
                            - NAMED_SUPPORT_PACKAGE
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                        includedHoursPerMonth:
                          type: number
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 744
                      required:
                        - schemaVersion
                        - kind
                        - displayName
                        - includedHoursPerMonth
                      additionalProperties: false
                  type: object
            proposal:
              default: null
              nullable: true
              oneOf:
                - type: object
                  properties:
                    schemaVersion:
                      type: number
                      enum:
                        - 1
                    documentTitle:
                      type: string
                      minLength: 1
                      maxLength: 160
                    executiveSummary:
                      type: string
                      minLength: 1
                      maxLength: 5000
                    scope:
                      type: object
                      properties:
                        included:
                          minItems: 1
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                        exclusions:
                          default: []
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                      required:
                        - included
                        - exclusions
                      additionalProperties: false
                    term:
                      type: object
                      properties:
                        serviceStart:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - ON_ACCEPTANCE
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - FIXED_DATE
                                date:
                                  type: string
                                  format: date
                                  pattern: >-
                                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                              required:
                                - kind
                                - date
                              additionalProperties: false
                          type: object
                        initialTermMonths:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 120
                        renewal:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - NO_AUTOMATIC_RENEWAL
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - AUTOMATIC
                                renewalTermMonths:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 120
                                nonRenewalNoticeDays:
                                  type: integer
                                  minimum: 0
                                  maximum: 365
                              required:
                                - kind
                                - renewalTermMonths
                                - nonRenewalNoticeDays
                              additionalProperties: false
                          type: object
                        terminationForConvenience:
                          nullable: true
                          type: object
                          properties:
                            noticeDays:
                              type: integer
                              minimum: 0
                              maximum: 365
                          required:
                            - noticeDays
                          additionalProperties: false
                      required:
                        - serviceStart
                        - initialTermMonths
                        - renewal
                        - terminationForConvenience
                      additionalProperties: false
                    paymentOptions:
                      minItems: 1
                      maxItems: 4
                      type: array
                      items:
                        oneOf:
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - MONTHLY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              monthlyAmountMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - monthlyAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - TERM_PREPAY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              prepaidAmountMinor:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - prepaidAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                        type: object
                    templateKey:
                      type: string
                      enum:
                        - ENTERPRISE_V1
                        - PARTNER_ENTERPRISE_V1
                    organizationNameAtIssue:
                      type: string
                      minLength: 1
                      maxLength: 160
                  required:
                    - schemaVersion
                    - documentTitle
                    - executiveSummary
                    - scope
                    - term
                    - paymentOptions
                    - templateKey
                    - organizationNameAtIssue
                  additionalProperties: false
                - type: object
                  properties:
                    schemaVersion:
                      type: number
                      enum:
                        - 2
                    documentTitle:
                      type: string
                      minLength: 1
                      maxLength: 160
                    executiveSummary:
                      type: string
                      minLength: 1
                      maxLength: 5000
                    scope:
                      type: object
                      properties:
                        included:
                          minItems: 1
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                        exclusions:
                          default: []
                          maxItems: 50
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 500
                      required:
                        - included
                        - exclusions
                      additionalProperties: false
                    term:
                      type: object
                      properties:
                        serviceStart:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - ON_ACCEPTANCE
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - FIXED_DATE
                                date:
                                  type: string
                                  format: date
                                  pattern: >-
                                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$
                              required:
                                - kind
                                - date
                              additionalProperties: false
                          type: object
                        initialTermMonths:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 120
                        renewal:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - NO_AUTOMATIC_RENEWAL
                              required:
                                - kind
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - AUTOMATIC
                                renewalTermMonths:
                                  type: integer
                                  minimum: 0
                                  exclusiveMinimum: true
                                  maximum: 120
                                nonRenewalNoticeDays:
                                  type: integer
                                  minimum: 0
                                  maximum: 365
                              required:
                                - kind
                                - renewalTermMonths
                                - nonRenewalNoticeDays
                              additionalProperties: false
                          type: object
                        terminationForConvenience:
                          nullable: true
                          type: object
                          properties:
                            noticeDays:
                              type: integer
                              minimum: 0
                              maximum: 365
                          required:
                            - noticeDays
                          additionalProperties: false
                      required:
                        - serviceStart
                        - initialTermMonths
                        - renewal
                        - terminationForConvenience
                      additionalProperties: false
                    paymentOptions:
                      minItems: 1
                      maxItems: 4
                      type: array
                      items:
                        oneOf:
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - MONTHLY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              monthlyAmountMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - monthlyAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                          - type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - TERM_PREPAY
                              optionKey:
                                type: string
                                minLength: 1
                                maxLength: 120
                                pattern: ^[a-z0-9][a-z0-9._-]*$
                              displayName:
                                type: string
                                minLength: 1
                                maxLength: 120
                              currency:
                                type: string
                                enum:
                                  - USD
                                  - EUR
                                  - GBP
                                  - AUD
                              prepaidAmountMinor:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 9007199254740991
                              termMonths:
                                type: integer
                                minimum: 0
                                exclusiveMinimum: true
                                maximum: 120
                              paymentTermsDays:
                                type: integer
                                minimum: 0
                                maximum: 365
                              collectionMethods:
                                minItems: 1
                                maxItems: 3
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ACH
                                    - CARD
                                    - INVOICE
                            required:
                              - kind
                              - optionKey
                              - displayName
                              - currency
                              - prepaidAmountMinor
                              - termMonths
                              - paymentTermsDays
                              - collectionMethods
                            additionalProperties: false
                        type: object
                    defaultPaymentOptionKey:
                      type: string
                      minLength: 1
                      maxLength: 120
                      pattern: ^[a-z0-9][a-z0-9._-]*$
                    planOrigin:
                      type: object
                      properties:
                        rateCardId:
                          type: string
                          pattern: ^\d+$
                        rateCardPublicVersion:
                          type: string
                          minLength: 1
                          maxLength: 80
                        planId:
                          type: string
                          pattern: ^\d+$
                        planCode:
                          type: string
                          pattern: ^[A-Z][A-Z0-9_]{1,63}$
                      required:
                        - rateCardId
                        - rateCardPublicVersion
                        - planId
                        - planCode
                      additionalProperties: false
                    customization:
                      oneOf:
                        - type: object
                          properties:
                            posture:
                              type: string
                              enum:
                                - EXACT
                          required:
                            - posture
                          additionalProperties: false
                        - type: object
                          properties:
                            posture:
                              type: string
                              enum:
                                - CUSTOMIZED
                            reason:
                              type: string
                              minLength: 10
                              maxLength: 1000
                          required:
                            - posture
                            - reason
                          additionalProperties: false
                      type: object
                    organizationNameAtIssue:
                      type: string
                      minLength: 1
                      maxLength: 160
                  required:
                    - schemaVersion
                    - documentTitle
                    - executiveSummary
                    - scope
                    - term
                    - paymentOptions
                    - defaultPaymentOptionKey
                    - planOrigin
                    - customization
                    - organizationNameAtIssue
                  additionalProperties: false
              type: object
            selectedPaymentOption:
              default: null
              nullable: true
              oneOf:
                - type: object
                  properties:
                    kind:
                      type: string
                      enum:
                        - MONTHLY
                    optionKey:
                      type: string
                      minLength: 1
                      maxLength: 120
                      pattern: ^[a-z0-9][a-z0-9._-]*$
                    displayName:
                      type: string
                      minLength: 1
                      maxLength: 120
                    currency:
                      type: string
                      enum:
                        - USD
                        - EUR
                        - GBP
                        - AUD
                    monthlyAmountMinor:
                      type: integer
                      minimum: 0
                      maximum: 9007199254740991
                    termMonths:
                      type: integer
                      minimum: 0
                      exclusiveMinimum: true
                      maximum: 120
                    paymentTermsDays:
                      type: integer
                      minimum: 0
                      maximum: 365
                    collectionMethods:
                      minItems: 1
                      maxItems: 3
                      type: array
                      items:
                        type: string
                        enum:
                          - ACH
                          - CARD
                          - INVOICE
                  required:
                    - kind
                    - optionKey
                    - displayName
                    - currency
                    - monthlyAmountMinor
                    - termMonths
                    - paymentTermsDays
                    - collectionMethods
                  additionalProperties: false
                - type: object
                  properties:
                    kind:
                      type: string
                      enum:
                        - TERM_PREPAY
                    optionKey:
                      type: string
                      minLength: 1
                      maxLength: 120
                      pattern: ^[a-z0-9][a-z0-9._-]*$
                    displayName:
                      type: string
                      minLength: 1
                      maxLength: 120
                    currency:
                      type: string
                      enum:
                        - USD
                        - EUR
                        - GBP
                        - AUD
                    prepaidAmountMinor:
                      type: integer
                      minimum: 0
                      exclusiveMinimum: true
                      maximum: 9007199254740991
                    termMonths:
                      type: integer
                      minimum: 0
                      exclusiveMinimum: true
                      maximum: 120
                    paymentTermsDays:
                      type: integer
                      minimum: 0
                      maximum: 365
                    collectionMethods:
                      minItems: 1
                      maxItems: 3
                      type: array
                      items:
                        type: string
                        enum:
                          - ACH
                          - CARD
                          - INVOICE
                  required:
                    - kind
                    - optionKey
                    - displayName
                    - currency
                    - prepaidAmountMinor
                    - termMonths
                    - paymentTermsDays
                    - collectionMethods
                  additionalProperties: false
              type: object
            termStart:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            termEnd:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            listCommitmentMinor:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            listOverageUnitAmountMinor:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            includedIus:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            discountBasisPoints:
              type: integer
              minimum: 0
              maximum: 9999
            netCommitmentMinor:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            netOverageUnitAmountMinor:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            currency:
              type: string
              enum:
                - USD
                - EUR
                - GBP
                - AUD
            billingPeriodMonths:
              type: number
              enum:
                - 1
            rolloverPolicy:
              nullable: true
              type: object
              properties:
                capBasisPoints:
                  type: integer
                  minimum: 1
                  maximum: 5000
                expiresAfterBillingPeriods:
                  type: number
                  enum:
                    - 1
              required:
                - capBasisPoints
                - expiresAfterBillingPeriods
              additionalProperties: false
            paymentTermsDays:
              type: integer
              minimum: 0
              exclusiveMinimum: true
              maximum: 9007199254740991
            acceptedAt:
              type: string
              format: date-time
              pattern: >-
                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            acceptanceSource:
              type: string
              enum:
                - SIGNUP
                - PLAN_BILLING
                - MCP_APP
                - ADMIN_ORDER_FORM
                - AUTO_RENEWAL
            activityTerms:
              type: array
              items:
                type: object
                properties:
                  activityCode:
                    type: string
                    enum:
                      - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                  displayName:
                    type: string
                    minLength: 1
                    maxLength: 120
                  iuAmountMilli:
                    type: integer
                    minimum: 1
                    maximum: 2147483647
                  billingPeriodMonths:
                    type: number
                    enum:
                      - 1
                  includedBackfillMonths:
                    type: integer
                    minimum: 0
                    maximum: 120
                required:
                  - activityCode
                  - displayName
                  - iuAmountMilli
                  - billingPeriodMonths
                  - includedBackfillMonths
                additionalProperties: false
            activitySchedule:
              $ref: '#/components/schemas/IuRateCardActivityScheduleResponse'
            effectiveRateCard:
              type: object
              properties:
                version:
                  type: string
                  pattern: ^erc-v1:[0-9a-f]{64}$
                visibility:
                  type: string
                  enum:
                    - PUBLIC
                    - PRIVATE
                displayName:
                  type: string
                  minLength: 1
                  maxLength: 160
                adjustmentSource:
                  type: string
                  enum:
                    - RATE_CARD_DEFAULT
                    - LEGACY_DISCOUNT
                    - DIRECT
                    - PROMOTION_CODE
                    - REFERRAL_CODE
                renewalBehavior:
                  default: PIN_EXACT
                  type: string
                  enum:
                    - PIN_EXACT
                    - REVIEW_REQUIRED
                adjustments:
                  type: object
                  properties:
                    price:
                      default: null
                      nullable: true
                      oneOf:
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - PERCENT
                            basisPoints:
                              type: integer
                              minimum: 1
                              maximum: 9999
                          required:
                            - kind
                            - basisPoints
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - PACKAGE
                            monthlyCommitmentMinor:
                              type: integer
                              minimum: 0
                              maximum: 9007199254740991
                            includedIus:
                              type: integer
                              minimum: 0
                              maximum: 9007199254740991
                            overageUnitAmountMinor:
                              type: integer
                              minimum: 0
                              maximum: 9007199254740991
                            currency:
                              default: USD
                              type: string
                              enum:
                                - USD
                                - EUR
                                - GBP
                                - AUD
                          required:
                            - kind
                            - monthlyCommitmentMinor
                            - includedIus
                            - overageUnitAmountMinor
                            - currency
                          additionalProperties: false
                      type: object
                    platform:
                      default: null
                      nullable: true
                      type: object
                      properties:
                        displayName:
                          type: string
                          minLength: 1
                          maxLength: 120
                        monthlyFeeMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        currency:
                          type: string
                          enum:
                            - USD
                            - EUR
                            - GBP
                            - AUD
                        entitlementBundleKey:
                          type: string
                          minLength: 1
                          maxLength: 120
                          pattern: ^[a-z0-9][a-z0-9._-]*$
                      required:
                        - displayName
                        - monthlyFeeMinor
                        - currency
                        - entitlementBundleKey
                      additionalProperties: false
                    activityTerms:
                      default: []
                      type: array
                      items:
                        type: object
                        properties:
                          activityCode:
                            anyOf:
                              - type: string
                                enum:
                                  - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                                  - SIMPLE_PROPOSAL_EVALUATION
                                  - COMPLEX_PROPOSAL_EVALUATION
                                  - MERCHANDISING_BRIEF_RESPONSE
                                  - MURPH_AI_SUPPORT_SESSION
                                  - HUMAN_EXPERT_SUPPORT_HOUR
                                  - GENERATED_IMAGE
                                  - GENERATED_VIDEO_SECONDS
                                  - ANALYZE_ACCOUNT
                                  - CAMPAIGN_OPTIMIZATION_MONTH
                                  - MANAGED_MEDIA_BUY_MONTH
                                  - STANDARD_DOCUMENT_UNDERSTANDING
                                  - LARGE_DOCUMENT_UNDERSTANDING
                                  - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                                  - CUSTOM_BIGQUERY_GIB
                                  - MODULAR_SOURCE_MANAGEMENT_MONTH
                                  - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                                  - COMPLETED_INTERCHANGE_MERCHANDISING_CYCLE
                                  - SOCIAL_ACCOUNT_INTELLIGENCE_BILLING_PERIOD
                                  - INTERCHANGE_MEDIA_BUY_BILLING_PERIOD
                              - type: string
                                enum:
                                  - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                                  - MULTI_SELLER_PRODUCT_RANKING
                                  - PROPOSAL_EVALUATION_PASS
                                  - COMPARATIVE_PROPOSAL_RANKING_PASS
                                  - MURPH_WORKING_SESSION
                                  - SIMPLE_PROPOSAL_EVALUATION
                                  - COMPLEX_PROPOSAL_EVALUATION
                                  - MERCHANDISING_BRIEF_RESPONSE
                                  - MURPH_AI_SUPPORT_SESSION
                                  - HUMAN_EXPERT_SUPPORT_HOUR
                                  - GENERATED_IMAGE
                                  - GENERATED_VIDEO_SECONDS
                                  - ANALYZE_ACCOUNT
                                  - CAMPAIGN_OPTIMIZATION_MONTH
                                  - MANAGED_MEDIA_BUY_MONTH
                                  - STANDARD_DOCUMENT_UNDERSTANDING
                                  - LARGE_DOCUMENT_UNDERSTANDING
                                  - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                                  - CUSTOM_BIGQUERY_GIB
                                  - MODULAR_SOURCE_MANAGEMENT_MONTH
                                  - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                          displayName:
                            type: string
                            minLength: 1
                            maxLength: 120
                          billingPosture:
                            type: string
                            enum:
                              - INCLUDED
                              - IU_PRICE
                          iuAmountMilli:
                            nullable: true
                            type: integer
                            minimum: 0
                            exclusiveMinimum: true
                            maximum: 9007199254740991
                        required:
                          - activityCode
                          - displayName
                          - billingPosture
                          - iuAmountMilli
                        additionalProperties: false
                    setupCredit:
                      default: null
                      nullable: true
                      type: object
                      properties:
                        program:
                          type: string
                          enum:
                            - STOREFRONT_SETUP
                      required:
                        - program
                      additionalProperties: false
                  required:
                    - price
                    - platform
                    - activityTerms
                    - setupCredit
                  additionalProperties: false
                rateCardSnapshot:
                  default: null
                  nullable: true
                  type: object
                  properties:
                    schemaVersion:
                      type: number
                      enum:
                        - 1
                    activityCatalogVersion:
                      anyOf:
                        - type: number
                          enum:
                            - 0
                        - type: number
                          enum:
                            - 1
                        - type: number
                          enum:
                            - 2
                        - type: number
                          enum:
                            - 3
                        - type: number
                          enum:
                            - 4
                    plan:
                      type: object
                      properties:
                        planCode:
                          type: string
                        displayName:
                          type: string
                        displayOrder:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        visibility:
                          type: string
                          enum:
                            - PUBLIC
                            - PRIVATE
                        publicListingApplicability:
                          default:
                            products:
                              - BUYER
                              - PARTNER
                              - SELLER
                          type: object
                          properties:
                            products:
                              minItems: 1
                              maxItems: 3
                              type: array
                              items:
                                type: string
                                enum:
                                  - BUYER
                                  - SELLER
                                  - PARTNER
                            requiredProducts:
                              minItems: 1
                              maxItems: 3
                              type: array
                              items:
                                type: string
                                enum:
                                  - BUYER
                                  - SELLER
                                  - PARTNER
                            sellerProducts:
                              minItems: 1
                              maxItems: 2
                              type: array
                              items:
                                type: string
                                enum:
                                  - LISTING_ONLY
                                  - AGENTIC_MEDIA_COMPANY
                          required:
                            - products
                          additionalProperties: false
                        monthlyCommitmentMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        includedIus:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        overageUnitAmountMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        currency:
                          type: string
                          enum:
                            - USD
                        billingPeriodMonths:
                          type: number
                          enum:
                            - 1
                        commitmentBillingTiming:
                          type: string
                          enum:
                            - PERIOD_START
                        usageBillingTiming:
                          type: string
                          enum:
                            - PERIOD_END
                        resetInterval:
                          type: string
                          enum:
                            - MONTH
                        rolloverPolicy:
                          nullable: true
                          type: object
                          properties:
                            capBasisPoints:
                              type: integer
                              minimum: 1
                              maximum: 5000
                            expiresAfterBillingPeriods:
                              type: number
                              enum:
                                - 1
                          required:
                            - capBasisPoints
                            - expiresAfterBillingPeriods
                          additionalProperties: false
                        paymentTermsDays:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 9007199254740991
                        renewalPosture:
                          type: string
                          enum:
                            - STANDARD_ROLLING
                            - PINNED
                        prices:
                          type: array
                          items:
                            type: object
                            properties:
                              currency:
                                type: string
                                enum:
                                  - EUR
                                  - GBP
                                  - AUD
                              monthlyCommitmentMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                              overageUnitAmountMinor:
                                type: integer
                                minimum: 0
                                maximum: 9007199254740991
                            required:
                              - currency
                              - monthlyCommitmentMinor
                              - overageUnitAmountMinor
                            additionalProperties: false
                      required:
                        - planCode
                        - displayName
                        - displayOrder
                        - visibility
                        - publicListingApplicability
                        - monthlyCommitmentMinor
                        - includedIus
                        - overageUnitAmountMinor
                        - currency
                        - billingPeriodMonths
                        - commitmentBillingTiming
                        - usageBillingTiming
                        - resetInterval
                        - rolloverPolicy
                        - paymentTermsDays
                        - renewalPosture
                        - prices
                      additionalProperties: false
                    activityTerms:
                      $ref: '#/components/schemas/IuRateCardActivityScheduleResponse'
                    setupGrant:
                      nullable: true
                      type: object
                      properties:
                        grantedIus:
                          default: 100
                          type: integer
                          minimum: 1
                          maximum: 1000000
                        validForDays:
                          default: 60
                          type: integer
                          minimum: 1
                          maximum: 3650
                        rolloverEnabled:
                          default: false
                          type: boolean
                          enum:
                            - false
                        automatic:
                          default: true
                          type: boolean
                          enum:
                            - true
                      required:
                        - grantedIus
                        - validForDays
                        - rolloverEnabled
                        - automatic
                      additionalProperties: false
                    source:
                      type: object
                      properties:
                        rateCardPublicVersion:
                          type: string
                          minLength: 1
                          maxLength: 80
                      required:
                        - rateCardPublicVersion
                      additionalProperties: false
                  required:
                    - schemaVersion
                    - activityCatalogVersion
                    - plan
                    - activityTerms
                    - setupGrant
                    - source
                  additionalProperties: false
              required:
                - version
                - visibility
                - displayName
                - adjustmentSource
                - renewalBehavior
                - adjustments
                - rateCardSnapshot
              additionalProperties: false
          required:
            - id
            - agreementKind
            - tosVersion
            - rateCardPublicVersion
            - planCode
            - planName
            - renewalPosture
            - predecessorBindingId
            - offerVersion
            - entitlementBundle
            - supportPackage
            - proposal
            - selectedPaymentOption
            - termStart
            - termEnd
            - listCommitmentMinor
            - listOverageUnitAmountMinor
            - includedIus
            - discountBasisPoints
            - netCommitmentMinor
            - netOverageUnitAmountMinor
            - currency
            - billingPeriodMonths
            - rolloverPolicy
            - paymentTermsDays
            - acceptedAt
            - acceptanceSource
            - activityTerms
            - activitySchedule
          additionalProperties: false
        lifecycleState:
          type: string
          enum:
            - PENDING_FUNDING
            - SCHEDULED
            - ACTIVE
            - BILLING_HOLD
            - SUSPENDED
            - EXPIRED
            - SUPERSEDED
        reasonCodes:
          minItems: 1
          type: array
          items:
            type: string
            enum:
              - payment_authority_missing
              - term_not_started
              - in_force
              - billing_hold
              - contract_not_in_force
              - term_ended
              - successor_accepted
        rights:
          type: array
          items:
            type: object
            properties:
              featureKey:
                type: string
                minLength: 1
              purchased:
                type: boolean
                enum:
                  - true
              state:
                type: string
                enum:
                  - PENDING
                  - ACTIVE
                  - SUSPENDED
                  - EXPIRED
            required:
              - featureKey
              - purchased
              - state
            additionalProperties: false
      required:
        - binding
        - lifecycleState
        - reasonCodes
        - rights
      additionalProperties: false
      description: >-
        One immutable accepted Enterprise Contract package with a server-derived
        lifecycle. Purchased rights remain visible through funding gaps, billing
        holds, expiry, and successor history.
    LedgerAccountBalance:
      type: object
      properties:
        code:
          type: string
          description: Stable ledger account handle, e.g. `customer:42:USD:buyer_funds`.
          example: customer:42:USD:buyer_funds
        kind:
          type: string
          enum:
            - ASSET
            - LIABILITY
            - EQUITY
            - REVENUE
            - EXPENSE
          description: >-
            Accounting category of the account. STATISTICAL/CONTRA accounts are
            excluded from this balance-sheet view.
        balanceMinor:
          type: string
          pattern: ^-?\d+$
          description: >-
            Signed balance in currency minor units (per the account kind’s
            normal side), as a string.
          example: '10000000'
        currency:
          $ref: '#/components/schemas/LedgerCurrency'
      required:
        - code
        - kind
        - balanceMinor
        - currency
      additionalProperties: false
      description: One ledger account and its current balance for the customer.
    IuBucketBalance:
      type: object
      properties:
        granted:
          type: number
          description: >-
            Total IUs available in this bucket for the cycle (0 for buckets the
            plan/grants do not carry).
        used:
          type: number
          description: IUs drawn from this bucket this cycle.
        remaining:
          type: number
      required:
        - granted
        - used
        - remaining
      additionalProperties: false
    IuOverageStatus:
      type: object
      properties:
        ius:
          type: number
          description: IUs consumed beyond every other bucket this cycle.
        minor:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: >-
            Overage-to-date, minor USD units. Display only — AI-3079 slice 2b
            charges it.
        capMinor:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: Uncharged-overage cap, minor USD units (display only in this slice).
        warnAtMinor:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        overWarnThreshold:
          type: boolean
        overCap:
          type: boolean
      required:
        - ius
        - minor
        - capMinor
        - warnAtMinor
        - overWarnThreshold
        - overCap
      additionalProperties: false
    BillingIuAccountRatingTerms:
      type: object
      properties:
        source:
          type: string
          enum:
            - binding
            - default
          description: >-
            "binding" when an accepted Rate Card record supplied this cycle's
            activity, overage, and rollover terms; "default" when the
            organization has no accepted terms and the display uses UNRATIFIED
            defaults.
        revisionId:
          nullable: true
          description: >-
            The storefront_rate_card_binding id whose activity terms rated this
            cycle, or null under "default".
          type: string
      required:
        - source
        - revisionId
      additionalProperties: false
    CommercialEntitlementBundleSnapshot:
      anyOf:
        - type: object
          properties:
            schemaVersion:
              type: number
              enum:
                - 1
            bundleKey:
              type: string
              minLength: 1
              maxLength: 120
              pattern: ^[a-z0-9][a-z0-9._-]*$
            revision:
              type: integer
              minimum: 0
              exclusiveMinimum: true
              maximum: 2147483647
            displayName:
              type: string
              minLength: 1
              maxLength: 160
            visibility:
              type: string
              enum:
                - REUSABLE
                - PRIVATE
            features:
              minItems: 1
              maxItems: 200
              type: array
              items:
                type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - FEATURE_ACCESS
                  featureKey:
                    type: string
                    minLength: 1
                    maxLength: 120
                    pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$
                  scope:
                    type: object
                    properties:
                      kind:
                        type: string
                        enum:
                          - ORGANIZATION
                    required:
                      - kind
                    additionalProperties: false
                  parameters:
                    type: object
                    additionalProperties: {}
                required:
                  - kind
                  - featureKey
                  - scope
                additionalProperties: false
            capacities:
              maxItems: 20
              type: array
              items:
                type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - BOUNDED_CAPACITY
                  target:
                    type: string
                    enum:
                      - COMPATIBILITY_WORKSPACE
                  unit:
                    type: string
                    enum:
                      - COUNT
                  limitCount:
                    type: integer
                    minimum: 0
                    maximum: 1000000
                  scope:
                    type: object
                    properties:
                      kind:
                        type: string
                        enum:
                          - ORGANIZATION
                    required:
                      - kind
                    additionalProperties: false
                required:
                  - kind
                  - target
                  - unit
                  - limitCount
                  - scope
                additionalProperties: false
          required:
            - schemaVersion
            - bundleKey
            - revision
            - displayName
            - visibility
            - features
          additionalProperties: false
        - type: object
          properties:
            schemaVersion:
              type: number
              enum:
                - 1
            bundleKey:
              type: string
              minLength: 1
              maxLength: 120
              pattern: ^[a-z0-9][a-z0-9._-]*$
            revision:
              type: integer
              minimum: 0
              exclusiveMinimum: true
              maximum: 2147483647
            displayName:
              type: string
              minLength: 1
              maxLength: 160
            visibility:
              type: string
              enum:
                - REUSABLE
                - PRIVATE
            features:
              default: []
              maxItems: 200
              type: array
              items:
                type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - FEATURE_ACCESS
                  featureKey:
                    type: string
                    minLength: 1
                    maxLength: 120
                    pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$
                  scope:
                    type: object
                    properties:
                      kind:
                        type: string
                        enum:
                          - ORGANIZATION
                    required:
                      - kind
                    additionalProperties: false
                  parameters:
                    type: object
                    additionalProperties: {}
                required:
                  - kind
                  - featureKey
                  - scope
                additionalProperties: false
            capacities:
              minItems: 1
              maxItems: 20
              type: array
              items:
                type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - BOUNDED_CAPACITY
                  target:
                    type: string
                    enum:
                      - COMPATIBILITY_WORKSPACE
                  unit:
                    type: string
                    enum:
                      - COUNT
                  limitCount:
                    type: integer
                    minimum: 0
                    maximum: 1000000
                  scope:
                    type: object
                    properties:
                      kind:
                        type: string
                        enum:
                          - ORGANIZATION
                    required:
                      - kind
                    additionalProperties: false
                required:
                  - kind
                  - target
                  - unit
                  - limitCount
                  - scope
                additionalProperties: false
          required:
            - schemaVersion
            - bundleKey
            - revision
            - displayName
            - visibility
            - features
            - capacities
          additionalProperties: false
    IuRateCardActivityScheduleResponse:
      anyOf:
        - type: array
          items:
            anyOf:
              - type: object
                properties:
                  activityCode:
                    type: string
                    enum:
                      - COMPLETED_INTERCHANGE_MERCHANDISING_CYCLE
                  displayName:
                    type: string
                    minLength: 1
                    maxLength: 120
                  unitCount:
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 9007199254740991
                  unit:
                    type: string
                    enum:
                      - ACCOUNT_MONTH
                      - ACCOUNT_BILLING_PERIOD
                      - PROPOSAL
                      - RESPONSE
                      - SESSION
                      - SUPPORT_HOUR
                      - IMAGE
                      - GENERATED_SECOND
                      - ANALYSIS
                      - CAMPAIGN_MONTH
                      - MEDIA_BUY_MONTH
                      - MEDIA_BUY_BILLING_PERIOD
                      - FILE
                      - PROCESSING_JOB
                      - UNDERSTANDING_MINUTE
                      - GIB_SCANNED
                      - ACTIVE_SOURCE_MONTH
                      - OUTPUT_SECOND
                  catalogStatus:
                    type: string
                    enum:
                      - PUBLISHED
                      - CALIBRATING
                      - MEASURING
                  standardIuAmountMilli:
                    nullable: true
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 2147483647
                  pricing:
                    type: string
                    enum:
                      - STANDARD
                      - CUSTOM
                      - WAIVED
                      - UNPRICED
                  customIuAmountMilli:
                    nullable: true
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 2147483647
                  effectiveIuAmountMilli:
                    nullable: true
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 2147483647
                  billable:
                    type: boolean
                  includedBackfillMonths:
                    nullable: true
                    type: integer
                    minimum: 0
                    maximum: 120
                required:
                  - activityCode
                  - displayName
                  - unitCount
                  - unit
                  - catalogStatus
                  - standardIuAmountMilli
                  - pricing
                  - customIuAmountMilli
                  - effectiveIuAmountMilli
                  - billable
                  - includedBackfillMonths
                additionalProperties: false
              - type: object
                properties:
                  activityCode:
                    type: string
                    enum:
                      - SOCIAL_ACCOUNT_INTELLIGENCE_BILLING_PERIOD
                  displayName:
                    type: string
                    minLength: 1
                    maxLength: 120
                  unitCount:
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 9007199254740991
                  unit:
                    type: string
                    enum:
                      - ACCOUNT_MONTH
                      - ACCOUNT_BILLING_PERIOD
                      - PROPOSAL
                      - RESPONSE
                      - SESSION
                      - SUPPORT_HOUR
                      - IMAGE
                      - GENERATED_SECOND
                      - ANALYSIS
                      - CAMPAIGN_MONTH
                      - MEDIA_BUY_MONTH
                      - MEDIA_BUY_BILLING_PERIOD
                      - FILE
                      - PROCESSING_JOB
                      - UNDERSTANDING_MINUTE
                      - GIB_SCANNED
                      - ACTIVE_SOURCE_MONTH
                      - OUTPUT_SECOND
                  catalogStatus:
                    type: string
                    enum:
                      - PUBLISHED
                      - CALIBRATING
                      - MEASURING
                  standardIuAmountMilli:
                    nullable: true
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 2147483647
                  pricing:
                    type: string
                    enum:
                      - STANDARD
                      - CUSTOM
                      - WAIVED
                      - UNPRICED
                  customIuAmountMilli:
                    nullable: true
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 2147483647
                  effectiveIuAmountMilli:
                    nullable: true
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 2147483647
                  billable:
                    type: boolean
                  includedBackfillMonths:
                    nullable: true
                    type: integer
                    minimum: 0
                    maximum: 120
                required:
                  - activityCode
                  - displayName
                  - unitCount
                  - unit
                  - catalogStatus
                  - standardIuAmountMilli
                  - pricing
                  - customIuAmountMilli
                  - effectiveIuAmountMilli
                  - billable
                  - includedBackfillMonths
                additionalProperties: false
              - type: object
                properties:
                  activityCode:
                    type: string
                    enum:
                      - INTERCHANGE_MEDIA_BUY_BILLING_PERIOD
                  displayName:
                    type: string
                    minLength: 1
                    maxLength: 120
                  unitCount:
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 9007199254740991
                  unit:
                    type: string
                    enum:
                      - ACCOUNT_MONTH
                      - ACCOUNT_BILLING_PERIOD
                      - PROPOSAL
                      - RESPONSE
                      - SESSION
                      - SUPPORT_HOUR
                      - IMAGE
                      - GENERATED_SECOND
                      - ANALYSIS
                      - CAMPAIGN_MONTH
                      - MEDIA_BUY_MONTH
                      - MEDIA_BUY_BILLING_PERIOD
                      - FILE
                      - PROCESSING_JOB
                      - UNDERSTANDING_MINUTE
                      - GIB_SCANNED
                      - ACTIVE_SOURCE_MONTH
                      - OUTPUT_SECOND
                  catalogStatus:
                    type: string
                    enum:
                      - PUBLISHED
                      - CALIBRATING
                      - MEASURING
                  standardIuAmountMilli:
                    nullable: true
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 2147483647
                  pricing:
                    type: string
                    enum:
                      - STANDARD
                      - CUSTOM
                      - WAIVED
                      - UNPRICED
                  customIuAmountMilli:
                    nullable: true
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 2147483647
                  effectiveIuAmountMilli:
                    nullable: true
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 2147483647
                  billable:
                    type: boolean
                  includedBackfillMonths:
                    nullable: true
                    type: integer
                    minimum: 0
                    maximum: 120
                required:
                  - activityCode
                  - displayName
                  - unitCount
                  - unit
                  - catalogStatus
                  - standardIuAmountMilli
                  - pricing
                  - customIuAmountMilli
                  - effectiveIuAmountMilli
                  - billable
                  - includedBackfillMonths
                additionalProperties: false
          minItems: 3
          maxItems: 3
          description: >-
            Catalog-v4 schedule with Brief response, Enhanced Reporting, and
            Interchange media buy. Key terms by activityCode; array order is
            presentation-only and clients must not index by position.
          uniqueItems: true
          x-scope3-item-key: activityCode
          x-scope3-required-activity-codes:
            - COMPLETED_INTERCHANGE_MERCHANDISING_CYCLE
            - SOCIAL_ACCOUNT_INTELLIGENCE_BILLING_PERIOD
            - INTERCHANGE_MEDIA_BUY_BILLING_PERIOD
        - minItems: 14
          maxItems: 14
          type: array
          items:
            type: object
            properties:
              activityCode:
                type: string
                enum:
                  - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                  - SIMPLE_PROPOSAL_EVALUATION
                  - COMPLEX_PROPOSAL_EVALUATION
                  - MERCHANDISING_BRIEF_RESPONSE
                  - MURPH_AI_SUPPORT_SESSION
                  - HUMAN_EXPERT_SUPPORT_HOUR
                  - GENERATED_IMAGE
                  - GENERATED_VIDEO_SECONDS
                  - ANALYZE_ACCOUNT
                  - CAMPAIGN_OPTIMIZATION_MONTH
                  - MANAGED_MEDIA_BUY_MONTH
                  - STANDARD_DOCUMENT_UNDERSTANDING
                  - LARGE_DOCUMENT_UNDERSTANDING
                  - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                  - CUSTOM_BIGQUERY_GIB
                  - MODULAR_SOURCE_MANAGEMENT_MONTH
                  - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                  - COMPLETED_INTERCHANGE_MERCHANDISING_CYCLE
                  - SOCIAL_ACCOUNT_INTELLIGENCE_BILLING_PERIOD
                  - INTERCHANGE_MEDIA_BUY_BILLING_PERIOD
              displayName:
                type: string
                minLength: 1
                maxLength: 120
              unitCount:
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 9007199254740991
              unit:
                type: string
                enum:
                  - ACCOUNT_MONTH
                  - ACCOUNT_BILLING_PERIOD
                  - PROPOSAL
                  - RESPONSE
                  - SESSION
                  - SUPPORT_HOUR
                  - IMAGE
                  - GENERATED_SECOND
                  - ANALYSIS
                  - CAMPAIGN_MONTH
                  - MEDIA_BUY_MONTH
                  - MEDIA_BUY_BILLING_PERIOD
                  - FILE
                  - PROCESSING_JOB
                  - UNDERSTANDING_MINUTE
                  - GIB_SCANNED
                  - ACTIVE_SOURCE_MONTH
                  - OUTPUT_SECOND
              catalogStatus:
                type: string
                enum:
                  - PUBLISHED
                  - CALIBRATING
                  - MEASURING
              standardIuAmountMilli:
                nullable: true
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 2147483647
              pricing:
                type: string
                enum:
                  - STANDARD
                  - CUSTOM
                  - WAIVED
                  - UNPRICED
              customIuAmountMilli:
                nullable: true
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 2147483647
              effectiveIuAmountMilli:
                nullable: true
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 2147483647
              billable:
                type: boolean
              includedBackfillMonths:
                nullable: true
                type: integer
                minimum: 0
                maximum: 120
            required:
              - activityCode
              - displayName
              - unitCount
              - unit
              - catalogStatus
              - standardIuAmountMilli
              - pricing
              - customIuAmountMilli
              - effectiveIuAmountMilli
              - billable
              - includedBackfillMonths
            additionalProperties: false
        - minItems: 13
          maxItems: 13
          type: array
          items:
            type: object
            properties:
              activityCode:
                type: string
                enum:
                  - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                  - SIMPLE_PROPOSAL_EVALUATION
                  - COMPLEX_PROPOSAL_EVALUATION
                  - MERCHANDISING_BRIEF_RESPONSE
                  - MURPH_AI_SUPPORT_SESSION
                  - HUMAN_EXPERT_SUPPORT_HOUR
                  - GENERATED_IMAGE
                  - GENERATED_VIDEO_SECONDS
                  - ANALYZE_ACCOUNT
                  - CAMPAIGN_OPTIMIZATION_MONTH
                  - MANAGED_MEDIA_BUY_MONTH
                  - STANDARD_DOCUMENT_UNDERSTANDING
                  - LARGE_DOCUMENT_UNDERSTANDING
                  - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                  - CUSTOM_BIGQUERY_GIB
                  - MODULAR_SOURCE_MANAGEMENT_MONTH
                  - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                  - COMPLETED_INTERCHANGE_MERCHANDISING_CYCLE
                  - SOCIAL_ACCOUNT_INTELLIGENCE_BILLING_PERIOD
                  - INTERCHANGE_MEDIA_BUY_BILLING_PERIOD
              displayName:
                type: string
                minLength: 1
                maxLength: 120
              unitCount:
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 9007199254740991
              unit:
                type: string
                enum:
                  - ACCOUNT_MONTH
                  - ACCOUNT_BILLING_PERIOD
                  - PROPOSAL
                  - RESPONSE
                  - SESSION
                  - SUPPORT_HOUR
                  - IMAGE
                  - GENERATED_SECOND
                  - ANALYSIS
                  - CAMPAIGN_MONTH
                  - MEDIA_BUY_MONTH
                  - MEDIA_BUY_BILLING_PERIOD
                  - FILE
                  - PROCESSING_JOB
                  - UNDERSTANDING_MINUTE
                  - GIB_SCANNED
                  - ACTIVE_SOURCE_MONTH
                  - OUTPUT_SECOND
              catalogStatus:
                type: string
                enum:
                  - PUBLISHED
                  - CALIBRATING
                  - MEASURING
              standardIuAmountMilli:
                nullable: true
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 2147483647
              pricing:
                type: string
                enum:
                  - STANDARD
                  - CUSTOM
                  - WAIVED
                  - UNPRICED
              customIuAmountMilli:
                nullable: true
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 2147483647
              effectiveIuAmountMilli:
                nullable: true
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 2147483647
              billable:
                type: boolean
              includedBackfillMonths:
                nullable: true
                type: integer
                minimum: 0
                maximum: 120
            required:
              - activityCode
              - displayName
              - unitCount
              - unit
              - catalogStatus
              - standardIuAmountMilli
              - pricing
              - customIuAmountMilli
              - effectiveIuAmountMilli
              - billable
              - includedBackfillMonths
            additionalProperties: false
        - minItems: 16
          maxItems: 16
          type: array
          items:
            type: object
            properties:
              activityCode:
                type: string
                enum:
                  - ACTIVATED_SOCIAL_ACCOUNT_MONTH
                  - SIMPLE_PROPOSAL_EVALUATION
                  - COMPLEX_PROPOSAL_EVALUATION
                  - MERCHANDISING_BRIEF_RESPONSE
                  - MURPH_AI_SUPPORT_SESSION
                  - HUMAN_EXPERT_SUPPORT_HOUR
                  - GENERATED_IMAGE
                  - GENERATED_VIDEO_SECONDS
                  - ANALYZE_ACCOUNT
                  - CAMPAIGN_OPTIMIZATION_MONTH
                  - MANAGED_MEDIA_BUY_MONTH
                  - STANDARD_DOCUMENT_UNDERSTANDING
                  - LARGE_DOCUMENT_UNDERSTANDING
                  - AUDIO_VIDEO_UNDERSTANDING_MINUTES
                  - CUSTOM_BIGQUERY_GIB
                  - MODULAR_SOURCE_MANAGEMENT_MONTH
                  - MANAGED_VIDEO_RENDITION_OUTPUT_SECOND
                  - COMPLETED_INTERCHANGE_MERCHANDISING_CYCLE
                  - SOCIAL_ACCOUNT_INTELLIGENCE_BILLING_PERIOD
                  - INTERCHANGE_MEDIA_BUY_BILLING_PERIOD
              displayName:
                type: string
                minLength: 1
                maxLength: 120
              unitCount:
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 9007199254740991
              unit:
                type: string
                enum:
                  - ACCOUNT_MONTH
                  - ACCOUNT_BILLING_PERIOD
                  - PROPOSAL
                  - RESPONSE
                  - SESSION
                  - SUPPORT_HOUR
                  - IMAGE
                  - GENERATED_SECOND
                  - ANALYSIS
                  - CAMPAIGN_MONTH
                  - MEDIA_BUY_MONTH
                  - MEDIA_BUY_BILLING_PERIOD
                  - FILE
                  - PROCESSING_JOB
                  - UNDERSTANDING_MINUTE
                  - GIB_SCANNED
                  - ACTIVE_SOURCE_MONTH
                  - OUTPUT_SECOND
              catalogStatus:
                type: string
                enum:
                  - PUBLISHED
                  - CALIBRATING
                  - MEASURING
              standardIuAmountMilli:
                nullable: true
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 2147483647
              pricing:
                type: string
                enum:
                  - STANDARD
                  - CUSTOM
                  - WAIVED
                  - UNPRICED
              customIuAmountMilli:
                nullable: true
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 2147483647
              effectiveIuAmountMilli:
                nullable: true
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 2147483647
              billable:
                type: boolean
              includedBackfillMonths:
                nullable: true
                type: integer
                minimum: 0
                maximum: 120
            required:
              - activityCode
              - displayName
              - unitCount
              - unit
              - catalogStatus
              - standardIuAmountMilli
              - pricing
              - customIuAmountMilli
              - effectiveIuAmountMilli
              - billable
              - includedBackfillMonths
            additionalProperties: false
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key or access token

````