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

# Retrieve Contribution Strategy

> Retrieves the contribution strategy for a given plan configuration.



## OpenAPI

````yaml /schemas/2026-04-24/schema.yaml get /plan_configurations/{public_id}/contribution_strategy
openapi: 3.0.3
info:
  title: ''
  version: 0.0.0
servers: []
security: []
paths:
  /plan_configurations/{public_id}/contribution_strategy:
    get:
      tags:
        - plan_configurations
      description: Retrieves the contribution strategy for a given plan configuration.
      operationId: plan_configuration_contribution_strategy_retrieve
      parameters:
        - in: path
          name: public_id
          schema:
            type: string
          required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlanConfigurationContributionStrategy'
          description: ''
      security:
        - tokenAuth: []
components:
  schemas:
    PlanConfigurationContributionStrategy:
      oneOf:
        - $ref: >-
            #/components/schemas/PlanConfigurationContributionStrategyBenefitSplit
        - $ref: >-
            #/components/schemas/PlanConfigurationContributionStrategyRetirementMatchPolicy
      discriminator:
        propertyName: strategy_type
        mapping:
          benefit_split:
            $ref: >-
              #/components/schemas/PlanConfigurationContributionStrategyBenefitSplit
          retirement_match_policy:
            $ref: >-
              #/components/schemas/PlanConfigurationContributionStrategyRetirementMatchPolicy
    PlanConfigurationContributionStrategyBenefitSplit:
      type: object
      properties:
        strategy_type:
          type: string
          enum:
            - benefit_split
        employer_contribution:
          $ref: '#/components/schemas/BenefitSplit'
      required:
        - strategy_type
        - employer_contribution
    PlanConfigurationContributionStrategyRetirementMatchPolicy:
      type: object
      properties:
        strategy_type:
          type: string
          enum:
            - retirement_match_policy
        employer_contribution:
          $ref: '#/components/schemas/RetirementMatchPolicy'
      required:
        - strategy_type
        - employer_contribution
    BenefitSplit:
      type: object
      properties:
        member:
          $ref: '#/components/schemas/ContributionStrategy'
        member_spouse:
          $ref: '#/components/schemas/ContributionStrategy'
        member_child:
          $ref: '#/components/schemas/ContributionStrategy'
        member_children:
          $ref: '#/components/schemas/ContributionStrategy'
        member_family:
          $ref: '#/components/schemas/ContributionStrategy'
      required:
        - member
        - member_child
        - member_children
        - member_family
        - member_spouse
    RetirementMatchPolicy:
      type: object
      properties:
        total_match_threshold:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,4})?$
          nullable: true
          description: >-
            Total amount the employer will match per plan period (typically
            annually).
        tiers:
          type: array
          items:
            $ref: '#/components/schemas/RetirementMatchPolicyTier'
          nullable: true
        non_elective_contributions:
          type: array
          items:
            $ref: '#/components/schemas/RetirementMatchPolicyNonElectiveContribution'
          nullable: true
      required:
        - tiers
        - non_elective_contributions
    ContributionStrategy:
      type: object
      properties:
        contribution_type:
          $ref: '#/components/schemas/ContributionTypeEnum'
        contribution:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
        monthly_min_threshold:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
          nullable: true
        monthly_max_threshold:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,2})?$
          nullable: true
      required:
        - contribution
        - contribution_type
    RetirementMatchPolicyTier:
      type: object
      properties:
        salary_minimum:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,4})?$
        salary_maximum:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,4})?$
        match:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,4})?$
      required:
        - salary_minimum
        - salary_maximum
        - match
    RetirementMatchPolicyNonElectiveContribution:
      type: object
      properties:
        contribution_amount:
          type: string
          format: decimal
          pattern: ^-?\d{0,8}(?:\.\d{0,4})?$
        value_type:
          $ref: '#/components/schemas/ValueTypeEnum'
        nec_type:
          $ref: '#/components/schemas/NecTypeEnum'
      required:
        - contribution_amount
        - value_type
        - nec_type
    ContributionTypeEnum:
      enum:
        - member_cost
        - employer_cost
        - employer_percentage
        - flat_employer_cost
        - flat_employer_percentage
        - employer_match
        - member_income_percentage
      type: string
      description: |-
        * `member_cost` - Member Cost
        * `employer_cost` - Employer Cost
        * `employer_percentage` - Employer Percentage
        * `flat_employer_cost` - Flat Employer Cost
        * `flat_employer_percentage` - Flat Employer Percentage
        * `employer_match` - Employer Match
        * `member_income_percentage` - Member Income Percentage
    ValueTypeEnum:
      enum:
        - number
        - percent
      type: string
      description: |-
        * `number` - Fixed dollar amount
        * `percent` - Percentage of salary
    NecTypeEnum:
      enum:
        - safe_harbor
        - discretionary
        - profit_sharing
        - qnec
      type: string
      description: |-
        * `safe_harbor` - Safe Harbor
        * `discretionary` - Discretionary
        * `profit_sharing` - Profit Sharing
        * `qnec` - QNEC
  securitySchemes:
    tokenAuth:
      type: http
      scheme: bearer
      description: API Key authentication with required prefix "Bearer"

````